Pedro J. Estébanez Profile picture
@GodotEngine contributor making the dream console exporting come true at @W4Games🍀 • Developed/ing #Hellrule https://t.co/uaHECZW2FR
Oct 17, 2023 7 tweets 2 min read
I've been working on a big task to make the #GodotEngine rendering architecture much more flexible in supporting multiple graphics APIs.
The main rendering class, formerly fully reimplemented for each API, is now split into one API-agnostic and one API-specific (driver) parts.
🧵 Image In the current design, API-agnostic logic, validation and bookkeeping have to be repeated with minor, if any, adaptations in each RenderingDevice implementation.
All those common concerns make for the Godot approach to a mid-level engine and user facing rendering API, and ➡️
Jun 3, 2022 30 tweets 8 min read
I've developed a technique to have in @DirectX12 something nearly as efficient as native specialization constants (SC) would be.

First of all, @VulkanAPI (SPIR-V) feature SCs, which are as powerful as compile-time constants in terms of optimization (branch pruning, [...] informed loop unrolling, etc.) and flexible like uniforms in that they can be set at runtime (not with a cost that uniforms don't suffer from, but still after the shader has already been compiled to SPIR-V).

Unfortunately, D3D12 doesn't provide anything like that. [...]