Unit 67 Computer Game Engine

This unit focuses on the creation and development of 3D or 2D games with Unity Game Engine. I’ll have to learn a lot of skills that are required in that area, even if I’m not happy with myself. For our first task, we had to create a simple game with Unity (of course).

Screen Shot 2015-09-25 at 15.56.06
Creating the player and the ground

We simply had to make a mini game where you play as a ball collecting small yellow cubes. Simple, right? I had assumed that at the beginning, but I realised that it’s not as simple as I thought, especially because there was scripting involved. Getting the ground and ball was pretty easy to do. You only need to go to Game Object and 3D objects where you can select and choose plane and sphere.

Screen Shot 2015-10-01 at 09.35.10
Camera angle change

I wanted to change the camera angle so that I could get a full view of the player for the mini game. It made it easier for me to see the entire game environment, including the player. I actually had some trouble adjusting the camera the follow the character to begin with. The good thing is that problems like this are only temporary.

Screen Shot 2015-10-01 at 10.12.24
Inserting script

 

I inserted this script to edit and add coding that will effect what will happen to my character in my mini game. This was honestly a surprise for me, at the time, when I found out that I had to put in coding for my mini game. I believed from all this time that Unity wouldn’t need it. I used mono developer for this script to be made and edited. I had to look up some video tutorials a lot of times.

Screen Shot 2015-10-01 at 10.17.20
Editing script

I started following a video tutorial for scripting in order to be able to move the ball (character) when going into play mode in Unity. Our Tutor wanted us to copy existing scripts from other people who have used similar features in their games.

Screen Shot 2015-10-01 at 11.36.21
attaching the camera to player for third-person view

I eventually managed to fix the camera using a C sharp script as well and adding it as an component. I thought by doing that I would get the camera to follow the the player. I’m happy that I managed to get that done.

Screen Shot 2015-10-01 at 13.54.20
Adding Walls to prevent the player from falling off

I decided that it would be better to add barriers to the surface after play testing and dealing with my ball falling off the map. To prevent that from happening again, I added some walls and scaled them to fit around.

Screen Shot 2015-10-08 at 09.06.02
Created pick ups
Screen Shot 2015-10-08 at 11.05.13
Collecting pick ups

Making the game was quite useful for learning the basics of Unity (even though I still struggle with using the right scripts). I did have problems from time to time, but it was nice for my support workers and Tutor to be there to help me understand and get back up on my feet. I really didn’t like the fact that I managed to fall behind other students that were able to get on with completing the 2D as well as 3D tasks. I naturally get irritated when I feel pressured to complete a task within limited time.

Creating a Bristol Harbourside game (2D and 3D)

For our first brief, we will have to create a prototype of a game based around Bristol Harbourside. We can make it how we want to make it and decide our objectives and goals for our game to design, as long as it is still recognisable as Bristol Harbourside. I already have some ideas in my head in how I may approach Unity, making the level layout, making it first or third person.

Primary Research

To be able to create a prototype level based off Harbourside in Bristol, we need include features from Harbourside itself so that anyone who plays the game in the future will recognise Bristol Harbourside as the game’s setting. The Tutor wanted the rest of the class to gather up their own research rather than googling up photos from someone else’s source. Going outside for this research was useful for not only fresh air and research, but also inspiration for game ideas that I could use for creating the prototype.

photo 1
Stairs, leading to docks

I want the stairs and docks to a staring point of my game level when the character spawns in there. Since it’s in first person, I’m not very worried about the character’s look at the moment. However, I would try to render the benches, docks and marble stairs which would help make it recognisable as Harbourside to begin with.

photo 2
Watershed

This may be a part of my game level that my character can travel around and look at some view.

photo 3
The riverbanks and boats

I want to use these boats as platforms in the game I’m making. I do realise that by wanting to make boat platforms, I’ll need to look up references for creating 3D boat models. I may either make it simplified or detailed depending on how serious my game concept may be in the future.

photo 4
Trees

I would also like to create and use the trees along in the background for my level as props. I wanted this to surround the walls in the level.

