Unsupported format for non-raw create #1038
|
Hi, I want to create several
$ ktx --version
ktx version: v4.4.0
$ tree .
.
├── skybox-ktx2
└── skybox-src
├── skybox-0.png
├── skybox-1.png
├── skybox-2.png
├── skybox-3.png
├── skybox-4.png
└── skybox-5.png
$ ktx create --format VK_FORMAT_ASTC_4x4_SRGB_BLOCK --cubemap \
skybox-src/skybox-0.png \
skybox-src/skybox-1.png \
skybox-src/skybox-2.png \
skybox-src/skybox-3.png \
skybox-src/skybox-4.png \
skybox-src/skybox-5.png \
skybox-ktx2/astc.ktx2
$ ls skybox-ktx2/
astc.ktx2
$ ktx create --format VK_FORMAT_R8G8B8A8_SRGB --cubemap \
skybox-src/skybox-0.png \
skybox-src/skybox-1.png \
skybox-src/skybox-2.png \
skybox-src/skybox-3.png \
skybox-src/skybox-4.png \
skybox-src/skybox-5.png \
skybox-ktx2/rgba8.ktx2
$ ls skybox-ktx2/
astc.ktx2 rgba8.ktx2
$ ktx create --format VK_FORMAT_BC7_UNORM_BLOCK --cubemap \
skybox-src/skybox-0.png \
skybox-src/skybox-1.png \
skybox-src/skybox-2.png \
skybox-src/skybox-3.png \
skybox-src/skybox-4.png \
skybox-src/skybox-5.png \
skybox-ktx2/bc7.ktx2
ktx create fatal: Unsupported format for non-raw create: VK_FORMAT_BC7_UNORM_BLOCK. See 'ktx create --help'.
$ ktx create --format VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK --cubemap \
skybox-src/skybox-0.png \
skybox-src/skybox-1.png \
skybox-src/skybox-2.png \
skybox-src/skybox-3.png \
skybox-src/skybox-4.png \
skybox-src/skybox-5.png \
skybox-ktx2/etc2.ktx2
ktx create fatal: Unsupported format for non-raw create: VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK. See 'ktx create --help'.I tried also $ ktx transcode --target bc7 skybox-ktx2/rgba8.ktx2 skybox-ktx2/bc7.ktx2
ktx transcode fatal: KTX file is not transcodable.
$ ktx transcode --target etc-rgba skybox-ktx2/rgba8.ktx2 skybox-ktx2/etc2.ktx2
ktx transcode fatal: KTX file is not transcodable.I'm not sure if I'm using the command line correctly. Do I need to install additional packages for |
Answered by
MarkCallow
Jul 4, 2025
Replies: 1 comment 1 reply
|
Sorry. libktx does not have etc2 or bc7 encoders. There is a long standing request for help to add a bc7 encoder in issue #587. I would like to see it happen and an ETC2 encoder too. Only BasisLZ/ETC1S and UASTC formats can be transcoded. That is their purpose. Conversion between any other formats would require decoding (if encoded) followed by encoding, which would require the missing encoders. |
1 reply
Answer selected by
MarkCallow
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Sorry. libktx does not have etc2 or bc7 encoders. There is a long standing request for help to add a bc7 encoder in issue #587. I would like to see it happen and an ETC2 encoder too.
Only BasisLZ/ETC1S and UASTC formats can be transcoded. That is their purpose. Conversion between any other formats would require decoding (if encoded) followed by encoding, which would require the missing encoders.