PavelπŸ₯€πŸ‡ΊπŸ‡¦'s Avatar

PavelπŸ₯€πŸ‡ΊπŸ‡¦

@reinsteam

graphics/rendering/gpu performance @Xbox ATG // prev: Final Fantasy XV and ATD @Square Enix, NHL and CTG @EA // Opinions are mine //πŸ₯€in πŸ‡―πŸ‡΅ // ζ—₯本θͺžOK

112
Followers
197
Following
15
Posts
22.10.2024
Joined
Posts Following

Latest posts by PavelπŸ₯€πŸ‡ΊπŸ‡¦ @reinsteam

Visibility Buffer and Deferred Rendering in DOOM: The Dark Ages
Visibility Buffer and Deferred Rendering in DOOM: The Dark Ages YouTube video by Graphics Programming Conference

Our GPC 2025 talks are up on YT now!
youtu.be/fXakIV1OFes?...

youtu.be/mvCoqCic3nE?...

05.03.2026 10:29 πŸ‘ 33 πŸ” 15 πŸ’¬ 0 πŸ“Œ 0
Screenshot showing skin with micro-occlusion at the top, and micro-shadowing below.

Screenshot showing skin with micro-occlusion at the top, and micro-shadowing below.

I finally wrapped up the second post on the series about micro-shadowing. On this one I go over a basic approach based on a microsurface, and I show results for different materials and lighting conditions.

irradiance.ca/posts/micros...

05.03.2026 21:49 πŸ‘ 44 πŸ” 12 πŸ’¬ 1 πŸ“Œ 0
FASTBuild - Change Log

FASTBuild v1.19 has been released, including:
* LightCache supports Clang & GCC for significantly faster cache operations
* Support for Ctrl+F7 integration with Visual Studio
* BFF syntax enhancements
* Bug fixes
Details: http://
fastbuild.org/docs/changelog.html Big thanks to all contributors!

22.02.2026 08:16 πŸ‘ 6 πŸ” 3 πŸ’¬ 0 πŸ“Œ 0
Preview
Forget Superresolution, Sample Adaptively (when Path Tracing) Real-time path tracing increasingly operates under extremely low sampling budgets, often below one sample per pixel, as rendering complexity, resolution, and frame-rate requirements continue to rise. ...

Interesting paper showing great results for replacing standard low-res rendering + temporal upsampling (DLSS) with high-res GBuffer + adaptive sampling. Makes sense given rising costs of lighting computations vs GBuffer. arxiv.org/abs/2602.08642

14.02.2026 14:40 πŸ‘ 38 πŸ” 10 πŸ’¬ 0 πŸ“Œ 0
Writing tips

I have procrastinated on writing so much that I wrote an entire document on writing tips: cseweb.ucsd.edu/~tzli/writin...
Probably not much is new but I find I still need to repeat the same things to my students regularly. Will update this document over time hopefully.

03.02.2026 19:44 πŸ‘ 18 πŸ” 5 πŸ’¬ 2 πŸ“Œ 0
Preview
GitHub - pm4rtx/Unity-FrustumCulling: An example frustum culling implemented using Unity Burst compiler and native plugin An example frustum culling implemented using Unity Burst compiler and native plugin - pm4rtx/Unity-FrustumCulling

There’s also so called AoSoA layout which has benefits of the both (and some GPUs support that 10+ years but APIs never exposed). An example of AoSoA use on CPU also shows pretty solid perf (e.g. : github.com/pm4rtx/Unity...)

03.02.2026 02:25 πŸ‘ 3 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0

this point came up in a discussion some months ago which made me realize that supporting proper lambdas in hlsl would mean this "anyhit shader" logic could be passed in as lambda and inlined with the "hidden" code that does bvh traversal. maybe that'll happen some day..

02.02.2026 02:03 πŸ‘ 6 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
Preview
Nanite Tessellation Nanite Tessellation, aka Nanite Dynamic Tessellation, aka Nanite Dynamic Displacement was the next major feature I worked on after Nanite it...

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...

02.02.2026 02:40 πŸ‘ 160 πŸ” 51 πŸ’¬ 1 πŸ“Œ 1
Original: an old photo I took in the forest

