Sign in

Paavo Huhtala

@paavo.me
139 followers 11 following 33 posts

Professional and hobbyist programmer, player of games. Frustration motivates me. See blog.paavo.me for my personal blog.

PostsRepliesMedia
Paavo Huhtala @paavo.me · 07/04/2026
My Worms Armageddon re-implementation project OpenWA is finally public on GitHub! github.com/paavohuhtala... I've been working on it for about a month, but an actual release for end users is still long ways off. In the meantime, feel free to follow the development, or even contribute.
github.com
120
Paavo Huhtala @paavo.me · 30/03/2026
I've been reverse engineering & decompiling Worms: Armageddon (into Rust!) for the past 3 weeks. So far I've replaced about a 120 functions and made a lot of tools, but I'd like to turn this into an OpenTTD/RCT style project soon-ish, with multiplat support as a very long term goal.
1121
Paavo Huhtala @paavo.me · 20/03/2026
Colossal Order's CEO finally confirmed the theory I presented in my article (blog.paavo.me/cities-skyli...) about 2.5 years ago: the game relied heavily on Unity's ECS/DOTS and HDRP, which were not actually ready for production use. www.pcgamer.com/games/sim/ci...
pcgamer.com
Cities: Skylines 2 boss says they 'completely overestimated' the Unity engine's capabilities
"Our mistake was to bank on something that was not yet proven," says Colossal Order CEO Mariina Hallikainen.
080
Paavo Huhtala @paavo.me · 05/01/2026
One thing I've learned while writing a voxel engine is how huge the difference between "realistic" and "worst case" can be. With the same render distance, a typical hilly landscape uses about 2MB of VRAM, while a 3D checkerboard pattern uses over a gigabyte. Yup, that's three orders of magnitude!
100
Paavo Huhtala @paavo.me · 26/12/2025
There comes a time in every developer's life where they just have to write a voxel engine. This one is using #rust, wgpu and GPU driven rendering. #graphicsprogramming
A screenshot of a window displaying a colorful voxel landscape with a black sky
110
Paavo Huhtala @paavo.me · 13/12/2025
Finally finished my latest article! It's about my experience of using a super ultrawide monitor for work and play for a bit under three years. It contains my thoughts about Samsung's (lack of) product design skills, and why Half-Life 2's FOV slider is a liar. blog.paavo.me/1000-days-in...
blog.paavo.me
1000 days in 32:9
A comprehensive review of the Samsung Odyssey Neo G9 and the super ultrawide experience
010
Paavo Huhtala @paavo.me · 07/12/2025
I'm working on a new article, and it's once again grown to be an absolute monster in terms of length. I've had a 49 inch 32:9 monitor for about 3 years, and I want to tell the world how's it been. At the moment I've written almost 10 thousand words about hardware, productivity use and gaming.
110
Paavo Huhtala @paavo.me · 29/06/2025
I've continued working on my little 3D engine based on wgpu and #rustlang. This week I managed to implement fully GPU driven rendering. The engine gives the GPU lists of drawables and meshes, and compute shaders perform AABB culling and generate indexed draw commands. 17K objects in about 0.03ms.
130
Paavo Huhtala @paavo.me · 19/06/2025
I'm working on a shader playground / 3D engine skeleton in #rustlang with winit, wgpu and naga_oil. About 1.5k LOC, has shader hot reload and very basic GLTF support. The DX is better than in my previous WebGL-based engine but the ecosystem is not yet very mature / stable.
A colorful abstract tunnel rendered in a Windows 11 window
130
Paavo Huhtala @paavo.me · 07/06/2025
New blog post: What was Radiant AI, anyway? blog.paavo.me/radiant-ai/ #TheElderScrolls #oblivion #gamedev
blog.paavo.me
What was Radiant AI, anyway?
A ridiculously deep dive into Oblivion's controversial AI system and its legacy
6456
Paavo Huhtala @paavo.me · 04/06/2025
Working on a lengthy article about Oblivion's controversial AI system, Radiant AI. I've been writing this for about two weeks now, and the word count is not too far from a relatively short master's thesis. Hoping to finish it in the coming days.
060
Paavo Huhtala @paavo.me · 02/08/2024
New blog post! blog.paavo.me/demo-engine-... #graphicsprogramming #3d #wasm #rust #optimization
blog.paavo.me
Trying and mostly failing to optimize frustum culling in a WebGL + TS + Rust engine
050