class QOpenGLFunctions#

QOpenGLFunctions 类提供了跨平台访问OpenGL ES 2.0 API的方法。 更多信息...

继承自: QOpenGLExtraFunctions

概述#

方法#

注意

此文档可能包含自动化从 C++ 转换到 Python 的代码片段。我们始终欢迎对片段翻译的贡献。如果您发现翻译存在问题,也可以通过在 https:/bugreports.qt.io/projects/PYSIDE 上创建工单来告诉我们

详细说明#

警告

本节包含自动从 C++ 转换到 Python 的代码片段,可能包含错误。

OpenGL ES 2.0 定义了OpenGL规范的一个子集,该子集在许多桌面和嵌入式OpenGL实现中都是通用的。然而,由于在这些子集中的函数需要手动在桌面系统上解决,因此使用它们可能有些困难。

QOpenGLFunctions 提供了一个所有OpenGL系统都可以使用的保证API,并负责在需要的情况下解决函数。推荐使用 QOpenGLFunctions 的方法是直接继承。

class MyGLWindow(QWindow, QOpenGLFunctions):

    Q_OBJECT
# public
    MyGLWindow = explicit(QScreen screen = None)
# protected
    def initializeGL():
    def paintGL():
    m_context = QOpenGLContext()

def __init__(self, screen):
    super().__init__(screen)

    setSurfaceType(OpenGLSurface)
    create()
    # Create an OpenGL context
    m_context = QOpenGLContext()
    m_context.create()
    # Setup scene and render it
    initializeGL()
    paintGL()

def initializeGL(self):

    m_context.makeCurrent(self)
    initializeOpenGLFunctions()

然后,paintGL() 函数可以无需显式解决地使用OpenGL ES 2.0 中的任何函数,例如以下示例中的 glActiveTexture()

def paintGL(self):

    m_context.makeCurrent(self)
    glActiveTexture(GL_TEXTURE1)
    glBindTexture(GL_TEXTURE_2D, textureId)
    # ...
    m_context.swapBuffers(self)
    m_context.doneCurrent()

QOpenGLFunctions 也可以在所有平台上直接用于临时调用OpenGL ES 2.0 函数。

def glFuncs(QOpenGLContext.currentContext()):
glFuncs.glActiveTexture(GL_TEXTURE1)

另一种方法是查询上下文关联的 QOpenGLFunctions 实例。与之前的方法相比,这种方法有些更快,因为避免了创建新的实例,但由于内部数据结构是共享的,并且对于给定的上下文,函数解决只发生一次,因此差异相对较小。

glFuncs = QOpenGLContext.currentContext().functions()
glFuncs.glActiveTexture(GL_TEXTURE1)

QOpenGLFunctions 为所有OpenGL ES 2.0 函数提供了包装器,包括OpenGL 1.x和ES 2.0的通用子集。虽然例如,可以调用glClear()glDrawArrays()等函数,只要应用程序链接到平台特定的OpenGL库,但是通过QOpenGLFunctions 调用它们就可以允许动态加载OpenGL实现。

可以使用 hasOpenGLFeature()openGLFeatures() 函数来确定OpenGL实现对主要OpenGL ES 2.0功能是否有支持。例如,以下示例检查是否有非2的幂次的纹理。

def funcs(QOpenGLContext.currentContext()):
npot = funcs.hasOpenGLFeature(QOpenGLFunctions.NPOTTextures)

另请参阅

QOpenGLContext QSurfaceFormat

class OpenGLFeature#

(从enum.Flag派生) 此枚举定义了OpenGL和OpenGL ES特性,其存在可能依赖于实现。

常量

描述

QOpenGLFunctions.Multitexture

glActiveTexture() 函数可用。

QOpenGLFunctions.Shaders

着色器函数可用。

QOpenGLFunctions.Buffers

顶点缓冲区和索引缓冲区函数可用。

QOpenGLFunctions.Framebuffers

帧缓冲区对象函数可用。

QOpenGLFunctions.BlendColor

glBlendColor() 可用。

QOpenGLFunctions.BlendEquation

glBlendEquation() 可用。

QOpenGLFunctions.BlendEquationSeparate

glBlendEquationSeparate() 可用。

QOpenGLFunctions.BlendEquationAdvanced

高级混合方程式可用。

QOpenGLFunctions.BlendFuncSeparate

glBlendFuncSeparate() 可用。

QOpenGLFunctions.BlendSubtract

混合减法模式可用。

QOpenGLFunctions.CompressedTextures

压缩纹理函数可用。

QOpenGLFunctions.Multisample

glSampleCoverage() 函数可用。

QOpenGLFunctions.StencilSeparate

独立的模板函数可用。

QOpenGLFunctions.NPOTTextures

非2的幂次的纹理可用。

QOpenGLFunctions.NPOTTextureRepeat

非2的幂次的纹理可以使用GL_REPEAT作为环绕参数。

QOpenGLFunctions.FixedFunctionPipeline

固定函数流水线可用。

QOpenGLFunctions.TextureRGFormats

GL_RED和GL_RG纹理格式可用。

QOpenGLFunctions.MultipleRenderTargets

帧缓冲区对象可用多个颜色附件。

__init__(context)#
参数:

contextQOpenGLContext

