Kart Part Park

Overview, Features, Manual, Downloads

Demo

Overview

Kart Part Park (working title) is a 3D game where the player, represented by a wooden toy car, explores and to tries to collect the best parts possible to enhance the capabilities of their kart. These parts can range from wings that allow you to glide for periods of time, to rocket packs that allow you speed past your opponents (or ram into them if they so choose). The main concept of Kart Part Park is exploration. The parts will be hidden in castles, on top of roofs, up mountains, etc. and each part will apply a satisfying or funny affect to the players kart. The player will control the kart through a peripheral controller, plugged in via USB.

Bryan Bell

Environment

The "park" as it were, is actually a blur between a child's bedroom and a mountainous region populated by a small kingdom/city. We wanted to have a somewhat imaginative world, one that embodies how we once imagined our block cities and towers. Large structures such as houses, towers, and castles are made of toy blocks, cardboard, and fabric. The ground is a ruffled blanket upon which the player, represented by a toy car, can drive around. As the player looks into the distance, they can see the line between the mountain range and the walls of the room blur.

We will use any models we can find online, and any we can't we will make, hopefully with the help of some modeling students. We have a decent enough background in blender between us, so we can make some simplistic models to fill the gaps.

Character

The character in KPP is a small wooden toy car. Its model will be very simple and box like, both to make collision detection easier, and to make application of kart modifications simpler. Its movement will be very similar to other kart racers, with a somewhat simple control scheme; the camera will be controlled by one joystick and the speed will be controlled by the other. The car will always turn toward the direction the camera is facing. A combination of values modified by the addons attached to the kart will determine the way the car handles. While most components will affect basic stats such as handling, top speed, and acceleration, some will have more drastic effects, such as allowing the car to glide or jump. These more pronounced abilities will utilize an energy meter displayed in the bottom left corner of the screen. For example: a speed boost ability would drain the meter as the player used it, or a jumping ability would drain the meter each time it was used.

Bryan Bell
Bryan Bell

Goal

Our hope is to have a challenge at the end of the round that tests the capabilities of the kart, such as a race. However, because we want to focus on exploration and kart modifications, we may simply assign a point value to kart modifications which would sum to a total score that will be used to determine the top player at the end of the round.

Special Effects

The coolest effects in our game will come from the visible changes to the kart. As players accrue parts they will be attached based on relative-to-kart location information given by the part. This will hopefully result in wildly different karts between playthroughs, and give the player reason to continue playing. Our objects will both be texture mapped and normal mapped, allowing to show in greater detail their "home made" look and feel. We are also lucky enough to have particle effects knowledge amongst us, so we would like to include particle effects off the kart as it moves depending upon it's speed or it's modification state.

Bryan Bell
Bryan Bell

One Cool Thing

Our game will feature split screen multiplayer using glScissors to define multiple viewports for drawing. This will present interesting graphical challenges in optimization, because functionally, everything will be rendered twice. We will also be implementing a usb controller based input scheme, the windowing system that we're using allows us to do this somewhat simply.

References

  • vfc - http://www.racer.nl/reference/vfc_markmorley.htm
  • skybox - http://www.nevyn.nu/sp/SkyboxAndAnimatedTextureTutorial.pdf
  • font - http://www.dafont.com/comicate.font
  • physics equations - wikipedia
  • object loader - http://www.kixor.net/dev/objloader/
  • everything else - "Real-time rendering" Tomas Akenine-Moller and Eric Hanes