photo 5
Centre view of watershed pathway

I was thinking about rendering a hallway similar to Watershed. But I had to think about the pathway and adding obstacles/enemies to make it challenging for the player.

photo 6
River

I have been experimenting around with the water package in Unity which I will want to use as the riverbank in Harbourside.

photo 7
pedestrians and vehicles
photo 8
bird reference as enemy
photo 9
Water shed
photo 10
Pigeon

In my level, I want to make pigeons the main enemy.

photo 11
Boat Cafe

I’ve been thinking about adding this as a feature on my prototype level.

photo 12
Bike
photo 18
Bench
photo 21
Cafe shed
photo 22
Iconic building near Harbourside

 

Down below were a few textures that I wanted to use for my environment for furniture, obstacles etc.

photo 13
Harbourside texture
photo 14
Harbourside texture
photo 15
Harbourside texture
photo 16
Another pigeon
photo 17
Possible background
photo 19
Floor texture
photo 20
Dock texture

I would only like to use a small area of Harbourside and corporate it into a level for my game with a few features from the area and the textures that I have taken from there. I would mainly focus on the interaction than the presentation of the environment.

Proposal

Working title:

I’m working on a prototype level for a Harbourside-inspired game as a task for my Tutor. We need to base it around Harbourside (an area in Bristol). Having this is a challenge for me. I wasn’t sure how I could complete a game like this.

Target Audience:

This game will hopefully appeal to other people who enjoy platforming games as much as I do at the moment. May be this can be played by children as well as there isn’t any inappropriate content I want in putting in the game in the first place.

What will you work towards producing:

I want to create a basic prototype level, which is meant to have 2D and 3D elements to it which is needed.

 Influences, starting points and contextual references:

I have played platform/adventure games in my childhood. A good example would be ‘Kao The Kangaroo Round 2′(I never played the first). It contained themes from ships, docks and platforming which were elements that I wanted to put into my game level.

Early ideas research and sources:

Using the photos I took from Harbourside, I would like to take some iconic features from there and somehow place it into my game.

Intended techniques, non digital and digital processes:

I have Unity to create the level design and photos for inspiration.

Timescale:

Roughly 4 weeks, but due to my lack of time management, it may take longer.

Proposed methods of evaluation:

The final prototype will be played by several other classmates in my class and will contribute their feedback to help me understand what I need to do to improve next time.

Gaming document

This is a Harbourside game which I plan on including 2D and 3D levels for the prototype. I plan on making both levels, using the Unity engine (since I’m able to make 2D and 3D games on there). I’m happy that Unity can involve clicking and dropping objects and packages or using c# scripts. I do want this game to hopefully be family-friendly, so no gore, sexual or any content that seems inappropriate. I really don’t have any original ideas for what sort of font and logo I want for my game. I’m not sure how I can present it in the game. It isn’t something I want to focus too much on and I’d much rather focus on making the levels and interactivity. I would like to import packages of a first person character with the scripting already in place. For the 2D level, I will import a third-person character that I want to display in 2D view from manipulating and moving the camera to a certain angle where you can see the character and the surface. I think that the good thing about Unity is that I can click and drag to edit and change the size and layout without the need for scripting, but I need.

My game is quite simple; you need to reach the end before transitioning to the next level. It will start with a 3D level and end on the 2D level. I know that I need to design it in a way that it’s recognisable as an area of Harbourside or at least has been influenced by Harbourside. Taking photos for research would be helpful for building up and creating my levels. I would pretty determined to make sure that I have all the objects and textures in place for my 3D level. I know that in Unity both layouts (2D and 3D) will have to be made separately at first, but then I will have to combine them together somehow with some scripting in the 3D level.

I would prefer for my character to be unseen by putting it in first person view. I worry about the trouble of rendering and fixing a detailed human figure for the game. I could make it in Cinema 4D (an 3D animation software) but, I have been told about the time and effort it takes to mold, rig and add textures to add detail for an organic-looking character and I would go through motion tweening and I couldn’t. I’d imagine that a lot of time would be wasted if I tried. The player will be able to move and jump around. Not to mention for my 2D level I will have a default human figure that the player can control and move around.

