2013-07-03 38 views

回答

2

雅。我们遇到了同样的问题。无论将自定义着色器添加到“shadercache”中,只要应用程序转到背景并从其恢复,就无法工作。只要尝试重置您的自定义着色器并在其位置添加新的着色器。

欲了解更多信息,请查看CCShaderCache::reloadDefaultShaders()这就是所谓的被称为应用程序的简历。

CCGLProgram * program = CCShaderCache::sharedShaderCache()->programForKey("customshader"); 
    //reset the old 
    if(program) 
     program->reset(); 

{ 
    CCGLProgram * p = new CCGLProgram(); 
    ..... 
    ..... 
    p->updateUniforms(); 
    //add new shader 
    CCShaderCache::sharedShaderCache()->addProgram(p, "customshader"); 
    p->release(); 

} 
相关问题