Comment by deliciousturkey

21 hours ago

Sadly, Vulkan is really painful way of learning graphics programming. Doing almost anything requires large amounts of boilerplate. Almost everything you need to do, for example to make shadows, requires just 10x more code than the technique fundamentally requires.

For learning graphics programming, in my opinion, writing software renderers is much more enjoyable path. Code is less, the code you write touches fundamental and not boilerplate. Downside is that code will be slower as you will lose HW acceleration.

Not necessarily, some folks advocate that with modern compute APIs we are better doing "software" rendering, but on the GPU.

By the way, this is what renders like OTOY Octane do.

  • Sadly you can't access RT cores with CUDA, you need to use a graphics API like Vulkan or D3D12. You can make a fast ray tracing based renderer using pure GPU compute, but it'll still be slower than using RT cores.

    And even with GPU compute, you benefit from HW acceleration with the HW texture unit.