Show HN: Mr_tech – Treating 3D games as source code, not as their runtime

markel19741 pts0 comments

I ve been working on mr_tech, a from-scratch 3D engine in Go built around a question I wanted to answer:Can a 3D game be reverse-engineered, without infringing copyright, understood as source code, and transformed into a sufficiently general Intermediate Representation (IR) that allows it to execute on a runtime for which it was never designed?The idea is to treat a game as source code, not as its runtime — the way a compiler treats its source files.Instead of reproducing the original game engine, the game is processed through a compiler-like pipeline:3D game → reverse engineering → frontend → semantic representation → IR → mr_tech runtimeThe runtime provides its own geometry/topology processing, dynamic spatial structures, rigid-body physics, entities and independent rendering backends (OpenGL and software).I ve used the approach to experiment with multiple historical 3D game engines, including Doom, Quake, Jedi and Wolfenstein.The interesting question for me is not how many games it can run, but whether the same intermediate representation can remain independent of the original engine as increasingly different 3D games are introduced.Everything in the engine is implemented from scratch in Go.I d be particularly interested in technical feedback on the architecture and on how general the IR actually appears to be.

game runtime source engine mr_tech games

Related Articles