I’m am an beginner when it comes to openGL, and am thinking about implementation of ray tracing in my engine, and came across compute and mesh shaders. I have a few questions regarding them, so could someone please help me with these?

This page summarizes the projects mentioned and recommended in the original post on /r/opengl

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • GLSL-PathTracer

    A toy physically based GPU path tracer (C++/OpenGL/GLSL)

  • maybe it's better to start by studying see some good examples such as glsl-path-tracer

  • Kurama-Engine

    Creating a 3D rendering engine from scratch in Java

  • Here's the link to my project, but be warned that there is very poor documentation, and I would say it is not worth checking out since the API isn't as readable and clean as I would like it to be. Planning on refactoring the API once I am done adding core engine features.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • vk_mini_path_tracer

    A beginner-friendly Vulkan path tracing tutorial in under 300 lines of C++.

  • NVIDIA has a couple of options for you to start learning hardware ray tracing. This requires you to use either Vulkan or Direct 3D 12, of which both are modern (i.e. low low level) APIs. In my view, you would be well-advised to budget significant amounts of time just to re-learn the traditional rasterization pipeline in Vulkan before thinking about raytracing. It took me quite a while to get up to speed on command buffers and synchronization and all the other ilk that OpenGL (mostly) doesn't ever expose. That said my colleague Neil Bickford has put together a tutorial for Vulkan raytrace extensions that does not assume prior Vulkan experience: https://github.com/nvpro-samples/vk_mini_path_tracer

  • vk_raytracing_tutorial_KHR

    Ray tracing examples and tutorials using VK_KHR_ray_tracing

  • The other option is the main NVIDIA tutorial, https://github.com/nvpro-samples/vk_raytracing_tutorial_KHR, of which I am a co-author. This assumes prior Vulkan experience and takes quite a while to work through; I'm obviously biased but I think there's some worth in still reading this second if you choose to start with the other tutorial.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts