Details
-
User Story
-
Resolution: Out of scope
-
P2: Important
-
None
-
None
-
None
Description
This user story is a collection of tasks related to asset conditioning in Runtime 2
One area is compressed textures:
Figure out the longer term story when it comes to compressed texture support. We do not use the texture loading code in Qt 3D. Ideally the pkm, ktx and dds (and maybe hdr) parsers would be shared between Qt Quick, Qt 3D, and the new runtime via QtGui.
Currently support includes the following.
- ETC1+ETC2 in .pkm containers
- Exact supported formats depend OpenGL implementation, see table e.g. at: https://www.khronos.org/registry/OpenGL-Refpages/es3.0/html/glCompressedTexImage2D.xhtml
- .dds. See format table below.
This means that the new runtime can already consume files with .pkm and .dds extensions as sources for Image elements (assuming the OpenGL implementation supports the format in question)
DDS support uses the following DXGI -> OpenGL format conversion table. Level support depends on the OpenGL implementation.
// compressed formats { DXGI_FORMAT_BC1_UNORM, { QOpenGLTexture::NoSourceFormat, QOpenGLTexture::RGBA_DXT1, QOpenGLTexture::NoPixelType, 8, true } }, { DXGI_FORMAT_BC2_UNORM, { QOpenGLTexture::NoSourceFormat, QOpenGLTexture::RGBA_DXT3, QOpenGLTexture::NoPixelType, 16, true } }, { DXGI_FORMAT_BC3_UNORM, { QOpenGLTexture::NoSourceFormat, QOpenGLTexture::RGBA_DXT5, QOpenGLTexture::NoPixelType, 16, true } }, { DXGI_FORMAT_BC4_UNORM, { QOpenGLTexture::NoSourceFormat, QOpenGLTexture::R_ATI1N_UNorm, QOpenGLTexture::NoPixelType, 8, true } }, { DXGI_FORMAT_BC4_SNORM, { QOpenGLTexture::NoSourceFormat, QOpenGLTexture::R_ATI1N_SNorm, QOpenGLTexture::NoPixelType, 8, true } }, { DXGI_FORMAT_BC5_UNORM, { QOpenGLTexture::NoSourceFormat, QOpenGLTexture::RG_ATI2N_UNorm, QOpenGLTexture::NoPixelType, 16, true } }, { DXGI_FORMAT_BC5_SNORM, { QOpenGLTexture::NoSourceFormat, QOpenGLTexture::RG_ATI2N_SNorm, QOpenGLTexture::NoPixelType, 16, true } }, { DXGI_FORMAT_BC6H_UF16, { QOpenGLTexture::NoSourceFormat, QOpenGLTexture::RGB_BP_UNSIGNED_FLOAT, QOpenGLTexture::NoPixelType, 16, true } }, { DXGI_FORMAT_BC6H_SF16, { QOpenGLTexture::NoSourceFormat, QOpenGLTexture::RGB_BP_SIGNED_FLOAT, QOpenGLTexture::NoPixelType, 16, true } }, { DXGI_FORMAT_BC7_UNORM, { QOpenGLTexture::NoSourceFormat, QOpenGLTexture::RGB_BP_UNorm, QOpenGLTexture::NoPixelType, 16, true } }, // ... + sRGB variants
Attachments
Issue Links
- is required for
-
QT3DS-1773 Re-compress textures for effects
- Reported
-
QT3DS-2376 Create a cluster demo for R-Car D3 Hardware
- Closed
- relates to
-
QT3DS-926 Effects relying on .dds texture maps are not ideal
- Closed
-
QT3DS-1146 [UX Design] Asset conditioning UX
- Closed
-
QT3DS-1811 Asset conditioning in Qt 3D Studio
- Open
1.
|
Add support for .ktx containers in the runtime | Closed | Laszlo Agocs | |
2.
|
ASTC | Closed | Laszlo Agocs | |
3.
|
DDS loader broken when it comes to mipmaps | Closed | Laszlo Agocs | |
4.
|
Enable cubemaps in .ktx containers | Closed | Laszlo Agocs |