Original: an old photo I took in the forest

3D voxelized scene in the day.

3D voxelized scene in the day.

3D voxelized scene in the night.

3D voxelized scene in the night.

3D voxelized scene in the day with volumetric fog.

3D voxelized scene in the day with volumetric fog.

This was a fun quick experiment:
Using an old photo I took in the forest, I used ml-sharp to generate gaussian splats from it, voxelized it in my toy renderer, relit the scene dramatically.
#rendeting #metalrt

22.01.2026 13:37 πŸ‘ 24 πŸ” 4 πŸ’¬ 0 πŸ“Œ 0
research!rsc: Floating-Point Printing and Parsing Can Be Simple And Fast (Floating Point Formatting, Part 3)

β€œFloating-Point Printing and Parsing Can Be Simple And Fast”

The fastest known floating-point printer and parsing algorithms - fixed-width printing, shortest-width printing, and parsing, all in 400 lines of Go.

research.swtch.com/fp
research.swtch.com/fp-proof

19.01.2026 22:13 πŸ‘ 75 πŸ” 15 πŸ’¬ 1 πŸ“Œ 2

Optimizing spatiotemporal variance-guided filtering for modern GPU architectures jcgt.org/published/00...

12.01.2026 22:48 πŸ‘ 26 πŸ” 9 πŸ’¬ 0 πŸ“Œ 0

cseweb.ucsd.edu/~tzli/novelt...
I gave an internal talk at UCSD last year regarding "novelty" in computer science research. In it I "debunked" some of the myth people seem to have about what is good research in computer science these days. People seemed to like it, so I thought I should share.

09.01.2026 17:21 πŸ‘ 75 πŸ” 25 πŸ’¬ 2 πŸ“Œ 2
A strand based hair simulation running on GPU
A strand based hair simulation running on GPU YouTube video by Jorrit Rouwe

A sneak peak of what I've been working on: A strand based hair system for Jolt Physics (WIP): youtu.be/Rl19G0c003o

10.01.2026 21:07 πŸ‘ 85 πŸ” 17 πŸ’¬ 4 πŸ“Œ 0
Post image Post image Post image Post image

-- JOB SEARCH POST/RT APPRECIATED --
Hello everyone!

I am available for work (full time position/internship) anywhere in the world with priority going to the EU, starting June 2026. 🧡

20.12.2025 13:54 πŸ‘ 38 πŸ” 17 πŸ’¬ 2 πŸ“Œ 1
How to Vulkan in 2026 - How to Vulkan How to write Vulkan graphics code in 2026

My "How to Vulkan in 2026" @vulkan.org #Vulkan guide is now publicly available at www.howtovulkan.com

I still consider it a preview, though I'm mostly happy with it and only plan on changing minor things and incorporating some feedback.

03.01.2026 18:15 πŸ‘ 76 πŸ” 29 πŸ’¬ 0 πŸ“Œ 0
Meshlet Rendering on Voodoo 2
Meshlet Rendering on Voodoo 2 YouTube video by Mustafa Korkmaz

As my holiday project, I went back to my retro engine project after a long time. Decided to add something modern, so here's meshlet rendering on Voodoo 2:
youtu.be/VOv8JqUZstQ

02.01.2026 00:44 πŸ‘ 12 πŸ” 2 πŸ’¬ 2 πŸ“Œ 1
An Experimental Approach to printf in HLSL Bringing the best form of debugging to shaders!

"An Experimental Approach to printf in HLSL" from the one and only
www.abolishcrlf.org/2025/12/31/P...

31.12.2025 22:05 πŸ‘ 14 πŸ” 2 πŸ’¬ 0 πŸ“Œ 0
SIGGRAPH 2025 Advances in Real-Time Rendering in Games: Fast as Hell: idTech8 Global Illumination
SIGGRAPH 2025 Advances in Real-Time Rendering in Games: Fast as Hell: idTech8 Global Illumination YouTube video by SIGGRAPH Advances in Real-Time Rendering

