IMPULSE ARENA

Impulse Arena is a two player arena shooter game using PhysX for game mechanics and the SDL cross platform library for windowing and sound as well as Xbox controller input. The objective of Impulse Arena is to shoot or knock your opponent off of the arena. As you are shot, you accumulate damage, amplifying the force of your opponent's attacks on you. The first player to knock their opponent out of the arena 5 times wins.

The volume on the video is very low, but we promise: it's there.

Controls

Xbox controllers only.

Left thumbstick moves your character forwards, backwards, left and right.

Right thumbstick rotates you character.

Right trigger fires a shot.

A-button makes your character jump.

B-button performs a short ranged but powerful attack.

Technologies:

A fully contactable environment supported by PhysX and randomized at the beginning of each game.

Hit-scan shooting: shots have no travel time and will push their targets tangentially from the point of impact.

Shadow maps for our environment that help players more easily judge distances.

Imported models to give the game a unique look and feel.

A uniform spacial data structure is written in, but not necessary with the flexible functionality of PhysX.

View frustum culling to keep unseen polygons from being rendered, improving frame rate.

A custom pixel shader to provide an intense on-hit effect when a player is being shot.

A HUD with text made using FreeType to inform the player of his or her current damage and remaining lives.

Split screen play for fun with friends.

Textures and a skybox to give life to our arena.

Xbox controller input to provide a comfortable control scheme for multiple players.

Character stretch along the axis of motion to emphasize high speeds.

References (From what we can remember)

http://www.opengl-tutorial.org/ - A great reference for pretty much everything, but we mostly used it for model loading.

http://www8.cs.umu.se/kurser/5DV051/HT12/lab/plane_extraction.pdf - A very informative explanation of view plane extraction for view frustum culling.

And, of course, class lecture notes and sample programs provided by our wonderful professor.