Portfolio reflection

Over the last few weeks i have not posted much of my work, as I have been working on my portfolio. However now that I have presented my portfolio and it is out of the way, I can start working on posting more work to my blog. But not before i reflect on my portfolio. I believe it went well, better than I ever expected. I ended up getting a merit. The work I had presented was high quality, however I was told that I needed to spread my time around my work more. I had mainly focused on 3D modelling and hardly did enough work on other subjects. However that is what I will need to do in my second year, so I will need to continue to do what I am doing.


Game concept – programming exam: 2

Continuing on from last week I have created sprites for the enemy AI. I have added scripts that move the enemy around 3 waypoints. A death controller for the player, and a next level controller.


Here is the enemy AI, I like this sprite. However I am going to change the look of both the enemy and player sprites to look more top down.

Waypoints script

Here is the code from moodle, for the waypoints on the enemy, and a GIF of what it does.



This is the temporary sprite for the level objective, hitting this sprite with the player sprite will load the next scene.

Here is the code that makes this work and a GIF showing exactly what it does

Next lvl gif

Next lvl

This code is exactly the same as the death controller, other than the Tag name. In death controller the tag name is ‘Enemy’ in this it is ‘Nextlvl’. Also, instead of reloading the scene, it loads the next one when hitting the object.

Class diagrams and Trigonometry

Class diagrams are a like a blueprint for game features or assets. They list all of the game properties in order and show exactly what you will need for these properties to work.

Here is an example of a class diagram:


Trigonometry is used in 2D games to help calculate the distance between objects. As there is no diagonal axis, trigonometry is used to work out the distance where the the diagonal axis would be.

Movement in the x axis is calculated using the Cosine, as the cosine of an angle is the ratio of the adjacent side with the hypotenuse, which in this context is used as Cosine(angle) = X/Distance
Movement in the y axis is calculated using the Sine, as the sine of an angle is the ratio of the opposite side with the hypotenuse, which again can be used as Sine(angle) = Y/Distance.

Radians are used to measure angles, the GIF below, showed to us by Ant, clearly explains exactly how they are used.


Unity Coding

Continuing  from last week when I made a small room in which you had to find a key to escape. I added new features. One of which is a flashlight that you can toggle on and off, another is an inventory system and another is a crosshair which I made following an online tutorial. The crosshair is fairly basic and needs a lot of work as it gets in the way of me clicking on the key, which of the opposite of what a crosshair should do.


This picture shows the new crosshair and flashlight.


The coding I used for the inventory system.

Animate Platformer Game

In my game i used the spooky scene from the previous week as the setting.


I edited the coding to make thew player character sightly slower but jump slightly higher. I also changed the controls from arrow keys, to WASD.wasd-coding

I slightly changed the background so there were a few extra bats so you can get up to the top of the moon as that is the goal. It is difficult to tell what is ground and what isn’t, making the game slightly confusing to anyone who didn’t create the game, so i am planning on slightly changing the ground colour.

Here is a link to my game: