Tasks and Deliverables
Assignment 1:Unity 3D/VR Application Review
Search the web for a 3D (or VR) application/project that has been built with the help of Unity. The only restriction is that it is not one of the projects linked in the list above and not a computer game. Then write a 1-page review describing the application/project itself and what you could figure out how Unity has been used in the project. Reflect on the reasons why the developers have chosen Unity for their project. Make sure you include a link to the project's web page in your report.
Criteria | Full Credit | Half Credit | No Credit | Possible Points |
---|---|---|---|---|
URL is provided, the application/project uses Unity, is not already listed on this page, and is not a game. | 2 pts | 1 pts | 0 pts | 2 pts |
The report clearly describes the purpose of the application/project and the application itself. | 3 pts | 1.5 pts | 0 pts | 3 pts |
The report contains thoughtful reflections on the reasons why Unity has been chosen by the developers. | 3 pts | 1.5 pts | 0 pt | 3 pts |
The report is of the correct length, grammatically correct, typo-free, and cited where necessary. | 2 pts | 1 pts | 0 pts | 2 pt |
Total Points: 10 |
Assignment 2: Create the walkthrough of the Old Main
To practice Unity project management, scene editing, and project building, we want you to apply the steps from this walkthrough: Using Unity to Build a Stand-Alone Windows Application.
Please set up a new Unity project for this assignment. Then follow the steps from the walkthrough to add the building model to the scene, make sure that the lighting source and camera are placed in a reasonable way relative to the building model, and make the camera keyboard controlled. In the end, build a stand-alone Windows application from your project.
Deliverable 1
Three screenshots should be taken in Play(!) mode showing the entire Unity editor window. Each screenshot should show the building from a different perspective. The keyboard control of the camera will allow you to navigate the camera around to achieve this.
Deliverable 2
Uploading the zip file of the Windows stand-alone application you built (consisting of both the .exe file and the ..._Data folder) or a link to the uploaded zip file on clouds such as OneDrive or Dropbox.
Criteria | Ratings | Pts | ||
---|---|---|---|---|
This criterion is linked to a Learning OutcomeThree screenshots in Play(!) mode showing the building from three different perspectives. |
|
2 pts |
||
This criterion is linked to a Learning OutcomeLight source and camera are placed in a reasonable way relative to the building. |
|
2 pts |
||
This criterion is linked to a Learning OutcomeExtendedFlycam script for keyboard control has been applied correctly. |
|
2 pts |
||
This criterion is linked to a Learning OutcomeWorking Windows stand-alone application. |
|
4 pts |
||
Total Points: 10 |
Assignment 3: “Roll-the-ball” Game
The homework assignment for this lesson is to report on what you have done in this lecture. The assignment has two tasks and deliverables with different submission deadlines, all in week 8, as detailed below. Successful delivery of the two tasks is sufficient to earn the full mark on this assignment. However, for efforts that go "above & beyond" by improving the roll-the-ball game, e.g. create a more complex play area -like a maze- instead of the box, and/or make the main camera follow the movement of the ball, you could be awarded one point if you fall short on any of the other criteria.
To help with the last suggested extra functionality, use the following script and attach it to the main camera:
using System.Collections; using System.Collections.Generic; using UnityEngine; public class FollowBall : MonoBehaviour { // reference to the ball game object public GameObject Ball; // a vector3 to hold the distance between the camera and the ball public Vector3 Distance; // Start is called once before the first frame update void Start() { // assign the ball game object Ball = GameObject.Find("Ball"); //calculate the distance between the camera and the ball at the beginning of the game Distance = gameObject.transform.position - Ball.transform.position; } // This called after the Update finishes void LateUpdate() { // after each frame set the camera position, to the position of the ball plus the original distance between the camera and the ball // replace the ??? with your solution gameObject.transform.position = ???; } }
If you follow the detailed instructions provided in this lecture, you should be able to have a fully working roll-the-ball game.
Deliverable 1: Create a unity package of your game and submit it to the appropriate Lesson 7 Assignment.
You can do this by simply going to the Assets in the top menu and then selecting “Export Package”.
Make sure all the folders and files of your project are checked and included in the package you export (you can test this and import your package in a new Unity project to see if it runs).
If you choose to implement the functionality of the main camera to follow the ball movement, please explain your solution as a comment in your script. You can add comments (texts in green) in C# by using “//”.
Helpful advice:
We highly recommend that, while working on the different tasks for this assignment, you frequently create backup copies of your Unity project folder so that you can go back to a previous version of your project if something should go wrong.
Criteria | Full Credit | Half Credit | No Credit | Possible Points |
---|---|---|---|---|
Your game runs smoothly and as intended without any errors or strange behavior | 6 pts | 3 pts | 0 pt | 6 pts |
Your project is complete and has all the required functionalities (coin rotation, collection, and sound effect). | 3 pts | 1.5 pts | 0 pt | 3 pts |
Your Unity package has a proper folder structure, and all the files have meaningful names like it was done in the instructions | 1 pt | .5 pts | 0 pts | 1 pt |
Total Points: 10 |