本文整理汇总了C++中Shader::GetId方法的典型用法代码示例。如果您正苦于以下问题:C++ Shader::GetId方法的具体用法?C++ Shader::GetId怎么用?C++ Shader::GetId使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Shader
的用法示例。
在下文中一共展示了Shader::GetId方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: Build
void Program::Build(Shader vert, Shader frag)
{
m_vert = vert;
m_frag = frag;
if (!(m_vert.IsCompiled() && m_frag.IsCompiled()))
{
// Both shaders must be compiled.
throw 0;
}
m_id = glCreateProgram();
glAttachShader(m_id, vert.GetId());
glAttachShader(m_id, frag.GetId());
glLinkProgram(m_id);
// Check the Link.
GLint link_ok;
glGetProgramiv(m_id, GL_LINK_STATUS, &link_ok);
if (GL_FALSE == link_ok)
{
// Link failed, get error message.
char* err_buf = new char[200];
int act_leng = 0;
glGetProgramInfoLog(m_id, 200, &act_leng, err_buf);
printf("Shader Link failure: %s\n", err_buf);
return;
}
// Everything is ready to rock and roll.
m_built = true;
}