context构建一个函数解析器。如果contextNone,则解析器将为当前的QOpenGLContext 创建。

该上下文或组中的另一个上下文必须是当前的。

以这种方式构造的对象只能与context及其共享的其他上下文一起使用。使用initializeOpenGLFunctions() 来更改对象的上下文关联。

__init__()

构建默认函数解析器。解析器在调用initializeOpenGLFunctions()以指定上下文之前不能使用。initializeOpenGLFunctions()

glActiveTexture(texture)#
参数:

texture – int

一个便利函数,它调用 glActiveTexture(texture)。

有关更多信息,请参阅glActiveTexture()的OpenGL ES 3.X文档。

glAttachShader(program, shader)#
参数:
  • program – int

  • shader – int

一个便利函数,它调用 glAttachShader(program, shader)。

有关更多信息,请参阅OpenGL ES 3.X文档中的glAttachShader()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glBindAttribLocation(program, index, name)#
参数:
  • program – int

  • index – int

  • name – str

一个便利函数,它调用 glBindAttribLocation(program, index, name)。

有关更多信息,请参阅OpenGL ES 3.X文档中的glBindAttribLocation()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glBindBuffer(target, buffer)#
参数:
  • target – int

  • buffer – int

一个便利函数,它调用 glBindBuffer(target, buffer)。

有关更多信息,请参阅OpenGL ES 3.X文档中的glBindBuffer()

glBindFramebuffer(target, framebuffer)#
参数:
  • target – int

  • framebuffer – int

一个便利函数,它调用 glBindFramebuffer(target, framebuffer)。

注意,Qt会将参数为0的framebuffer转换为当前绑定的QOpenGLContext的默认 framebufferObject

有关更多信息,请参阅OpenGL ES 3.X文档中的glBindFramebuffer()

glBindRenderbuffer(target, renderbuffer)#
参数:
  • target – int

  • renderbuffer – int

方便函数,调用 glBindRenderbuffer(target, renderbuffer)。

有关更多信息,请参阅 OpenGL ES 3.X 文档中的 glBindRenderbuffer()

glBindTexture(target, texture)#
参数:
  • target – int

  • texture – int

方便函数,调用 glBindTexture(target, texture)。

有关更多信息,请参阅 OpenGL ES 3.X 文档中的 glBindTexture()

glBlendColor(red, green, blue, alpha)#
参数:
  • red – float

  • green – float

  • blue – float

  • alpha – float

方便函数,调用 glBlendColor(red, green, blue, alpha)。

有关更多信息,请参阅 OpenGL ES 3.X 文档中的 glBlendColor()

glBlendEquation(mode)#
参数:

mode – int

方便函数,调用 glBlendEquation(mode)。

有关更多信息,请参阅 OpenGL ES 3.X 文档中的 glBlendEquation()

glBlendEquationSeparate(modeRGB, modeAlpha)#
参数:
  • modeRGB – int

  • modeAlpha – int

方便函数,调用 glBlendEquationSeparate(modeRGB, modeAlpha)。

有关更多信息,请参阅 OpenGL ES 3.X 文档中的 glBlendEquationSeparate()

glBlendFunc(sfactor, dfactor)#
参数:
  • sfactor – int

  • dfactor – int

方便函数,调用 glBlendFunc(sfactor, dfactor)。

有关更多信息,请参阅 OpenGL ES 3.X 文档中的 glBlendFunc()

glBlendFuncSeparate(srcRGB, dstRGB, srcAlpha, dstAlpha)#
参数:
  • srcRGB – int

  • dstRGB – int

  • srcAlpha – int

  • dstAlpha – int

这是一个方便函数,它调用glBlendFuncSeparate(srcRGB, dstRGB, srcAlpha, dstAlpha)。

更多信息,请参阅OpenGL ES 3.X文档中的glBlendFuncSeparate() .

glCheckFramebufferStatus(target)#
参数:

target – int

返回类型:

int

这是一个方便函数,它调用glCheckFramebufferStatus(target)。

更多信息,请参阅OpenGL ES 3.X文档中的glCheckFramebufferStatus() .

glClear(mask)#
参数:

mask – int

这是一个方便函数,它调用glClear(mask)。

更多信息,请参阅OpenGL ES 3.X文档中的glClear() .

glClearColor(red, green, blue, alpha)#
参数:
  • red – float

  • green – float

  • blue – float

  • alpha – float

这是一个方便函数,它调用glClearColor(red, green, blue, alpha)。

更多信息,请参阅OpenGL ES 3.X文档中的glClearColor() .

glClearDepthf(depth)#
参数:

depth – float

这是一个方便函数,在桌面OpenGL系统中调用glClearDepth(depth),在嵌入式OpenGL ES系统中调用glClearDepthf(depth)。

更多信息,请参阅OpenGL ES 3.X文档中的glClearDepthf() .

glClearStencil(s)#
参数:

s – int

这是一个方便函数,它调用glClearStencil(s)。

更多信息,请参阅OpenGL ES 3.X文档中的glClearStencil() .

glColorMask(红色, 绿色, 蓝色, Alpha)#
参数:
  • 红色 – int

  • 绿色 – int

  • 蓝色 – int

  • Alpha – int

这是一个便捷函数,用于调用glColorMask(红色, 绿色, 蓝色, Alpha)。

