A physically-based GPU ray tracer written in Julia
Details
- External ID
- 47072444
- Source
- HN
- Company
- —
- Product
- A physically-based GPU ray tracer written in Julia
- Website domain
- makie.org
- Launched
- Feb. 19, 2026
- Cohort
- —
- Upvotes
- 198
- Upvotes percentile
- 0.9454177897574124
- Tags
- —
- Fetched at
- Sept. 7, 2026, 9:25 p.m.
- Updated at
- Sept. 7, 2026, 9:25 p.m.
Description
We ported pbrt-v4 to Julia and built it into a Makie backend. Any Makie plot can now be rendered with physically-based path tracing.Julia compiles user-defined physics directly into GPU kernels, so anyone can extend the ray tracer with new materials and media - a black hole with gravitational lensing is ~200 lines of Julia.Runs on AMD, NVIDIA, and CPU via KernelAbstractions.jl, with Metal coming soon.Demo scenes: github.com/SimonDanisch/RayDemo
Enrichment
- Theme
- interactive simulations and creative experiments
- Vertical
- Horizontal
- Function
- Dev tools
- Audience
- Developer
- AI stance
- Not AI
- Project type
- Hobby / open-source project
- Normalized one-liner
- gpu ray tracer written in julia
- Manually corrected
- False
Could you build this?
No Porting a physically-based path tracer (pbrt-v4) to Julia with custom GPU kernel compilation involves advanced computational physics, rendering mathematics, and compiler internals.
What it would actually take: Implementing a physically-based path tracer requires deep mastery of radiometric transport theory, Monte Carlo integration, multiple importance sampling (MIS), BVH (Bounding Volume Hierarchy) spatial acceleration structures, and BSDF scattering algorithms. Porting this to Julia GPU kernels requires writing kernel-level abstractions using CUDA.jl or KernelAbstractions.jl that compile dynamic user code directly to native GPU machine code without dynamic allocations or runtime overhead.
Discussion
20 comments analyzed.
Competitors mentioned: Python with C/C++/Fortran for heavy lifting, Cython, Numba, Pythran, PyPy, Rust for software engineering, MATLAB
Concerns raised: Precompilation times on Windows much slower than Linux, Exponential compile times with certain type unification combinations, Unexpected latency in build and startup time for scripts/applications, Difficulty predicting performance of code snippets, Poor AOT support and experimental --trim option
Feature requests: Better diagnostics explaining why precompilation is triggered, Asymmetric/non-symmetric multimethods instead of symmetric, Built-in static typing/proper enum support instead of separate packages, StaticArrays as part of Base for numerical applications, Better AOT compilation support
Competitors
Other products that read as similar to this one — 130 launches clear the similarity bar, closest 8 shown.
Attention rank: #10 of 131 (itself plus its competitors, highest first — normalized so YC and Product Hunt are compared fairly).
Launched 113 days after the earliest competitor.
- Physically accurate black hole you can put in your room · hn · 2026-07-23 · 477 upvotes · similarity 0.50
- a Rust ray tracer that runs on any GPU · hn · 2025-11-03 · 95 upvotes · similarity 0.47
- genpark-ray-tracer-sphere-plane-shading-skill · github · 2026-09-28 · 7 upvotes · similarity 0.45
- taichi-path-tracer-from-buaa-cg2024 · github · 2026-09-13 · 25 upvotes · similarity 0.45
- StratoSync · ph · 2026-09-15 · 1 upvotes · similarity 0.45
- High speed graphics rendering research with tinygrad/tinyJIT · hn · 2026-01-22 · 31 upvotes · similarity 0.45
- farseer.space · hn · 2026-09-15 · 11 upvotes · similarity 0.42
- GPU-Based Autorouting for KiCad · hn · 2025-10-29 · 8 upvotes · similarity 0.42
Other launches for this product
- No other launches for this product.
Same idea, different domain
Nobody's really built a dev tools tool for Sales yet.