The game play will feature platforming, your character will have the ability to move and jump around using the default controls for the first person character. You should avoid falling in the water in the level, unless you want to start at the beginning again. I originally wanted to put in a feature where the character shoots out projectiles to shoot enemies that block your path.

The environment will be inspired by based off of Harbourside. I will want to find a way to make sure that the player is able to get back to the starting point after falling in the water. I want to be able to use mono develop to edit and create a script for this action to happen, but if it doesn’t work, then I would try an alternative.

I would would imagine the player being confused at first sight from entering the game. The objective won’t be too clear at first, but they would have to discover their goals as they explore more and progress further on. The levels won’t be too long to begin with. I would need a c# script made in mono-develop to create a enter trigger to the next level for that to happen. I haven’t put too much thought into the game itself and what the atmosphere should be like.

I wanted to script an A.I. as giant pigeons (in the game) as pigeons are common on Harbourside. I thought that they would be able to attack the player on sight when the game starts. The player will start again when their health runs out or when they fall in the water. But I really don’t have a clue on how I can program A.I. to lock on the the player. I know I can look up a tutorial, but then I would be spending a lot of time on Cinema 4D or any other rendering software to mold and create a detailed pigeons. I could make it geometrical, but I don’t think it would be suitable to the image or visuals that I want in the game.

I’ve never really focused on making cut scenes for my game. I want to focus more on the game play. I haven’t really planned a story line or sequences for the game. I don’t consider that to be important if I don’t have a story to contribute to.

I originally would have put in pickups in the game for building up a score which is optional if you want a high score using a familiar scripting for the object and add a collider on there, but I eventually lost interest in that and was soon more interested in making the map and making sure that the player can move around in there. I do think that pickups will be needed in the 2D level to complete it, that’s if I manage to get it done. I never really focused on the 2D level too much, I worry too much about the 3D level.

Flash is a animation software, but you would be able to make a 2D game using some scripting and adding them to 2D objects created in flash or Photoshop(for better quality artwork), including your 2D player. I haven’t made a game so I can’t really say for a fact that it’s great to use, but I have seen other people making 2D games on flash and I’ve played flash games online. With this software our Tutor did warn us that this software isn’t perfect and has some flaws and glitches that can occur. I would rather use flash for animating purposes than for gaming. You can create key frames and draw an object to bring into the scene and the onion skin feature has definitely helped me to trace the previous frames for my own previous animations. I’m awful with motion tweening in flash so I don’t think that this would be good for me to use unless I’m making cel animation (frame-by-frame animation).

Unity (3D and 2D) is obviously the software that I’m using to create my levels. It’s nice to know that you can get away with the basic features of game play with importing default packages for textures, characters to move around, environment with available tutorials in youtube. But I do hate to have to  create scripts for certain models and objects in order for them to function. I wouldn’t have a lot of patience to make a game so detailed and complex in this engine. This engine is great for beginners who want to make their own game, but the tool in there are limited so you would have to download package files from websites and sources to have more access.

The Unreal engine (3D) is one that I’ve heard about, but never used. I have seen some good games of triple-A quality made from this engine. I’ve heard that its’ tools as simple to use that even school kids are able to use it and manipulate it to create their own games. Not to mention that there are accessible tutorials online that you can do. I may be biased when saying this since I’ve never used it. But to make complex, detailed and artistic games would be time-consuming. You can’t make a masterpiece in the blink of an eye as it would take time and effort. Apparently, a lot of developers have complained about the tools in the engine you use to edit and create.

Scratch is a simple software you can use to create 2D games. I remember the rest of our class being put together for a mini-project to make and design a game that was christmas-themed. I was selected for making the Illustrations for the game. It was pretty simplistic to create backgrounds and sprites, but difficult to actually animate movement when you control it. I remember seeing one of our group members clicking and dragging commands to create the game so that you can interact with the game and complete the levels. I will admit it’s a lot more simplistic when it comes to design and coding, but it’s tools limited for when you would want to create higher quality games.