更多信息,请参阅OpenGL ES 3.X文档中的glColorMask()

glCompileShader(着色器)#
参数:

shader – int

这是一个便捷函数,用于调用glCompileShader(着色器)。

更多信息,请参阅OpenGL ES 3.X文档中的glCompileShader()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glCompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data)#
参数:
  • target – int

  • level – int

  • internalformat – int

  • width – int

  • height – int

  • border – int

  • imageSize – int

  • datavoid

这是一个便捷函数,用于调用glCompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data)。

更多信息,请参阅OpenGL ES 3.X文档中的glCompressedTexImage2D()

glCompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data)#
参数:
  • target – int

  • level – int

  • xoffset – int

  • yoffset – int

  • width – int

  • height – int

  • format – int

  • imageSize – int

  • datavoid

一个方便的函数,用于调用glCompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data)。

有关更多信息,请参阅OpenGL ES 3.X文档中的glCompressedTexSubImage2D()

glCopyTexImage2D(target, level, internalformat, x, y, width, height, border)#
参数:
  • target – int

  • level – int

  • internalformat – int

  • x – int

  • y – int

  • width – int

  • height – int

  • border – int

一个方便的函数,用于调用glCopyTexImage2D(target, level, internalformat, x, y, width, height, border)。

有关更多信息,请参阅OpenGL ES 3.X文档中的glCopyTexImage2D()

glCopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height)#
参数:
  • target – int

  • level – int

  • xoffset – int

  • yoffset – int

  • x – int

  • y – int

  • width – int

  • height – int

一个方便的函数,用于调用glCopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height)。

有关更多信息,请参阅OpenGL ES 3.X文档中的glCopyTexSubImage2D()

glCreateProgram()#
返回类型:

int

一个方便的函数,用于调用glCreateProgram()。

有关更多信息,请参阅OpenGL ES 3.X文档中的glCreateProgram()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glCreateShader(type)#
参数:

type – int

返回类型:

int

方便函数,用于调用glCreateShader(type)。

欲了解更多信息,请参阅OpenGL ES 3.X文档中的glCreateShader()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glCullFace(mode)#
参数:

mode – int

便捷函数,用于调用glCullFace(mode)。

欲了解更多信息,请参阅OpenGL ES 3.X文档中的glCullFace()

glDeleteBuffers(n, buffers)#
参数:
  • n – int

  • buffersunsigned int

便捷函数,用于调用glDeleteBuffers(n, buffers)。

欲了解更多信息,请参阅OpenGL ES 3.X文档中的glDeleteBuffers()

glDeleteFramebuffers(n, framebuffers)#
参数:
  • n – int

  • framebuffersunsigned int

便捷函数,用于调用glDeleteFramebuffers(n, framebuffers)。

欲了解更多信息,请参阅OpenGL ES 3.X文档中的glDeleteFramebuffers()

glDeleteProgram(program)#
参数:

program – int

便捷函数,用于调用glDeleteProgram(program)。

欲了解更多信息,请参阅OpenGL ES 3.X文档中的glDeleteProgram()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glDeleteRenderbuffers(n, renderbuffers)#
参数:
  • n – int

  • renderbuffersunsigned int

便捷函数,用于调用glDeleteRenderbuffers(n, renderbuffers)。

欲了解更多信息,请参阅OpenGL ES 3.X文档中的glDeleteRenderbuffers()

glDeleteShader(shader)#
参数:

shader – int

便捷函数,用于调用glDeleteShader(shader)。

欲了解更多信息,请参阅OpenGL ES 3.X文档中的glDeleteShader()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glDeleteTextures(n, textures)#
参数:
  • n – int

  • texturesunsigned int

调用 glDeleteTextures(n, textures) 的便捷函数。

有关更多信息,请参阅 OpenGL ES 3.X 文档中的 glDeleteTextures() .

glDepthFunc(func)#
参数:

func – int

调用 glDepthFunc(func) 的便捷函数。

有关更多信息,请参阅 OpenGL ES 3.X 文档中的 glDepthFunc() .

glDepthMask(flag)#
参数:

flag – int

调用 glDepthMask(flag) 的便捷函数。

有关更多信息,请参阅 OpenGL ES 3.X 文档中的 glDepthMask() .

glDepthRangef(zNear, zFar)#
参数:
  • zNear – float

  • zFar – float

在桌面 OpenGL 系统上调用 glDepthRange(zNear, zFar),在嵌入式 OpenGL ES 系统上调用 glDepthRangef(zNear, zFar) 的便捷函数。

有关更多信息,请参阅 OpenGL ES 3.X 文档中的 glDepthRangef() .

glDetachShader(program, shader)#
参数:
  • program – int

  • shader – int

调用 glDetachShader(program, shader) 的便捷函数。

有关更多信息,请参阅 OpenGL ES 3.X 文档中的 glDetachShader() .

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glDisable(cap)#
参数:

cap – int

调用 glDisable(cap) 的便捷函数。

有关更多信息,请参阅 OpenGL ES 3.X 文档中的 glDisable() .

glDisableVertexAttribArray(index)#
参数:

index – int

便捷函数,用于调用glDisableVertexAttribArray(index)。

