我用的是OPENGL的电子书,直接将书上的例程复制到VC++中调试会出现许多问题,这些问题看似复杂,其实很简单。我在网上寻求帮助的过程中,发现许多人都有和我类似的经历,这个问题较有代表性。估计是大家都或多或少用到过这个教程来学习。
为此,我将我所掌握的解决方法记下来,以供有兴趣的同学参考。
这是电子书上的代码:例4-1 OpenGL简单例程(Simple.c),直接复制粘贴,进行调试
#include
#include
#include "glos.h"
void main(void)
{
auxInitDisplayMode(AUX_SINGLE|AUX_RGBA);
auxInitPosition(0,0,500,500);
auxInitWindow("simple");
glClearColor(0.0,0.0,0.0,0.0);
glClear(GL_COLOR_BUFFER_BIT);
glColor3f(1.0,0.0,0.0);
glRectf(-0.5,-0.5,0.5,0.5);
glFlush();
_sleep(1000);
}
有许多错误,下面一一解决
1.在#include 前面加#include
2.将#include "glos.h"删掉
3.如果用的是VC++2005,则在项目属性里面链接OpenGL库文件,找到连接器--输入--附加依 赖项--加上OpenGL32.lib GLu32.lib GLaux.lib。(VC6.0在setting里面可以设置)
4.如果用的是VC++2005,则在项目属性里面,常规选项--将“字符集”改为“使用多字节字符集”
5.如果你是直接将本代码复制粘贴的话,会将网页中控制格式的字符也复制进编译器中,导致字符无法识别,将代码缩进重新换行,即可。
现在编译的话,应该就没有问题了,你将会看到一个红色的矩形被绘制在窗体中,快去试试吧!!