索引
F
glFenceSync?
3.2+ 当前gl 命令流中创建同步对象
GLenum condition, : GL_SYNC_GPU_COMMANDS_COMPLETE
GLbitfield flags : 0
服务端和客户端可通过glWaitSync\glClientWaitSync等待命令执行完成
glFinish
2.0+ 等gl 命令执行完成
glFlush
2.0+ 将所有缓冲命令发往服务端,但并不等待命令执行完成
glFlushMappedBufferRange
3.0+ 只是修改的buffer数据范围,数据由glMapBufferRange通过GL_MAP_FLUSH_EXPLICIT_BIT标记映射。
GLenum target, GL_ARRAY_BUFFER \GL_ATOMIC_COUNTER_BUFFER…..
GLintptr offset, 偏移,相对于当前映射区域的起始地址
GLsizeiptr length
可多次调用,指定多个不同的区域
glFlushMappedNamedBufferRange 4.5+ 直接指定buffer
glFramebufferParameteri ?
4.3+ 设置帧缓冲区参数
GLenum target : GL_DRAW_FRAMEBUFFER/GL_FRAMEBUFFER, GL_READ_FRAMEBUFFER
GLenum pname
GL_FRAMEBUFFER_DEFAULT_WIDTH/HEIGHT/LAYERS/SAMPLES 默认宽\高\层\采样数,
当帧缓冲区没有关联附件时使用此参数设置,否则使用附件对应的值。
GL_FRAMEBUFFER_DEFAULT__FIXED_SAMPLE_LOCATIONS 是否采用相同的采样数和位置, 0表示采用不同的采样位置、采样数, 设置为其它值使用固定的采样位置、采样数
GLint param 设置的参数值
默认的绘制、读取缓冲区不能修改,不能作为此命令的目标帧缓冲区。
glFramebufferRenderbuffer 3.0
关联渲染缓冲区到帧缓冲区对象,用与渲染颜色、深度或模板
GLenum target :
GL_DRAW_FRAMEBUFFER / GL_READ_FRAMEBUFFER / GL_FRAMEBUFFER.
GLenum attachment,
GL_COLOR_ATTACHMENTi, GL_DEPTH_ATTACHMENT, GL_STENCIL_ATTACHMENT or GL_DEPTH_STENCIL_ATTACHMENT
关联的颜色缓冲区索引i为0-GL_MAX_COLOR_ATTACHMENTS-1,
设置为GL_DEPTH_STENCIL_ATTACHIMENT的渲染缓冲区内部格式必须为GL_DEPTH_STENCIL。
GLenum renderbuffertarget, : GL_RENDERBUFFER. 固定值
GLuint renderbuffer : 关联的渲染缓冲区, 为0时取消关联,并恢复对应关联点为默认状态。
glFramebufferTexture、glFramebufferTexture1/2/3D 3.2
将纹理关联到帧缓冲区
GLenum target, 绑定到的帧缓冲区对象:GL_DRAW_FRAMEBUFFER, GL_READ_FRAMEBUFFER
GLenum attachment, 同glFramebufferRenderBuffer
GLenum textarget glFramebufferTexture1/2/3D版本包含此参数(3.0+),在texture不为0时需要指定为:
1D:GL_TEXTURE_1D
2D:GL_TEXTURE_2D, GL_TEXTURE_RECTANGLE, GL_TEXTURE_CUBE_MAP_POSITIVE/NEGATIVE,_XYZ or GL_TEXTURE_2D_MULTISAMPLE
3D:GL_TEXTURE_3D
GLuint texture, 纹理名,使用glFrameBufferTexture时,如果是纹理数组或者立方图,则对应的关联点为多层
GLint level : 所使用的mipmap 层
glFramebufferTextureLayer
3.0+
和glFramebufferTexture相比追加了GLint layer参数,用于指定对应的层
glFrontFace
GLenum mode : GL_CW and GL_CCW,设置什么是正面。默认逆时针为正面
可通过glDisable(GL_CULL_FACE.)禁用。
可通过glCullFace设置剔除哪种面:GL_FRONT, GL_BACK, and GL_FRONT_AND_BACK