更多信息,请参阅OpenGL ES 3.X文档中的glDisableVertexAttribArray()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glDrawArrays(mode, first, count)#
参数:
  • mode – int

  • first – int

  • count – int

便捷函数,用于调用glDrawArrays(mode, first, count)。

更多信息,请参阅OpenGL ES 3.X文档中的glDrawArrays()

glDrawElements(mode, count, type, indices)#
参数:
  • mode – int

  • count – int

  • type – int

  • indicesvoid

便捷函数,用于调用glDrawElements(mode, count, type, indices)。

更多信息,请参阅OpenGL ES 3.X文档中的glDrawElements()

glEnable(cap)#
参数:

cap – int

便捷函数,用于调用glEnable(cap)。

更多信息,请参阅OpenGL ES 3.X文档中的glEnable()

glEnableVertexAttribArray(index)#
参数:

index – int

便捷函数,用于调用glEnableVertexAttribArray(index)。

更多信息,请参阅OpenGL ES 3.X文档中的glEnableVertexAttribArray()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glFinish()#

便捷函数,用于调用glFinish()。

更多信息,请参阅OpenGL ES 3.X文档中的glFinish()

glFlush()#

便捷函数,用于调用glFlush()。

更多信息,请参阅OpenGL ES 3.X文档中的glFlush()

glFramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer)#
参数:
  • target – int

  • 附件 – int

  • renderbuffertarget – int

  • renderbuffer – int

这是一个方便的函数,调用 glFramebufferRenderbuffer(targetattachmentrenderbuffertargetrenderbuffer)。

更多信息请参阅OpenGL ES 3.X文档中的glFramebufferRenderbuffer()

glFramebufferTexture2D(target, attachment, textarget, texture, level)#
参数:
  • target – int

  • 附件 – int

  • textarget – int

  • texture – int

  • level – int

这是一个方便的函数,调用 glFramebufferTexture2D(targetattachmenttextargettexturelevel)。

更多信息请参阅OpenGL ES 3.X文档中的glFramebufferTexture2D()

glFrontFace(mode)#
参数:

mode – int

这是一个方便的函数,调用 glFrontFace(mode)。

更多信息请参阅OpenGL ES 3.X文档中的glFrontFace()

glGenBuffers(n, buffers)#
参数:
  • n – int

  • buffersunsigned int

这是一个方便的函数,调用 glGenBuffers(nbuffers)。

更多信息请参阅OpenGL ES 3.X文档中的glGenBuffers()

glGenFramebuffers(n, framebuffers)#
参数:
  • n – int

  • framebuffersunsigned int

这是一个方便的函数,调用 glGenFramebuffers(nframebuffers)。

更多信息请参阅OpenGL ES 3.X文档中的glGenFramebuffers()

glGenRenderbuffers(n, renderbuffers)#
参数:
  • n – int

  • renderbuffersunsigned int

这是一个方便的函数,调用 glGenRenderbuffers(nrenderbuffers)。

更多信息请参阅OpenGL ES 3.X文档中的glGenRenderbuffers()

glGenTextures(n, textures)#
参数:
  • n – int

  • texturesunsigned int

一个调用glGenTextures(n, textures)的便捷函数。

更多信息,请参阅OpenGL ES 3.X文档中的glGenTextures()

glGenerateMipmap(target)#
参数:

target – int

一个调用glGenerateMipmap(target)的便捷函数。

更多信息,请参阅OpenGL ES 3.X文档中的glGenerateMipmap()

glGetAttachedShaders(program, maxcount, count, shaders)#
参数:
  • program – int

  • maxcount – int

  • count – int

  • shadersunsigned int

一个调用glGetAttachedShaders(program, maxcount, count, shaders)的便捷函数。

更多信息,请参阅OpenGL ES 3.X文档中的glGetAttachedShaders()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glGetAttribLocation(program, name)#
参数:
  • program – int

  • name – str

返回类型:

int

一个调用glGetAttribLocation(program, name)的便捷函数。

更多信息,请参阅OpenGL ES 3.X文档中的glGetAttribLocation()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glGetBooleanv(pname)#
参数:

pname – int

返回类型:

PyObject

一个调用glGetBooleanv(pname, params)的便捷函数。

更多信息,请参阅OpenGL ES 3.X文档中的glGetBooleanv()

glGetBufferParameteriv(target, pname, params)#
参数:
  • target – int

  • pname – int

  • params – int

一个调用glGetBufferParameteriv(target, pname, params)的便捷函数。

更多信息,请参阅OpenGL ES 3.X文档中的glGetBufferParameteriv()

glGetError()#
返回类型:

int

一个调用glGetError()的便捷函数。

更多信息,请参阅OpenGL ES 3.X文档中的glGetError()

glGetFloatv(arg__1)#
参数:

arg__1 – int

返回类型:

对象

glGetFloatv(pname, params)
参数:
  • pname – int

  • params – float

方便函数,调用getfloatv(pname, params)。

更多信息,请参阅OpenGL ES 3.X文档中的glGetFloatv()

glGetFramebufferAttachmentParameteriv(target, attachment, pname, params)#
参数:
  • target – int

  • 附件 – int

  • pname – int

  • params – int

方便函数,调用getFramebufferAttachmentParameteriv(target, attachment, pname, params)。

