virtualx-engine/drivers/vulkan
Juan Linietsky 71d21c7ccb Implement basic ASTC support
Implements basic ASTC support:
* Only 4x4 and 8x8 block sizes.
* Other block sizes are too complex to handle for Godot image compression handling. May be implemented sometime in the future.

The need for ASTC is mostly for the following use cases:
* Implement a high quality compression option for textures on mobile and M1 Apple hardware.
* For this, the 4x4 is sufficient, since it uses the same size as BPTC.

ASTC supports a lot of block sizes, but the benefit of supporting most of them is slim, while the implementation complexity in Godot is very high.
Supporting only 4x4 (and 8x8) solves the real problem, which is lack of a BPTC alternative on hardware where it's missing.

Note: This does not yet support encoding on import, an ASTC encoder will need to be added.
2022-12-20 11:26:30 +01:00
..
rendering_device_vulkan.cpp Implement basic ASTC support 2022-12-20 11:26:30 +01:00
rendering_device_vulkan.h Merge pull request #63003 from Geometror/msaa-2d 2022-08-30 14:54:20 +02:00
SCsub Rename OSX to macOS and iPhoneOS to iOS. 2022-07-21 09:37:52 +03:00
vulkan_context.cpp Re-enable per-pixel transparency support on Linux, macOS, and Windows (for Vulkan and OpenGL rendering drivers). 2022-09-03 19:16:03 +03:00
vulkan_context.h Let platforms override the sizing of Vulkan swapchain and window 2022-08-25 19:16:36 +02:00
vulkan_hooks.h Code quality: Fix header guards consistency 2022-07-25 11:17:40 +02:00