缓存(buffer)对象

缓存对象包含一个固定大小的GL memory.

  • glGEnBuffers(size, *buffers)
  • BindBuffer(targetm ,uint buffer)  其中target是最重要的参数,表明你想要建立一个什么样的buffer , 这里列处一部分可以使用的target参数 ARRAY_BUFFER , COPY_COUNTER_BUFFER , ELEMENT_ARRAY_BUFFER , PIXEL_PACK_BUFFER , TEXTURE_BUFFER , UNIFORM_BUFFER 。
  • buffer 对象可以绑定在indexed target上, 使用函数 BindBufferRange.
    这里的indexded target包括 ATOMIC_COUNTER_BUFFER , SHADER_STORAGE_BUFFER , TRANSFORM_FEEDBACK_BUFFER 和 UNIFORM_BUFFER.
  • 更新buffer数据, BufferData
  • 清除buffer数据 ,ClearBufferSubData
  • GL buffer可以被全部或者部分的映射到host address space , 如此可以很方便的修改buffer中的数据。 MapBuffeRange。 数据修改完成,需要调用UnmapBuffer 来释放映射
  • InvalidateBufferSubData 可以用来是buffer中的数据无效,如此,其中的数据会变成为定义状态。
  • 在buffer之间拷贝数据:  CopyBufferSubData .


本文地址: http://www.bagualu.net/wordpress/archives/2529 转载请注明




发表评论

电子邮件地址不会被公开。 必填项已用*标注