Dev tools · alternatives · 2026
24 alternatives to a Rust ray tracer that runs on any GPU – even in the browser
I’ve been experimenting with Rust lately and wanted a project that would help me explore some of its lower-level and performance-oriented features. Inspired by Sebastian Lague’s videos, I decided to implement my own ray tracer from scratch. The initial goal was just to render a simple 3D scene in the browser at a reasonable frame rate. It evolved into a small renderer that can: • Run locally or on the web using wgpu and WebAssembly • Perform mesh rendering with a Bounding Volume Hierarchy (BVH) for acceleration • Simulate both direct and indirect illumination for photorealistic results • Be…
This is a ray tracer built in Rust that runs on any GPU, including in web browsers via WebAssembly. It renders 3D scenes with photorealistic lighting by simulating direct and indirect illumination, using a Bounding… Below are 24 products that do a similar job, ranked by how close each is in meaning and then by launch-day votes.
- 1

Monte Carlo ray tracer developed using Rust. Contribute to Dalamar42/rayt development by creating an account on GitHub.
2020 · github.com · its alternatives →
- 2

C++ Path Tracer from scratch with zero third-party libraries. - themartiano/luz
Jun 2026 · github.com · its alternatives →
- 3

Creator here. I built ChartGPU because I kept hitting the same wall: charting libraries that claim to be "fast" but choke past 100K data points. The core insight: Canvas2D is fundamentally CPU-bound. Even WebGL chart libraries still do most computation on the CPU. So I moved everything to the GPU via WebGPU: - LTTB downsampling runs as a compute shader - Hit-testing for tooltips/hover is GPU-accelerated - Rendering uses instanced draws (one draw call per series) The result: 1M points at 60fps with smooth zoom/pan. Live demo:…
Jan 2026 · github.com · its alternatives →
- 4

A toy ray tracer in Rust. Contribute to Twinklebear/tray_rust development by creating an account on GitHub.
2015 · github.com · its alternatives →
- 5

This is a GPU "software" raytracer (i.e. using manual ray-scene intersections and not RTX) written using the WebGPU API that renders glTF scenes. It supports many materials, textures, material & normal mapping, and heavily relies on multiple importance sampling to speed up convergence.
2024 · github.com · its alternatives →
- 6IM
I was fascinated by this [0] and this video [1]. After many struggles, I finally built this app that traces images using circles similar to what these videos had shown. The most challenging part (to me) is to find a way to convert images to vector lines. I had tried Potrace, but its output is not suitable for my use case: too many small elements share the same border. Potrace's goal is to represent the original image faithfully using vector lines. But I want to trace the image edges. After searching and trying some Potrace alternatives in vain, I finally found my keyword. Surprisingly (to…
2022 · phqb.github.io · its alternatives →
- 7

For the past three years I've been building what I hope will be the next Blender, tackling the lack of any good 2D design or image editing tools outside the Adobe monopoly. This was our first year participating in Google Summer of Code and this Q3 update includes the big payoff from that, covering the most progress we've made so far as a project. If you're a Rust dev, consider getting involved as we apply for the next GSoC in the new year— you could be our intern next summer :) Q3 progress report: https://graphite.rs/blog/graphite-progress-report-q3-2024/
2024 · graphite.rs · its alternatives →
- 8

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
Feb 2026 · makie.org · its alternatives →
- 9

I'm the co-creator and maintainer of https://aframe.io/ and long time Web 3D graphics dev. Super excited about new techniques to author / render / represent 3D. Spark is a an open source library to easily integrate Gaussian splats in your THREE.js scene I worked with some friends and I hope you find useful. Looking forward to hearing what features / rendering techniques you would love to see next.
2025 · sparkjs.dev · its alternatives →
- 10

A path tracer written in Go. Contribute to fogleman/pt development by creating an account on GitHub.
2015 · github.com · its alternatives →
- 11

A ray-tracer with a simple scene description language for easily generating beautiful images. - diegomacario/Super-Sunshine
2017 · github.com · its alternatives →
- 12RT
2023 · antimatter15.com · its alternatives →
- 13

Svader is a library for rendering 2D shaders on Svelte websites, using either WebGL or WebGPU. It's streamlined for the specific use case of rendering 2D graphics using fragment shaders as an alternative to SVG or the JS canvas API, so it's not meant for doing 3D objects like three.js, for example. This started as something I needed for my own project, but I eventually decided to split it into a separate library. I've since found that this use case fits really well into the Svelte compiler-based approach and its fine-grained reactivity system. In general, I think using shaders like these has…
2024 · github.com · its alternatives →
- 14

CLI Native WebRTC Agent in Rust. Contribute to bitwhip/bitwhip development by creating an account on GitHub.
2024 · github.com · its alternatives →
- 15

