🎉 Celebrating 25 Years of GameDev.net! 🎉

Not many can claim 25 years on the Internet! Join us in celebrating this milestone. Learn more about our history, and thank you for being a part of our community!

Flax Engine Adds Vulkan Support

Started by
0 comments, last by khawk 5 years, 2 months ago

Flax Engine has announced their upcoming Vulkan renderer support.

With the addition, Flax now supports DirectX 11, DirectX 12, and Vulkan. Over DirectX 11, the Vulkan renderer reduces CPU utilization up to 10%, is faster than the DirectX 12 renderer, and they have future performance improvements planned. Flax also plans to remove their OpenGL backend in favor of Vulkan, which they view as particularly important for mobile platforms where Vulkan is much faster than OpenGL ES.

From the announcement:

Quote

Having stable Vulkan graphics backend is a notable milestone that moves us closer towards adding support for more platforms (who wants Flax Editor for Linux?).

Vulkan Rendering
Vulkan implementation in Flax

Under the hood, we use volk for loading entrypoints, Vulkan Memory Allocator from AMD to improve GPU resources allocation and glslang to compile our HLSL shaders into SPIR-V. 

The current implementation supports full graphics pipeline and compute shaders (only stream-output and counter buffers are missing). We use descriptors pool manager to reuse descriptor set layouts and optimized pipeline binding to reduce API calls. The pipeline state objects are cached on request and reused later which reduces memory usage. Also using ring-buffer for uniforms data reduces descriptors changes due to dynamic offset assignment that is more efficient.

Learn more here.


View full story

Admin for GameDev.net.

This topic is closed to new replies.

Advertisement