更多信息,请参阅OpenGL ES 3.X文档中的glGetFramebufferAttachmentParameteriv()

glGetIntegerv(arg__1)#
参数:

arg__1 – int

返回类型:

对象

glGetIntegerv(pname, params)
参数:
  • pname – int

  • params – int

方便函数,调用getIntegerv(pname, params)。

更多信息,请参阅OpenGL ES 3.X文档中的getIntegerv()

glGetProgramiv(program, pname, params)#
参数:
  • program – int

  • pname – int

  • params – int

方便函数,调用getProgramiv(program, pname, params)。

更多信息,请参阅OpenGL ES 3.X文档中的getProgramiv()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glGetRenderbufferParameteriv(target, pname, params)#
参数:
  • target – int

  • pname – int

  • params – int

方便函数,调用getRenderbufferParameteriv(target, pname, params)。

获取更多信息,请参阅OpenGL ES 3.X文档中关于glGetRenderbufferParameteriv()的说明。

glGetShaderPrecisionFormat(shadertype, precisiontype, range, precision)#
参数:
  • shadertype – int

  • precisiontype – int

  • range – int

  • precision – int

这是一个便利函数,它调用glGetShaderPrecisionFormat(shadertype, precisiontype, range, precision)。

获取更多信息,请参阅OpenGL ES 3.X文档中关于glGetShaderPrecisionFormat()的说明。

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glGetShaderSource(shader)#
参数:

shader – int

返回类型:

str

glGetShaderiv(shader, pname, params)#
参数:
  • shader – int

  • pname – int

  • params – int

这是一个便利函数,它调用glGetShaderiv(shader, pname, params)。

获取更多信息,请参阅OpenGL ES 3.X文档中关于glGetShaderiv()的说明。

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glGetString(name)#
参数:

name – int

返回类型:

QString

这是一个便利函数,它调用glGetString(name)。

获取更多信息,请参阅OpenGL ES 3.X文档中关于glGetString()的说明。

glGetTexParameterfv(target, pname, params)#
参数:
  • target – int

  • pname – int

  • params – float

这是一个便利函数,它调用glGetTexParameteriv(target, pname, params)。

获取更多信息,请参阅OpenGL ES 3.X文档中关于glGetTexParameteriv()的说明。

glGetTexParameteriv(target, pname, params)#
参数:
  • target – int

  • pname – int

  • params – int

这是一个便利函数,它调用glGetTexParameteriv(target, pname, params)。

更多信息,请参阅OpenGL ES 3.X文档中的 glGetTexParameteriv()

glGetUniformLocation(program, name)#
参数:
  • program – int

  • name – str

返回类型:

int

方便函数,调用 glGetUniformLocation(program, name)。

更多信息,请参阅OpenGL ES 3.X文档中的 glGetUniformLocation()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glGetUniformfv(program, location, params)#
参数:
  • program – int

  • location – int

  • params – float

方便函数,调用 glGetUniformfv(program, location, params)。

更多信息,请参阅OpenGL ES 3.X文档中的 glGetUniformfv()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glGetUniformiv(program, location, params)#
参数:
  • program – int

  • location – int

  • params – int

方便函数,调用 glGetUniformiv(program, location, params)。

更多信息,请参阅OpenGL ES 3.X文档中的 glGetUniformiv()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glGetVertexAttribfv(index, pname, params)#
参数:
  • index – int

  • pname – int

  • params – float

方便函数,调用 glGetVertexAttribfv(index, pname, params)。

更多信息,请参阅OpenGL ES 3.X文档中的 glGetVertexAttribfv()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glGetVertexAttribiv(index, pname, params)#
参数:
  • index – int

  • pname – int

  • params – int

方便函数,调用 glGetVertexAttribiv(index, pname, params)。

更多信息,请参阅OpenGL ES 3.X文档中的 glGetVertexAttribiv()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glHint(target, mode)#
参数:
  • target – int

  • mode – int

方便函数,调用 glHint(target, mode)。

更多信息,请参阅有关glHint()的OpenGL ES 3.X文档。

glIsBuffer(buffer)#
参数:

buffer – int

返回类型:

int

一个便捷函数,用于调用glIsBuffer(buffer)。

更多信息,请参阅有关glIsBuffer()的OpenGL ES 3.X文档。

glIsEnabled(cap)#
参数:

cap – int

返回类型:

int

一个便捷函数,用于调用glIsEnabled(cap)。

更多信息,请参阅有关glIsEnabled()的OpenGL ES 3.X文档。

glIsFramebuffer(framebuffer)#
参数:

framebuffer – int

返回类型:

int

一个便捷函数,用于调用glIsFramebuffer(framebuffer)。

更多信息,请参阅有关glIsFramebuffer()的OpenGL ES 3.X文档。

glIsProgram(program)#
参数:

program – int

返回类型:

int

一个便捷函数,用于调用glIsProgram(program)。

更多信息,请参阅有关glIsProgram()的OpenGL ES 3.X文档。

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glIsRenderbuffer(renderbuffer)#
参数:

renderbuffer – int

返回类型:

int

一个便捷函数,用于调用glIsRenderbuffer(renderbuffer)。

更多信息,请参阅有关glIsRenderbuffer()的OpenGL ES 3.X文档。

glIsShader(shader)#
参数:

