首页 > 解决方案 > glBufferData 使用 Buffer 的哪一部分

问题描述

a 的哪个部分使用Bufferandroid.opengl.GLES20.glBufferData

约定是 NIO 缓冲区使用者读取和之间的remaining数据项。对玩具应用程序和模拟 Android 的快速实验表明,至少确实考虑到了这一点。但另一方面,受 C 语言影响的 OpenGL API 给人一种低级的感觉,并且该函数确实带有自己的参数,即使在典型的 NIO 约定中已经有了这些信息。所以我想知道我能在多大程度上信任该公约的其余部分。positionlimitpositionsizeremaining

是否有一些文档明确指出使用的数据从缓冲区开始position而不是从缓冲区开始?size并且理想情况下还澄清了论点glBufferData与价值之间的关系Buffer.remaining(),特别是如果后者更小?

除非有如此清晰的文档,我能相信我的实验多远?通常我倾向于假设任何未记录的内容可能取决于实施。是否存在某些供应商图形驱动程序或未来的 Android 更新可能会改变此 Java API 级别的行为并以不同方式解释缓冲区的真正危险?

我应该使用Buffer.slice只是为了在兼容性方面安全吗?

标签: javaandroidopengl-esnio

解决方案


推荐阅读