2013-07-28 2 views
1

동일한 "공유 그룹"인 두 개의 OpenGLES2 컨텍스트가 있습니다. 렌더링 스레드에서 사용되지 않는 동안 작업자 스레드에서 텍스처를 업로드 할 수 있음을 알고 있습니다. 하지만 작업자 스레드에서 아트라스 텍스처의 영역으로 데이터의 일부를 업로드하고 동일한 아트라스 텍스처의 샘플을 업로드 할 수 있습니까? (물론 다른 영역에서도 가능합니까?) 렌더링에 텍스처를 사용하고 샘플링하면 (NV_texture_fence를 사용하지 않는 한) 정의되지 않은 동작이 발생하지만 실제로는 그렇지 않습니다.작업자 스레드에서 아틀라스 텍스처로 데이터 업로드 및 렌더링 스레드에서 동일한 텍스처로 샘플링

답변

0

1st and 2nd rules from the docs 나누기 없음 :

그것은 sharegroup 여러 상황에 의해 공유 될 때의 OpenGL ES 객체에 상태 변화를 관리하는 응용 프로그램의 책임입니다. 여기 규칙은 다음과 같습니다

  1. 응용 프로그램이 여러 컨텍스트를 통해 개체에 액세스 할 수 있습니다 동시에 개체가를 수정되지 않을 제공.
  2. 개체가 컨텍스트로 보내지는 명령으로 수정되는 동안 개체는 다른 컨텍스트에서 읽거나 수정하면 안됩니다.
  3. 개체를 수정 한 후에는 모든 컨텍스트에서 개체를 다시 바인딩하여 변경 내용을 확인해야합니다. 컨텍스트가 컨텍스트를 바인딩하기 전에 컨텍스트를 참조하면 해당 컨텐트의 내용은 정의되지 않습니다.
관련 문제