• Hey Guest. Check out your NeoGAF Wrapped 2025 results here!

James Lambert: How I Built an Open-World Engine for the N64

IbizaPocholo

NeoGAFs Kent Brockman


I built a custom open-world engine for the N64. In this video, I break down how I achieved a seamless, massive world with zero loading screens on N64 hardware.
  • (00:00–00:27)
    The developer demonstrates a massive open world running in real time on N64 hardware, with extremely long draw distances comparable to modern games.
  • (00:27–01:21)
    Draw distance is controlled via near and far clipping planes, but pushing the far plane too far causes Z-fighting, where distant objects render incorrectly due to depth precision limits.
  • (01:21–02:56)
    The root issue is the N64's 15-bit Z-buffer (~32,000 values), heavily biased toward near objects—leaving very poor precision for distant geometry, which causes rendering conflicts.
  • (03:15–03:35)
    Adjusting the near plane helps reduce Z-fighting but introduces clipping issues for nearby objects—creating a trade-off between close detail and far visibility.
  • (03:35–03:56)
    Key solution:
    render the world in two passes:
    • Far objects scaled down (low precision needs)
    • Near objects rendered normally (high detail + proper depth)
  • (03:56–05:10)
    Uses Level of Detail (LOD):
    • Distant terrain = simplified tiles
    • Closer terrain = higher detail tiles
    • Tiles are dynamically swapped based on distance and visibility
  • (05:10–06:24)
    For distant terrain, the Z-buffer is disabled and objects are drawn manually back-to-front, improving performance and avoiding extra memory costs.
  • (06:24–07:46)
    Terrain texturing uses baked textures (high-detail visuals compressed into low-detail meshes) and chunking to avoid excessive material switching—critical for performance.
  • (07:46–08:25)
    Introduces multi-level terrain chunks (combining tiles into larger, lower-detail versions) to significantly improve framerate.
  • (08:04–09:10)
    Custom atmospheric perspective is implemented using the N64 color combiner instead of standard fog, enabling more realistic distance color blending.
  • (09:25–10:21)
    Gameplay challenges of a huge map are addressed by:
    • Very fast traversal (hover vehicle ~180 mph)
    • Progressive map discovery
    • Minimal guidance (no heavy quest markers), encouraging exploration
  • (11:26–end)
    The project proves that large-scale open worlds are feasible on N64, and the engine will be expanded into a full future game.
 
Nice engine but i really don't like the usage of dithering for masking objects popping up. Why not use smoother fading?

Maybe on a real CRT using composite cables the blending will make this look better.
 
doug-maclean-nhl.gif
 
Now add enemies, ai and more than an empty field.

And yes in 2026 with modern tools you can do better things than in the 90s.
 
Impressive work, sadly I assume won't be used in any commercial game.
Homebrew guys exist for that

But I think doing a N64 style game for PC and newer platforms are a way better approach to get money than releasing for the novelty
 


Sure we have N64 decomps, N64 recomps and N64 PC ports...but what about NEW N64 games developed from the ground up! Well James Lambert just updated the newly released Junk Runner 64 and its legit one of the best N64 games ever made! This is why retro gaming is making a comeback!
 
And yes in 2026 with modern tools you can do better things than in the 90s.
There are no modern tools. What you see here could have been done back in 1996 if devs had thought of it. James Lambert is also the mind behind Portal 64, he's brilliant and you should give credit where it is due.
 
Last edited:
There are no modern tools.
Yes, there are. Software tools get updated all the time, even back then developers would get better tools after a while to make games on the same consoles. Or make their own. In the case of N64, the advancements never really stopped and people like Kaze have spent half a lifetime trying to get around N64's weird design and bottlenecks and the result is his engine can now run Mario 64 at 60+fps on real hardware, not to mention how advanced his upcoming game looks.


James Lambert is also the mind behind Portal 64, he's brilliant and you should give credit where it is due.
Lambert is brilliant but come on, are you implying every single dev back then, including Nintendo's own EAD programmers were lesser than him?


What you see here could have been done back in 1996 if devs had thought of it. James Lambert is also the mind behind Portal 64, he's brilliant and you should give credit where it is due.
Technically it was possible but the primitive tools and information programmers had in 1996 would make it very unlikely.
 
Last edited:
If any current devs wsnt to make games for retro consoles they will look better than the BEST looking tiitle back then.

It's cool that james Lambert make this, but It is not a genious, it's just that nobody else is going to waste their time on making a game for a 30 years old console without profit.
 
If any current devs wsnt to make games for retro consoles they will look better than the BEST looking tiitle back then.

It's cool that james Lambert make this, but It is not a genious, it's just that nobody else is going to waste their time on making a game for a 30 years old console without profit.
It may not get anyone rich, but there's something very nice about optimizing a custom engine to run on such limited hardware. It's counter to modern trends in game development and technology in general, where there's this constant pursuit of more performance, but experiences aren't necessarily getting better. Look at something like Windows for a general example.
 
Top Bottom