Hear No Evil, See No Evil

A 3rd person film noir stealth game.

Chris Clarke | Eric Thorndyke | Johnathan Baird | Kevin Le | Lana Hodzic

Details

First room of Hear No Evil, See No Evil

Hear no Evil, See No Evil is visually and thematically styled after film noir from the 1940s. The protagonist is a rough--from the streets detective with a heart of gold, searching for clues to solve his toughest case yet; the disappearance of his ex-wife's brother, Marvin, has lead our hero into the depths of danger. Following the trail of clues so far, our hero has found his way into an abandoned warehouse swarming with members of the notorious BlockTillo family. He now has to use all of his street smarts to solve the case and get out alive.

Game Controls

  • W - Move forward
  • S - Move backward
  • A - Strafe left
  • D - Strafe right
  • Q - Lean left
  • E - Lean right
  • I - Zoom in
  • O - Zoom out
  • Up Arrow - Increase mouse sensitivity
  • Down Arrow - Decrease mouse sensitivity
  • ESC - Close window
  • Shift - Sprint
  • Control - Toggle crouch
  • Shift + H - Skip intro scene
  • Shift + B - Toggle bounding boxes and ray casts
  • Shift + N - Toggle debug camera

Gameplay

The goal of the game is to collect magnifying glasses (ingame clues and story elements), ultimately leading to the final crime scene at the end of the level. The player must avoid being detected by guards placed throughout the level. Guards can detect the player by casting rays to the points of the player's bounding box; if the guard detects the player then the player's detection level rises. When the detection level reaches 50%, guards will lock their vision on the player until the player seeks cover. The detection level is visually represented through a greyscaling effect and a detection meter (bar at the top of the screen). The speed at which the detection level rises is based on nearby lights and proximity to guards. The player must use in-game objects to avoid detection, some of which are pushable using the sprint mechanic.



Clue checkpoint

Detected by a guard

Ending scene

Technologies

  • 3rd person camera with collision detection and free movement
  • Rigid body character motion
  • 3D uniform spatial datastructure (x, y, z spatial queries)
  • Shadow maps
  • View frustum culling based on approximate view + simplified occlusion culling for guard detection
  • Deferred shading
  • Color Map

    Position Map

    Normal Map

    Final Shading

3rd Party Libraries

  • GLFW 3.0
  • GLAD
  • OpenGL 2.1
  • irrKlang
  • ImGui

References

Thanks for reading!

Hear No Evil, See No Evil