OpenGL入门(一):基于VS2010的OpenGL环境的搭建与使用

本文详细介绍如何在VS2010环境下配置OpenGL开发环境,包括freeglut、GLEW及GLUT库的设置步骤,帮助读者顺利搭建OpenGL项目。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

配置文件:
freeglut-2.8.1
glew-1.11.0-win32
glutdlls37beta
SB5
文件下载:
链接:http://pan.baidu.com/s/1qYNfDDU 密码:0svs

1、freeglut配置
{
Debug模式和Release模式
Debug为调试版本,包含调试信息,不作任何优化,便于调试程序,运行速度慢。
Release为发布版本,进行了优化,便于用户使用,运行速度快。
在VS2010的工具栏有个文本框,可以选择模式。
}

运行freeglut.sln项目工程,以Debug模式生成解决方案,会在…\OpenGL超级宝典\freeglut-2.8.1\freeglut-2.8.1\lib\x86\Debug目录下生成freeglut.dll和freeglut.lib文件。

将…\OpenGL超级宝典\freeglut-2.8.1\freeglut-2.8.1\include\GL目录下的freeglut.h;freeglut_ext.h;fre_std.h复制到D:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\GL目录下。
这里写图片描述

将…\OpenGL超级宝典\freeglut-2.8.1\freeglut-2.8.1\lib\x86\Debug目录下的freeglut.dll复制到C:\Windows\SysWOW64目录下。
这里写图片描述

将…\OpenGL超级宝典\freeglut-2.8.1\freeglut-2.8.1\lib\x86\Debug目录下的freeglut.lib复制到D:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\lib目录下。

2、glew配置
将…\OpenGL超级宝典\glew-1.11.0-win32\glew-1.11.0\include\GL目录下的glew.h,glxew.h,wglew.h复制到D:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\GL目录下。

将…\OpenGL超级宝典\glew-1.11.0-win32\glew-1.11.0\lib\Release\Win32目录下的glew32.lib;glew32s.lib复制到D:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\lib目录下。

将…\OpenGL超级宝典\glew-1.11.0-win32\glew-1.11.0\bin\Release\Win32目录下的glew32.dll复制到C:\Windows\SysWOW64目录下。

3、glut配置
将…\OpenGL超级宝典\glutdlls37beta目录下的glut.h文件复制到D:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\GL目录下。

将…\OpenGL超级宝典\glutdlls37beta目录下的glut.lib;glut32.lib文件复制到D:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\lib目录下。

将…\OpenGL超级宝典\glutdlls37beta目录下的glut.dll;glut32.dll文件复制到C:\Windows\SysWOW64目录下。

4、构建GLTools库
新建一个gltools的win32项目工程,选择控制台应用程序,空项目。

将…\OpenGL超级宝典\SB5\Src\GLTools\include目录下的.h文件复制到D:\OpenGL\gtools\gltools目录下。
将…\OpenGL超级宝典\SB5\Src\GLTools\src目录下的.cpp文件复制到D:\OpenGL\gtools\gltools目录下。

项目工程中添加头文件和源文件,在stdafx.h文件中添加项目中头文件名。

{
在每个.cpp文件的最前面加#include “stdafx.h”。

出现问题:
如果出现c:\project\gltools\gltools\math3d.cpp(45): fatal error C1083: 无法打开包括文件:“math3d.h”: No such file or directory等头文件找不到的情况就需要在VS2010的安装地址处VC/include文件夹里面也加上了math3d.h等头文件加上就可以运行了。

1>LINK : warning LNK4098: 默认库“LIBCMT”与其他库的使用冲突;请使用 /NODEFAULTLIB:library
解决方法:忽略LIBCMT.lib库,项目->属性->配置属性->连接器->输入->忽略特定库->添加LIBCMT.lib

1>MSVCRTD.lib(crtexew.obj) : error LNK2019: 无法解析的外部符号 _WinMain@16,该符号在函数 ___tmainCRTStartup 中被引用
解决方法:

stdafx.h
取消预编译头的方法:项目名处右键->属性->配置属性->C/C++->预编译头->不适用预编译头

windows程序,WinMain为入口函数,在VS2010中新建项目为“win32项目”,dos控制台程序,main是入口函数,在VS2010中新建项目为“win32控制台应用程序”

如果你需要的是windows程序:

1.菜单中选择 Project->Properties, 弹出Property Pages窗口
2.在左边栏中依次选择:Configuration Properties->C/C++->Preprocessor,然后在右边栏的Preprocessor Definitions对应的项中删除_CONSOLE, 添加_WINDOWS.
3.在左边栏中依次选择:Configuration Properties->Linker->System,然后在右边栏的SubSystem对应的项改为Windows(/SUBSYSTEM:WINDOWS)

如果你需要的是控制台程序:

1.菜单中选择 Project->Properties, 弹出Property Pages窗口
2.在左边栏中依次选择:Configuration Properties->C/C++->Preprocessor,然后在右边栏的Preprocessor Definitions对应的项中删除_WINDOWS, 添加_CONSOLE.
3.在左边栏中依次选择:Configuration Properties->Linker->System,然后在右边栏的SubSystem对应的项改为CONSOLE(/SUBSYSTEM:CONSOLE)

为什么改了之后还是这样的问题:
1>MSVCRTD.lib(crtexe.obj) : error LNK2019: 无法解析的外部符号 _main,该符号在函数 ___tmainCRTStartup 中被引用

要么就是这个:
1>MSVCRTD.lib(crtexew.obj) : error LNK2019: 无法解析的外部符号 _WinMain@16,该符号在函数 ___tmainCRTStartup 中被引用

TT
}

参考文献:
http://blog.youkuaiyun.com/so_geili/article/details/51685005

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值