位置: 编程技术 - 正文
推荐整理分享glClearBufferSubData,希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!
glCearBufferSubData 用一个固定的值填充缓冲区对象的一部分(或者全部)
参数: target : 指定缓冲区对象的类型,具体类型参考 glBufferData internalformat : 指定缓冲区对象中的数据的内部存储格式 offset:指定需要替换数据的偏移量(以字节计算) size:指定需要填充的数据的大小(以字节计算) format:指定内存中的数据的格式 type:指定类存中数据的类型 data:指定内存中的数据,用来替换掉缓冲区对象中的数据
上述参数中有几个概念需要明确: 1. internalformat: 用来表述缓冲区对象中的数据是那种形式的,可选的取值有:
内部格式 数据类型 组成成分 是否单位化 成分(0,1,2,3) GL_R8 ubyte 1 YES R 0 0 1 GL_R ushort 1 YES R 0 0 1 GL_RF half 1 NO R 0 0 1 GL_RF float 1 NO R 0 0 1 GL_R8I byte 1 NO R 0 0 1 GL_RI short 1 NO R 0 0 1 GL_RI int 1 NO R 0 0 1 GL_R8UI ubyte 1 NO R 0 0 1 GL_RUI ushort 1 NO R 0 0 1 GL_RUI uint 1 NO R 0 0 1 GL_RG8 ubyte 2 YES R G 0 1 GL_RG ushort 2 YES R G 0 1 GL_RGF half 2 NO R G 0 1 GL_RGF float 2 NO R G 0 1 GL_RG8I byte 2 NO R G 0 1 GL_RGI short 2 NO R G 0 1 GL_RGI int 2 NO R G 0 1 GL_RG8UI ubyte 2 NO R G 0 1 GL_RGUI ushort 2 NO R G 0 1 GL_RGUI uint 2 NO R G 0 1 GL_RGBF float 3 NO R G B 1 GL_RGBI int 3 NO R G B 1 GL_RGBUI uint 3 NO R G B 1 GL_RGBA8 uint 4 YES R G B A GL_RGBA short 4 YES R G B A GL_RGBAF half 4 NO R G B A GL_RGBAF float 4 NO R G B A GL_RGBA8I byte 4 NO R G B A GL_RGBAI short 4 NO R G B A GL_RGBAI int 4 NO R G B A GL_RGBA8UI ubyte 4 NO R G B A GL_RGBAUI ushort 4 NO R G B A GL_RGBAUI uint 4 NO R G B Aformat和type指定了data中的格式类型 format : 可以取值 GL_RED, GL_RG, GL_RGB,GL_RGBA 来代表一维、二维、三维或四维的数据
type: 指定了数据的类型是GL_FLOAT或者GL_INT或者GL_UNSIGNED_BYTE等
data: 指定用来填充的数据,如果是NULL那么该缓冲区由offset和size指定的区域会被0填充
阴影映射(Shadow Map)的研究(三) 阴影映射(ShadowMap)的研究(三)最近为了自己制作的项目可是吃了不少苦头,这其中关键的一点就是想要实现阴影映射(ShadowMap)。为了实现目标,我参
OSG 中 常用的 Uniforms osg中的Uniforms主要存在两个地方,一个是SceneView中,voidSceneView::updateUniforms()voidSceneView::updateUniforms(){if(!_localStateSet){_localStateSet=newosg::StateSet;}if(!_localStateS
OPENGL矩阵变换
友情链接: 武汉网站建设