Bart Wronski 🇺🇦🇵🇸
bartwr.bsky.social
Bart Wronski 🇺🇦🇵🇸
@bartwr.bsky.social
Engineering, Computer Graphics, Art, DSP, ML
Culture, Techno, Industrial, and Electronic Music.

Research Scientist at NVIDIA.
Ex Google Research, Ex games (Sony, Ubisoft, CD Projekt).
Politically leftist. He/they.

https://linktr.ee/bartwronsk
Hostages. People held without any charge and released in exchanges etc. are called hostages. (And they are held in underground "tunnels".)
November 8, 2025 at 6:44 PM
Two weeks ago I read some hate on Hasan Piker related to Zohran and how their association will sink his election results (lol). So I listened to 20-50min clips from his YT channel.
That dude is legit good: charismatic, nuanced, pragmatic, emphatic, and policing his audience against hate.
November 7, 2025 at 1:22 PM
TIL that Norbert Wiener, creator of cybernetics and one of the biggest names in early computer science, statistics, robotics, and control systems - was a workers' rights supporter, argued for labor involvement in tech, and became an anti-war activist after WW2, refusing any military-related funding.
November 2, 2025 at 12:01 AM
Reposted by Bart Wronski 🇺🇦🇵🇸
i had a chat with lukasz and @antovsky about gamedev and stuff, if youre into that sort of thing! the middle hour is the juiciest but its all fantastic, ofc ;) youtu.be/mFBmoCv5EcQ?...
Game Architectures with Alex Evans and Anton Mikhailov
YouTube video by Wookash Podcast
youtu.be
November 1, 2025 at 7:06 PM
Reposted by Bart Wronski 🇺🇦🇵🇸
I gave a talk at Pacific Graphics 2025 on the topic of "Classical Computer Graphics in the Age of Generative AI". I've uploaded the recording to Youtube today.
www.youtube.com/watch?v=Vyci...
"Classical Computer Graphics in the Age of Generative AI", Pacific Graphics 2025 Keynote, Tzu-Mao Li
YouTube video by Tzu-Mao Li
www.youtube.com
October 30, 2025 at 7:53 PM
Reposted by Bart Wronski 🇺🇦🇵🇸
Mamdani's Big Secret
How the impossible makes his ascent possible
www.kenklippenstein.com
October 30, 2025 at 12:02 AM
TIL about Python 3.13's cute copy.replace() for creating modified copies of immutable (not only, but for them it's super convenient) types.

Point = namedtuple('Point', ['x', 'y', 'z'])
p0 = Point(x=0, y=50, z=10)
p1 = copy.replace(p0, x=5)

You can override __replace__ in your custom class too!
October 28, 2025 at 5:56 PM
Reposted by Bart Wronski 🇺🇦🇵🇸
Here's a recording of my talk on the role of computers in making art, including so-called "AI", which was presented as the opening keynote of SIGGRAPH 2025, incorporating lessons from the history of computer graphics, photography, modern art, and philosophy of art. www.youtube.com/watch?v=c2YR... 1/
Can Computers Create Art? Lessons from art history
YouTube video by Aaron Hertzmann
www.youtube.com
October 24, 2025 at 3:34 PM
Reposted by Bart Wronski 🇺🇦🇵🇸
Wow I didn't know Python has cute chained comparisons: "e.g., x < y <= z is equivalent to x < y and y <= z, except that y is evaluated only once (but in both cases z is not evaluated at all when x < y is found to be false)."

docs.python.org/3/reference/...
6. Expressions
This chapter explains the meaning of the elements of expressions in Python. Syntax Notes: In this and the following chapters, extended BNF notation will be used to describe syntax, not lexical anal...
docs.python.org
October 23, 2025 at 11:52 AM
Reposted by Bart Wronski 🇺🇦🇵🇸
Couldn't be prouder of my intern @bingxxu.bsky.social
for leading this work! 🚀

