Hyperion is the working title I gave to latest exhaust for my game development urges. With 10tacle dead & buried and Off Limits nearing completion ( and becoming more tedious than challenging in development ) I’ve started my own little sandbox project. Most people start with this phase and then become a professional game developer, I seem to be doing it the other way around. But I think the reverse approach can lead to some interesting results.
Basically, I will try to build a 3D engine with some specific goals from quasi-scratch. First and foremost, it should allow easy experimentation with advanced game & graphics engine features, and enable fast development of high quality game prototypes. I know that this in itself is pretty ambitious, especially since I want to keep this a one man project as much as possible and I don’t have that much time. But one-man development guarantees consistency in engine design and gives me the freedom I need, and as for the lack of time, I’ll try to compensate for that by not giving myself a deadline, by targeting platforms that haven’t been announced yet and by keeping the engine up to date with modern technologies from the get-go. I would also like to keep the option open to one day use this engine to release a game as independently as possible. This implies not using non-free licensed code or libraries, not using final resources I don’t own the intellectual property of, focusing on procedural and generated dynamic content where possible, and targeting digital distribution platforms.
With these constraints as input I’ve chosen XNA as the framework to design my engine on. I risk that its limitations will one day force me to port over to a more performant technology, but my most scarce resource by far is time, and the incredible development speed and ease of C# is undeniable. .NET’s inherent serialization & reflection mechanisms and XNA’s built-in class library take a huge chunk out of the budget needed to develop decent 3D games. XNA also implies easy multi-platform development – as long as you target Microsoft platforms, and I have no problem with that: the Xbox 360 is a great machine to develop on, so my hopes are high for its successor. And then there’s C#’s powerful IDE and its plugins that can harness the language’s features to really speed up the development process, with great support for things like one-click refactoring, unit testing and code completion & lookup. So at the very least, in the XNA framework, my engine’s design will be able to evolve and mature rapidly.
Ofcourse, to give both the engine and myself some direction, I’ll develop a game together with the engine. I’ll start out with generic engine features, and direct my efforts more and more in the direction of the game I have in mind as time goes on. I’ll use this site as development blog for Hyperion and anything running on it.
