我使用此代码检查我的glsl着色器是否编译正常。OpenGL/GLSL检查着色器在intel卡上编译是否正常
glGetObjectParameterivARB(obj, GL_OBJECT_INFO_LOG_LENGTH_ARB, &infologLength);
if (infologLength > 1)
{
int charsWritten = 0;
char * const infoLog = new char[infologLength];
glGetInfoLogARB(obj, infologLength, &charsWritten, infoLog);
tError(infoLog, false);
delete infoLog;
}
}
返回的字符串的长度在nvidia和ATI卡上是空的,但是在intel卡上这个返回字符串“没有错误”。
现在什么是最好的方式来找出,如果真的没有错误?我应该检查这个字符串吗?或者是否存在一个约定glGetInfoLogARB应该返回的函数?
glGetInfoLogARB仅用于调试目的,所以不,没有标准。 – yuriks 2010-04-18 17:56:08