It took immense persistence to turn the initial hunch, that an attention mechanism could model long-range interactions in light transport, into a robust, working system. Huge congrats to the entire team! 🎉
🎄 Introducing our paper A Generalizable Light Transport 3D Embedding for Global Illumination lnkd.in/gQUMSAyV .
🙈 Just as Transformers learn long-range relationships between words or pixels, our new paper shows they can also learn how light interacts and bounces around a 3D scene.
October 23, 2025 at 3:40 AM
Reposted by Bart Wronski 🇺🇦🇵🇸
👺 By the way, we spent a lot of effort curating and will release a large-scale indoor dataset (∼14k scenes) with diverse floorplans, geometries, and textures, serving as a benchmark for learning light transport.
October 23, 2025 at 3:27 AM
Reposted by Bart Wronski 🇺🇦🇵🇸
👾 We demonstrate the versatility of our framework by reusing a shared pre-trained encoder while introducing task-specific decoders.
October 23, 2025 at 3:27 AM
Reposted by Bart Wronski 🇺🇦🇵🇸
👏 This is our team work: with my mentor Marco @marcosalvi.bsky.social , labmates Mukund, Cheng, NV folks Bart @bartwr.bsky.social , and Tzu-Mao @tzumaoli.bsky.social & Ravi!
October 23, 2025 at 3:27 AM
Reposted by Bart Wronski 🇺🇦🇵🇸
It takes as input the 3D scene assets—geometry, materials, and lighting represented as a point cloud—and encodes the light interaction into a 3D latent space, with codes anchored at the sampled scene points. The model is independent of both viewpoint and resolution!
October 23, 2025 at 3:27 AM
Reposted by Bart Wronski 🇺🇦🇵🇸
Building on the analogy of light transport operator and Attention, our fully scalable model learns a generalizable light transport 3D embedding that captures global illumination.
October 23, 2025 at 3:27 AM
Reposted by Bart Wronski 🇺🇦🇵🇸
🎄 Introducing our paper A Generalizable Light Transport 3D Embedding for Global Illumination lnkd.in/gQUMSAyV .
🙈 Just as Transformers learn long-range relationships between words or pixels, our new paper shows they can also learn how light interacts and bounces around a 3D scene.
October 23, 2025 at 3:27 AM
Reposted by Bart Wronski 🇺🇦🇵🇸
Loving this blog post from @bartwr.bsky.social, I'm working on a cavity shader and the kernel I was using is not separable so approximating it would be great.

I was so used to separable kernels used for blur shaders so I'm learning new things!

bartwronski.com/2020/02/03/s...
Separate your filters! Separability, SVD and low-rank approximation of 2D image processing filters
In this blog post, I explore separable convolutional image filters: how can we check if a 2D filter is separable, and how to compute separable approximations to any arbitrary 2D filter represented …
bartwronski.com
October 21, 2025 at 9:56 PM
Reposted by Bart Wronski 🇺🇦🇵🇸
Coming up tomorrow: I'm giving a talk/walkthrough of autodiff in Slang! These virtual meetup sessions include time for Q&A, so bring your questions! We'll kick off at 8am Pacific/11am Eastern/5pm CEST.
Join us in two weeks on October 21st for the next Getting Started with Slang meetup! This time we will tackle Automatic Differentiation. This session will distill the core concepts of autodiff.

Learn more and register: shader-slang.org/event/2025/1...
#slang #autodiff #graphics #rendering #GPU
Getting Started with Slang: Automatic Differentiation
shader-slang.org
October 20, 2025 at 5:16 PM
Reposted by Bart Wronski 🇺🇦🇵🇸
I finally found the time and energy to make a new blog and write a couple of posts. This time I wrote about PBR content and game development principles. Both posts are quite different so hopefully people find something interesting on either one of them.

irradiance.ca/posts/
Posts
irradiance.ca
October 15, 2025 at 6:51 PM
Reposted by Bart Wronski 🇺🇦🇵🇸
New article on my site: Better sRGB to greyscale conversion

The commonly used greyscale formula is slightly off when computed in gamma space but can it be fixed?

📜 30fps.net/pages/better...
October 13, 2025 at 5:56 PM
Reposted by Bart Wronski 🇺🇦🇵🇸
A "healthy" alternative (though some would complain about cache ;] ): strided array views. Just return a strided view - no allocations needed. User can "compact" it if they want.
E.g. github.com/dsharlet/array a numpy-like multidimensional array powerhouse from my friend and a former coworker.
GitHub - dsharlet/array: C++ multidimensional arrays in the spirit of the STL
C++ multidimensional arrays in the spirit of the STL - dsharlet/array
github.com
October 3, 2025 at 11:52 PM
Reposted by Bart Wronski 🇺🇦🇵🇸
Happy to announce: ReSWD. Sliced Wasserstein Distances are quite powerful, but they perform a Monte Carlo (MC) integration (over random directions). During an optimization this can lead to noisy gradients due to variance.

Project page: reservoirswd.github.io
October 2, 2025 at 12:42 PM
Reposted by Bart Wronski 🇺🇦🇵🇸
Computing the exact bijection of the optimal transport (OT) problem between very large point sets is completely untractable…

In our SIGGRAPH Asia 2025 paper: “BSP-OT: Sparse transport plans between discrete measures in log-linear time” we get one with typically 1% of error in a few seconds on CPU!
October 1, 2025 at 1:55 PM
Reposted by Bart Wronski 🇺🇦🇵🇸
Reposted by Bart Wronski 🇺🇦🇵🇸
Graphics Programming weekly - Issue 410 - September 28th, 2025 www.jendrikillner.com/post/graphic...
September 29, 2025 at 1:30 PM