【发布时间】:2016-03-16 11:40:35
【问题描述】:
是否可以直接在 qml 中从压缩纹理向 QImage 发送数据?
现在我有以下代码:
Image
{
anchors.fill: parent
fillMode : Image.Stretch
source : "Textures/BG_png.png"
}
然后,我创建具有各种格式来源的图像,更准确地说:
// uncompressed
source : "Textures/BG_RGB565.dds"
source : "Textures/BG_RGB888.dds"
source : "Textures/BG_RGBA8888.dds"
//compressed
source : "Textures/BG_ETC1.ktx"
source : "Textures/BG_ETC1.pkm"
source : "Textures/BG_ETC1.dds"
source : "Textures/BG_PVR.pvr"
source : "Textures/BG_ASTC.astc"
对于除 BG_RGB565.dds 之外的所有源类型(并且仅使用“.dds”扩展名),我都收到以下错误“QML Image : invalid image data”。
我有以下问题:
为什么 RGB565.dds 有效而 RGB888 或其他未压缩格式无效?
QT QML 支持哪些 OpenGL 图像类型,以及如何提示 Image 类其源代码仅使用 QML 以某种方式编码/压缩?
【问题讨论】: