Calculate procedural head bob offset for first-person cameras.
Generates vertical and horizontal oscillation based on walking speed. Creates a sense of footsteps and physical presence.
Accumulated time (grows each frame)
Current movement speed (units/sec)
Oscillation frequency in Hz. Default: 10
Maximum displacement. Default: 0.05
Head bob offset vector
let bobTime = 0;const movementSpeed = 5.0;const isMoving = true;if (isMoving) { bobTime += deltaTime * movementSpeed; const bob = calculateHeadBob(bobTime, movementSpeed, 12, 0.04); camera.position.add(bob);} Copy
let bobTime = 0;const movementSpeed = 5.0;const isMoving = true;if (isMoving) { bobTime += deltaTime * movementSpeed; const bob = calculateHeadBob(bobTime, movementSpeed, 12, 0.04); camera.position.add(bob);}
Calculate procedural head bob offset for first-person cameras.
Generates vertical and horizontal oscillation based on walking speed. Creates a sense of footsteps and physical presence.