-
Notifications
You must be signed in to change notification settings - Fork 3
3. Unity Part
-
Located in the
calendar_uidirectory -
Using Unity 2018.2, 2D
- 2D instead of 3D so we can start simple
-
Using Visual Studio 2017 and Rider 2018.2.3
-
Unity projects are organized by scene. Each scene can have associated GameObjects. GameObjects can have associated components.
-
For the purposes of this project, think of scenes like a web page.
-
When you create a new scene, always save it in
/calendar_ui/Assets/Scenes/
GameObjects are fairly static. In order to make them change/move/interactable, you have to write a C# script.
Always store new scripts in /calendar_ui/Assets/Scripts/
Each scene is going to have each of the following:
- Main Camera - The screen space that will be visible to the user.
- Canvas - A container to hold all the UI elements in the scene.
- Event System - How user input is handled. This will be added automatically when you add a canvas.
As you create a scene, add an entry for it on this page following the pattern of the entries below. List what it does and any comments/explanations you have for how you structured it. This will be super important for in case you get stuck. It will make it way easier for everyone else to help you.
Make sure your Game Aspect Ratio is set to 2880 x 1440.
Note: All scene functionality that involves communicating with the server will be taken care of in the protocol part. Don't worry about it yet for the Unity part.
The Login scene needs to be able to:
- Authenticate a user with the server
- Initiate change to
CalendarViewscene upon successful login - Initiate change to
CreateAccountscene if the user doesn't already have an account
The CreateAccount scene needs to be able to:
- Take user input for data necessary to create an account (see Database Page for what fields to include)
- Pass that data on to the server
- Return user to the login scene
The CalendarView scene needs to be able to:
- Get a user's data from the server
- Display that data to the user (see Database Page for what data to include)
- Initiate the change to the
EditEventscene when an event is selected to be edited - Initiate the change to the
EditEventscene when the user creates a new event - Initiate change to
Loginscene when the user logs out
The EditEvent scene needs to be able to:
- Get event data, if it exists
- Allow user to fill in/edit event data (see Database Page for what fields to include)
- Initiate the change to the
CalendarViewscene when the user finishes editing the event - Submit new event/new event data to server