JMS55
@jms5517.bsky.social
📤 326
📥 30
📝 189
Working on rendering for the Bevy game engine. Long form blog at
https://jms55.github.io
.
reposted by
JMS55
Yining Karl Li
5 days ago
There's a neat short paper from Eurographics this year that evaluates how well microfacet shading models actually predict measured reflectance. The answer is: not nearly as well as one would hope! (1/3)
ssteinberg.xyz/2026_surface...
3
79
19
reposted by
JMS55
AMD GPUOpen
8 days ago
AMD is partnering with Samsung to develop a multivendor DGF extension for Vulkan! Dense Geometry Format (DGF) is AMD's open standard: 🧊 Block-based geometry compression for ray tracing. 🔓 Open-source toolchain & Vulkan extension. Read more ⬇️
gpuopen.com/learn/amd-dg...
loading . . .
AMD DGF: An Open Geometry Compression Standard - AMD GPUOpen
AMD is partnering with Samsung on a multivendor Vulkan extension for Dense Geometry Format (DGF) to help enable dramatically smaller geometry, reduced memory/latency for ray-traced real‑time 3D, and e...
https://gpuopen.com/learn/amd-dgf-an-open-geometry-compression-standard/?utm_source=bluesky&utm_medium=social&utm_campaign=dgf
1
19
4
reposted by
JMS55
Patrick Walton
12 days ago
Can't believe it's 2026 and we're having to disable GPU occlusion culling on flagship Google phones due to driver bugs. Pretty ridiculous.
github.com/bevyengine/b...
loading . . .
Limit Pixel 10 to GPU preprocessing without GPU culling by SkiFire13 · Pull Request #24101 · bevyengine/bevy
Objective Workaround for Bevy crashes on Google Pixel 10 #23754 until we find the actual issue or Google fixes its driver Solution Limit Pixel 10 to GPU preprocessing without GPU culling Testin...
https://github.com/bevyengine/bevy/pull/24101
5
24
3
DLSS-RR is kind of magic (quarter-res lighting)
25 days ago
1
17
0
reposted by
JMS55
mamoniem, et al. 🌹♠️🦷🌿
about 1 month ago
Behind the pretty frames of
#PRAGMATA
. Breaking down many tricks and hidden gems of the renderer behind CAPCOM's RE Engine. i hope you enjoy & find this few months worth of freetime article useful...
mamoniem.com/behind-the-p...
0
85
25
Bevy 0.19 is releasing soon, which means it's time for a blog post!
jms55.github.io/posts/2026-0...
about 1 month ago
0
63
7
reposted by
JMS55
Arseny Kapoulkine
about 1 month ago
meshoptimizer 1.1 is out!
github.com/zeux/meshopt...
Featuring two new major features, meshlet topology compression and opacity micromaps, as well as a few smaller features and improvements! More information in the infographic and release above :) Boosts and repository stars are welcome!
5
105
35
A little different than my usual writing, but I've written a blog post about our usage of Bevy/egui/Rust at Nominal, the company I work at. Give it a read!
nominal.io/blog/nominal...
loading . . .
Nominal Connect: Shipping Realtime Desktop Software With Rust, Bevy, and egui
A one year retrospective on the technology behind Nominal Connect.
https://nominal.io/blog/nominal-connect-shipping-realtime-desktop-software-with-rust-bevy-and-egui
about 2 months ago
3
34
5
reposted by
JMS55
Jondolf
about 2 months ago
I just released version 0.6 of Avian, an ECS-driven physics engine for
@bevy.org
.
#physics
#gamedev
v0.6 features move-and-slide, joint motors, and an overhauled broad phase using BVHs, resulting in massively reduced overhead for scenes with a large number of colliders.
joonaa.dev/blog/12/avia...
loading . . .
Avian Physics 0.6 - Joona Aalto
Move-and-slide, joint motors, and BVH optimization
https://joonaa.dev/blog/12/avian-0-6
2
142
27
reposted by
JMS55
Brian Karis
2 months ago
2 more Nanite Tessellation posts are up.
graphicrants.blogspot.com/2026/02/nani...
,
graphicrants.blogspot.com/2026/03/vari...
loading . . .
Nanite + Reyes
Let's get into the details of how this integrates with Nanite. We aren’t replacing anything Nanite already does. Nothing is changed about th...
https://graphicrants.blogspot.com/2026/02/nanite-reyes.html
2
77
29
reposted by
JMS55
Nathan Reed
2 months ago
My team just open-sourced our internal implementation of the OpenPBR BSDF from our path tracer:
github.com/adobe/openpb...
loading . . .
GitHub - adobe/openpbr-bsdf: Adobe's reference implementation of the OpenPBR BSDF
Adobe's reference implementation of the OpenPBR BSDF - adobe/openpbr-bsdf
https://github.com/adobe/openpbr-bsdf
0
26
7
reposted by
JMS55
MAK
3 months ago
Real-time Rendering with a Neural Irradiance Volume Delivering fast inference (~1ms/frame), a tiny memory footprint (1-5MB), 10x quality gains over probe-based methods @ equivalent mem budgets, bringing neural rendering within reach of consumer hardware without RT or denoising.
arnocoomans.be/eg2026
loading . . .
3
59
16
Update on
bsky.app/profile/jms5...
: Turns out my code was bugged, and I never actually wrote to the cache... Fixing that reveals that the whole scheme was wrong anyways - conditionally replacing cache cells with RIS outputs does not give an unbiased/correct output.
add a skeleton here at some point
3 months ago
1
12
1
Anyone have examples of Material APIs they like in an engine, or links to good talks on this topic? Right now Bevy materials let you reuse host code (texture/buffer bindings), but customizing the default material is essentially "go to github and copy paste the entire shader". Not very modular.
3 months ago
1
8
2
reposted by
JMS55
The Forge Interactive
3 months ago
🚀 Unleash your creativity with GPU Zen 4! 📖 Dive into cutting-edge techniques from industry experts to tackle complex graphics challenges and elevate your projects. Available now on Amazon! 📔 Standard Edition:
a.co/d/0cvhJuSU
⭐️ Deluxe Edition:
a.co/d/07t0MZGz
#GPUZen
#GameDev
0
22
9
🧵 I've been experimenting with caching the best lights in world space to improve NEE sampling. Inspired by ReGIR, MegaLights, and
www.yiningkarlli.com/projects/cac...
.
3 months ago
1
48
8
reposted by
JMS55
Ignacio Castano
3 months ago
I've put together an updated version of the Sponza scene with uncompressed PNG and compressed AVIF textures. I wrote about the process and compared the results against KTX.
www.ludicon.com/castano/blog...
#webgpu
#web3d
#sparkjs
loading . . .
An Updated Sponza glTF – Ignacio Castaño
https://www.ludicon.com/castano/blog/2026/02/an-updated-sponza-gltf/
3
13
3
reposted by
JMS55
Brian Karis
3 months ago
I'm finally writing up how Nanite Tessellation works. The first few blogs posts are up. More will be coming.
graphicrants.blogspot.com/2026/02/nani...
loading . . .
Nanite Tessellation
Nanite Tessellation, aka Nanite Dynamic Tessellation, aka Nanite Dynamic Displacement was the next major feature I worked on after Nanite it...
https://graphicrants.blogspot.com/2026/02/nanite-tessellation.html
1
161
51
reposted by
JMS55
Jure Triglav
4 months ago
New post on how to do real-time diffuse global illumination using surfels and
#WebGPU
:
juretriglav.si/surfel-based...
#threejs
loading . . .
1
170
31
Ok, so I'm completely stuck trying to debug this. Left is pathtraced reference, right is my realtime renderer. Top row are metals, bottom row are dielectrics, and roughness goes from 0 to 1 left to right.
4 months ago
1
19
2
reposted by
JMS55
Bevy
4 months ago
Bevy 0.18 is out now! It features Atmosphere Occlusion and PBR Shading, Generalized Atmospheric Scattering Media, Solari features, PBR Fixes, Font Variations, Automatic Directional Navigation, Fullscreen Materials, Cargo Feature Collections, Camera Controllers, and more!
bevy.org/news/bevy-0-...
loading . . .
Bevy 0.18
Bevy is a refreshingly simple data-driven game engine built in Rust. It is free and open-source forever!
https://bevy.org/news/bevy-0-18/
2
182
75
reposted by
JMS55
Kostas Anagnostou
4 months ago
Optimizing spatiotemporal variance-guided filtering for modern GPU architectures
jcgt.org/published/00...
loading . . .
https://jcgt.org/published/0015/01/02/
0
26
9
Light leaks are driving me crazy. World space irradiance cache using spatial hashing. Does anyone have tips to prevent them? Usually happens when ray_t < cell_size, but I haven't found a good way to deal with it. Shrinking the cell size is way too expensive.
5 months ago
1
10
0
reposted by
JMS55
charlotte 🌸
5 months ago
just published an experimental crate for doing cuda interop with
@bevy.org
github.com/tychedelia/b...
loading . . .
1
29
7
Many-lights (100) stress test (not super usable yet, much less with 1000 lights)
5 months ago
1
35
4
New post! "Realtime Raytracing in Bevy 0.18 (Solari)"
jms55.github.io/posts/2025-1...
5 months ago
0
62
12
reposted by
JMS55
Omar
5 months ago
Dear ImGui now embeds a vector/scalable version of the classic font by default, manually subsetted/optimized so it fits in 18 KB (opt-out possible). Embedding ensures easily and readily usable in all contexts. Should default to new one on most setups. Here's a compare of both.
#ChristmasMiracle
loading . . .
10
178
20
reposted by
JMS55
Sebastian Aaltonen
5 months ago
My "No Graphics API" blog post is live! Please repost :)
www.sebastianaaltonen.com/blog/no-grap...
I spend 1.5 years doing this. Full rewrite last summer and another partial rewrite last month. As Hemingway said: "First draft of everything is always shit".
loading . . .
No Graphics API — Sebastian Aaltonen
Graphics APIs and shader languages have significantly increased in complexity over the past decade. It’s time to start discussing how to strip down the abstractions to simplify development, improve pe...
https://www.sebastianaaltonen.com/blog/no-graphics-api
19
469
205
reposted by
JMS55
Panagiotis Christopoulos-Charitos / AnKi 3D engine
5 months ago
Blog post: Cheap ray-tracing using only acceleration structures. No ray pipelines, no shader binding tables, no textures.
anki3d.org/minimalist-r...
loading . . .
Minimalist ray-tracing leveraging only acceleration structures
AnKi has had ray-tracing support for quite some time. Beyond managing acceleration structures, the engine uses VK_KHR_ray_tracing_pipeline/DXR 1.0 for shadows (soon deprecated), indirect diffuse, a…
https://anki3d.org/minimalist-ray-tracing-leveraging-only-acceleration-structures/
2
49
9
Solari is looking pretty good after the latest round of changes! Realtime vs pathtraced reference
6 months ago
1
26
0
Real life has kept me from posting, but I've still been hard at work on Bevy Solari! It now supports specular materials, and has a _way_ improved world cache! Realtime vs pathtraced reference
6 months ago
2
47
5
reposted by
JMS55
Philip Hammer
7 months ago
Very excited to present a few interesting bits about the rendering of
#DOOM
: The Dark Ages together with
@domlaz.bsky.social
and
@martinfuller.bsky.social
. If you happen to attend
#GPC2025
next month, feel free to say hello!
1
53
9
reposted by
JMS55
Bevy
8 months ago
Bevy 0.17 is out now! It features Raytracing, Improved Observers / Events, UI Widgets, Rust Hotpatching, Light Textures, DLSS, Tilemap Chunks, Web Assets, Reflect Auto-Registration, UI Gradients, Raymarched Atmosphere, Virtual Geometry BVH Culling, and more!
bevy.org/news/bevy-0-17
loading . . .
Bevy 0.17
Bevy is a refreshingly simple data-driven game engine built in Rust. It is free and open-source forever!
https://bevy.org/news/bevy-0-17
4
226
86
reposted by
JMS55
Arseny Kapoulkine
8 months ago
New blog post! In "Billions of triangles in minutes" we'll walk through hierarchical cluster level of detail generation of, well, billions of triangles in minutes. Reposts welcome!
zeux.io/2025/09/30/b...
1
166
59
reposted by
JMS55
AMD GPUOpen
8 months ago
Exciting news for developers working with our AMD DGF geometry compression technology! 🗜️ The DGF SDK has been updated with a new animation-aware encoding pipeline, bug fixes, and improvements. 👉 Learn more and download:
gpuopen.com/learn/animat...
loading . . .
Animating geometry with AMD DGF - AMD GPUOpen
The AMD DGF SDK has been updated with improvements and new features, including the addition of an animation-aware encoding pipeline.
https://gpuopen.com/learn/animating-geometry-with-amd-dgf/?utm_source=twitter&utm_medium=social&utm_campaign=dgf
0
6
3
New blog post: "Realtime Raytracing in Bevy 0.17 (Solari)"
jms55.github.io/posts/2025-0...
8 months ago
0
74
19
New blog post: "Bevy's Fifth Birthday - Progress and Production Readiness"
jms55.github.io/posts/2025-0...
loading . . .
JMS55's Blog
https://jms55.github.io/tags/virtual-geometry/
8 months ago
0
24
5
reposted by
JMS55
9 months ago
Slides from my SIGGRAPH 2025 and CEDEC 2025 talks “Fast as Hell: idTech 8 Global Illumination”, are now publicly available through the Advances in Real-Time Rendering in Games course. Lecture recordings will be available soon on the course's YouTube channel.
add a skeleton here at some point
1
99
26
reposted by
JMS55
Arseny Kapoulkine
9 months ago
meshoptimizer v0.25 is out! Featuring new simplification function that optimizes positions and attributes for appearance, experimental permissive mode to simplify faceted regions with selective seam preservation, regularization option for improved tessellation quality and deformation, multiple ...
3
62
21
reposted by
JMS55
Karl
9 months ago
New tutorial blog post! Environment and Light in Godot: Setting Up For Photorealistic 3D Graphics
hexaquo.at/pages/enviro...
I've been meaning to write this for a while, both as an overview over Godot's Environment, and as an entry point to realistic 3D graphics.
#godot
#gamedev
1
32
6
Realtime raytraced DI/GI
9 months ago
2
28
2
crates.io/crates/dlss_...
Just published my open source crate for using DLSS in wgpu! Supports both super resolution and ray reconstruction. Also look forward to DLSS support in the upcoming Bevy 0.17 release!
loading . . .
crates.io: Rust Package Registry
https://crates.io/crates/dlss_wgpu
9 months ago
1
39
7
Anyone used DLSS-RR with ReSTIR GI before? How do you prevent DLSS-RR from thinking that correlated noise from ReSTIR GI is detail that needs to be preserved?
9 months ago
1
5
1
reposted by
JMS55
Carter Anderson
9 months ago
Today is Bevy's fifth birthday! As always, I've used this as a chance to reflect on the past year and outline my hopes and dreams for the next year of
#bevy
:
bevy.org/news/bevys-f...
loading . . .
Bevy's Fifth Birthday
Bevy is a refreshingly simple data-driven game engine built in Rust. It is free and open-source forever!
https://bevy.org/news/bevys-fifth-birthday/
4
152
47
~14ms
9 months ago
3
18
1
Added DLSS Ray Reconstruction to Bevy Solari! It's kind of fun to look at the profile, I _think_ this is a series of upsample/downsample convolutions for a U-net, but who knows!
9 months ago
0
14
1
Trying to upload this again, radiance cache:
github.com/bevyengine/b...
9 months ago
0
11
1
So subgroups are a bust, which is a shame because they were cheap. But they didn't have enough samples to reduce correlations. So I tried workgroup-level resampling, which is mostly artifact free. Greatly improves quality! ...At double the cost (6.4->12ms) :( Left is main, right is workgroup.
10 months ago
1
10
0
Tried doing ReSTIR spatial reuse within a subgroup today. This is the result - super good quality, but with tiling artifacts. I tried jittering the thread ID to get subgroups to overlap across frames, and it helped a bit, but didn't entirely eliminate the artifacts :(
10 months ago
1
10
0
Realtime, no denoising besides TAA :)
10 months ago
1
20
0
Load more
feeds!
log in