Lab Bench Studios

Design, Build, Learn

Programming 3D Games

Rudium Screenshot Montage
Rudium Screenshot Montage

A few years back I embarked on a journey to develop a 3D video game from scratch. Since I’d been writing software in the tech industry for nearly 20 years at that point, I figured I could learn most of the nuances of game development quickly and get something reasonable done in short order.

What I discovered was that game development would be one of the most challenging software development initiatives I’ve ever taken on, and yet the most poignant in my development as computer scientist. This section of Lab Bench Studios is dedicated to this adventure.

Some History

I initially started with a very simple concept and created a pong-like game in Java. The idea was to use this as a platform to teach software development concepts to my son. With my family’s encouragement, I quickly become intrigued by the idea of building a much more elaborate game – an immersive FPS / adventure game with seemingly endless worlds to explore and diverse and engaging challenges to overcome.

I jotted down some ideas, wrote the premise of a story and drew up some sample scenes during a late summer vacation, and got to coding the infrastructure in Java using a F/OSS game engine.

Being new to game development, but experienced as a back-end developer, I started by designing and building an event management engine to support both single- and multi-player game modes, along with some simple, yet interesting, runtime mechanics to meet my game interactivity objectives. Although the graphics work was rudimentary at best, the focus on infrastructure proved to be worthwhile, as it became the cornerstone of a more polished version of the game ported from Java to C# and Unity 3D.

What follows are my blog entries (currently numbering one) that describe my journey developing ArenaOne, Rudium, and now Sinter. Click here for more. Enjoy.