• Register

One man Indie Game Studio! I publish games under my name. Currently working out of India. Coming from a engineering background, my primary expertise has been working on web applications. But I have always loved games. I have never been a great gamer, but love games for the beauty and the creativity involved in them. The ability to create your own worlds and write your own rules is so appealing! So about a year and a half ago, I decided to take the plunge and become an Indie Game Developer. The journey has been a constant learning curve till now. I have managed to successfully publish three games till date to the AppStore. Now I am working on my next game - 'Mr. Mustachio'. My main interest is to develop casual 2D games for the mobile platforms. So this is my life now. I am learning the process of designing games by building games and hopefully each being better than the last one. And hope that people enjoy playing them.

RSS My Blogs

Working with Unity Game Engine!

shobhitsamaria Blog

I have started using Unity to develop my next game – ‘Mr. Mustachio’. The progress has been great so far. I have really liked using the game engine. It has helped to speed up the development process many fold and it is quite exciting to see your changes so quickly in the editor, which really helps in making some choices easier.

The biggest plus so far has been the excellent community support available on the internet. Since a lot of people are using the engine, a lot of information is available. Every time I have run into a problem, a simple google search has led me to a solution. A simple scripting solution or even a plugin is never far away.

The plugin support for Unity is excellent. Some paid, some free, but there is no dearth of them. I have already started using quite a few of them in my first project itself. I have even ventured out to but some plugins which from my internet searches are pretty popular. And till date, I haven’t regretted any purchase.

Some of the plugins I have used so far are:

Unity UI Extensions

Text Mesh Pro

SVG Importer

DOTween

Mobile Native PopUps

VSCode

All of the above plugins are excellent and work the way you want them to!
After having done literally everything through code when using SpriteKit, using a mix of GUI tool and scripting is a welcome change. I can already see the benefit of it in speeding up development. Hopefully, my new game should be ready in a month’s time!

It has also provided an opportunity to work with C# language. Pretty used to OO languages having worked with Java, Obj-C etc, so transition was pretty easy. The one thing I haven’t been able to get used to is naming convention for functions in C#. unlike the other languages that I am used to which use the lower CamelCase convention, C# uses upper CamelCase (PascalCase) for function names. Having been used to the other for so long, I am having a hard time shifting. Instead of making a mess, I have decided to stick with the lower CamelCase convention :).

(I will become used to the C# convention, just need some time ;))

The scripting API is wonderful and gives you full programmatic access, so you don’t just have to depend on the GUI drag and drop. You can change literally everything by writing scripts. That’s just what a programmer needs!

The performance has also been good. I have been testing out my builds on older iOS devices and the game works decently well. It even runs on an old iPhone 4 running iOS 7! How wonderful!

All in all, it has been great working with the Unity engine, which has now given me the option of publishing my game to more than platform.

Starting out on the Game Development journey!

shobhitsamaria Blog

It's time to start building cross platform games now!

I am pretty new to game development stuff. I have a programming background so I can code decently well but game development is obviously much more than that.

I have built three games up till now and all of them have been built using Apple's SpriteKit framework. I do know that SpriteKit is not cross-platform, hence I was limited to developing only for the Apple platform. But I still decided to go for it.


Why did I choose SpriteKit?

I got into game development about 18 months ago. I am not a great gamer myself but I love the creativity behind the games and the absolute freedom to build just about anything through games. So finally I decided to take the plunge.

At the start, I realized how overwhelming game development actually is and not exactly a piece of cake. I read a lot of stuff on the internet on how to go about it. The first thing to do was to choose a Game Engine. Again after reading a lot on the internet, I found that a lot of people use the Unity Game Engine. So I decided to start with it.

But I ran into a problem. Coming from a non-game development background, I found that the Unity docs and tutorials were a little thin for rank beginners (although there a lot of them). I found it tough and overwhelming at the beginning and constantly searching for the terminology being used in the tutorials. It probably wasn't the greatest of starts for me.

So I decided to shift to something more suited to the skills I already knew, which is programming. So I started looking for more programming based and less GUI based engines. There were quite a few but Cocos-2d seemed to be used by a lot of people. But again here, the documentation was very little and it was extremely difficult to even create a project using the docs. So I let that one go as well. Although, the cocos-2d framework has come a long way in terms of documentation and GUI tools since then. With the new Cocos-Creator, it looks like a good deal and I would like to try it out someday.


Cocos2d-x Logo


But after moving on from cocos, I tried to read through Apples's documentation on SpriteKit. I already had a bit of prior experience on iOS development. To my surprise, the documentation was awesome for someone beginning like me. There weren't that many great details but whatever there was, was explained neatly. That gave me confidence that I could actually do some game development.

But there was the downside. SpriteKit could only be used for development on the Apple ecosystem. That had me confused on whether this was a good ides or not. So again, I was back on internet reading up on it. I gained a few things from all that reading. First was that, most of the people preferred publishing to iOS anyways. Second, that it was more important to "finish" a game. Most of the people start developing but never finish it off and that is irrespective of engine they used. Third, that the engine is not the most important thing. If a game is successful, you can always spend some time porting it to other platforms.

Having gained this knowledge, I decided to stick it out with SpriteKit.


SpriteKit Logo


And it actually worked out quite well for me. I managed to finish three games and publish them on the AppStore! More importantly, it has given me the experience and confidence, that I can do game development.

So now I have decided to expand my skillset and move on to using the more industry-preferred engines for developing cross-platform games. And in this endeavour, I have decided to try the Unity engine again. And you know what, things are much more clearer than before! I tried out the Unity tutorials and documentation now, and all of it makes much more sense to me. I realize now that my earlier apprehension was just because of my lack of experience in game development; not knowing where to begin with and nothing else! I have already started out with the development of my next game using Unity!


Unity Logo


Internet as usual is a wonderful place and I found these tutorials/courses really helpful.
Coursera.org
Coursera.org
Youtube.com

I will post more articles about my experience with Unity which has been great so far, along with the progress of my game tentatively titled - 'Mr. Mustachio'.

This post isn't about which engine is better and which is not. I do believe that it is more upto you what you can do out of a engine. This post is more about trying to tell that it is much more important to get started and sticking it out. There is no perfect option. Find the option that you are most comfortable in learning and take it from there. Do not just take in theoretical knowledge but expand on it by actually building stuff along with it. You will run into tons of problems that will probably teach you a lot more than any book or article. And do whatever it takes to publish your game on your selected platform.

I probably know only 1% of the game development knowledge out there but atleast now I have the confidence that I can tackle different problems, learn different engines, and more importantly finish and publish my games. The learning part never stops!

Good luck to everyone beginning their gamedev journey!