Cleanup updateCameraDirection and fix random input not working

Potential minor conflicts with #1826