JMS55
@jms5517.bsky.social
📤 279
📥 27
📝 149
Working on rendering for the Bevy game engine. Long form blog at
https://jms55.github.io
.
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.
9 days ago
1
9
0
reposted by
JMS55
charlotte 🌸
10 days ago
just published an experimental crate for doing cuda interop with
@bevy.org
github.com/tychedelia/b...
loading . . .
1
27
6
Many-lights (100) stress test (not super usable yet, much less with 1000 lights)
11 days ago
1
35
4
New post! "Realtime Raytracing in Bevy 0.18 (Solari)"
jms55.github.io/posts/2025-1...
12 days ago
0
58
11
reposted by
JMS55
Omar
16 days 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
173
20
reposted by
JMS55
Sebastian Aaltonen
23 days 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
452
199
reposted by
JMS55
Panagiotis Christopoulos-Charitos / AnKi 3D engine
about 1 month 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
about 1 month 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
about 2 months ago
2
47
5
reposted by
JMS55
Philip Hammer
3 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
3 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
227
88
reposted by
JMS55
Arseny Kapoulkine
3 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
168
59
reposted by
JMS55
AMD GPUOpen
4 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...
4 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/
4 months ago
0
25
5
reposted by
JMS55
5 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
5 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
5 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
5 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
5 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?
5 months ago
1
5
1
reposted by
JMS55
Carter Anderson
5 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
154
47
~14ms
5 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!
5 months ago
0
14
1
Trying to upload this again, radiance cache:
github.com/bevyengine/b...
5 months ago
0
12
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.
5 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 :(
5 months ago
1
10
0
Realtime, no denoising besides TAA :)
5 months ago
1
20
0
registry.khronos.org/vulkan/specs...
👀
loading . . .
VK_AMDX_dense_geometry_format(3)
https://registry.khronos.org/vulkan/specs/latest/man/html/VK_AMDX_dense_geometry_format.html
5 months ago
0
1
0
Added a radiance cache, and initial results show it _halved_ my ReSTIR GI time (8.62ms -> 4.32ms) in bistro! Also improved disocclusion quality a lot. The downside is that it's more temporally unstable and has some artifacts due to using a fixed sample point per voxel.
5 months ago
2
8
0
Implemented (with a lot of help) balance heuristic for ReSTIR GI spatial resampling. Spent so long fighting NaNs - turns out it was due to an unclamped dot product 🙃. Balance heuristic helps a _ton_ though! Greatly reduces jacobian correlations, way more than rejecting jacobians does.
6 months ago
0
9
0
reposted by
JMS55
Christoph Kubisch
6 months ago
Just pushed a technique to avoid too many BLAS builds for continuous cluster-based LoD ray tracing. Thanks to Pyarelal Knowles whose instance merging idea was a precursor to this solution and helped on debugging.
github.com/nvpro-sample...
loading . . .
https://github.com/nvpro-samples/vk_lod_clusters/blob/main/docs/blas_sharing.md
0
23
8
All my raytracing shaders (compute with inline RT, not RT pipelines) have ~60% occupancy. High register count is the issue, because of the instance -> vertex/material data lookups. Anyone know how to make this take less registers?
github.com/bevyengine/b...
loading . . .
bevy/crates/bevy_solari/src/scene/raytracing_scene_bindings.wgsl at main · bevyengine/bevy
A refreshingly simple data-driven game engine built in Rust - bevyengine/bevy
https://github.com/bevyengine/bevy/blob/main/crates/bevy_solari/src/scene/raytracing_scene_bindings.wgsl#L129-L167
6 months ago
0
3
2
Specular! (PT, not realtime)
6 months ago
0
12
0
reposted by
JMS55
Emilio López
7 months ago
I have a new article! It took a long time but I think it was worth it, hopefully you'll enjoy it too.
www.elopezr.com/the-art-of-p...
Many thanks to
@vassilis3d.bsky.social
,
@mokarakaya.bsky.social
and
@angelortiz.bsky.social
for the help and encouragement
loading . . .
The Art Of Packing Data
The packing of data is good practice for many reasons, including disk space and efficient RAM or cache access. If we know the meaning of data we can often narrow down the range and precision, makin…
https://www.elopezr.com/the-art-of-packing-data/
1
48
21
This is neat
6 months ago
1
5
0
6 months ago
0
10
0
After like 3 years, I finally got usable realtime, fully dynamic fully raytraced lighting in Bevy!
6 months ago
1
42
4
ReSTIR GI was shockingly easy to get started on. With initial + temporal resampling (no spatial yet) it was pretty much a copy + paste of the DI code with some small adjustments. Didn't really expect to get this far so quickly!
6 months ago
0
16
0
After a bunch of work, re-enabled the directional light and added TAA, and it's starting to look great!
@gpuopen.bsky.social
's paper
gpuopen.com/download/Eff...
in particular was a big quality increase, for a simple change.
7 months ago
0
13
0
reposted by
JMS55
Christoph Peters
7 months ago
All HPG 2025 papers are now available on the EG digital library. CGF papers:
diglib.eg.org/handle/10.23...
Conference papers:
diglib.eg.org/handle/10.23...
It has been a huge honor to act as HPG papers chair and guest editor and I look forward to an exciting program in Copenhagen.
loading . . .
44-Issue 8
High-Performance Graphics 2025
https://diglib.eg.org/handle/10.2312/3607201
1
52
24
reposted by
JMS55
Arseny Kapoulkine
7 months ago
meshoptimizer 0.24 is out! Featuring new meshlet builder for raytracing workloads, improvements to cluster partitioning, new functions for reindexing, simplification, clustering and coverage computation, many internal improvements and, of course, VS2013 support!
loading . . .
Release v0.24 · zeux/meshoptimizer
This release contains many improvements to the meshoptimizer library and some gltfpack fixes! Some highlights: New meshlet builder (meshopt_buildMeshletsSpatial) designed for raytracing workloads o...
https://github.com/zeux/meshoptimizer/releases/tag/v0.24
3
49
12
reposted by
JMS55
Vlad Erium 🇯🇵
7 months ago
Hardware Accelerated Neural Block Texture Compression with Cooperative Vectors Belcour Laurent, Benyoub Anis @Auzaiffe (Intel Labs, France) Paper:
arxiv.org/abs/2506.06040
Project:
ggx-research.github.io/publication/...
Video:
youtu.be/8sy3QP1R-p8?...
Code (MIT):
github.com/GameTechDev/...
1
18
4
reposted by
JMS55
Jakub Boksansky
7 months ago
New papers day! Preprints of our „GATE: Geometry-Aware Trained Encoding“ to be presented at HPG and „Neural Visibility Cache for Real-Time Light Sampling“ currently on Arxiv are available here:
boksajak.github.io/blog/Preprin...
Kudos to co-authors Daniel Meister and Carsten Benthin. Enjoy!
2
14
3
Slowly working on ReSTIR. Keeping things unbiased gets really complicated, really fast! I have spatial reuse done, working on temporal. At this rate I'm hoping to get raytraced direct lighting into Bevy 0.17, although it'll probably depend on how long it takes me to polish the DLSS integration.
7 months ago
1
9
0
reposted by
JMS55
François Mockers
7 months ago
Hot patching
#RustLang
code? In my
#BevyEngine
?
github.com/bevyengine/b...
was just merged! Thanks to subsecond from
#Dioxus
, coming to Bevy 0.17, and already on main!
loading . . .
2
86
13
reposted by
JMS55
Brian Karis
7 months ago
Excited to finally show off Nanite Foliage
www.youtube.com/watch?v=FJtF...
loading . . .
The Witcher 4 - UE 5.6 Tech Demo | State of Unreal 2025
YouTube video by IGN
https://www.youtube.com/watch?v=FJtF3wzPSrY
14
209
47
Spent some time yesterday prototyping what component categories would look like for the Bevy editor. Figma's autolayout is pretty cool, but also very finicky sometimes. I think that this design is ultimately a dead-end, the nesting leads to the same issue with usability that I feel Godot has.
7 months ago
1
8
1
reposted by
JMS55
Kostas Anagnostou
8 months ago
New blog post discussing Async Compute, various experiments with pairings and task overlapping and performance impact.
interplayoflight.wordpress.com/2025/05/27/a...
loading . . .
Async compute all the things
GPUs make work parallelism very easy by design: each drawcall/dispatch shader instruction operates on batches of vertices, pixels, threads in general at the same time automatically. On the other ha…
https://interplayoflight.wordpress.com/2025/05/27/async-compute-all-the-things/
2
66
12
I don't usually post about individual PRs, but I've just opened the first PR for raytracing support in Bevy. I'm very excited that this is finally happening!
github.com/bevyengine/b...
loading . . .
Initial raytraced lighting progress (bevy_solari) by JMS55 · Pull Request #19058 · bevyengine/bevy
Bevy Solari Preface See release notes. Please talk to me in #rendering-dev on discord or open a github discussion if you have questions about the long term plan, and keep discussion in this PR li...
https://github.com/bevyengine/bevy/pull/19058
8 months ago
1
50
12
Load more
feeds!
log in