Friday, 24 May 2013

Evaluation

Games Engine Evaluation

I ended up using the Unity 3d game engine. My main reason for this was convenience - as I could get it for free at home and it was on a few of the college Macs, it was the most accessible option, without sacrificing usability. More pros I noted with using Unity were the Unity Wiki page, which has many easily accessible free scripts and the Unity.com forum for asking questions and receiving quick answers, as it is a popular place to go for questions and answers with all things Unity 3d.


To start with, I had to do a tutorial as it was my first time using the engine, and my first time using any engine in fact. I followed a basic 3d environment and coding tutorial, which was called "Unity Game Development Essentials", this was a .pdf file with a lot of pages. The tutorial took a few weeks to complete to the level where I would learn enough about what I wanted to do to be able to start doing it. I was tasked with creating a 2d game, however, and this is far different from the 3d tutorial I had done. This was a setback, right from the start.

In learning about 2d and 3d game creation, I did make several basic game levels. One was a first-person adventure, one was a mouse-orientated shooter and one was a re-skin of the 2d tutorial.

Eventually, I learnt the basics of 2d game creation and luckily Unity is a good engine for that, too. The game I was tasked with creating was the 'winner' out of all the pitches that fellow students made to a legitimate and professional games designer, so he was a good judge of the premise's potential and what it could become if we made it.

Before I started on that, I took the assets of a 2d tutorial and fiddled around with them, so that I knew what I was going to be able to do when I got into the real thing.

So, work started on the game which I was tasked with making. I found a strictly 3d-rendered 2d side-scrolling game tutorial (looks more confusing than it is) which, given my time restrictions and the lack of outside help, I pretty much had to take elements from it. For example, I took the character as it would have been too long and too hard if I had to make a character in Cinema 4d. The person whose game design I was going by decided to help by creating some prefabs (objects in Unity that can be put in any time) and I used these to make the game's stripped down version of a level. It had no textures, no script, just platforms and walking. I put textures on everything, which I found online as I would not have had time to create them myself. Here is a screenshot from the game, showing the textures:

I managed to find a script for a platform mover, so I put that in. I also managed to make spikes send you back to respawn, same with falling off the side. To do this I used OnTriggerEnter > gameObject.position == (transform variable) or something along those lines.

Another person in my group found a script to let you drag rigidbodies; rigidbodies being a physics component that have gravity and force applied to them. I also managed to make a lever which when clicked tells you to press a certain key, as I could not get the click to set off what I wanted it to. When the key is pressed, however, a block moves out of the way. Looking back, I could probably find a way around this but I was pressed for time. That pretty much sums up the work I did overall, but writing it like this does not do justice to the amount of time spent.

One thing to note was that this was a group task and the only help I received was from the person who wasn't supposed to be able to help, the person who designed the game, so all this was alone and the final game was of a decent quality.

Below is the Game Engine Wiki which I wrote in during the project. The links (.zip files) will likely not work.


Elliot's progress

So far I have downloaded a basic example of a 2d platform game. I have changed the background by using the render setting > background and assigning 6 pictures (the same picture 6 times) and made it into a sort of skybox. 
I have added in a box and a cupboard which are obstructions in the scene/level. The box must be pushed so that the character can jump high enough to get up onto a ledge; the cupboard must be jumped over by sprinting to it and jumping at the right time.
Today I added a different texture to the platforms. I made it look rusted and old as if it had been there for a while. To do this I simply clicked on the material it was made of (in the inspector) and changed the two materials there to the rusted texture.
I also created a door which can be passed through by simply running into it. To do this I had to create a box, reshape it, add a texture and make sure I ticked 'is trigger'. Next, I added a script to the first teleporter (which was a door; and will be referred to as simply door) and in the inspector, I made sure that the 'destination' was the other door which was above the level out of sight. This worked well, after a lot of time.
As per request I will upload my project file.
I added a level which when hovered over gives instructions in the top left corner. It will give instruction to press 'O' on the keyboard which will activate a noise and make a wall (which I also added in since last time) disappear. 
Also added some basic platforms and some more doors (teleporters).
Using the same teleporters, I made an imported spike turn into a sort of death machine - I manually set the destination of the teleporter to the respawn point, giving the same effect as if you had fallen into the death zone. To do this I used the standard box collider and triggers, with the script I already have.
Currently creating the base of the level - using the platforms, spikes, stairs ETC that I received from James.
Well that's done, I've also added the scripts for the switch and the walls to activate either on click or on press of a certain button. Overall, I'm happy with what I did with the base of the level, now all that's left is the textures, lighting, character (maybe?) and ceilings/walls.
I added a GUI texture to create a clickable background with text on it. 
I also added many many textures to the planes and boxes and such.
I scripted all things that required scripts.
PROJECT FINISHED
THIS IS THE FINISHED SHOOTORIAL THING THAT YOU ASKED FOR. I COULD NOT EXPORT OR SHARE IT PROPERLY SO I WILL PUT IT HERE FOR DOWNLOAD, WHICH SHOULD MAKE IT POSSIBLE FOR YOU TO OPEN IT UP (THE .HTML FILE) AFTER IT IS UNZIPPED. game.zip 

No comments:

Post a Comment