Mittwoch, 26. November 2014

What tools are needed for game development

Ok, so the logo for this blog is designed and the first configurations are done. It has to be enough for the time being and I can go to the first game development related post.

Game Engine


What tools do you need to start developing games - or in our case, android games. Many people go on and try to start from scratch, simply choosing a programming language and trying to program a game engine on their own. When you google and read some indie blogs you find that almost everyone agrees to the fact that this is not the best thing to do for an indie developer or even a small team - the time you will spend basically reinventing the wheel and having something that is probably much more limited than any available solution out there can be much better spend in actually shaping and developing the game itself. There are many engines that are more than good enough for a beginner, like AndEngine or even Unity - which is free under certain conditions and used by many professional developers. Even libgdx, which is a little bit harder to learn and use than AndEngine, would still be a much better start and is free as well.

We chose AndEngine for our projects so far, simply because we played around with it for some time and think that it is really quite easy to get into it and do something productive real quick. Of course there are also some down sides with this choice. The first thing to notice is that engines like Unity or libgdx offer deployment to not just android, but also to iOS or even PCs - which is probably a must in the long run. But targeting the mobile market and not having any iOS device to test and develop on, this was not a real matter for us. At least for now. And being able to use all the stuff we produced while playing with the engine enabled us to get a really quick start with the project we plan to release in the near future. There are other drawbacks like performance issues e.g. when having "too many sprites at once" on the screen, we had this problem in our project and had to change some game mechanics to work around it. But the time we were able to save using AE was enough reason for us to stick with it for now.

So the first thing you need to choose is a game engine. Don't try to reinvent the wheel, there will hardly be any benefit from that. There really is enough work to do with the game logic, graphics, sound effects and music you need.

If you are interested in AndEngine you could start looking here:
http://www.andengine.org/

The other mentioned engines can be found here:
http://libgdx.badlogicgames.com/
http://unity3d.com/unity/multiplatform/mobile

Graphics


The second important thing you need is of course the visual part, you need graphics. If you have something to spare there are some sources where you can hire freelance artists, one example would be here: http://forums.indiegamer.com/forumdisplay.php?20-Art-Portfolios

Not having any real budget - like in our case- means that you need to produce this graphics yourself. Assuming most of us are not skilled artists this part of game development can be really tough, you need to find ways to produce something that is acceptable and you need to do it in a reasonable amount of time. We all know the approaches of some developers, opening up paint and producing some crap. We know the games and we know that they are hardly ever being downloaded, if we are honest to ourselves than we would also have to admit that we would not want to play something like that as well. Do not get this wrong - graphics are not the most important thing - but only IF they are not complete rubbish. You have to take some time, choose the right tool and learn some basic stuff. You need to produce something that the end user is not instantly repelled by, giving your game a chance being played at all.

I for myself found that Inkscape is a really great tool to accomplish this. It has many advantages:
  • The first, obvious one is that it produces SVGs, scalable vector graphics. This is really great especially for the mobile market, where you have lots of different resolutions out there. With SVGs as your raw format, you can generate your sprites in any resolution you want without (or almost without) any extra effort and get neat graphics.
  • The second advantage is that there are really awesome tutorials out there that teach you to generate pretty decent graphics without requiring too much talent, basically by adopting basic geometrical shapes to your needs. One tutorial (or collection of tutorials) that you probably already know - otherwise every indie developer should really know - is this one: http://2dgameartforprogrammers.blogspot.de/
  • Another obvious reason is - it is completly free! Something I really appreciate as a poor indie developer :).
Something like Gimp might also be the right choice for you, I guess it really depends on the skills one already has and on the style that you want to produce.

Inkscape can be found here: https://inkscape.org

Music and Sound Effects

And of course your game will need some background music and sound effects. I heard people using tools like Fruity Loops and similar stuff and are doing pretty well. I used it for some basic sound effects and still trying to learn the basics of this. But if you are - like us - in no way blessed with talents in this field, it will probably not be enough for some decent background music. There are also many sound effects that can not be produced this way.

In this case a really nice source out there are all this sites that offer royalty free music and sound effects. The first thing to do here is to create yourself some knowledge about the license types out there. The best thing you can find is something that is licensed under "public domain" - this stuff is completly free and you can use it however you like, wihtout having to do anything.

For sound effects that I can not produce myself with a microphone most of the time http://soundbible.com/ was a really good source for me. One should also know KevinMacLeod, in my eyes a very talented artist who is offering his work under the CC Attribution 3.0 license, which basically means that all you have to do is putting his name into the credits of your game. https://www.freesound.org/ proved to be a very good source for me as well. I am always looking for other sources, feel free to leave a comment if you know more :).

This should be enough for the first post.I hope some of you found at least pieces of information useful for you. Thank you for reading :).

Keine Kommentare:

Kommentar veröffentlichen