Friday, 15 August 2014

C++, DirectX

Street Cruiser

Street cruiser is a third person shooter game. The game uses nVIDIA PhysX Engine for handling advanced physics with destructible environment. The game features large open environments to explore. It consists of two cities with large number of detailed buildings.

Graphics
  • Deferred Rendering
  • Realtime Global Illumination (single bounce) using Reflective Shadow Maps
  • Cascaded PCF Shadow Maps
  • Screen Space Ambient Occlusion
  • Large Open Environment
  • Normal, Specular and Alpha Mapping
  • Dynamic Water Reflections
  • Two Level Of Detail System
  • Alpha Transition between various LODs to prevent popping effect
  • Terrain Mullti-texturing
  • Water rendering featuring shore blending with foam texture and realtime reflection with animated normal maps

AI

  • Vehicle Waypoint Navigation
  • Collision Avoidance With Dynamic and Static objects
  • Vehicle Spawning near to player
  • Realistic steering behaviour
  • Beizer Curve between waypoints

Others

  • Uses nVIDIA PhysX Engine
  • Destructible Environment
  • GPU Skinning
  • Attachment of various objects to players' body parts, like weapons attached to hands
  • Player can travel in the city either through cars or metro trains
  • Uses FMOD Music and Sound Effects System for playing various sound effects
  • Traffic Light System
  • Efficient frustum culling

Level Creation

The whole level was designed and textured in Autodesk 3Ds MAX 2010 and models were exported in DirectX (.X) file format. Vehicle models were downloaded from various free websites and were textured by me. Textures were downloaded from www.cgtextures.com and some textures were prepared using Adobe Photoshop.


Screenshots

Realtime Global Illumination




















Other Screenshots





Water Shore Blending