My game concept

I actually want to make my game a shooter/platform game in first-person where you can fight off mutant pigeons by shooting them. This is just a basic idea of what I want to happen in this happen. I personally prefer first-person view in a game as it makes it easier for me to be immersed in a game when I’m in the character’s eye view.

I’m planning on taking it in little steps staring with the character’s actions. Starting with finding the right prefab and coding.

Screen Shot 2015-10-22 at 09.47.22
Creating my bullet for the character to shoot out.

I’ve been struggling to get the coding correct for being able to play as the character and shooting. I looked at some tutorials and had trouble with finding the right tutorial with ‘C sharp’ scripting, since most of the tutorials I have come across have required ‘java’ scripting. I had been struggling with trying to get the character to shoot projectiles/bullets as an option against the enemies (that I will make eventually) in the game.

Screen Shot 2015-11-05 at 10.35.22
new script for shooting

Since the first script that I used didn’t seem to work for the game when I tried to go into play mode. I even tried to look for errors and flaws I may have accidentally put in my old script and it got me frustrated to the point where I removed it. The good thing is that I was able to play in game-mode again. I still managed to make an error. Eventually gave that up and have changed the concept slightly so instead I will make it a platform game where you would have to jump and move around obstacles instead. It seemed like an easier idea to me.

Screen Shot 2015-11-05 at 11.09.02
Changing the layout

I know that I haven’t done a lot with the layout of my level. I wanted to create the 3D layout so that it’s recognisable as an area in Harbourside. I started off added planks as platforms in Unity. I wanted to work around the layout that I thought would work for me and would function well.

Screen Shot 2015-11-05 at 12.08.58
adding barriers

I thought about putting up barriers so that the player can’t wonder off into the distance where you end up getting nowhere. And I wanted to to make a re-spawn point for my character when they fall off into the water. I thought I could create a river lane similar to one that I’ve seen in where there are walls from your left and right. I never really bothered to add textures. I would check from time to time when I adjust the platforms and tilt them in different angles.

Screen Shot 2015-11-12 at 13.41.21
switching around and changing

I wanted to change and scale a different map for my level before I could create the rest of the map.

Screen Shot 2015-11-12 at 14.00.59
placing the surfaces

 

Screen Shot 2015-11-19 at 10.11.28
adding platforms

I’m aware that in play testing mode that I could only stay in one area (the starting point) and I couldn’t really go elsewhere unless I wanted to fall off.

Screen Shot 2015-11-26 at 15.04.23
added stairs for the player to get back up

I wanted to add some features for some form of gameplay. As the character, I wasn’t able to interact, but I was able to only free walk and run around without any sort of objective. I wanted to change the positions and rotate duplicated platforms which was an easier option for me to take. I did wonder about what would happen if I fell down in the water and couldn’t get back up. I knew that I wouldn’t have the coding to teleport back to the starting point. So I thought that it would be useful to instead build a set of stairs for the player to get back to the starting point.

Evaluation

I am happy with the fact that unlike my sound toy, my game character is able to move, look around better and move quicker. I was initially quite worried about how I would have committed the same mistake before, believing that I may have made an error in my scripting. Exploring around was great for me to take a look at what I’ve produced and made. Unfortunately, I haven’t completed the game and so all you can do is move and jump on wooden platforms.When it was presented to the class, people have commented on the good use of textures and theme of surrealism created in the environment and the capability of free-roaming. They also mentioned that the game could use an objective for you to complete to progress to the 2D level (which I didn’t make sadly). The Tutor had commented on the character’s small steps (walking and running), child-like height and large jump from platform to platform. It’s understandable that it seems quite odd. I regret not finishing this and the 2D level (time-management, my one weakness). Getting this feedback was helpful for getting ideas of improvement for future projects. Next time, I would try to make the character’s movements more realistic and adjust the height so that it doesn’t seem to be short next time.

 

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s