Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Finish texture format enum #98

Open
6 tasks
flibitijibibo opened this issue Jul 18, 2024 · 2 comments
Open
6 tasks

Finish texture format enum #98

flibitijibibo opened this issue Jul 18, 2024 · 2 comments

Comments

@flibitijibibo
Copy link
Collaborator

flibitijibibo commented Jul 18, 2024

  • ASTC
  • S8, no depth
  • R11G11B10F
  • BC1_SRGB
  • BC5/6?
  • Signed integer formats?

Thanks to @slime73 for reminding us of these!

@Akaricchi
Copy link

Akaricchi commented Jul 20, 2024

  • SDL_GPU_TEXTUREFORMAT_R8G8 is missing even though R8G8_SNORM and R8G8_UINT exist; pretty sure that anything that supports those two will support the UNORM variant as well.
  • BC5 (2-component format) should definitely be added.

These are very useful for tangent-space normal maps where the Z component is implicit and is reconstructed in the shader.

  • BC4 (1-component format) can be useful for stuff like roughness and metallic maps, though one might be better off packing them into a single texture.
  • Generally would be nice to have all the targets supported by the Basis Universal transcoder, maybe except for obscure stuff like ATC and FXT1. ETC1 can probably be omitted too as it's a subset of ETC2. The PVRTC formats (especially PVRTC1) have some weird requirements and I'm not sure how relevant they are.
  • R16 and R16_SNORM for the sake of completeness; R16_FLOAT and R16_UINT exist so I'm assuming our backends support UNORM and SNORM variants for this as well, but I'm not sure.

@slime73
Copy link

slime73 commented Jul 20, 2024

I agree with most of those, PVRTC is deprecated in vulkan and metal (and ETC2 and ASTC replace it) so I don't think that one's needed though.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants