开始正式学习计算机图形学,学长还是建议从OpenGL开始,熟悉一种在学习使用DirectX也会更快。既然要学习OpenGL,用什么语言,一直以来习惯了C#的简单方便,总想还是用C#,可是面试时用C#写的程序的运行速度真的让人不敢恭维。并且还没发现那个对OpenGL的封装让我用的得心应手的。最终还是决定使用C++,虽然要面对那冗杂的win32消息,可是C++的效率的确让人称赞,自己努力学吧。
既然用C++,在VS 2008 beta 2 中配置好环境,NeHe的OpenGL教程当然是最好的于是开始学习。
Lesson01
第一课中主要是建立一个OpenGL黑色窗口,通过F1切换全屏和窗口模式,Esc退出。
函数框架:
wWinMain() 程序入口
WndProc() 消息处理函数
ReSizeGLScene() 窗口重设大小处理函数
CreateGLWindow() 创建GL窗口
KillGLWindow() 释放资源
InitGL() 初始化GL窗口
DrawGLScene() 绘制函数
描述起来就是那么简单,按着教程写出来也算顺利,可是到了最后,发现当点击F1切换后,程序就退出了?查找了半天只是找到在F1点击后,会出现一个WM_QUIT的消息,但就是找不到产生该消息的原因,最后只好添加了vkF1这个标志,在WM_QUIT消息处理中来判断,算是绕路解决了这个问题,不过还是想知道WM_QUIT产生的原因,如果那位高手知道,望指教(Email:schindlor@163.com)!
Source Code:Lesson01.rar