Это очень расплывчатая проблема, поэтому, пожалуйста, не стесняйтесь прояснить что-либо об этом проекте.
Я работаю над очень большим приложением, и недавно возникла очень запутанная ошибка, связанная с текстурированием. Некоторые текстуры, которые мы загружаем, загружаются - я прошел по коду, и он запускается - но все рендеры OpenGL для этих текстур - это странная розово-белая полосатая текстура.
Что бы вы предложили даже начать отладку этой ситуации?
- Проект является многопоточным, но мьютекс гарантирует, что все вызовы OpenGL не прерываются ничем другим.
- Некоторые текстуры загружаются, некоторые нет. Они все загружены одинаково.
- Я убедился, что все текстуры существуют
- «Розовые / белые» текстуры определенно загружаются в память - они становятся видимыми вскоре после того, как я загружаю любую другую текстуру в OpenGL.
Я озадачен и понятия не имею, что еще может быть не так. Есть ли команда OpenGL, которую можно вызвать после glTexImage, которая заставит текстуру стать пригодной для использования?
Edit:
Дело не в сбоях команд, это в основном проблема синхронизации. Розовые / белые текстуры появляются некоторое время, пока не будет загружено больше текстур. Это почти как если бы текстуры были поставлены в очередь, а очередь просто пауза в какой-то момент.
Следующее редактирование: у меня правильно работает журнал glIntercept, и он выводит его (до сбоя всей программы)
http://freetexthost.com/1kdkksabdg
Следующее редактирование: я точно знаю, что текстуры загружаются в память OpenGL, но по какой-то причине они не отображаются в самой программе.