(OpenGL 3.1 - 4.2) Объекты занимают все пространство экрана

Насколько я знаю, все в OpenGL изменилось с 3.1, и теперь я не могу понять, как изменить размер контекста рендеринга.

float positionData[] =  {   -0.8f, -0.8f, 0.0f,
                             0.8f, -0.8f, 0.0f,
                             0.0f,  0.8f, 0.0f  };

Есть ли настройка, которая может это исправить? Или я должен включить математику в сами шейдеры.

OpenGL делает вид, что окно на самом деле 2.0f на 2.0f

1 ответ

Решение

Вы не изменяете размер контекста рендеринга (это не имеет смысла), но вы можете изменить размер области просмотра. Используйте такие функции, как glViewport и друзья - вы можете прочитать о них в профиле основного профиля.

Если вы говорите о перемещении "камеры", вам нужно будет создать матрицу и передать ее шейдерам. Есть много учебников, объясняющих, как это сделать.

Другие вопросы по тегам