shader – int

返回类型:

int

一个便捷函数,用于调用glIsShader(shader)。

更多信息,请参阅有关glIsShader()的OpenGL ES 3.X文档。

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glIsTexture(texture)#
参数:

texture – int

返回类型:

int

一个便捷函数,用于调用glIsTexture(texture)。

更多信息,请参阅有关glIsTexture()的OpenGL ES 3.X文档。

glLineWidth(width)#
参数:

width – float

一个便捷函数,用于调用glLineWidth(width)。

获取更多信息,请参阅OpenGL ES 3.X文档中的glLineWidth()

glLinkProgram(program)#
参数:

program – int

这是一个便利函数,它调用了glLinkProgram(program)。

获取更多信息,请参阅OpenGL ES 3.X文档中的glLinkProgram()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glPixelStorei(pname, param)#
参数:
  • pname – int

  • param – int

这是一个便利函数,它调用glPixelStorei(pname, param)。

获取更多信息,请参阅OpenGL ES 3.X文档中的glPixelStorei()

glPolygonOffset(factor, units)#
参数:
  • factor – float

  • units – float

这是一个便利函数,它调用glPolygonOffset(factor, units)。

获取更多信息,请参阅OpenGL ES 3.X文档中的glPolygonOffset()

glReadPixels(x, y, width, height, format, type, pixels)#
参数:
  • x – int

  • y – int

  • width – int

  • height – int

  • format – int

  • type – int

  • pixelsvoid

这是一个便利函数,它调用glReadPixels(x, y, width, height, format, type, pixels)。

获取更多信息,请参阅OpenGL ES 3.X文档中的glReadPixels()

glReleaseShaderCompiler()#

这是一个便利函数,它调用glReleaseShaderCompiler()。

获取更多信息,请参阅OpenGL ES 3.X文档中的glReleaseShaderCompiler()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glRenderbufferStorage(target, internalformat, width, height)#
参数:
  • target – int

  • internalformat – int

  • width – int

  • height – int

方便函数,调用 glRenderbufferStorage(target, internalformat, width, height)。

更多信息,请参阅OpenGL ES 3.X 文档中的 glRenderbufferStorage()

glSampleCoverage(value, invert)#
参数:
  • value – float

  • invert – int

方便函数,调用 glSampleCoverage(value, invert)。

更多信息,请参阅OpenGL ES 3.X 文档中的 glSampleCoverage()

glScissor(x, y, width, height)#
参数:
  • x – int

  • y – int

  • width – int

  • height – int

方便函数,调用 glScissor(x, y, width, height)。

更多信息,请参阅OpenGL ES 3.X 文档中的 glScissor()

glShaderBinary(n, shaders, binaryformat, binary, length)#
参数:
  • n – int

  • shadersunsigned int

  • binaryformat – int

  • binaryvoid

  • length – int

方便函数,调用 glShaderBinary(n, shaders, binaryformat, binary, length)。

更多信息,请参阅OpenGL ES 3.X 文档中的 glShaderBinary()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glShaderSource(shader, source)#
参数:
  • shader – int

  • source – str

glStencilFunc(func, ref, mask)#
参数:
  • func – int

  • ref – int

  • mask – int

方便函数,调用 glStencilFunc(func, ref, mask)。

获取更多信息,请参阅OpenGL ES 3.X文档中关于glStencilFunc()的说明。

glStencilFuncSeparate(face, func, ref, mask)#
参数:
  • face – int

  • func – int

  • ref – int

  • mask – int

便捷函数,调用glStencilFuncSeparate(face, func, ref, mask)。

获取更多信息,请参阅OpenGL ES 3.X文档中关于glStencilFuncSeparate()的说明。

glStencilMask(mask)#
参数:

mask – int

便捷函数,调用glStencilMask(mask)。

获取更多信息,请参阅OpenGL ES 3.X文档中关于glStencilMask()的说明。

glStencilMaskSeparate(face, mask)#
参数:
  • face – int

  • mask – int

便捷函数,调用glStencilMaskSeparate(face, mask)。

获取更多信息,请参阅OpenGL ES 3.X文档中关于glStencilMaskSeparate()的说明。

glStencilOp(fail, zfail, zpass)#
参数:
  • fail – int

  • zfail – int

  • zpass – int

便捷函数,调用glStencilOp(fail, zfail, zpass)。

获取更多信息,请参阅OpenGL ES 3.X文档中关于glStencilOp()的说明。

glStencilOpSeparate(face, fail, zfail, zpass)#
参数:
  • face – int

  • fail – int

  • zfail – int

  • zpass – int

便捷函数,调用glStencilOpSeparate(face, fail, zfail, zpass)。

获取更多信息,请参阅OpenGL ES 3.X文档中关于glStencilOpSeparate()的说明。

glTexImage2D(target, level, internalformat, width, height, border, format, type, pixels)#
参数:
  • target – int

  • level – int

  • internalformat – int

  • width – int

  • height – int

  • border – int

  • format – int

  • type – int

  • pixelsvoid

这是一个便捷函数,用于调用glTexImage2D(target, level, internalformat, width, height, border, format, type, pixels)。

更多信息,请参阅OpenGL ES 3.X文档中的 glTexImage2D()。

