Project Seven

3D First Person Precision Shooter


Overcome cutting edge robots using your experimental pinpoint accurate railgun to escape from a research facility!

Project Details

  • 10 weeks, half time
  • 12 people (4 programmers, 4 artists, 2 technical artists, 2 level designers)
  • Created with our own engine
  • C++
  • 3rd Party Libraries: DirectX 11, PhysX, FMOD, RapidJSON, Lua C API

My Contributions

Player Movement & Features

  • Accelerating and deaccelerating velocity
  • Moving PhysX character controller
  • Added the following movement features
    • Walking
    • Jumping
    • Crouching
  • Implemented zooming/scoping by changing the FoV.

PhysX Implementation

  • Simulating PhysX at a fixed timestep of 60 fps.
    • Multiple simulations per frame if the game runs slower than 60 fps.
  • Added the following features:
    • Character Controllers
    • Triggers
    • Raycast and Sweep scene queries
    • Collision and trigger callbacks
    • Box and Sphere Colliders
    • Used the PhysX cooking library to cook Mesh Colliders from FBX data.
    • Collision layers/filtering to optimize collision checks and perform scene queries in only specific layers.
    • AddForceAtPosition function for shooting around dynamic objects in the world
  • Wrapped all this in a layer that the game code communicates with to ensure modularity.


Blinking Shader for Important Objects

Lighting up Emissive on Weapon When Shooting

Health Pickups

  • Loaded from JSON exported from Unity
  • Wrote the trigger callback that adds health to the player.

UI Loading and HUD functionality

  • Wrote a general UI Loader that I use for both loading menus and in-game HUD.
  • Wrote functionality for dynamic HUD.
    • Showing and blinking the reload prompt when out of ammo.
    • Updating the health bar shader with values from the player.
    • Changing health bar color to red when the player is low on health.


Below is a list of links to the students with whom I developed all the projects in the second grade with. They are amazing to work with and I recommend them all!

Click Here to Go to My Group's Facebook Page


Download From IndieDB Here
Project Seven