opengl中glVertex3f的基本问题

majie980 2012-09-25 10:58:24

glBegin(GL_QUADS);
glTexCoord2f(0.0, 0.0); glVertex3f(-2.0, -1.0, 0.0);
glTexCoord2f(0.0, 1.0); glVertex3f(-2.0, 1.0, 0.0);
glTexCoord2f(1.0, 1.0); glVertex3f(0.0, 1.0, 0.0);
glTexCoord2f(1.0, 0.0); glVertex3f(0.0, -1.0, 0.0);

glTexCoord2f(0.0, 0.0); glVertex3f(1.0, -1.0, 0.0);//左下
glTexCoord2f(0.0, 1.0); glVertex3f(1.0, 1.0, 0.0);//左上
glTexCoord2f(1.0, 1.0); glVertex3f(2.41421, 1.0, -1.41421);//右上
glTexCoord2f(1.0, 0.0); glVertex3f(2.41421, -1.0, -1.41421);//右下

glEnd();

如上段代码所示,本段代码的目的是想将一个平面图贴到空间中,想请问下glVertex3f()函数中,坐标值的具体含义是多什么,比如在函数glTexCoord2f() 中,坐标值都是归一化到(0~1中),而glVertex3f()中的坐标值代表的是什么呢,另外还有glTranslatef(0.0, 0.0, -3.6);-3.6到底是什么意义呢。
...全文
4983 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
basuye1 2012-09-25
  • 打赏
  • 举报
回复
本人也是初学,说一下自己的看法吧。OpenGl中有一个三维投影区的说法,你可以看一下glOrtho函数。其实就是将三维坐标系映射到屏幕的二维坐标系。默认的三维坐标系是以你的窗口中心为原点,水平向右x轴正方向,竖直向上y轴正方向,从屏幕垂直向外是z轴正方向。-3.6就是z坐标
wuchuncai 2012-09-25
  • 打赏
  • 举报
回复
-3.6 可以理解为一个相对值。
与屏幕大小相对应的是投射变换。
libralibra 2012-09-25
  • 打赏
  • 举报
回复
glTexCoord2f(s,t)设置当前纹理坐标为(s,t,0,1),
glVertex3f(x,y,z)指定一个顶点
majie980 2012-09-25
  • 打赏
  • 举报
回复
我想知道的是-3.6的具体含义是什么,是像素?距离?

19,473

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