glTexParameterf(target, pname, param)#
参数:
  • target – int

  • pname – int

  • param – float

这是一个便捷函数,用于调用glTexParameterf(target, pname, param)。

更多信息,请参阅OpenGL ES 3.X文档中的 glTexParameterf()。

glTexParameterfv(target, pname, params)#
参数:
  • target – int

  • pname – int

  • params – float

这是一个便捷函数,用于调用glTexParameterfv(target, pname, params)。

更多信息,请参阅OpenGL ES 3.X文档中的 glTexParameterfv()。

glTexParameteri(target, pname, param)#
参数:
  • target – int

  • pname – int

  • param – int

这是一个便捷函数,用于调用glTexParameteri(target, pname, param)。

更多信息,请参阅OpenGL ES 3.X文档中的 glTexParameteri()。

glTexParameteriv(target, pname, params)#
参数:
  • target – int

  • pname – int

  • params – int

这是一个便捷函数,用于调用glTexParameteriv(target, pname, params)。

有关更多信息,请参阅OpenGL ES 3.X文档中的glTexParameteriv()

glTexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels)
参数:
  • target – int

  • level – int

  • xoffset – int

  • yoffset – int

  • width – int

  • height – int

  • format – int

  • type – int

  • pixelsvoid

是一个调用glTexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels)的便捷函数。

有关更多信息,请参阅OpenGL ES 3.X文档中的glTexSubImage2D()

glUniform1f(location, x)
参数:
  • location – int

  • x – float

是一个调用glUniform1f(location, x)的便捷函数。

有关更多信息,请参阅OpenGL ES 3.X文档中的glUniform1f()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glUniform1fv(location, count, v)
参数:
  • location – int

  • count – int

  • v – float

是一个调用glUniform1fv(location, count, v)的便捷函数。

有关更多信息,请参阅OpenGL ES 3.X文档中的glUniform1fv()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glUniform1i(location, x)
参数:
  • location – int

  • x – int

是一个调用glUniform1i(location, x)的便捷函数。

有关更多信息,请参阅OpenGL ES 3.X文档中的glUniform1i()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glUniform1iv(location, count, v)
参数:
  • location – int

  • count – int

  • v – int

是一个调用glUniform1iv(location, count, v)的便捷函数。

更多信息,请参阅OpenGL ES 3.X文档中的glUniform1iv()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glUniform2f(location, x, y)#
参数:
  • location – int

  • x – float

  • y – float

这是一个便利函数,它调用了glUniform2f(location, x, y)。

更多信息,请参阅OpenGL ES 3.X文档中的glUniform2f()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glUniform2fv(location, count, v)#
参数:
  • location – int

  • count – int

  • v – float

这是一个便利函数,它调用了glUniform2fv(location, count, v)。

更多信息,请参阅OpenGL ES 3.X文档中的glUniform2fv()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glUniform2i(location, x, y)#
参数:
  • location – int

  • x – int

  • y – int

这是一个便利函数,它调用了glUniform2i(location, x, y)。

更多信息,请参阅OpenGL ES 3.X文档中的glUniform2i()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glUniform2iv(location, count, v)#
参数:
  • location – int

  • count – int

  • v – int

这是一个便利函数,它调用了glUniform2iv(location, count, v)。

更多信息,请参阅OpenGL ES 3.X文档中的glUniform2iv()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glUniform3f(location, x, y, z)#
参数:
  • location – int

  • x – float

  • y – float

  • z – float

这是一个便利函数,它调用了glUniform3f(location, x, y, z)。

更多信息,请参阅OpenGL ES 3.X文档中的glUniform3f()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glUniform3fv(location, count, v)#
参数:
  • location – int

  • count – int

  • v – float

便捷函数,用于调用glUniform3fv(location, count, v)。

更多信息,请参阅OpenGL ES 3.X文档中的glUniform3fv()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glUniform3i(location, x, y, z)#
参数:
  • location – int

  • x – int

  • y – int

  • z – int

便捷函数,用于调用glUniform3i(location, x, y, z)。

更多信息,请参阅OpenGL ES 3.X文档中的glUniform3i()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glUniform3iv(location, count, v)#
参数:
  • location – int

  • count – int

  • v – int

便捷函数,用于调用glUniform3iv(location, count, v)。

更多信息,请参阅OpenGL ES 3.X文档中的glUniform3iv()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glUniform4f(location, x, y, z, w)#
参数:
  • location – int

  • x – float

  • y – float

  • z – float

  • w – float

便捷函数,用于调用glUniform4f(location, x, y, z, w)。

更多信息,请参阅OpenGL ES 3.X文档中的glUniform4f()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glUniform4fv(location, count, v)#
参数:
  • location – int

  • count – int

  • v – float

便捷函数,用于调用glUniform4fv(location, count, v)。

更多信息,请参阅OpenGL ES 3.X文档中的glUniform4fv()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glUniform4i(location, x, y, z, w)#
参数:
  • location – int

  • x – int

  • y – int

  • z – int

  • w – int

方便函数,调用glUniform4i(location, x, y, z, w)。

更多信息,请参阅OpenGL ES 3.X中glUniform4i() 的文档。

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glUniform4iv(location, count, v)#
参数:
  • location – int

  • count – int

  • v – int

