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

github.com

181 points by maxilevi 13 hours ago


maxilevi - 13 hours ago

I started this game almost 10 years ago in high school as a way to learn OpenGL. Scope creep quickly took over, and it eventually became a full 3D game and engine with animations, rendering effects, dynamic terrains, etc, with ~100k lines of code and native Linux and Windows support.

Thought I'd share it! With AI coding now, it feels like a relic of another era. Crazy to imagine writing 100k lines by hand today!

panza - 9 hours ago

Very humbling to see that this was created in high school and without AI.

Side note: it's interesting to see how 'wrote from scratch' or 'hand written' is used in 2026. I've seen it used to mean literally everything, while others might mean they wrote the core of the engine + some SDL sprinkled throughout. And now, it could just mean 'didn't use AI at all'.

skyberrys - 13 hours ago

I appreciate your low-poly aesthetic. I bet you and like half this website have written a video game in highschool. You have found the right group to tell about it.

djmips - 4 hours ago

(2016) even more important because of the age we live in now.

chrysoprace - 9 hours ago

I think it's really cool that you built the game around a mod API - I think all games should do this, and I love projects that were built for the love of the craft.

KolmogorovComp - 10 hours ago

Reminds me of CubeWorld, if my memory serves me. And that’s a compliment!

skizm - 11 hours ago

Where’d you get started with open GL? Any particular set of tutorials?

mrmckizzle - 9 hours ago

Added it to my steam wishlist. Thanks for sharing.

dead_hn_theory - 6 hours ago

Shit man... Collada? Now there's a name I haven't heard in forever. I still have fond memories of Ogre3D and Sauerbraten (Cube).

0x23alfonso - 13 hours ago

appreciate the aesthetic, hopefully it becomes fully fledged

sabujp - 12 hours ago

Excellent work, also when you say by hand do you mean you had some autocomplete that autocompleted or showed you inline docs for method calls or did you actually write it by hand with no autocomplete at all?