b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

蓝宝书opengl_opengl编程指南 pdf_opengl超级宝典(4)

电脑杂谈  发布时间:2017-02-05 11:30:41  来源:网络整理

}

}

voidProcessSelection(intx,inty)

{

GLintviewport[4],hits;

staticGLuintselectBuffer[BUFFER_LENGTH];

//设置选择缓冲区

glSelectBuffer(BUFFER_LENGTH,selectBuffer);

//切换到投影矩阵,我们需要创建可视区域

glMatrixMode(GL_PROJECTION);

//保留原先的投影矩阵,以便恢复

glPushMatrix();

glLoadIdentity();

//获得视口

glGetIntegerv(GL_VIEWPORT,viewport);

//切换到选择模式

glRenderMode(GL_SELECT);

GLfloataspect=(GLfloat)viewport[2]/(GLfloat)viewport[3];

//创建一个描述可视区域的矩阵

gluPickMatrix(x,viewport[3]-y+viewport[1],2,2,viewport);

//与投影矩阵相乘,得到可视区域

gluPerspective(35.0,aspect,1.0,200.0);

//在选择模式下渲染图元

RenderSphere();

//返回点击记录数。

hits=glRenderMode(GL_RENDER);

ProcessHit(hits,selectBuffer);

glMatrixMode(GL_PROJECTION);

glPopMatrix();

glMatrixMode(GL_MODELVIEW);

}

当我只选择太阳时:

OpenGL超级宝典学习笔记——选择

只有一个点击记录,一个物体在选择的可视区域内输出如下:

OpenGL超级宝典学习笔记——选择

当太阳和地球重叠,然后我点击地球时:

OpenGL超级宝典学习笔记——选择

有两个点击记录 输出如下:

OpenGL超级宝典学习笔记——选择

OpenGL超级宝典 第4版 中文版PDF+英文版+源代码 见

OpenGL编程指南(原书第7版)中文扫描版PDF 下载

OpenGL 渲染篇

Ubuntu 13.04 安装 OpenGL

OpenGL三维球体数据生成与绘制【附源码】

Ubuntu下OpenGL编程基础解析

如何在Ubuntu使用eclipse for c++配置OpenGL


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-30673-4.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    • 张俊
      张俊

      还是14度16度的橙色喝着爽

    热点图片
    拼命载入中...