Players report that their character sometimes falls through the floor. How do you investigate and fix it?
What the interviewer wants to hear
- Reproduce: find where and when, check frame rate and speed
- Check for tunnelling from high speed or large timesteps; use continuous detection
- Look for code moving the transform directly instead of the rigidbody or character controller
- Check collider gaps, thin colliders and mesh collider issues
- Add safety: ground checks, kill planes and respawn, logs or telemetry
Model answer
First I try to reproduce it, using player reports or telemetry to find where and when it happens and whether it relates to low frame rate, high speed or a specific action like dashing or loading. Then I check the common causes. Tunnelling happens when the character moves further than the floor thickness in one step, so I check speed, enable continuous collision detection or use a capsule cast for movement. Teleporting the transform directly instead of moving through the rigidbody or CharacterController can skip collision completely. I also inspect the level geometry for gaps between floor colliders, very thin colliders or broken mesh colliders. Finally I add a safety net, such as a kill volume under the level that respawns the player, and log the position when it triggers to find remaining spots.
Can you answer it under time pressure?
Take a timed medium round and get scored on every answer.
More medium Game Developer questions
- Your game runs at 40 FPS but must hit 60 FPS. How do you find and fix the problem?
- How would you design a save game system?
- How would you build the AI for an enemy guard that patrols, notices the player, chases and attacks?
- How would you choose between Unity, Unreal and Godot for a new project?
- How do you make game systems easy for designers to tune without changing code?
- How would you build a third-person camera that follows the player smoothly and does not clip through walls?
- How would you design input handling that supports keyboard, gamepad and touch, plus key rebinding?
- How would you procedurally generate dungeon levels that are always playable?
- Describe how you would design a reusable object pool and what trade-offs it has.