2014-02-27 66 views
1

函数glCreateShaderObjectARB()在哪里? 我包括以下内容:函数glCreateShaderObjectARB()在哪里?

#include <gl\GL.h> 
#include <gl\wglext.h> 
#include <gl\glext.h> 

但我不能用glCreateShaderObjectARB()功能!

与之相似,我想用:

glShaderSourceARB(); 
glAttachObjectARB(); 
glCompileShaderARB(); 
glLinkProgramARB(); 

回答

2

这是GL_ARB_shader_objects一部分,除非你有一个OpenGL实现,预日期2.0你不应该使用它。使用核心GLSL代替,函数名称略有不同(,例如glCreateShaderObjectARB (...)glCreateShader (...)),但功能上它们是相同的。

你遇到的任何使用ARB扩展的教程都应该被忽略,因为它太旧了(10年)被认为与今天有关。

此外,除非你是在OS X,你将不得不在运行时加载使用平台的扩展加载机制此功能,包括报头是不会解决你的问题。我建议你使用GLEW让生活更轻松。

0

您应该激活这个原型与定义之前,包括:

#define GL_GLEXT_PROTOTYPES 1 
#include <GL/glext.h>