Unity Tutorials: Learning and C#

So I tried out Unity. Installed Unity 5.0 (5.1 just came out) and did the Unity Roll-A-Ball tutorial, available on their site. It’s quite straight-forward and it showed me that Unity would be fairly simple to use, even if I wasn’t a programmer. I’ve never written in C# before, but I know Java and Objective-C, and I’ve found that all the other programming languages I’ve worked with are extremely similar on the basics.

I am unbelievably game
The Unity GUI, for those who haven’t seen it

I also found out that public variables in C# script files can be editing from the Unity GUI. This means that I can for example create an enemy with public variables Health, Damage, Speed, Range, Item, Name, and leave the variables open to interpretation. Then Zane (or any level designer) can use the prefabs and scripts that I build and just adjust the required variables for any enemy that they put into the scene. They’d never have to see a line of C# and they’d be able to do everything in the GUI.

Declared in the script, I can adjust them here
Declared in the script, I can adjust the player speed here

I also learnt about scenes, prefabs, scripts, the camera control, the gameController and the basic mindset behind Unity. Which is essentially, easy game development. Pretty awesome.

A few days later, I did the Space Shooter tutorial, also available on the Unity website. Not much I learnt from this beyond the previous tutorial, except that it was a Unity 4 tutorial, so a few things broke. I suggest watching the lesson videos on YouTube, as the YouTube comments are surprisingly useful for Unity 4/5 errors.

Mono-Develop, used to write the C# scripts for Unity.
Mono-Develop, used to write the C# scripts for Unity. Example of GameController.cs for the Space Shooter.

Wait, I also learnt about co-routines in C# (see above image), which is important for background processes and the like, such as “wait x seconds and spawn next wave”. Mostly I just doubled down on my Unity knowledge. I’m going to play around with the space shooter game a bit, see what I can make happen, then move on to the 2D Roguelike Tutorial. After that, I’ll begin working on our own game-engine. Basic Streets-of-Rage engine with RPG menu in-between.

I’d also like to mention that we have a third person working on the game-engine. A more senior programmer who’d like to avoid publicity and only wants to program on this for fun until he gets bored and realizes that gaming is a dead end for properly paid, successful programmers like himself. He says he wants to be called “ICECREAM TOASTER” so we’ll call him that.

Creation

This week, Zane and I got together to talk about a game idea. Zane had the idea some time ago and I got into Unity. We chatted and were very much on the same page. We’re making a game called (for now) Arkhamobster.

Also, we’ll be blogging about it while we do. I’ll be focusing on Unity and C# development, Zane will be doing his thing.

– Jacques