Я решил проблему, и это было тестирование глубины Opegl, которое сделало StartScreen Invisible. Каждый экран имеет свою собственную текстуру, настройку VAO/VBO и программу шейдеров. После запуска он переключается на игровой экран. Каждый экран активирует свой собственный шейдер, устанавливает униформу Sampler2D в правильный блок текстуры, затем активирует и связывает его текстуру перед рисунком. это пусто. Однако, если я полностью удалю класс Gamescreen, текстура стартового экрана отображается правильно.
Подробнее здесь: https://stackoverflow.com/questions/796 ... en-screens