Andrew Helmer
@andrewhelmer.bsky.social
Rendering at Respawn Entertainment. Previously Luxology, The Foundry, Google. Enthusiast landscape photographer (andrewhelmer.com/photography). All views my own. He/him.
What an incredible game
November 2, 2025 at 4:09 PM
What an incredible game
Hades II 1.0 as well! Though for me personally, 2023 is still a slightly stronger year.
October 18, 2025 at 9:14 AM
Hades II 1.0 as well! Though for me personally, 2023 is still a slightly stronger year.
My first 3D software!
October 6, 2025 at 11:37 PM
My first 3D software!
That wouldn't surprise me, or at least Pixel chips haven't improved nearly as much as QC (and definitely not Apple). The Pixels have 50% more RAM than comparable iPhones though.
August 22, 2025 at 1:43 PM
That wouldn't surprise me, or at least Pixel chips haven't improved nearly as much as QC (and definitely not Apple). The Pixels have 50% more RAM than comparable iPhones though.
It's not a regression though, the 10XL is still faster than the 9XL according to Geekbench. Just that Pixels were never near Apple perf, which isn't new.
August 22, 2025 at 1:03 PM
It's not a regression though, the 10XL is still faster than the 9XL according to Geekbench. Just that Pixels were never near Apple perf, which isn't new.
Paper here: diglib.eg.org/bitstream/ha...
diglib.eg.org
August 19, 2025 at 8:22 PM
Paper here: diglib.eg.org/bitstream/ha...
Your cone solid angle sampling post reminded me of this!
July 9, 2025 at 8:42 PM
Your cone solid angle sampling post reminded me of this!
There are a bunch of follow-ups, and the libdivide library to do this at runtime:
ridiculousfish.com/blog/posts.h...
libdivide.com
ridiculousfish.com/blog/posts.h...
libdivide.com
Announcing a port of Angband running entirely in-browser. Angband is a venerable roguelike dungeon-crawler set in the Tolkien universe.
ridiculousfish.com
July 3, 2025 at 5:22 PM
There are a bunch of follow-ups, and the libdivide library to do this at runtime:
ridiculousfish.com/blog/posts.h...
libdivide.com
ridiculousfish.com/blog/posts.h...
libdivide.com
Or maybe do precomputation on a CPU and give the values to the GPU for the divisions? Maybe good for finding cells in a uniform grid that is not a power-of-two size.
July 3, 2025 at 5:19 PM
Or maybe do precomputation on a CPU and give the values to the GPU for the divisions? Maybe good for finding cells in a uniform grid that is not a power-of-two size.
I don't think this is bad at all. In addition to being well documented, it's well contained. Hacks like these are often necessary, what really becomes problematic is when they're spread all over the place through the codebase and make other code brittle.
July 1, 2025 at 9:08 PM
I don't think this is bad at all. In addition to being well documented, it's well contained. Hacks like these are often necessary, what really becomes problematic is when they're spread all over the place through the codebase and make other code brittle.
Oh this looks great! I've been looking for an easy-to-use C++ library parser.
June 26, 2025 at 5:05 AM
Oh this looks great! I've been looking for an easy-to-use C++ library parser.
Yeah, me too. But that still doesn't support their statement that someone is interrupted "every 2 minutes". That's the most extreme assumption - that every message is an interruption. The opposite extreme is that only one single message each day is an interruption. Both extremes are wrong.
June 20, 2025 at 4:50 PM
Yeah, me too. But that still doesn't support their statement that someone is interrupted "every 2 minutes". That's the most extreme assumption - that every message is an interruption. The opposite extreme is that only one single message each day is an interruption. Both extremes are wrong.
By their metric, one 30 minute conversation with 50 messages is the same amount of interruption as a unique message every ~10 minutes throughout the 8 hour workday. In one of these cases you get 7.5 hours of uninterrupted focused work, and in the other you get interrupted every 10 minutes.
June 20, 2025 at 4:27 PM
By their metric, one 30 minute conversation with 50 messages is the same amount of interruption as a unique message every ~10 minutes throughout the 8 hour workday. In one of these cases you get 7.5 hours of uninterrupted focused work, and in the other you get interrupted every 10 minutes.