专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > 图形/图像

glRasterPos2i 改变光栅位置 opengl解决思路

发布时间:2011-06-27 20:38:28 文章来源:www.iduyao.cn 采编人员:星星草
glRasterPos2i 改变光栅位置 opengl
[code=C/C++][/code]
glGetFloatv(GL_CURRENT_RASTER_POSITION, raster_pos1);//断点1,查看当前光栅位置
glRasterPos2i(200, 200);//试图改变光栅位置
glGetFloatv(GL_CURRENT_RASTER_POSITION, raster_pos1);//断点2,查看改变后的光栅位置

光栅位置没有按照自己设想的改变,所以写了以上三行代码测试。结果在断点1光栅位置为:0.0, 0.0, 0.0, 1.0;
断点2光栅位置为:0.0, 0.0, 0.0, 1.732
感到非常奇怪。我的投影和视点是这样设置的。
[code=C/C++][/code]
glViewport(0,0,(GLsizei)w, (GLsizei)h);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluPerspective(60, (GLsizei)w/(GLsizei)h ,0.01, 200.0);
glMatrixMode(GL_MODELVIEW);
gluLookAt(0.0, 0.0, 1.732, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0);

是不是这样的设施导致了光栅位置的奇怪改变。



------解决方案--------------------
glMatrixMode(GL_MODELVIEW); 
glLoadIdentity();
~~~~~~~~~~~~~~~~~~这句话少掉了
gluLookAt(0.0, 0.0, 1.732, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0); 
应该是modelview的参数问题,这个modelview太小了
试试用glortho设置大些的modelview,那样好计算一些,perspective比较难计算。
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: