Вертикальная синхронизация Ubuntu на OpenGL в C++
У меня разрывается проблема в приложении OpenGL в Ubuntu, как я могу ее решить? (мой ноутбук имеет встроенную видеокарту Intel)
1 ответ
Изменить: Забыл спросить, вы включили двойную буферизацию в вашем коде OpenGL? Это поможет, если вы испытываете мерцание.
Если вы используете GLUT, вы можете включить двойную буферизацию, используя glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | whatever other flags you are using e.g. GLUT_DEPTH);
для инициализации режима отображения. и вместо glFlush()
ты должен позвонить glutSwapBuffers()
для отображения отрендеренного кадра.
Попробуйте изменить настройки vsync, используя driconf
инструмент, он доступен в репозиториях Ubuntu, запустить apt-get install driconf
установить его.
Существует параметр "Синхронизация с вертикальным обновлением (интервалы обмена)", который имеет четыре уровня: Никогда, по умолчанию выключен, по умолчанию включен, всегда
Смотрите также: http://www.hecticgeek.com/2011/11/advanced-opengl-3d-rendering-configurator-for-ubuntu/