Hammer Time

For the last couple of weeks I have been designing and building my first HL2 map. It has been a great way to learn level design and to explore other areas of game production besides programming.

I try to tell a story with the map. You start in a cell, but where? When you break out to the hallway you can see Black Mesa employees in other cells and Black Mesa logos around you so you can assume that someone has infiltrated a BM facility. After a while you get attacked by the Combine.

I introduce monsters and weapons one by one from the weakest to the strongest with a few surprising exceptions. Every time you get a new weapon, you'll get to use it very soon. I have modeled the map so that you cannot miss stuff, for example when you get the crowbar you cannot progress without using it to break some planks that are blocking your way.

I will place ammo and health pickups sometimes sparingly, sometimes in abundance depending on the feelings I want to evoke at certain points of progress. Environmental sounds and music, used sparingly, will get you in the right mood.

Playtesting will be conducted on my friends and modifications will be made according to their reasonable feedback. I'll put the .bsp and .vmf to my website when the map is finished.


Aether3D Test Release

I finally had time to package the new codebase of Aether3D Game Engine and made a test release. If you're building it on Windows, you'll need Visual Studio 2012 because I'm using C++11 extensively. Supported operating systems are Windows, OS X, GNU/Linux and iOS. This release only contains OpenGL backend, but D3D11 backend is also in development.


Cyberjack ($0.99, iOS Universal)

Today I released a game I've been working on solo for 10 months, Cyberjack. In the game you can shoot bots, disarm explosives, hack computers and steal upgrades for your character in three maps. The game supports Game Center Achievements and Leaderboards.

iTunes Link


New Engine

I've been writing a new game engine for several months and will release it very soon. It supports OpenGL 3.2 Core Profile, OpenGL ES 2.0 and Direct3D 11. Compared to my previous engine, it has the following features:

  • Texture Atlas support for batching geometry and to support NPOT textures.
  • C++11 features that work on Visual Studio, GCC and Xcode's Clang.
  • GLFW, gl3w and stb_image.c for handling context and texture loading.
  • Render Queues, to handle transparency etc. better.
  • Quaternion Camera.
  • More shared code between D3D and GL renderers.
  • Material properties are read from model file.