claude-news
newsHacker News·23 Oct 2026·maxilevi

Hedra is a 3D open world game I wrote from scratch while in highschool

High schooler writes a 3D procedural open world game from scratch.

Depth 2/5Score 2.36

Extract

Project Hedra is an ambitious open-world, low-poly RPG. Choose your class, explore endless procedurally generated worlds, unlock different skills and complete procedurally generated quests. More screenshots at (Screenshots) Timeline/Context I started this project when I was in highschool (around 15 yo) in order to learn how OpenGL worked. The scope creep quickly arrived and after a few years it turned into a fullfledged 3D game and game engine. The codebase has around 100k LOC and the game has first class support for Linux and Windows. Features The million lines of code are not in vain. The game and engine are both full of features :) Game Features Beatiful procedurally generated worlds Quests and bosses 100+ items with rarities system Skills and skill tree system with N+ skills 4 different classes with 2 specializations each () Procedurally placed structures generated dynamically Fishing, crafting, etc Trading and NPCs Companions and pets Beatiful soundtrack Navigation, maps Different dimensions More stuff I don't recall :) Engine Features Fully fledged renderer using modern OpenGL Skinned mesh rendering Support for loading and playing generic animations Collada (.dae) parser Static mesh rendering Screen space reflections Screen space ambient occlusion Bloom, FXAA & MSAA Modding support CI for automatically deploying to a Steam beta branch Localization support Sound support using OpenAL Python scripting support Module system for loading data oriented objects Steam integration Fully fledged UI & controls system (dropdowns, buttons, etc.) written from raw OpenGL Dynamic shader system for reloading during runtime Frustum culling, occlusion culling, Mesh simplification for runtime level of detail (LOD) Skybox support Shadows 3D trails renderering support Particle system using object instancing in opengl bulletphysics integration Chunk system for infinite worlds support .ply parsing support Dynamic meshing support using MarchingCubes Custom implementation of basic C# primitives and allocators (like Lists) for supporting stack allocated lists and minimizing the automatic runtime allocations (and thus the GC). 1000+ plus test cases Framework for mocking game components and doing integration testing on games Image and asset compression for faster loading and smaller size Entity component system More stuff I don't recall :) Interesting bits WorldRenderer.cs. Renders the entire world in just 3 (actually it depends on how partitioned is the data buffer, but it was …