I think "crunch culture" in gamedev will always be its downfall. Especially in double-A studios that seem to end up with over ambitious projects where with scope creep and lack of direction, the sunk cost ends up too great to steer away from. Either you release what you've got, or throw it all away.
I would read this essay, and share it with my friends.
* Lack of curvature control
Catmull-Rom splines pass through all control points, which sounds great, but the curvature between points is determined automatically. For roads, you need precise control over minimum curve radii for safety and vehicle dynamics - tight curves require reduced speed limits and proper banking.
* No arc length parameterization
Catmull-Rom splines are parametric (0 to 1 between points), not arc-length parameterized. This means equal parameter steps don't give equal distances along the curve, making it tricky to place lane markings, guardrails, or calculate exact distances.
* Curvature discontinuities
While the curve itself is smooth (C1 continuous), the curvature can have abrupt changes at control points. Roads need smooth curvature transitions for driver comfort and safety - sudden changes in steering wheel position feel jarring and can be dangerous at speed.
Better are:
* Clothoid/Euler spirals - Linear curvature change, standard in highway design for smooth transitions between straights and curves. I prefer clothoids
* Cubic Bézier curves - Better curvature control with tangent handles
* B-splines - Smoother curvature, don't pass through all points but more predictable
* Circular arcs with transition curves - Traditional civil engineering approach. Nice, but not for fast speeds. And I struggled with it constantly algebraicly.
I really enjoyed Avalanche's Mad Max game, and Generation Zero was an interesting idea if imperfectly executed.
Ansel Adams pictures of New Mexico get similar feelings right
It’s given me an appreciation for the kind of code quality everybody just naturally agreed on and did back when I worked at a FAANG. Nobody needed to be convinced to write/maintain tests for their change, or be told to keep the mainline branch building cleanly.
I wonder if any of the large studios out there today have a culture of testing and reviews?
It varies by company and project and also the stage of development. Avalanche sounds particularly chaotic though.
Code reviews are a constant at everywhere I've worked.
Tangent: the author's older posts also contain some gems -- I very much enjoyed this one about heaps: https://probablydance.com/2020/08/31/on-modern-hardware-the-...
That post and the discussion in the blog comments were useful when I was interested in speeding up astar pathfinding (30% speedup of the whole search algorithm by replacing binary (2-ary) min heap with a min heap using a 4-ary tree).
0xffany•4mo ago
I could never quite put my finger on why the large island felt so... empty? in the north, but it being canceled for most of the development cycle is an insight I never thought I'd have, so thank you very much for the insight.
The volumetric terrain of JC3 was an awesome improvement on JC2, with the second island being very for the terrain and vertical bases.
I tried JC4 and it was disappointing... It never clicked with me and (just like the author) I felt it was worse than JC3 in almost every way.
Major thanks to the author for the blog post, growing up and working in software I really appreciate the perspective and both Avalanche studio and the author for their work on these two awesome and timeless games. Despite the apparent hell of development, playing it always felt magical to me (maybe not the car handling in JC2 but I digress) <3
klodolph•4mo ago
I had always thought the north island was empty because it was used for the train mission. Like, the island existed as a backdrop for a few missions near the end of the game.
Also nice to hear that the devs also thought the wingsuit was overpowered. That’s part of what I like about JC2: no wingsuit.
cr125rider•4mo ago
JC3 is one of my favorite games of all time.
brnt•4mo ago
I spent hundreds of hours driving around the Just Causes with a podcast on. In versions 1,2 and 3, I circumnavigated every single island along the coast.
Yes these games are buggy (but got better each release), but they are so much fun.