Paws of Madness: Intro
- Capstone at RIT, worked with a team of seven people
- My main responsibilities were scheduling and production, but I assisted each group with different tasks.
Paws of Madness: Programming
- Gameplay:
- Meteors
- Portals
- Graphics:
- Skeletal Animation
- Deferred Rendering with Particles
- Audio:
- Lance modular engine
- Creating an engine level service and a game object level component
Paws of Madness: Meteors Design
By having meteors knock the player away vs killing them outright, we allowed the player multiple ways to interact with this obstacle.
Paws of Madness: Meteors Code
// Direction LEVector vForceVector = XMVectorSubtract(player->m_pAsset->GetLocation (),GetActor()->GetLocation()); float forceLength = XMVectorGetX(XMVector3Length(vForceVector)); float explosionMagnitude = (m_fRadius - forceLength) * m_fExplosionForce; if(explosionMagnitude < 0.0f) return VECTOR_ZERO; if(explosionMagnitude < m_fExplosionForce) explosionMagnitude = m_fExplosionForce; if(explosionMagnitude > m_fExplosionForce * 2.0f) explosionMagnitude = m_fExplosionForce * 2.0f; if(forceLength < 0.5f) { float randomValueX = 1.0f - (((float)rand() / (float)RAND_MAX) * 2.0f); float randomValueZ = 1.0f - (((float)rand() / (float)RAND_MAX) * 2.0f); vForceVector = XMVectorSet(randomValueX, XMVectorGetY(vForceVector), randomValueZ, 0.0f); } vForceVector = XMVector3Normalize(vForceVector) * explosionMagnitude; return vForceVector;
Paws of Madness: Demo