Я пытаюсь нарисовать текстуру в заставку из фреймбуфера, и ее рендерингбуфер всегда заканчивается полностью пустым (черным). Странно, я знаю, что контекст настроен, и я проверяю ошибки с помощью glCheckFramebufferStatusOES (GL_FRAMEBUFFER_OES) и glGetError(), но ни одна из функций говорит, что что-то не так. Есть ли другие функции проверки ошибок, которые я могу назвать, которые могут пролить свет на то, что происходит?Устранение неполадок текстур OpenGL ES 1.1 на iPhone
0
A
ответ
1
Трудно дать вам точный ответ без дополнительной информации. Возможно, вы могли бы опубликовать некоторый код о вашей настройке и использовании буфера визуализации?
В то же время, здесь есть некоторая информация о том, как правильно настроить закадрового видеобуфер:
// Remember the FBO being used for the display framebuffer
glGetIntegerv(GL_FRAMEBUFFER_BINDING_OES, (GLint *)&SystemFBO);
// Create the texture and the FBO for offscreen frame buffer
glGenTextures(1, &ResultTexture);
glBindTexture(GL_TEXTURE_2D, ResultTexture);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, width, height, 0, GL_RGBA, GL_UNSIGNED_BYTE, NULL);
glGenFramebuffersOES(1, &ResultFBO);
glBindFramebufferOES(GL_FRAMEBUFFER_OES, ResultFBO);
glFramebufferTexture2DOES(GL_FRAMEBUFFER_OES, GL_COLOR_ATTACHMENT0_OES, GL_TEXTURE_2D, ResultTexture, 0);
glBindFramebufferOES(GL_FRAMEBUFFER_OES, ResultFBO);
// do your rendering to offscreen framebuffer
...
// restore original frame buffer object
glBindFramebufferOES(GL_FRAMEBUFFER_OES, SystemFBO);
// use ResultTexture as usual
glBindTexture(GL_TEXTURE_2D, ResultTexture);
Надежда это помогает ...
Смежные вопросы
- 1. OpenGL ES 1.1 или 2.0 на iPhone
- 2. OpenGL ES 1.1 Android Cubemapping
- 3. Рисование текстур с OpenGL ES
- 4. Советы по ускорению OpenGL ES 1.1 на iPhone
- 5. Устранение неполадок текстовых текстур openGL не отображается правильно кросс-платформа
- 6. Индекс цвета OpenGL для OpenGL ES 1.1 для iPhone?
- 7. Выберите OpenGL ES 1.1 или OpenGL ES 2.0?
- 8. OpenGL ES текстур все черные
- 9. OpenGL ES 1.1 2D (iPhone): изменение размера группы текстур/прямоугольных объектов
- 10. Прокрутка в OpenGL ES 1.1
- 11. OpenGL ES 1.1 clearColor drawing
- 12. Создайте молнию в OpenGL ES 1.1
- 13. Изображения iPhone-камеры в виде текстур OpenGL ES
- 14. Использование glTexSubImage2D в opengl es 1.1
- 15. Модуляция OpenGL ES 1.1 и GL_RGB_SCALE
- 16. Open GL ES 1.1 и iPhone игры
- 17. jQTouch для iPhone - Устранение неполадок?
- 18. iPhone - OpenGL ES 1.1 - Alpha Blend делает текстуру неправильным цветом
- 19. OpenGL-ES 1.1 iPhone - буфер глубины вызывает пурпурный экран
- 20. Как мне настроить игру iPhone OpenGL ES 1.1?
- 21. OpenGL ES 1.1 Цвет над текстурой шрифта
- 22. Цвета, переписывающие отображение текстур в opengl es
- 23. Сопоставление текстур с сферой OpenGL ES
- 24. Сравнение текстур в OpenGL ES 2.0
- 25. OpenGL ES iPhone Textures
- 26. iPhone OpenGL ES
- 27. OpenGL ES 2.0 загрузка динамических текстур
- 28. Загрузка текстур в Android OpenGL ES App
- 29. Render .h Blender Экспорт в iPhone с openGL ES 1.1
- 30. Opengl es iphone 4
Спасибо. В то время я думал, что проблема заключается в некоторой внутренней ошибке OpenGL, о которой не сообщалось ни glGetError(), ни glCheckFramebufferStatusOES (GL_FRAMEBUFFER_OES), но это было просто неправильное использование OpenGL. Я назвал glColor4f (0, 0, 0, 0) в предыдущей точке программы, поэтому, когда я рисовал текстуры, он рисовал с альфа = 0. Я думаю, это пример того, где чтение руководства сначала сэкономило бы время ... – emchristiansen