Final Group Project
You have established a team and drafted your project idea. Now you will work together to implement your project! Don’t forget, be creative! This can easily be a portfolio project that you can add to your resume and put on your GitHub account. On finals week you will be expected to give a 15 minute discussion and demonstration of your group’s project in class. It is expected that each memeber of the team will talk during the presentation and comment on the aspects of the project that they worked on. You do NOT need to make slides or any other presentation materials as your running project will be sufficient.
In addition to the project and presentation, each group memeber will write a 500 word reflection paper (template will be provided) on the project.
Software Requirements
The final project is open ended, but does have general requirements:
- Presented in 3D
- Has a title screen/main menu
- Includes UI elements where appropriate
- Must support keyboard and mouse fully
- Support for gamepad controllers is only a nice to have and not required
- Includes a brief README.md document describing how to use your software
A few additional requirements have been added below for project subtypes. If you project does not fit in these categories, YOU MUST meet with the professor to discuss expectations.
Interactive Game
Your game must:
- Have win/lose conditions
- Features a well defined core gameplay loop and supporting mechanics
- What is the objective of the game?
- How do player interact with the game?
- Be able to return to the title screen to play again when win/lose condidtions are met
- UI Elements
- At the very least the title screen and Win/Lose indications
- If there is a score, timing, resource, or other important data the user needs on screen to play, then UI elements should be present for those as well
- Sound effects and music
- Reflect the time and number of people available for the assignment
- Is the gameplay loop well thought out?
- How does the experience change over time?
- What keeps people playing?
- What features supplement the core gameplay loop?
- Is it a “complete” game?
Your game must not:
- be an asset flip
- This involves copying existing projects/tutorials and changing models or making trivial adjustment and presenting it as your own work
- This is plagarism and will result in failing the assignment
- be an exact duplicate of an existing project or tutorial
- This is also plagarism and will result in failing the assignment
Data Visualization/Simulation
- Have logical controls to input values and manipulate the simulation
- Provide common interactive visualization options to explore the data
- Overview
- Filter and Zoom
- Details on demand
- UI elements to display relevant data to understand the values/information presented
- Support dynamic data loading
- Providing an input source of a cetain type of dataset
- Implements all necessary data processing/simulation functionality
- Reflect the time and number of people available for the assignment
- Does the presentation take advantage of the 3D environment?
- Is the data presentation unique?
- What is the added value to this method of viewing data?
- Do the interactive features provide clear and significant value?
Written Reflection Requirements
The written portion of the project will be done individually by each group memeber. The document will be no less than 500 words. You will discuss:
- Your SPECIFIC role and contribution to the project
- What went well during the project?
- Consider the development process and group team work as well as the project itself.
- What could have gone better during the project?
- Consider the development process and group team work as well as the project itself.
- What would you do differently?
- Consider the development process and group team work as well as the project itself.
- If you had more time to expand this project, what would you do?
- What did you learn from doing this project?
Implementation
If you use existing models, 3D assets, sound/music, etc. make sure the assets do not have commercial licenses. Look for royalty free or creative commons content. Your project will be hosted in GitHub on a private repository for you and your team members (and your professor of course).
How you implement your game, this is up to you…
Just follow the guidelines above. Remember to be distinct and be creative.
HAVE FUN!
Resources
Many assets for your game can be found by searching for Royalty Free Sounds/Audio.
Assets
Tutorials and Reference
We will not have time to cover all the features of Unity. This will require you to indentify reference materials online to help you work with some Unity components and features. Usually, if you know what you want to do, you can Google for ideas on how you might do it. Just keep in mind if you use a reference that creates a “complete” game, make sure that you are adapting the features described to your game. Don’t make an asset flip!
NOTE: I have not watched every video from every source and cannot speak to the quailty or content within the videoes. These are presented in hopes that they are both helpful to your project and content appropriate.
The list of resources below is far from exhaustive, but may be helpful:
Unity Official Tutorials
- Unity Hub! Yes, there are tutorials, starter projects and more right from within the Unity Hub launcher. Just click the “Learn” tab in the Unity Hub launcher.
- Unity Learn is (mostly) free content that you can access with the Unity account you created: https://learn.unity.com/
YouTube
- Brackeys has some good tutorials, but their YouTube channel was discontinued about a year ago. Some of the information does still apply to modern versions of Unity or you can reverse engineer a modern solution: https://www.youtube.com/c/Brackeys/videos
- iHeartGameDev has fewer, but more modern tutorials primarily featuring animation and movement tutorials: https://www.youtube.com/channel/UC9uqO0ei_zOHotEWfEj72mw
- A full playlist tutorial on how to create a third person shooter in unity: https://www.youtube.com/watch?v=FbM4CkqtOuA&list=PLzDRvYVwl53uyqhV7iRAPgoNxXh1nVCUs
- Unity 3D College has a bunch of videos. Some are about unity and provide tutorials, other are just random discussion on game development in general. The videos that seem most usefuly arethe Lego Ninjago Game (a Game Jam promoted by Lego). You can see how to get access to the assets and there are a few videos that might have some interesting mechanics. Most of these videos are long and assume some prior knowledge.
Free on O’Reilly
- [BOOK] Unity Game Development in 24 Hours, Sams Teach Yourself, 4th Edition - Just came out this month!
- [BOOK] Unity Game Development Cookbook - common things you might need in unit and how to do it
- [VIDEO] Unity Projects 2020: Twenty+ Mini Projects in Unity and C#
- [BOOK] Hands-On Unity 2021 Game Development: Second Edition - Information on a bunch of different Unity features from Animation to post processing visual effects while creating a complete game
Submissions
The group project code and README.md file will be on GitHub. Your 500 word reflection will be submitted via gitkeeper.
Grading
Assignments that are copies or asset flips of existing projects will receive a failing grade.
You will earn up to 150 points for this exercise, broken down as follows:
- 10 pts - Final project is functional
- 50 pts - Final project meets the Software Requirements listed above
- 20 pts - Final project demonstrates creativity
- 10 pts - README.md documentation is properly formatted markdown and provides sufficent detail to run and interact with the project
- 10 pts - Quality of presentation (assigned per team member)
- 20 pts - Quality of 500 word written reflection about the project (assigned per team memeber)
- 30 pts - Project contribution (assigned per team member)