This week in class we reflected and critiqued our documentation and reflected on what makes a good and full document. An extremely good technique to test your document is to act like an annoying 6 year old and keep asking ‘How?’ and ‘Why?’ until you can’t anymore, this means that the specification has been simplified down to its base level with the highest amount of detail. I decided that I’m going to try this method to fully specify my documentation. This week I also decided that I’m going to begin my assignment in Unity to get the ball rolling so to speak.
I continued to work on my documentation trying to get more and more specific with my explanations and descriptions to the point where each aspect of the game is explained fully in my specification. After writing this out, it gave me a clearer understanding of how I was going to tackle the assignment and forced me to actually think through how I was going to tackle each aspect of the assignment, this was an extremely useful skill/technique to learn as it will give you an idea of where to start instead of starting a project blind with no direction.
For this week I decided to work on player movement, environment generation and camera control. The first problem I decided to tackle was the player movement, in the brief it mentioned that the ball had to move through physics and this was to be done by adding torque to the ball and getting it to roll. I followed the Unity3D Roll-a-ball tutorial which had all the basic instructions to get the ball moving around the scene. The second problem I decided to tackle was environment creation, I initially planned to create the environment using terrain and the mountain generator, after messing around with the terrain modifier for an hour I realised it was much more difficult to create a terrain for the level than I initially thought, the idea came to me to create just a simple sloped plane and populating it with objects. The final problem I decided to tackle this week was to have the camera track the player as they move around the level, this was done simply by having the camera object take the player GameObject as a variable and having it update it’s position continually with an offset to the player GameObject.
In conclusion, this week was quite productive, I managed to update the documentation to a higher standard, managed to get the ball moving, tested out the terrain management system and got the camera following the player. This is core functionality to be built upon in the coming weeks for the completion of the assignment.