GPU Raytracer from scratch in C++/CUDA. Contribute to jan-van-bergen/GPU-Raytracer development by creating an account on GitHub.
2021 · github.com · its alternatives →
- 16

Grant Sanderson (3Blue1Brown) created Manim, the Python library he uses to make the math animations in his videos. We reimplemented Manim with the same Python API, but the implementation underneath is Rust, connected to Python through PyO3. The Rust code uses wgpu, so rendering happens on the GPU. To run it in the browser, we compiled the Rust parts to WebAssembly so the PyO3 extension loads in Pyodide. In the browser, wgpu targets the WebGPU API, so animations render in real time on your GPU through the browser. The editor is Monaco (the editor that powers VS Code) with a live preview:…
Jul 2026 · studio.academa.ai · its alternatives →
- 17

Earlier this year, we released our open-source game engine [0] built with Rust, WebAssembly, and WebGPU. Today, we’re happy to announce the Ambient platform, which brings web deployment, server hosting, and more to the runtime. With Ambient, you can make a game, deploy it to the browser in one command, share your URL and instantly play with others, no downloads or installs needed. Our WASM use is innovative; it is being used as both a sandboxed runtime for user code, and as a way to run the entire Ambient runtime in the browser. This, paired with our ECS data model, enables a highly modular…
2023 · ambient.run · its alternatives →
- 18

Hi HN, author here. SHARP is Apple's recent single-image 3D Gaussian splatting model (https://arxiv.org/abs/2512.10685). Their reference code is PyTorch + a pretty heavy pipeline; I wanted to see if it could run in a browser with no server hop, so I exported the predictor to ONNX and ran it via onnxruntime-web with the WebGPU EP. What works: drop in an image, get a .ply you can download or preview live, all on your machine — your image never leaves the tab. The model is large (~2.4 GB sidecar) so first load is slow on a cold cache, but inference itself is a few seconds on…
May 2026 · github.com · its alternatives →
- 19

Tabs, splits, and tmux work fine until you have several projects open with logs, tests, and long-running shells. I kept rebuilding context instead of resuming work. Horizon puts shells on an infinite canvas. You can arrange them into workspaces and reopen later with layout, scrollback, and history intact. Built in 3 days with Claude/Codex, dogfooding the workflow as I went. Feedback and contributions welcome.
Mar 2026 · github.com · its alternatives →
- 20

Hey HN! I'm a huge fan of Raycast, but as a Linux user, I was always disappointed it wasn't available on my main OS. This summer, I decided to just build it myself. This project has the goal of being interoperable with Raycast itself, including a majority of the extensions. It's built with Tauri and Rust on the backend, with a Svelte frontend. The biggest challenge was getting it to run existing Raycast extensions, which required building a custom React renderer as well as making a custom API. I also wrote a quick post, which I hope to expand on in the future, about this project. You can…
2025 · github.com · its alternatives →
- 21

We added a new feature to our open-source HTML5 game engine today that allows you to create Sprite GPU Layers. These pack together simple JS object definitions onto the GPU and renders them using a custom vertex shader. This skips all CPU computation and GPU upload operations, resulting in vastly increased performance. For objects that don't need to be updated by input, physics, or other interactive behaviors, we found it to be a great solution. In testing, we've easily managed to blast millions of sprites around on moderate desktop-grade GPUs. Indeed, we hit the fill rate limitation of the…
2025 · phaser.io · its alternatives →
- 22
WebGPU Tech Demo▲141WebGPU tech demo running in modern browsers showcasing various rendering techniques like deferred rendering with 400+ dynamic lights, Hi-Z screen space reflections and cascaded shadow mapping.
2024 · gnikoloff.github.io · its alternatives →
- 23

allocscope - a memory tracking tool. Contribute to matt-kimball/allocscope development by creating an account on GitHub.
2023 · github.com · its alternatives →
- 24

So, after years of abandoning Rust after the hello world stage, I finally decided to do something substantial. It started with simple line rendering, but I liked how it was progressing so I figured I could make a reasonably complete PSX style renderer and a game with it. My only dependency is SDL2; I treat it as my "platform", so it handles windowing, input and audio. This means my Cargo.toml is as simple as: [dependencies.sdl2] version = "0.35" default-features = false features = ["mixer"] this pulls around 6-7 other dependencies. I am doing actual true color 3D rendering (with Z buffer,…
2025 · totenarctanz.itch.io · its alternatives →
Also compare
- Monte Carlo ray tracer in Rust alternatives
- I wrote a C++ ray tracer from scratch without AI alternatives
- ChartGPU – WebGPU-powered charting library (1M points at 60fps) alternatives
- A toy ray tracer in Rust alternatives
- I've made a Monte-Carlo raytracer for glTF scenes in WebGPU alternatives
- I made a WebGL-based app that traces images using circles alternatives
Ranked by how close each launch is in meaning, then by votes. Prices were read from each product’s own site when checked and can change. Refine with your own description →