gpt4 book ai didi

c++ - glMatrixMode(GL_MODELVIEW)在resize()中有什么用?

转载 作者:行者123 更新时间:2023-11-28 06:50:03 24 4
gpt4 key购买 nike

static void resize(int width, int height)
{
const float ar = (float) width / (float) height;

glViewport(0, 0, width, height);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glFrustum(-ar, ar, -1.0, 1.0, 2.0, 100.0);

glMatrixMode(GL_MODELVIEW);
glLoadIdentity() ;

视口(viewport)和投影矩阵调整了大小,当我们改变窗口大小时,但是在调整大小函数中调用 GL_MODELVIEW 有什么用。

最佳答案

glMatrixMode 设置当前矩阵类型。使用当前矩阵的所有矩阵修改操作(glLoadIdentityglLoadMatrixglTranslatef ...)。

给定代码将当前矩阵类型设置为投影,修改它,然后将当前矩阵设置为模型 View ,因此后续代码(此函数之外)将修改模型 View 而不是投影,并将其重置为单位矩阵(这可能是不必要的,取决于在绘图功能上)。

关于c++ - glMatrixMode(GL_MODELVIEW)在resize()中有什么用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24118565/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com