我正在尝试解决一个关于glMapBufferRange
. glMapBufferRange
我们的代码在运行 iOS 6.x 的 iPad4 上使用 VBO 进行流式绘图。模式类似于:
Map(第一个子区域)->向第一个子区域写入数据->取消映射->映射(第二个子区域)->向第二个子区域写入数据->UnMap...如果缓冲区已满,则绘制缓冲区并重新启动以从头开始填充数据。
仪器说有一些 GPU 等待glMapBufferRange
。我查看了我们的代码并参考了 API 手册。我将访问标志设置glMapBufferRange
为GL_MAP_WRITE_BIT | GL_MAP_INVALIDATA_RANGE_BIT | GL_MAP_UNSYNCHRONIZED_BIT
。但是,GL_MAP_UNSYNCHRONIZED_BIT
根据仪器被忽略。无论GL_MAP_UNSYNCHRONIZED_BIT
是否设置,性能都是一样的。
有谁知道为什么?有什么建议可以改进这个用例吗?
谢谢,华莱士