Lab 5: Pathfinding and 3D Models

Theme : Medieval Pirate Ice Summer

Overview

In this lab, you will create your fifth game in Unity, incorporating 3D models, shaders, and pathfinding with NavMesh.

Planning

Plan a meeting with your team to discuss the design and structure of your game. During this meeting, you should develop a list of tasks, and assign people to work on those tasks, with deadlines for completion. I recommend using Google Docs or Trello to organize this task list.

Also, you should talk about your individual strengths and patterns of work, expectations for other team members, outside constraints from classes, activities, work, etc, and decide on conflict resolution techniques.

Github Practice

Take some time to practice using Github to share files with your new partners, following the Github and Unity setup pattern from Lab 1.

Task

Now, design a 3D game building on all the tools we have learned so far about Unity.

Your game should

  • incorporate at least one of the theme words listed above
  • be interesting for the user to play and require some skill
  • include multiple examples of
    • 3D mesh models with animations
    • GameObjects with assigned Scripts
    • Physics with RigidBodies, Collisions, and Triggers
    • Keyboard and Mouse input
    • NavMesh agents using pathfinding on a baked NavMesh
  • enhance the aesthetics with
    • Trails and Particle Systems
    • AudioSource sound effects
    • multiple Shaders made with Shader Graph applied through Materials
    • customization (avoiding the generic Unity font, dark-blue screen, and grey buttons)
  • use the GUI to display at a minimum
    • dialog for narrative without hiding important elements of the game
    • the status of the user graphically (inventory, health)
  • load multiple Scenes, including
    • a start menu scene
    • a how-to-play scene which explains to the User the input methods
    • a credit scene to list the asset sources and game designers
    • at least three levels of increasing difficulty

Your game should be interesting for the user to play, require some skill, and be playable for at least 5 minutes.

Your game needs to incorporate at least one of the theme words listed above.

Evaluation

Write an evaluation in the README.md document in your repository, which details

  • the name of your game
  • the intent of your game
  • narrative structure
  • mechanics
  • aesthetics
  • joys and struggles while writing this game
  • a listing of the attributions for your game assets (art, sounds, etc),
  • a paragraph discussing the contributions of each team member to the final game.

How to Hand In

  • Make sure your CanvasScaler has been set to Scale With Screen Size.
  • Be sure to set the compression to Disabled in the Player Settings.
  • Export your game as an HTML5 game using the Build Setting option under the File menu.
  • One of your team members should create an account on itch.io.
  • Zip the exported directory from Unity, and upload this to itch.io.
  • Include a cover image and a screenshot of the game.
  • Edit the Theme settings for the game to use a custom font and matching colors for your game.
  • Set the visibility to Restricted or Public (prefered).
  • Share with me the URL to your game on itch.io, and your Github repository.

Grading Specifications

A Complete lab will

  • be interesting to the user and require some skill
  • be playable for at least 5 minutes
  • have a cohesive aesthetic feel
  • incorporate at least one of the theme words listed above
  • use all of the listed Task requirements
  • include a complete evaluation document
  • be correctly posted on itch.io
  • contain significant and regular contributions on Github from your account

A Partially Complete lab will

  • incorporate at least one of the theme words listed above
  • use most of the listed Task requirements
  • include an evaluation document
  • be posted on itch.io
  • contain multiple contributions on Github from your account