Group project to implement a 3D game covering several standard game technologies.
Thrust into a world of sentient, pun-filled vegetables and fungi, you explore a little vegetable town through the eyes of a humble, yet courageous, carrot. Upon entering the village, you immediately hear of the Mushroom King’s Tournament, a chance to prove yourself to your friends, to your neighbors, and best of all to that Mushroom that used to take your lunch money. The rules are simple: defeat five fungal foes in ferocious combat, and if you survive, battle the King himself for the ultimate title of King. Do you have what it takes to preside over your homeland as the new King Karrot?
Drawing its roots from Nintendo’s Paper Mario: The Thousand-Year Door, VitalK employs turn-based combat but in a more complex three-dimensional environment. The team behind VitalK sought to accomplish a similar off-the-beaten-path and unique feel via in-game humor, an imaginative setting, and a cool cell-shaded cartoony style.
The player moves around using the conventional WASD and looks around using the mouse as a standard, over-the-shoulder camera. When the player approaches other Carrots and non-enemies the player can press E to interact with them (see dialog). To commence battle with a Mushroom, simply walk into one and combat will begin. Once in combat the player precisely times an E keystroke in tandem with the sliding Heart and Start icons (at the bottom of the screen) so that the icons are overlapping when E is pressed. Upon a successful hit, health will be lowered and littles stars will fly around the screen.
- Space Partitioning using an Octree implementation (for physics)
- Skinning models and a Maya integration
- Level of Detail for terrain
- Deferred Shading (see battle scene)
- View Frustum Culling
- Shadow Mapping
- Environment Mapping
Works and Tutorials
- Octree implementation guide: Eric Nevala, “Introduction to Octrees” www.gamedev.net (link)
- View Frustum guide: “View Furstum Culling” lighthouse3d.com (link)
- Plane Extraction for view frustum culling: Grib and Hartmann, “Fast Extraction of Viewing Frustum Planes from the World-View-Projection Matrix”, www.gamedevs.org (link)
- Freetype integration starting point: “OpenGL Programming/Modern OpenGL Tutorial Text Rendering 02”, wikibooks.org (link)
- Shadow mapping in OpenGL: “Tutorial 16: Shadow mapping”, www.opengl-tutorial.org (link)
- FMOD usage: looked over c++ examples provided from their “lowlevel” “programmer API packages (link)