Qt3DRender::QAbstractTextureImage Class
class Qt3DRender::QAbstractTextureImage封装了创建 OpenGL 纹理图像所需的必要信息。更多内容...
| 头文件: | #include <qabstracttextureimage.h> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS 3drender) target_link_libraries(mytarget PRIVATE Qt6::3drender) |
| qmake: | QT += 3drender |
| 在 QML 中: | AbstractTextureImage |
| 继承自: | Qt3DCore::QNode |
| 被继承者: | Qt3DRender::QPaintedTextureImage 以及Qt3DRender::QTextureImage |
| 状态: | 已弃用 |
该类已弃用。我们强烈建议不要在新代码中使用它。
属性
公共函数
| QAbstractTextureImage(Qt3DCore::QNode *parent = nullptr) | |
| Qt3DRender::QAbstractTexture::CubeMapFace | face() const |
| int | layer() const |
| int | mipLevel() const |
公共槽位
| void | setFace(Qt3DRender::QAbstractTexture::CubeMapFace face) |
| void | setLayer(int layer) |
| void | setMipLevel(int level) |
信号
| void | faceChanged(Qt3DRender::QAbstractTexture::CubeMapFace face) |
| void | layerChanged(int layer) |
| void | mipLevelChanged(int mipLevel) |
受保护函数
| virtual Qt3DRender::QTextureImageDataGeneratorPtr | dataGenerator() const = 0 |
| void | notifyDataGeneratorChanged() |
详细说明
应使用 QAbstractTextureImage 作为向QAbstractTexture 提供图像数据的手段。它包含必要的信息:Mipmap 级别、图层、立方体面,并将数据加载到 OpenGL 纹理的正确位置。
实际数据是通过QTextureImageDataGenerator 提供的,该对象将在后端由Aspect任务执行。应通过继承QAbstractTextureImage来提供一个 functor,以及该 functor 加载实际数据所需的其他属性。
注意: QAbstractTextureImage 绝不能被共享。 若不遵守此规则,可能会导致程序崩溃,即使幸免于难,也会出现未定义的行为。
属性文档
face : Qt3DRender::QAbstractTexture::CubeMapFace
存储纹理图像的立方体贴图面。
注意: 立方体贴图面仅在TargetCubeMap 和TargetCubeMapArray 中才有意义。
访问函数:
| Qt3DRender::QAbstractTexture::CubeMapFace | face() const |
| void | setFace(Qt3DRender::QAbstractTexture::CubeMapFace face) |
通知信号:
| void | faceChanged(Qt3DRender::QAbstractTexture::CubeMapFace face) |
layer : int
返回纹理图像的图层。
访问函数:
| int | layer() const |
| void | setLayer(int layer) |
通知器信号:
| void | layerChanged(int layer) |
mipLevel : int
存储纹理图像的Mipmap级别。
访问函数:
| int | mipLevel() const |
| void | setMipLevel(int level) |
通知器信号:
| void | mipLevelChanged(int mipLevel) |
成员函数文档
[explicit] QAbstractTextureImage::QAbstractTextureImage(Qt3DCore::QNode *parent = nullptr)
创建一个新的 QAbstractTextureImage 实例,并将parent 作为其父对象。
[pure virtual protected] Qt3DRender::QTextureImageDataGeneratorPtr QAbstractTextureImage::dataGenerator() const
实现此方法以返回 QTextureImageDataGeneratorPtr 实例,该实例将提供纹理图像的数据。
[protected] void QAbstractTextureImage::notifyDataGeneratorChanged()
触发对数据生成器的更新,并将更新后的数据发送至后端。
[slot] void QAbstractTextureImage::setFace(Qt3DRender::QAbstractTexture::CubeMapFace face)
将纹理图像的面设置为face 。face
注意: 这是属性face 的设置 函数。
另请参阅 face()。
[slot] void QAbstractTextureImage::setLayer(int layer)
将纹理的图层设置为layer 。layer
注意: 这是属性 `layer`的设置 函数。
另请参阅 layer()。
[slot] void QAbstractTextureImage::setMipLevel(int level)
将纹理的MIP级别设置为level.level
注意: 这是属性 `mipLevel`的设置 函数。
另请参阅 mipLevel()。
© 2026 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.