对OpenGL学习的记录

2016.3.8

http://www.cnblogs.com/crazyxiaom/articles/2073586.html

根据这个网址进行学习、入门,红宝书和绿宝书已经下载好了,这个网址学习完成就去看书,并且实践。

 修改(2016.3.12)

http://my.oschina.net/simon203/blog/106566

这个网址内容和上面的那个应该是一样的,但是图片是可以观看到的

 

2016.3.9

在上面的那个网址中的太阳地球月亮的代码例子中缺少了以下语句,使得代码运行后无效果(就是全黑的界面),添加了代码之后有效果了。

glDepthFunc(GL_LEQUAL);

 百度上的英文解释:

glDepthFunc - specify the value used for depth buffer comparisons---为深度缓存的比较指定参数?

具体的意义还不是很明白,暂且留有疑问,但是好像是要和启用深度缓存配套使用

 

2016.3.12

void gluLookAt(GLdouble eyex,   GLdouble eyey,       GLdouble eyez,  

        GLdouble centerx,   GLdouble centery,  GLdouble centerz,

        GLdouble upx,        GLdouble upy,        GLdouble upz);

前三个参数表示了观察点的位置,中间三个参数表示了观察目标的位置,最后三个参数代表从(0,0,0)到 (x,y,z)的直线,它表示了观察者认为的“上”方向。

这里好像有三个坐标系,即屏幕坐标系、视口坐标系、世界坐标系(http://bbs.csdn.net/topics/340062286),个人不是很理解,限于时间,就不求甚解了,在修改中间的三个参数可以知道xyz的大致方向,不确定对不对

 

投影变换作用:就是定义一个可视空间,可视空间以外的物体不会被绘制到屏幕上。OpenGL支持两种类型的投影变换,即透视投影和正投影。

 

http://blog.csdn.net/why_study/article/details/8204838

 OpenGL视口变换函数:glViewport

glViewPort(x:GLInt;  y:GLInt;  Width:GLSizei;  Height:GLSizei);

调用glViewPort函数来决定视见区域,告诉OpenGL应把渲染之后的图形绘制在窗体的哪个部位。当视见区域是整个窗体时,OpenGL将把渲染结果绘制到整个窗口。

 此外,在OpenGL中坐标点是以窗口的左下角为起始点(就是原点),横向的是宽度,纵向的是高度。

glOrtho函数可以将当前的可视空间设置为正投影空间--详细解释http://www.cnblogs.com/onlycxue/archive/2013/08/14/3256623.html

 

//不显示控制台窗口  
#pragma comment( linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"")

OpenGL的glut函数说明

https://www.opengl.org/resources/libraries/glut/glut-3.spec.pdf

 

2016.3.15

计算机3D图形在实质上也是平面的,它只是在计算机屏幕上所显示的二维图像,但它可以提供深度(或者第三维)的幻觉。2D + 透视= 3D。--《OpenGL超级宝典(第四版)》

 

2016.3.15

    glBegin(GL_LINES);
    glVertex3f(0, 0, 0);
    glVertex3f(100 , 0, 0);//右边
    glEnd();

    glBegin(GL_LINES);
    glVertex3f(0, 0, 0);
    glVertex3f(0, 100, 0);//上边
    glEnd();

以上代码是沿xy轴绘制的100单位像素点的直线,但是实际效果看到的两条线并不一样长,原因是该函数glOrtho。glOrtho()最好是设置成和屏幕的分辨率相当的,要不然,后面的glVertex3f函数绘制的单位像素点与实际的单位像素点并不是1:1的关系。

顶点数组

http://blog.sina.com.cn/s/blog_4d035b080100k3el.html

 

利用视点变换来实现旋转缩放等

http://www.docin.com/p-776799704.html

 

2016.3.22

在例子与应用中学习

 

 

2016.4.4

http://zhidao.baidu.com/link?url=Nk_a9G8KIlxJCjwPDSeYhtdEwwC-CuFffh-6J99zJjA_mmevu47JL6MWG0JFqum6rmOb-tyZMc3L7hBG-5mPza

在程序中加入音乐

posted @ 2016-03-08 21:14  某小呆  阅读(161)  评论(0)    收藏  举报