Validating Yourself as a Good Game Developer
Do you hate anything other than traditional CPP?
Even after using a lot of new and powerful languages (C#, Java, Python, and whatever), when it comes to game development, do you still have a soft corner for cpp? Don't hesitate to choose our good old cpp over other languages. We decided to use cpp (at Smackall Games) for few reasons. To make our game engine cross-platform, and to take the full power of the system under control.
None of the Game Engines, satisfied you?
With all passionate programmers around, we never felt satisfied with any of the game engines (both open source or commercial). Open Source Engines might have tough to understand licensing systems. And commercial engines do not let you work as a programmer, they are mostly designed for graphics designers. So if you hate using other game engines, you should try to write your own, at least once in your life time as a game developer. It is not a simple task as you might think, but don't hesitate to integrate other popular Rendering engines, Physics Engines or Scripting systems. Which will reduce the time to build your own Engine.
No File format works for you.
This is nothing new for a game developer. None of the file formats available are helpful in all cases. They either take too much space, too much time to load, or store too much information that you don't need. This happened every time we chose a format. We finally ended up writing our own file formats and Import/Export scripts for 3D editors (in our case, Blender). We quickly wrote a export script for Blender, to export Mesh as SGM, Rigged Mesh SGR, Animated Mesh SGA, Physics shapes as SGP and the level setup as SGX. Each format took us around 3 days to complete.
More to come...