GraphicsContext Class
(Qt3DRender::Render::GraphicsContext)Public Functions
GraphicsContext() | |
~GraphicsContext() | |
void | activateGLHelper() |
void | activateRenderTarget(const Qt3DCore::QNodeId id, const AttachmentPack &attachments, GLuint defaultFboId) |
bool | activateShader(ProgramDNA shaderDNA) |
int | activateTexture(TextureScope scope, GLTexture *tex, int onUnit = -1) |
GLuint | activeFBO() const |
Material * | activeMaterial() const |
QOpenGLShaderProgram * | activeShader() const |
void | alphaTest(GLenum mode1, GLenum mode2) |
bool | beginDrawing(QSurface *surface) |
void | bindBufferBase(GLenum target, GLuint bindingIndex, GLuint buffer) |
void | bindFragOutputs(GLuint shader, const QHash<QString, int> &outputs) |
void | bindFramebuffer(GLuint fbo, GraphicsHelperInterface::FBOBindMode mode) |
void | bindShaderStorageBlock(GLuint programId, GLuint shaderStorageBlockIndex, GLuint shaderStorageBlockBinding) |
void | bindUniformBlock(GLuint programId, GLuint uniformBlockIndex, GLuint uniformBlockBinding) |
void | blendEquation(GLenum mode) |
void | blendFuncSeparatei(GLuint buf, GLenum sRGB, GLenum dRGB, GLenum sAlpha, GLenum dAlpha) |
void | blendFunci(GLuint buf, GLenum sfactor, GLenum dfactor) |
GLuint | boundFrameBufferObject() |
void | buildUniformBuffer(const QVariant &v, const ShaderUniform &description, QByteArray &buffer) |
void | clearBackBuffer(QClearBuffers::BufferTypeFlags buffers) |
void | clearBufferf(GLint drawbuffer, const QVector4D &values) |
void | clearColor(const QColor &color) |
void | clearDepthValue(float depth) |
void | clearStencilValue(int stencil) |
const GraphicsApiFilterData * | contextInfo() const |
QOpenGLShaderProgram * | createShaderProgram(Shader *shaderNode) |
RenderStateSet * | currentStateSet() const |
void | deactivateTexture(GLTexture *tex) |
GLuint | defaultFBO() const |
void | depthMask(GLenum mode) |
void | depthTest(GLenum mode) |
void | disableClipPlane(int clipPlane) |
void | disablePrimitiveRestart() |
void | disablei(GLenum cap, GLuint index) |
void | dispatchCompute(int x, int y, int z) |
void | doneCurrent() |
QByteArray | downloadBufferContent(Buffer *buffer) |
void | drawArrays(GLenum primitiveType, GLint first, GLsizei count) |
void | drawArraysIndirect(GLenum mode, void *indirect) |
void | drawArraysInstanced(GLenum primitiveType, GLint first, GLsizei count, GLsizei instances) |
void | drawArraysInstancedBaseInstance(GLenum primitiveType, GLint first, GLsizei count, GLsizei instances, GLsizei baseinstance) |
void | drawElements(GLenum primitiveType, GLsizei primitiveCount, GLint indexType, void *indices, GLint baseVertex) |
void | drawElementsIndirect(GLenum mode, GLenum type, void *indirect) |
void | drawElementsInstancedBaseVertexBaseInstance(GLenum primitiveType, GLsizei primitiveCount, GLint indexType, void *indices, GLsizei instances, GLint baseVertex, GLint baseInstance) |
void | enableClipPlane(int clipPlane) |
void | enablePrimitiveRestart(int restartIndex) |
void | enablei(GLenum cap, GLuint index) |
void | endDrawing(bool swapBuffers) |
void | executeCommand(const RenderCommand *command) |
void | frontFace(GLenum mode) |
GLBuffer * | glBufferForRenderBuffer(Buffer *buf) |
bool | hasGLBufferForBuffer(Buffer *buffer) |
bool | hasValidGLHelper() const |
int | id() const |
void | introspectShaderInterface(Shader *shader, QOpenGLShaderProgram *shaderProgram) |
bool | isInitialized() const |
void | loadShader(Shader *shader, ShaderManager *manager) |
bool | makeCurrent(QSurface *surface) |
char * | mapBuffer(GLenum target) |
GLint | maxClipPlaneCount() |
void | memoryBarrier(QMemoryBarrier::Operations barriers) |
QOpenGLContext * | openGLContext() |
void | pointSize(bool programmable, GLfloat value) |
QImage | readFramebuffer(QSize size) |
void | releaseBuffer(Qt3DCore::QNodeId bufferId) |
void | releaseOpenGL() |
void | removeShaderProgramReference(Shader *shaderNode) |
QSize | renderTargetSize(const QSize &surfaceSize) const |
void | setActiveMaterial(Material *rmat) |
void | setAlphaCoverageEnabled(bool enabled) |
void | setClipPlane(int clipPlane, const QVector3D &normal, float distance) |
void | setCurrentStateSet(RenderStateSet *ss) |
void | setMSAAEnabled(bool enabled) |
void | setOpenGLContext(QOpenGLContext *ctx) |
bool | setParameters(ShaderParameterPack ¶meterPack) |
void | setRenderer(Renderer *renderer) |
void | setSeamlessCubemap(bool enable) |
void | setVerticesPerPatch(GLint verticesPerPatch) |
void | setViewport(const QRectF &viewport, const QSize &surfaceSize) |
void | specifyAttribute(const Attribute *attribute, Buffer *buffer, int attributeLocation) |
void | specifyIndices(Buffer *buffer) |
bool | supportsDrawBuffersBlend() const |
bool | supportsVAO() const |
GLboolean | unmapBuffer(GLenum target) |
void | updateBuffer(Buffer *buffer) |
QRectF | viewport() const |
Static Public Members
GLuint | byteSizeFromType(GLint type) |
GLint | elementType(GLint type) |
GLint | glDataTypeFromAttributeDataType(QAttribute::VertexBaseType dataType) |
GLint | tupleSizeFromType(GLint type) |
Member Function Documentation
GraphicsContext::GraphicsContext()
Default constructs an instance of GraphicsContext.
GraphicsContext::~GraphicsContext()
Destroys the instance of GraphicsContext.
void GraphicsContext::activateGLHelper()
void GraphicsContext::activateRenderTarget(const Qt3DCore::QNodeId id, const AttachmentPack &attachments, GLuint defaultFboId)
bool GraphicsContext::activateShader(ProgramDNA shaderDNA)
int GraphicsContext::activateTexture(TextureScope scope, GLTexture *tex, int onUnit = -1)
GLuint GraphicsContext::activeFBO() const
Material *GraphicsContext::activeMaterial() const
See also setActiveMaterial().
QOpenGLShaderProgram *GraphicsContext::activeShader() const
void GraphicsContext::alphaTest(GLenum mode1, GLenum mode2)
bool GraphicsContext::beginDrawing(QSurface *surface)
void GraphicsContext::bindBufferBase(GLenum target, GLuint bindingIndex, GLuint buffer)
void GraphicsContext::bindFragOutputs(GLuint shader, const QHash<QString, int> &outputs)
void GraphicsContext::bindFramebuffer(GLuint fbo, GraphicsHelperInterface::FBOBindMode mode)
void GraphicsContext::bindShaderStorageBlock(GLuint programId, GLuint shaderStorageBlockIndex, GLuint shaderStorageBlockBinding)
void GraphicsContext::bindUniformBlock(GLuint programId, GLuint uniformBlockIndex, GLuint uniformBlockBinding)
void GraphicsContext::blendEquation(GLenum mode)
void GraphicsContext::blendFuncSeparatei(GLuint buf, GLenum sRGB, GLenum dRGB, GLenum sAlpha, GLenum dAlpha)
void GraphicsContext::blendFunci(GLuint buf, GLenum sfactor, GLenum dfactor)
GLuint GraphicsContext::boundFrameBufferObject()
void GraphicsContext::buildUniformBuffer(const QVariant &v, const ShaderUniform &description, QByteArray &buffer)
[static]
GLuint GraphicsContext::byteSizeFromType(GLint type)
void GraphicsContext::clearBackBuffer(QClearBuffers::BufferTypeFlags buffers)
void GraphicsContext::clearBufferf(GLint drawbuffer, const QVector4D &values)
void GraphicsContext::clearColor(const QColor &color)
void GraphicsContext::clearDepthValue(float depth)
void GraphicsContext::clearStencilValue(int stencil)
const GraphicsApiFilterData *GraphicsContext::contextInfo() const
QOpenGLShaderProgram *GraphicsContext::createShaderProgram(Shader *shaderNode)
RenderStateSet *GraphicsContext::currentStateSet() const
See also setCurrentStateSet().
void GraphicsContext::deactivateTexture(GLTexture *tex)
GLuint GraphicsContext::defaultFBO() const
void GraphicsContext::depthMask(GLenum mode)
void GraphicsContext::depthTest(GLenum mode)
void GraphicsContext::disableClipPlane(int clipPlane)
void GraphicsContext::disablePrimitiveRestart()
void GraphicsContext::disablei(GLenum cap, GLuint index)
void GraphicsContext::dispatchCompute(int x, int y, int z)
void GraphicsContext::doneCurrent()
QByteArray GraphicsContext::downloadBufferContent(Buffer *buffer)
void GraphicsContext::drawArrays(GLenum primitiveType, GLint first, GLsizei count)
void GraphicsContext::drawArraysIndirect(GLenum mode, void *indirect)
void GraphicsContext::drawArraysInstanced(GLenum primitiveType, GLint first, GLsizei count, GLsizei instances)
void GraphicsContext::drawArraysInstancedBaseInstance(GLenum primitiveType, GLint first, GLsizei count, GLsizei instances, GLsizei baseinstance)
void GraphicsContext::drawElements(GLenum primitiveType, GLsizei primitiveCount, GLint indexType, void *indices, GLint baseVertex)
void GraphicsContext::drawElementsIndirect(GLenum mode, GLenum type, void *indirect)
void GraphicsContext::drawElementsInstancedBaseVertexBaseInstance(GLenum primitiveType, GLsizei primitiveCount, GLint indexType, void *indices, GLsizei instances, GLint baseVertex, GLint baseInstance)
[static]
GLint GraphicsContext::elementType(GLint type)
void GraphicsContext::enableClipPlane(int clipPlane)
void GraphicsContext::enablePrimitiveRestart(int restartIndex)
void GraphicsContext::enablei(GLenum cap, GLuint index)
void GraphicsContext::endDrawing(bool swapBuffers)
void GraphicsContext::executeCommand(const RenderCommand *command)
void GraphicsContext::frontFace(GLenum mode)
GLBuffer *GraphicsContext::glBufferForRenderBuffer(Buffer *buf)
[static]
GLint GraphicsContext::glDataTypeFromAttributeDataType(QAttribute::VertexBaseType dataType)
bool GraphicsContext::hasGLBufferForBuffer(Buffer *buffer)
bool GraphicsContext::hasValidGLHelper() const
int GraphicsContext::id() const
void GraphicsContext::introspectShaderInterface(Shader *shader, QOpenGLShaderProgram *shaderProgram)
bool GraphicsContext::isInitialized() const
void GraphicsContext::loadShader(Shader *shader, ShaderManager *manager)
bool GraphicsContext::makeCurrent(QSurface *surface)
char *GraphicsContext::mapBuffer(GLenum target)
GLint GraphicsContext::maxClipPlaneCount()
void GraphicsContext::memoryBarrier(QMemoryBarrier::Operations barriers)
QOpenGLContext *GraphicsContext::openGLContext()
See also setOpenGLContext().
void GraphicsContext::pointSize(bool programmable, GLfloat value)
QImage GraphicsContext::readFramebuffer(QSize size)
void GraphicsContext::releaseBuffer(Qt3DCore::QNodeId bufferId)
void GraphicsContext::releaseOpenGL()
void GraphicsContext::removeShaderProgramReference(Shader *shaderNode)
QSize GraphicsContext::renderTargetSize(const QSize &surfaceSize) const
void GraphicsContext::setActiveMaterial(Material *rmat)
See also activeMaterial().
void GraphicsContext::setAlphaCoverageEnabled(bool enabled)
void GraphicsContext::setClipPlane(int clipPlane, const QVector3D &normal, float distance)
void GraphicsContext::setCurrentStateSet(RenderStateSet *ss)
See also currentStateSet().
void GraphicsContext::setMSAAEnabled(bool enabled)
void GraphicsContext::setOpenGLContext(QOpenGLContext *ctx)
See also openGLContext().
bool GraphicsContext::setParameters(ShaderParameterPack ¶meterPack)
void GraphicsContext::setRenderer(Renderer *renderer)
void GraphicsContext::setSeamlessCubemap(bool enable)
void GraphicsContext::setVerticesPerPatch(GLint verticesPerPatch)
void GraphicsContext::setViewport(const QRectF &viewport, const QSize &surfaceSize)
See also viewport().
void GraphicsContext::specifyAttribute(const Attribute *attribute, Buffer *buffer, int attributeLocation)
void GraphicsContext::specifyIndices(Buffer *buffer)
bool GraphicsContext::supportsDrawBuffersBlend() const
bool GraphicsContext::supportsVAO() const
[static]
GLint GraphicsContext::tupleSizeFromType(GLint type)
GLboolean GraphicsContext::unmapBuffer(GLenum target)
void GraphicsContext::updateBuffer(Buffer *buffer)
QRectF GraphicsContext::viewport() const
See also setViewport().