Xcode COCOS2D2.0和OpenGL分析器建议
我已经在XCode上运行OpenGL Analyzer分析了我的游戏。我在游戏中使用Cococs2d 2.0作为静态库,我想知道以下建议是否能提高我的性能。我在其他论坛上读到一些帖子,说我不应该担心这一点,但由于我确实有一些性能问题,我想了解这些建议是否有可能改善它们 建议: 概述: 思考: 我特别提到的建议是: “建议使用VAO和VBO” 那么,我也想知道为什么会有“许多小批量抽签通知”。我使用的是spritebatch节点,这应该可以避免这个问题 另外,其他建议似乎也有道理,但这些是最“常见”的建议,因此我想开始分析这些建议。一个“小批量绘制调用”是指顶点数少于n个的任何东西。我不确定使用的确切阈值,但它可能在100-200左右。spritebatches真正做的是消除多次分割绘制调用以切换绑定纹理的需要,这并不自动意味着每个绘制调用将有100多个顶点(或在此上下文中定义的任意n个顶点);这种可能性很大,但不是必须的 老实说,我更关心的是非VBO draw调用和不使用VAO,尤其是如果您希望代码具有前向兼容性的话 “逻辑缓冲区负载”和“Mipmapping用法”警告很可能相关;可能两者都与FBO有关。其中一个与不正确使用Xcode COCOS2D2.0和OpenGL分析器建议,xcode,performance,opengl-es,cocos2d-iphone,Xcode,Performance,Opengl Es,Cocos2d Iphone,我已经在XCode上运行OpenGL Analyzer分析了我的游戏。我在游戏中使用Cococs2d 2.0作为静态库,我想知道以下建议是否能提高我的性能。我在其他论坛上读到一些帖子,说我不应该担心这一点,但由于我确实有一些性能问题,我想了解这些建议是否有可能改善它们 建议: 概述: 思考: 我特别提到的建议是: “建议使用VAO和VBO” 那么,我也想知道为什么会有“许多小批量抽签通知”。我使用的是spritebatch节点,这应该可以避免这个问题 另外,其他建议似乎也有道理,但这些是最“
glClear(…)
有关,另一个与使用没有mipmap的纹理有关
关于逻辑缓冲区加载,您应该查看GL\u EXT\u discard\u framebuffer
,对于基于分片的延迟渲染GPU(如所有iOS设备使用的GPU),以这种方式清除帧缓冲区是一种非常健康的优化策略
至于mipmap用法警告,我相信这是被触发的,因为您正在绘制FBO纹理,然后使用mipmap过滤器模式应用该纹理。必须使用glGenerateMipamp(…)
手动构建绘制FBO的mip链/棱锥体
如果您能给我指出触发这些警告的一些单独的行,我很乐意为您详细解释它们