#SIGGRAPH2025 Advances in Real-Time Rendering in Games course talk recording of "FAST AS HELL: IDTECH8 GLOBAL ILLUMINATION" by @idsoftwaretiago.bsky.social from id Software is now online: youtu.be/VTrdeqMMMK0?... Enjoy!

29.12.2025 20:57 πŸ‘ 44 πŸ” 17 πŸ’¬ 0 πŸ“Œ 0
SIGGRAPH 2025 Advances in RT Rendering: Megalights: Stochastic Direct Lighting in Unreal Engine 5
SIGGRAPH 2025 Advances in RT Rendering: Megalights: Stochastic Direct Lighting in Unreal Engine 5 YouTube video by SIGGRAPH Advances in Real-Time Rendering

#SIGGRAPH2025 Advances in Real-Time Rendering in Games course talk recording of "MEGALIGHTS: STOCHASTIC DIRECT LIGHTING IN UNREAL ENGINE 5" by @knarkowicz.bsky.social‬
and @tiagocostav.bsky.social‬ from @epicgames.alt.store.ap.brid.gy is now online: youtu.be/dmmN8_c8Tb0?... Enjoy!

29.12.2025 21:04 πŸ‘ 62 πŸ” 16 πŸ’¬ 0 πŸ“Œ 0
State of GPU Hardware (End of Year 2025)

I wrote a blog post describing state of GPU market and what does it mean for support of new GPU features
asawicki.info/articles/sta...
Thanks to @asawicki.info for letting me publish on his blog

29.12.2025 14:16 πŸ‘ 41 πŸ” 13 πŸ’¬ 0 πŸ“Œ 1
Screenshot of the blog post.

Screenshot of the blog post.

I got the first post about direct lighting material occlusion up on my blog. On this one I go over the commonly used micro-occlusion approach and its limitations, and I start digging into micro-shadowing as an improvement.

irradiance.ca/posts/micros...

20.12.2025 21:31 πŸ‘ 48 πŸ” 14 πŸ’¬ 1 πŸ“Œ 0
Preview
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...

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".

16.12.2025 18:51 πŸ‘ 467 πŸ” 191 πŸ’¬ 19 πŸ“Œ 12
Critique of β€œMicrobenchmarking NVIDIA’s Blackwell Architecture: An in-depth Architectural Analysis”

FYI girl.surgery/bad_paper

11.12.2025 23:01 πŸ‘ 6 πŸ” 2 πŸ’¬ 0 πŸ“Œ 0
πŸ‡ meshoptimizer v1.0 Mesh optimization library that makes meshes smaller and faster to render

After nine years of development, meshoptimizer has reached its first major version, 1.0!

This release focuses on improvements in clusterization and simplification as well as stabilization. Here's a release announcement with more details on past, present and future; please RT!

meshoptimizer.org/v1

08.12.2025 16:56 πŸ‘ 248 πŸ” 76 πŸ’¬ 9 πŸ“Œ 1
Video thumbnail

Here's some cute bounding box functions for 2D shapes. A longer list here: iquilezles.org/articles/bbo...

25.11.2025 00:34 πŸ‘ 244 πŸ” 46 πŸ’¬ 3 πŸ“Œ 0
Post image Post image Post image Post image

dear imgui 1.92.5 released! πŸͺ©
github.com/ocornut/imgu...
- many fixes/changes for Tables, InputText, Keyboard navigation, disable mode, single-axis auto sizing, backends etc.
- webgpu backend update for latest Emscripten API changes & native Dawn/WGPU.

20.11.2025 17:26 πŸ‘ 37 πŸ” 4 πŸ’¬ 1 πŸ“Œ 0

Hi

15.11.2025 02:42 πŸ‘ 466 πŸ” 43 πŸ’¬ 39 πŸ“Œ 9

When doing insertion / search, it’s probably better not to do that with unique hash per thread (multiple hashes per wave) to avoid scattered reads/writes, and rather repurpose threads in a wave to do linear probing of the same hash value (and repeat the process for all unique hashes within a wave)

12.11.2025 23:43 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

The example makes use of 32-bit elements that hold flags + some data. For complex structures, one can repurpose data bits into an indirection index into an array holding structures (or multiple arrays with different structures, depending on frequency of access)

12.11.2025 23:33 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0