Re:VkFFT: Vulkan/CUDA/Hip/OpenCL/Level Zero/Metal Fast Fouri...
by pjmlp on Thursday August 03, 2023 @01:52AM
(#36981908)
Except with the deprecation/stagnation of OpenGL, Vulkan is the only thing new computer graphics programmers have to learn from Khronos as native 3D API.
Use a middleware instead might be the answer.
Then we don't need really Vulkan, as the middleware already allows to use the best 3D API on each platform.
Re:VkFFT: Vulkan/CUDA/Hip/OpenCL/Level Zero/Metal Fast Fouri...
by simjnd on Thursday August 03, 2023 @07:37AM
(#36984359)
How is WebGPU in that regard?
Re:VkFFT: Vulkan/CUDA/Hip/OpenCL/Level Zero/Metal Fast Fouri...
by andrewmcwatters on Thursday August 03, 2023 @11:50AM
(#36987521)
I’m not new to this, and Vulkan isn’t targeted at game engine developers.
Vulkan is targeted at graphics and game engine developers who want to extract the maximum possible performance from their GPUs and know the limitations of a global-state API like OpenGL. Vulkan allows extremely fine-grained pipeline management and synchronisation primitives, and adds in hardware ray-tracing support natively without having to uncannily bolt it on.
If all you want is to draw a three-coloured triangle, you can do that easier and faster with ShaderToy instead of fudging with Vulkan. If you want to write a fast, powerful, modern graphics engine, then you use Vulkan or D3D12.
People forget that GPUs are now massive slices of silicon with memory and power subsystems in their own right, and are obviously extremely powerful hardware. At some point, OpenGL itself becomes a bottleneck, or is difficult enough to program with that Vulkan becomes easier, and that's when the true utility and power of its extreme verbosity is displayed.
For the record, the boilerplate isn't '921 lines of nothing'—it's effectively setting the GPU up from scratch, similar to bootstrapping a CPU from 16-bit real mode.