blimey, my memory of that path is that eroded, is it?
23.10.2025 18:38 β π 0 π 0 π¬ 1 π 0@donw.bsky.social
Head of Rendering @ Pacific Light & Hologram ~30 games/engines/platforms including Fable, Splinter Cell, Total War, Dauntless, No Mans Sky, DeepMind Lab. Lionhead/Microsft, Ubisoft, Google/DeepMind, SEGA, etc. https://donw.io https://github.com/Celtoys/
blimey, my memory of that path is that eroded, is it?
23.10.2025 18:38 β π 0 π 0 π¬ 1 π 0I'm frankly astonished that we still can't tell our x64 CPUs to not add entries to the BTB. We have millions of bounds checks, sanitiser guards, type checks, overflow checks, etc. polluting the BTB. When all we need is a "BTB says no" and a forward branch.
Xbox 360 PPC tw instruction be sad :(
Swarm is awful and so is any code review system that relies on post-review of code already submitted to main. Shelves are a poor model for pre-submit reviews as you can't stack them and end up waiting for reviews. Task branches are just too fiddly to have everybody on main. Perforce hurts :(
21.10.2025 10:10 β π 1 π 0 π¬ 1 π 0Images are definitely going to the server. Probably my mix of PB, UB and Firefox.
20.10.2025 23:36 β π 1 π 0 π¬ 0 π 0ohmygod they look like proper little murderers. Gotta accelerate my plans for wild camping in Scotland now!
20.10.2025 10:35 β π 1 π 0 π¬ 0 π 0Wow! That's special... shows fine in the client until after it's posted...
vec3 cube_vertices_from_idx3(uint idx) {
return vec3(
(idx & 1) != 0 ? -16.0 : 16.0,
(idx & 2) != 0 ? -16.0 : 16.0,
(idx & 4) != 0 ? -16.0 : 16.0);
}
The generated SPIR-V should be an OpSelect on this one, which is a V_CNDMASK_B32 on GCN.
19.10.2025 20:22 β π 1 π 0 π¬ 1 π 0I'm definitely going to put Moonscript on top of Luau here. C# has been such a sunk cost and I want to ENCOURAGE coding.
Performance be damned: I shipped a game on a 33MHz PS1 where 70% of the entire codebase was our (slowly) interpreted scripting langauge. I can easily scale this shit.
It must be every few months I become horrified at C# authors significantly ballooning the surface area of the language. Today I found Primary Constructors and I had to WTF. Each new generation of C# programmer must have fundamentally incompatible styles.
17.10.2025 11:27 β π 2 π 0 π¬ 1 π 0Unfortunately some use-cases can't do that, either because voxelisation is not an option or you require too much precision than the dual approaches can give you.
09.10.2025 10:19 β π 0 π 0 π¬ 1 π 0For reference, it's called the "scaled sum of squares" and like ABSOLUTELY EVERYTHING in computer graphics, it was done before I was even born.
A Portable Fortran Program to Find the Euclidean Norm of a Vector: dl.acm.org/doi/10.1145/...
I don't think it's that new. I think it's old (in younger generation terms) and I've been oblivious to its existence because *waves hands* stuff. But it does indeed feel very new, which is awesome!
09.10.2025 10:00 β π 1 π 0 π¬ 0 π 0LAPACK/BLAS have a neat vector normalisation trick: find the max axis and divide each component by that before rsqrt and scale. Avoids overflow and gradual underflow due to squaring in the rsqrt. If the max axis is tiny then all axes are tiny so the components can be considered roughly proportional.
09.10.2025 09:58 β π 8 π 0 π¬ 2 π 0I have a realtime use-case for this that throws up (roughly) millions more edge-cases than a typical game engine. Nothing out there is either fast enough or bullet-proof so I wrote my own.
There are still edge-cases.
I have massive respect for the UE1 "realtime" CSG story now.
There are days when I look at colourful, cartoony models up close and get annoyed at the polygonal silhouettes. Mainly because a small team in Santa Monica solved this 25 years ago on a Playstation 2 and I love that technology so much (tfrags!) . Using Lisp.
07.10.2025 21:22 β π 7 π 0 π¬ 0 π 0King Of Meat is currently
β¨ VERY POSITIVE β¨
On Steam πβ€οΈπβ€οΈπ
store.steampowered.com/app/1926980/...
The local racists tried to burn down a place of worship. Please give generously β€οΈ
www.gofundme.com/f/community-...
This game is all Glowmade, a crazy-talented team making a game they love. I played a small part on their custom engine, building lots since the WonderWorlds days (e.g. lighting model pretty much the same). This one has my own RHI across PC, Xbox and Playstaion too.
www.youtube.com/watch?v=KRr0...
loving the fast progress on all this
04.10.2025 11:54 β π 1 π 0 π¬ 0 π 0So I just tried another one on my 32-bit app instead of Remotery and guess what? It crashes π I know, time to update to a 64-bit app, but it's nice to be reminded of how truly lightweight Remotery was.
03.10.2025 11:00 β π 2 π 0 π¬ 0 π 0It's days like this I remember why I wrote Remotery. I'm building a 32-bit app and I recall Total War: Rome 2 being very tight on memory where no existing profiler would run without crashing. I had to write a custom one that ended up being the inspiration for Remotery.
03.10.2025 10:59 β π 4 π 0 π¬ 1 π 0My recall of 1-based simply triggered a recall of a whole slew of Lua complaints. It was like opening a jar of some promising condiment, only to be greeted by the smell of the mould that had developed over many years.
02.10.2025 10:34 β π 1 π 0 π¬ 0 π 0Today I remember Lua uses 1-based indexing and it threw me into mild depression. Remembering vividly when our industry decided Lua was better and custom languages needed to extinct themselves. Sigh, we could have had so much better.
02.10.2025 09:34 β π 5 π 0 π¬ 1 π 0Urge to build a Z80 console with Phaser on CRT rising.
29.09.2025 10:38 β π 0 π 0 π¬ 0 π 0Wow! Looks awesome.
29.09.2025 10:23 β π 0 π 0 π¬ 0 π 0That flag has me seriously confused. And you look like you're in Croke Park. What's going on?
29.09.2025 10:13 β π 0 π 0 π¬ 1 π 0After building a basic CPU and GPU a couple years ago on FPGA, I still wake up thinking how all modern software development is taking an "everything runs all the time everywhere" model and forcing it to serialise. Then slowly increasing parallelism but never quite returning to that original power.
29.09.2025 10:10 β π 4 π 0 π¬ 1 π 0Art is very easy for a non-artist -- even in the same industry -- to underestimate. Having this debate right now and you just can't communicate the depth of difference in many seemingly-similar disciplines.
24.09.2025 10:13 β π 1 π 0 π¬ 0 π 0And it's code like V-Rally or Asterix on the GBA that really needs to be preserved in time for others to look at, learn from and develop an understanding of. These are not secrets to be guarded, they are achievements to celebrate. Unfortunately publishers.
24.09.2025 10:10 β π 3 π 0 π¬ 1 π 0