QGLFramebufferObjectFormat Class
The QGLFramebufferObjectFormat class specifies the format of an OpenGL framebuffer object. More...
Header: | #include <QGLFramebufferObjectFormat> |
qmake: | QT += opengl |
Since: | Qt 4.6 |
This class is obsolete. It is provided to keep old source code working. We strongly advise against using it in new code.
Public Functions
QGLFramebufferObjectFormat() | |
QGLFramebufferObjectFormat(const QGLFramebufferObjectFormat &other) | |
~QGLFramebufferObjectFormat() | |
QGLFramebufferObject::Attachment | attachment() const |
GLenum | internalTextureFormat() const |
bool | mipmap() const |
int | samples() const |
void | setAttachment(QGLFramebufferObject::Attachment attachment) |
void | setInternalTextureFormat(GLenum internalTextureFormat) |
void | setMipmap(bool enabled) |
void | setSamples(int samples) |
void | setTextureTarget(GLenum target) |
GLenum | textureTarget() const |
bool | operator!=(const QGLFramebufferObjectFormat &other) const |
QGLFramebufferObjectFormat & | operator=(const QGLFramebufferObjectFormat &other) |
bool | operator==(const QGLFramebufferObjectFormat &other) const |
Detailed Description
The QGLFramebufferObjectFormat class specifies the format of an OpenGL framebuffer object.
A framebuffer object has several characteristics:
- Number of samples per pixels.
- Depth and/or stencil attachments.
- Texture target.
- Internal texture format.
Note that the desired attachments or number of samples per pixels might not be supported by the hardware driver. Call QGLFramebufferObject::format() after creating a QGLFramebufferObject to find the exact format that was used to create the frame buffer object.
Note: This class has been deprecated in favor of QOpenGLFramebufferObjectFormat.
See also QGLFramebufferObject.
Member Function Documentation
QGLFramebufferObjectFormat::QGLFramebufferObjectFormat()
Creates a QGLFramebufferObjectFormat object for specifying the format of an OpenGL framebuffer object.
By default the format specifies a non-multisample framebuffer object with no attachments, texture target GL_TEXTURE_2D
, and internal format GL_RGBA8
. On OpenGL/ES systems, the default internal format is GL_RGBA
.
See also samples(), attachment(), and internalTextureFormat().
QGLFramebufferObjectFormat::QGLFramebufferObjectFormat(const QGLFramebufferObjectFormat &other)
Constructs a copy of other.
QGLFramebufferObjectFormat::~QGLFramebufferObjectFormat()
Destroys the QGLFramebufferObjectFormat.
QGLFramebufferObject::Attachment QGLFramebufferObjectFormat::attachment() const
Returns the configuration of the depth and stencil buffers attached to a framebuffer object. The default is QGLFramebufferObject::NoAttachment.
See also setAttachment().
GLenum QGLFramebufferObjectFormat::internalTextureFormat() const
Returns the internal format of a framebuffer object's texture or multisample framebuffer object's color buffer. The default is GL_RGBA8
on desktop OpenGL systems, and GL_RGBA
on OpenGL/ES systems.
See also setInternalTextureFormat().
bool QGLFramebufferObjectFormat::mipmap() const
Returns true
if mipmapping is enabled.
This function was introduced in Qt 4.8.
See also setMipmap().
int QGLFramebufferObjectFormat::samples() const
Returns the number of samples per pixel if a framebuffer object is a multisample framebuffer object. Otherwise, returns 0. The default value is 0.
See also setSamples().
void QGLFramebufferObjectFormat::setAttachment(QGLFramebufferObject::Attachment attachment)
Sets the attachment configuration of a framebuffer object to attachment.
See also attachment().
void QGLFramebufferObjectFormat::setInternalTextureFormat(GLenum internalTextureFormat)
Sets the internal format of a framebuffer object's texture or multisample framebuffer object's color buffer to internalTextureFormat.
See also internalTextureFormat().
void QGLFramebufferObjectFormat::setMipmap(bool enabled)
Enables mipmapping if enabled is true; otherwise disables it.
Mipmapping is disabled by default.
If mipmapping is enabled, additional memory will be allocated for the mipmap levels. The mipmap levels can be updated by binding the texture and calling glGenerateMipmap(). Mipmapping cannot be enabled for multisampled framebuffer objects.
This function was introduced in Qt 4.8.
See also mipmap() and QGLFramebufferObject::texture().
void QGLFramebufferObjectFormat::setSamples(int samples)
Sets the number of samples per pixel for a multisample framebuffer object to samples. The default sample count of 0 represents a regular non-multisample framebuffer object.
If the desired amount of samples per pixel is not supported by the hardware then the maximum number of samples per pixel will be used. Note that multisample framebuffer objects can not be bound as textures. Also, the GL_EXT_framebuffer_multisample
extension is required to create a framebuffer with more than one sample per pixel.
See also samples().
void QGLFramebufferObjectFormat::setTextureTarget(GLenum target)
Sets the texture target of the texture attached to a framebuffer object to target. Ignored for multisample framebuffer objects.
See also textureTarget() and samples().
GLenum QGLFramebufferObjectFormat::textureTarget() const
Returns the texture target of the texture attached to a framebuffer object. Ignored for multisample framebuffer objects. The default is GL_TEXTURE_2D
.
See also setTextureTarget() and samples().
bool QGLFramebufferObjectFormat::operator!=(const QGLFramebufferObjectFormat &other) const
Returns false
if all the options of this framebuffer object format are the same as other; otherwise returns true
.
QGLFramebufferObjectFormat &QGLFramebufferObjectFormat::operator=(const QGLFramebufferObjectFormat &other)
Assigns other to this object.
bool QGLFramebufferObjectFormat::operator==(const QGLFramebufferObjectFormat &other) const
Returns true
if all the options of this framebuffer object format are the same as other; otherwise returns false
.
© 2017 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.