Over on the Godot website and update on the status of the Vulkan renderer that is the marquee feature of Godot 4.0. Vulkan is the Khronos Group’s new low level rendering alternative to OpenGL, that enables developers to get much closer to the metal than previous graphics APIs. The development of the new Vulkan renderer was started back in May 2019 and has progressed rapidly since. Development is on Github under the vulkan code branch.
Details from the Godot news site:
One of the main features that will be present in Godot 4.0 is the new
RenderingDeviceabstraction. Up to now, it was impossible to do any internal modifications to how Godot does rendering. This means that if you wanted to run custom low-level rendering code to a texture or buffer, custom post-processing, custom drawing code (other than what Godot shaders allow), custom compute, etc., this was not possible without modifying Godot’s rendering backend.
RenderingDeviceis more or less complete (compute support is missing) and the 2D engine is halfway being ported. Work on 3D rendering will begin near the end of the month.
There are a few ramifications for developers, but they are minimal.
In modern rendering APIs, there are architecture changes that force us to break compatibility and do some things differently. The immediate one is that it is no longer possible to set repeat, filter, etc. flags on imported textures. In 2D, this will be set per canvas item (
Node2D) using a new set of options. It will be also be possible to specify this in the shader or the material options (or just globally, if you are making a pixel art game).
Of course, the question most people are probably asking is… when?
The goal is to have a more or less complete rewrite of the existing Godot 3.x feature set by October (cross your fingers), hard work and long hours are being put towards this.