void ShaderProgramOGL::Activate() { if (mProgramState == STATE_NEW) { if (!Initialize()) { NS_WARNING("Shader could not be initialised"); return; } } NS_ASSERTION(HasInitialized(), "Attempting to activate a program that's not in use!"); mGL->fUseProgram(mProgram); // check if we need to set the projection matrix if (mIsProjectionMatrixStale) { SetProjectionMatrix(mProjectionMatrix); } }
void ShaderProgramOGL::Activate() { if (mProgramState == STATE_NEW) { if (!Initialize()) { NS_WARNING("Shader could not be initialised"); return; } } NS_ASSERTION(HasInitialized(), "Attempting to activate a program that's not in use!"); mGL->fUseProgram(mProgram); #if CHECK_CURRENT_PROGRAM mGL->SetUserData(&sCurrentProgramKey, this); #endif // check and set the projection matrix if (mIsProjectionMatrixStale) { SetProjectionMatrix(mProjectionMatrix); } }