我正在练习一些 opengl 代码,但是当我想通过以下方式强制 opengl 上下文使用特定版本的 opengl 时glutInitContextVersion()它编译过程失败并给出以下消息:-
使用未声明的标识符“glutInitContextVersion”
我想解决这个问题,所以我的代码尽可能简单
code
#include "File.h"
#include <GLUT/GLUT.h>
#include <OpenGL/OpenGL.h>
using namespace std;
int main ()
{
glutInitContextVersion(3,2);
return 1;
}
但是我能够使用其他 glut 函数而没有任何错误或警告消息
您可以使用 OS X 10.9 的 Xcode 版本附带的 GLUT 创建 3.2+ 核心配置文件上下文。您只需要使用不同的界面即可。而不是打电话glutInitContextVersion()
,您需要添加GLUT_3_2_CORE_PROFILE
标志到glutInitDisplayMode()
call:
glutInitDisplayMode(... | GLUT_3_2_CORE_PROFILE);
您还需要包括<OpenGL/gl3.h>
before <GLUT/glut.h>
使用 GL3 及更高版本的功能。
整个事情会生成一堆编译器警告,因为 GLUT 在 OS X 10.9 中被标记为已弃用。我对相关问题的回答包含有关如何禁用这些警告的说明:Mac OSX 10.9 中的过多弃用,IDE:QT Creator https://stackoverflow.com/questions/24095931/glut-deprecation-in-mac-osx-10-9-ide-qt-creator/24098402#24098402.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)