无法使 glViewport() 工作
Can't make glViewport() to work
我开始在 2D 游戏中工作,但我不知道应该如何使用 viewPort()。这是我的 Init() 代码:
void init(void)
{
glClear(GL_COLOR_BUFFER_BIT);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glViewport(100, 100, 800, 600);
gluOrtho2D(0, 800, 600, 0);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
glClearColor(0.0, 0.0, 0.0, 0.0);
}
我想知道的是,画图到window后,如何才能只看到一部分,而不是整个世界呢?
你在那里所做的一切都属于绘图代码。加载纹理和着色器,设置帧缓冲区对象将是初始化,但你不是在那里做的。
而且 glClear 必须在 glClearColor 之后。
最后但同样重要的是,视口不影响清除操作(您必须使用剪刀测试将清除操作限制在某个矩形内)。
我开始在 2D 游戏中工作,但我不知道应该如何使用 viewPort()。这是我的 Init() 代码:
void init(void)
{
glClear(GL_COLOR_BUFFER_BIT);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glViewport(100, 100, 800, 600);
gluOrtho2D(0, 800, 600, 0);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
glClearColor(0.0, 0.0, 0.0, 0.0);
}
我想知道的是,画图到window后,如何才能只看到一部分,而不是整个世界呢?
你在那里所做的一切都属于绘图代码。加载纹理和着色器,设置帧缓冲区对象将是初始化,但你不是在那里做的。
而且 glClear 必须在 glClearColor 之后。
最后但同样重要的是,视口不影响清除操作(您必须使用剪刀测试将清除操作限制在某个矩形内)。