OpenGL ES 저장 메커니즘에서 intrested입니다. 모든 데이터를 자체 메모리에 복사하거나 데이터에 대한 포인터 만 저장합니까? 대처가 완료되지 않은 경우 (논리적 인 것), VBO가 사용되는 이유보다.OpenGL (ES)가 텍스처/정점을 저장하는 방법
1
A
답변
1
중요한 것은 OpenGL (ES)이 클라이언트 - 서버 모델로 빌드됨을 기억하는 것입니다. 즉, 일반적으로 "CPU"는 클라이언트이고 "GPU"는 서버입니다.
이 두 가지는 서로 다른 메모리 저장 공간을 가지고 있습니다. "정점"을 "CPU"에서 "GPU"로 보내야하는 정점을 그리려면 시스템 메모리에서 GPU 메모리로 데이터를 복사해야합니다. 그림을 그리기 위해 반복해서 보내야하는 각 프레임 ... 물론 느립니다.
VBO는 GPU에 버텍스 데이터를 저장 한 다음 단순히 복사를 피하는 방법입니다. "그리기"명령을 추가하면 데이터는 시스템 메모리가 아닌 GPU 메모리에서 가져옵니다. 그것은 훨씬 더 빠를 것입니다.
0
텍스처 및 버퍼 객체는 궁극적으로 서로 관련이 없습니다. 어떤 직접적인 관계도 없습니다.
그러나 일부 유사점이 있습니다. 둘 다 OpenGL에서 할당 한 메모리를 나타냅니다. 따라서 업로드하는 데이터는 복사입니다. 심지어 텍스처.
관련 문제
- 1. OpenGL ES가 메모리에서 내 텍스처를 삭제하지 않습니다.
- 2. Android OpenGL ES가 그리기 않음 텍스처
- 3. Android OpenGL ES가 compex 객체를 잘못 렌더링합니다.
- 4. Android OpenGL ES가 TRIANGLES를 사용하여 삼각형 모양을 표시하지 않습니다.
- 5. OpenGL ES가 설치된 안드로이드 카메라를 사용하는 방법은 무엇입니까?
- 6. 다른 스레드의 OpenGL ES가 실제 장치에 그려지지 않습니다.
- 7. OpenGL 뷰어에있는 스크린 샷을 저장하는 방법은 무엇입니까?
- 8. glColorPointer iOS Open GL ES가 작동하지 않습니까?
- 9. 아이폰의 OpenGL ES에
- 10. 저장하는 방법 안드로이드에서 WebView를 저장하는 방법
- 11. OpenGL 코드를 OpenGL ES로 이식하기위한 입문 도움말 자료
- 12. OpenGL 활동을 닫는 방법
- 13. iPhone OpenGl : 3D 모델 가져 오기
- 14. OpenGL ES의 법선
- 15. OpenGL ES에서 복잡한 3D 도면을 만드는 방법 (Android)?
- 16. iPhone의 OpenGL ES에서 멀티 샘플링을 어떻게 활성화합니까?
- 17. 데이터베이스를 저장하는 대신 데이터베이스에 테이블을 저장하는 방법
- 18. 데이터베이스에 이미지를 저장하는 방법
- 19. NSUserDefaults에 NSMutableArray를 저장하는 방법
- 20. 거래에서 저장하는 방법?
- 21. 이미지를 바이너리로 저장하는 방법
- 22. 이미지에 UIImageViewController를 저장하는 방법
- 23. 옵션을 저장하는 방법?
- 24. NSTreeController 파일에 저장하는 방법
- 25. CMS 콘텐츠를 저장하는 방법
- 26. datepicker를 sharedpreferences에 저장하는 방법
- 27. 활동 상태를 저장하는 방법
- 28. 분할하고 배열로 저장하는 방법
- 29. 의도의 데이터를 저장하는 방법
- 30. 로깅 데이터를 저장하는 방법?
감사합니다. 내가 필요한 것. 텍스처에도 적용됩니까? 매번 바인딩 된 텍스처를 그릴 때마다 GPP로 복사됩니까? – RawCode
텍스처는 glTexImage * 또는 glCopyTexImage ... 스타일 함수로 GPU로 전송됩니다. 그래서 텍스쳐는 VBOS와 유사합니다 ... 그러나 VBOS는 사용법이 약간 일반적입니다. CUDA/OpenCL을 살펴보면 GPU가 점점 더 일반화되고 메모리 풀에 대한 완전한 액세스 권한을 얻게된다는 것을 알게 될 것입니다. 사용자가이를 통해 사용자 정의 방식으로 사용할 수 있습니다. – fen
@fen 'glCopyTexImage'는 프레임 버퍼에서 텍스처 이미지를 가져 오므로 CPU-GPU 복사가 발생해서는 안됩니다. –