Vulkan: Raytrace / Raytracing

Peter Shirley
Ray Tracing in One Weekend
Ray Tracing: The Next Week
Ray Tracing: The Rest of Your Life

  • eye / camera
  • image
  • 16:9 aspect ratio
  • viewport =
  • viewport’s aspect ratio == rendered image aspect ratio
  • viewport: 2 units in height
  • projection plane
  • projection point
  • distance between plane and point: 1 unit = focal length

Depends on, stb single-file public domain libraries for C/C++

OpenGL Frameworks

OpenGL Loading Library
An OpenGL Loading Library is a library that loads pointers to OpenGL functions at runtime, core as well as extensions. This is required to access functions from OpenGL versions above 1.1 on most platforms.

  • GLEW (OpenGL Extension Wrangler)
  • GL3W
  • Galogen
  • glad (Multi-Language GL/GLES/EGL/GLX/WGL Loader-Generator)
  • Glatter
  • glsdk (Unofficial OpenGL SDK)
  • glbinding (C++)
  • libepoxy
  • GLee

GLFW, GLFW is an Open Source, multi-platform library for OpenGL, OpenGL ES and Vulkan development on the desktop
GLUT (GL Utility Toolkit)


WGSL, WebGPU Shading Language



Scratchapixel 2.0

Learn Computer Graphics From Scratch!

Canvas + WebGL

How to render 3D in 2D canvas


HTML Canvas Graphics
HTML Canvas Reference

MDN Web Docs

Einführung in WebGL
Canvas tutorial


Evaluating Different Spatial Anti Aliasing Techniques


Kantenglättung Anti-Aliasing erklärt – Guide: Wie funktionieren MSAA, TXAA und Co.?
Best Anti-Aliasing | Different Techniques to Get Clear Images
What is Anti-Aliasing: A definitive guide
PC Graphics Settings Explained: MLAA vs MSAA vs FXAA vs TAA vs SMAA

RayTracingInVulkan, Implementation of Peter Shirley’s Ray Tracing In One Weekend book using Vulkan and NVIDIA’s RTX extension.

nvpro-samples, Denoising a Vulkan ray traced image using OptiX denoiser, Ray tracing glTF scene with Vulkan, Vulkan ray tracing examples and tutorials using VK_NV_ray_tracing

Vulkan Tutorial

Vulkan Tutorial



FlyCube, Graphics API wrapper is written in C++ on top of Directx 12 and Vulkan. Provides main features including ray tracing.

Research Unit of Computer Graphics | TU Wien, Powerful low-level C++20 rendering framework for Vulkan 1.2, including Real-Time Ray Tracing (RTX) support, built atop Auto-Vk., Low-level convenience and productivity layer atop Vulkan-Hpp

Window System Integration (WSI)

Qt Graphics
Introducing the Vulkan WSI Layer (PDF)

NamePointer / carl-vbn


Vulkan vs. OpenGL

GDC 2018 – Getting explicit: How Hard is Vulkan really?
What Is Vulkan & Why Should Gamers CARE?
DirectX 12 & Vulkan as Fast As Possible
DCS: What is Vulkan API?
Vulkan vs OpenGL | Getting into Computer Graphics | OpenGL CUDA Interop | Cuda Education
What is Vulkan?
Should you learn Vulkan(C++)? Can beginners learn it?
Vulkan Tutorials [Deutsch]


OpenGL vs Vulkan
Open GL (Default) VS Open GL (Skia) VS Vulkan (Skia) Antutu Benchmark

Window System Integration (WSI)

XDC 2019 | Introducing the Vulkan WSI Layer – Rosen Zhelev


Intro To Modern OpenGL Tutorial (2014)

Game Dev Academy

What is a Graphics Pipeline? Featuring DirectX 11
hat is a Shader? | Pixel and Vertex Shaders


What Are Shaders?
Writing a Shader in OpenGL
How Shaders Work in OpenGL
Vertex and Fragment Shaders – Interactive 3D Graphics
What Is A Shader? UE4 Materials 101 – Episode 1
1. What is a shader? What is GLSL? Why are they useful in games – Shader Course
Shaders 101 – Intro to Shaders
Shader Basics, Blending & Textures • Shaders for Game Devs [Part 1] (Unity)


Computer Graphics 2.7: Aliasing and Anti aliasing Techniques
Antialiasing – Interactive 3D Graphics

Fun With WebGL 2.0

Fun With WebGL 2.0


Intro To Modern OpenGL Tutorial (Playlist)

The Cherno

OpenGL (Playlist), last update 2020
Welcome to OpenGL
Vertex Buffers and Drawing a Triangle in OpenGL

Joshua Shucker

Planet Vulkan (Playlist)
Episode 7.5 – Graphics Pipeline Overview


I created my own Ray Tracing Engine from scratch

NVIDIA Developer


Parallelizing GPU-intensive Workloads via Multi-Queue Operations using Kompute & Vulkan


GPU computing in Vulkan, The ultimate way to parallel computing using Vulkan API.
Learn the Vulkan API with C++, Learn the fundamentals of the popular Vulkan API for modern graphics rendering using C++!


Framebuffer Object (FBO)
Vertex Buffer Object (VBO)
Immediate Mode
Retained Mode
Z-Buffering (auch Depth Buffering, Tiefenpuffer)
Rasterung von Polygonen

Leave a Reply

Your email address will not be published. Required fields are marked *