One of the first major decisions that a new indie game development studio needs to consider is which game engine to use and why? Should we start with a well known and trusted commercial engine like Unity or Unreal, if so which one? Or is it better to go with a free opensource engine like Godot or Amethyst that are more complex to use but provide more freedom? Or building our own, investing in a long term solution to carry through to future games built by our studio.
We pondered on this for a little while before diving in and ended up starting with Unity based on the number of online and offline resources available and more importantly to start learning how all the pieces come together. I’ve worked in Amethyst, a Rust based game engine, on a game in the past and was leaning more to continuing with it, but having a strong intuitive user interface in Unity has been incredibly powerful by allowing us to see our test games come to life and tune their behaviours as development continues.
I have a strong developer background, so I expected to spend most of my time in the terminal, but in reality I’ve spent about 60% of my time in Unity creating game objects, linking up animations, importing sprites and backgrounds, etc. Having a shorter feedback cycle from implementing the game elements to seeing them in action has been incredibly valuable and has helped us step into multiple genres and experiment both in 2D and 3D. We hadn’t considered Unreal as much earlier on, but it too is a strong tool for game development and it’s not to say that it is a bad start to go in that direction vs Unity. We were just more familiar with Unity and it has been more widely available for a longer period of time.
We are also tinkering around with our own engine development in Rust on the side, as long term we would like to switch to using our own tools, but the plans for that are years down the line. Running our own tools is more cost effective and it’s not a requirement to build out every single part of the engine from scratch. There are numerous game engine resources in Rust that are already available from Are We Game Yet?. Every little bit of tinkering has helped us better understand where gaps and limitations lie and how we should handle game object interactions, thinking from the engine first perspective. We shifted from focusing on mechanics and game physics first design to moving to interface and user experience design to handle creating and interacting with the game elements and structuring the game world from the ground up through toggles, menus, and buttons versus only code.
Advice that we have heard from professionals and the community as a whole, time and time again, has been: “Focus on the games first, the tools don’t matter as much”. I could not agree to this statement more. Now that we are getting our toes wet, we see the value of focussing on game design and building out that mindset. Part of that involves quick and dirty prototypes to see “how would this work with that” or “what if the game had this mechanic!!!!”. We continually get new bigger ideas as we test and iterate and I highly encourage other indie game devs to continue on this path.
As always, happy hacking, happy jamming!
Comments