This was a team project for the USC CSCI538 Augmented, Virtual, and Mixed Reality course. Read more about the game on our website here.
- Michael Root
- Kishore Venkateshan
- Hsuan-Hau (Howard) Liu
- Darwin Mendyke
- Abhishek Bhatt
- Devashree Shirude
- Sarah Riaz
Gadgets are the objects from which our Rube Goldberg machine is built with. Each concrete Gadget such as BoxGadget, DominoGadget, BallGadget derive from the abstract Gadget class.
The Gadget class manages shared concerns such as transparency, solidification, and toggling between physics modes.
The GameManager manages the current mode of the game. It listens for user input to open the GadgetShelf.
Currently there are three modes.
-
Build Mode - The default mode in which the player can pick gadgets in the world for manipulation
-
Select Mode - The mode that is set when the GadgetShelf is visible
-
Draw Mode - The mode that is set when Draw/Path tooling is enabled
-
Delete Mode - Gadgets touched in delete mode are deleted from the scene.
A collection of Gadgets that have been inserted into the scene. The world also manages auto saving to a current save slot.
This guide is subject to change and is intended to only give a rough overview
- Create a prefab in the resources folder with the name of your gadget.
- Attach a YourGadget.cs file to your prefab. YourGadget.cs must extend the Gadget abstract class.
- Add the name of your gadget, which matches the name in the resources directory, to the GadgetInventory enum inside Gadget.cs.