方便函数,调用glUniform4iv(location, count, v)。

更多信息,请参阅OpenGL ES 3.X中glUniform4iv() 的文档。

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glUniformMatrix2fv(location, count, transpose, value)#
参数:
  • location – int

  • count – int

  • transpose – int

  • value – float

方便函数,调用glUniformMatrix2fv(location, count, transpose, value)。

更多信息,请参阅OpenGL ES 3.X中glUniformMatrix2fv() 的文档。

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glUniformMatrix3fv(location, count, transpose, value)#
参数:
  • location – int

  • count – int

  • transpose – int

  • value – float

方便函数,调用glUniformMatrix3fv(location, count, transpose, value)。

更多信息,请参阅OpenGL ES 3.X中glUniformMatrix3fv() 的文档。

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glUniformMatrix4fv(location, count, transpose, value)#
参数:
  • location – int

  • count – int

  • transpose – int

  • value – float

方便函数,调用glUniformMatrix4fv(location, count, transpose, value)。

更多信息,请参阅OpenGL ES 3.X文档中的glUniformMatrix4fv()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glUseProgram(program)#
参数:

program – int

一个便捷函数,用于调用 glUseProgram(program) 。

更多信息,请参阅OpenGL ES 3.X文档中的glUseProgram()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glValidateProgram(program)#
参数:

program – int

一个便捷函数,用于调用 glValidateProgram(program) 。

更多信息,请参阅OpenGL ES 3.X文档中的glValidateProgram()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glVertexAttrib1f(indx, x)#
参数:
  • indx – int

  • x – float

一个便捷函数,用于调用 glVertexAttrib1f(indx, x) 。

更多信息,请参阅OpenGL ES 3.X文档中的glVertexAttrib1f()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glVertexAttrib1fv(indx, values)#
参数:
  • indx – int

  • values – float

一个便捷函数,用于调用 glVertexAttrib1fv(indx, values) 。

更多信息,请参阅OpenGL ES 3.X文档中的glVertexAttrib1fv()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glVertexAttrib2f(indx, x, y)#
参数:
  • indx – int

  • x – float

  • y – float

一个便捷函数,用于调用 glVertexAttrib2f(indx, x, y) 。

更多信息,请参阅OpenGL ES 3.X文档中的glVertexAttrib2f()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glVertexAttrib2fv(indx, values)#
参数:
  • indx – int

  • values – float

一个便捷函数,用于调用 glVertexAttrib2fv(indx, values) 。

更多信息,请参阅OpenGL ES 3.X文档中的glVertexAttrib2fv()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glVertexAttrib3f(indx, x, y, z)#
参数:
  • indx – int

  • x – float

  • y – float

  • z – float

调用 glVertexAttrib3f(indx, x, y, z) 的便利函数。

欲了解更详细的信息,请参阅OpenGL ES 3.X文档中关于glVertexAttrib3f() 的部分。

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glVertexAttrib3fv(indx, values)#
参数:
  • indx – int

  • values – float

调用 glVertexAttrib3fv(indx, values) 的便利函数。

欲了解更详细的信息,请参阅OpenGL ES 3.X文档中关于glVertexAttrib3fv() 的部分。

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glVertexAttrib4f(indx, x, y, z, w)#
参数:
  • indx – int

  • x – float

  • y – float

  • z – float

  • w – float

调用 glVertexAttrib4f(indx, x, y, z, w) 的便利函数。

欲了解更详细的信息,请参阅OpenGL ES 3.X文档中关于glVertexAttrib4f() 的部分。

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glVertexAttrib4fv(indx, values)#
参数:
  • indx – int

  • values – float

调用 glVertexAttrib4fv(indx, values) 的便利函数。

欲了解更详细的信息,请参阅OpenGL ES 3.X文档中关于glVertexAttrib4fv() 的部分。

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glVertexAttribPointer(indx, size, type, normalized, stride, ptr)#
参数:
  • indx – int

  • size – int

  • type – int

  • normalized – int

  • stride – int

  • ptrvoid

便捷函数,用于调用《glVertexPointer (indx), size), type), normalized), stride), ptr)

若需更多信息,请参阅OpenGL ES 3.X文档中的glVertexAttribPointer()

该便利函数在OpenGL ES 1.x系统中将不会做任何操作。

glViewport(x, y, width, height)
参数:
  • x – int

  • y – int

  • width – int

  • height – int

便捷函数,用于调用《glViewport (x), y), width), height)

若需更多信息,请参阅OpenGL ES 3.X文档中的glViewport()

hasOpenGLFeature(feature)
参数:

featureOpenGLFeature

返回类型:

bool

如果系统上的OpenGL实现中存在feature则返回true;否则返回false。

假设与该函数解算器关联的QOpenGLContext是当前的。

另请参阅

openGLFeatures()

initializeOpenGLFunctions()

初始化当前上下文的OpenGL函数解析。

调用此函数后,QOpenGLFunctions对象只能与当前上下文及其共享的上下文一起使用。再次调用initializeOpenGLFunctions()以更改对象的上下文关联。

openGLFeatures()
返回类型:

OpenGLFeature的集合

返回系统OpenGL实现所具备的特征集合。

假设与该函数解算器关联的QOpenGLContext是当前的。

另请参阅

hasOpenGLFeature()