OpenGL: Как контролировать, какой метод буферизации будет использовать мое окно? - PullRequest
1 голос
/ 28 января 2011

Я хочу дать пользователю возможность выбирать между двойной буферизацией и тройной буферизацией, потому что на некоторых картах (или ОС?) Тройная буферизация включена по умолчанию, и это вызывает некоторые проблемы с производительностью.

Как я могу это сделать?

Ответы [ 2 ]

4 голосов
/ 28 января 2011

Вы не можете сделать это из самого OpenGL, так как OpenGL имеет дело только с вызовами отрисовки и т. Д. Для этого вам нужно использовать специфические вызовы поставщика. В Windows есть WGL для обработки контекста и т. Д.

1 голос
/ 28 января 2011

В OpenGL такой функции нет.

Самое близкое, что я нашел, это glutInitDisplayMode , где вы можете передать GLUT_DOUBLE или GLUT_SINGLE, чтобы включить или отключить двойную буферизацию. Другие оконные менеджеры, такие как, например, SDL, имеют другой вызов:

SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, 1);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...