Tiny Planet
Leia Chang, Bridget Winn, Mattea Cavagnaro
Tiny Planet is an exploration and collection game. You are an interplanetary being who lives on a small planet, and you have a significant other. It's your anniversary! Congratulations! Your bae is on her way to visit, so you must collect items to impress her before time runs out. Log achievements along the way.
Demo
User Guide |
W |
Move forward |
A |
Move backward |
S |
Rotate left |
D |
Rotate right |
Q |
Strafe left |
E |
Strafe right |
Z |
Zoom in/out |
Technologies
Leia
- Camera with Free Movement
- Fixed the camera in place
- Spun the world using time based movement
- Camera tracks the height of the player
- Complex Environment
- Includes multiple shape loading and rendering tehnology
- Randomly generated in spherical coordinates around the planet
Mattea
- Collision Detection
- Axis Aligned Bounding Boxes
- Collision detection between the character and objects spawned in the world
- Shadow Mapping
- Used a depth map to render shadows
- Applied rotation, scaling, and transformation to the shadows to render them on the spherical world
- Sophisticated HUD
- ImGui text rendering: placement and content
- Quad-based image rendering on a plane on the screen
- Integrated gameplay logic into the HUD
Bridget
- View Frustum Culling
- To overcome stationary camera, computed hypothetical positions of objects as if they had come into view
- Culled objects based on their hypothetical positions
- Rendering Techniques
- Implemented Cook Torrance BRDF with multiple lights and color scheme
- Added atmosphere effect that appears during zoom-out
- Made the world look pretty when you zoom out
- Object Heights
- Created rays from the origin towards every static object placed on the world
- Found heights for every static object based on ray/triangle intersections
- Updated character height during movement
Resources