我第一次在 Samsung GT-N8000 上使用 cocos2d-2.0-x-2.0.4 开发 Android 应用程序,所以如果有人对此主题有想法,请帮助我。
此设备上的着色器一切正常,但当设备进入锁定模式并解锁时我发现错误。
最佳答案
是的。我们有同样的问题。一旦应用程序进入后台并从其恢复,无论添加到“着色器缓存”的自定义着色器都不起作用。只需尝试重置您的自定义着色器并在其位置添加新的着色器即可。
有关更多信息,请检查 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();
}
关于android - 当设备进入锁定模式并恢复时,着色器在 Android 设备中无法工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17451870/