Create a first person camera, it drives render3D.camera every frame
pos3D Vector3 optionalWhere the eye is, defaults to where the camera is now
yaw number optionalRadians around Y, defaults to the camera's
pitch number optionalRadians up from level, defaults to the camera's
const player = new FirstPersonCamera3D(vec3(0, 1.5, 5));
player.size3D = vec3(1); // bump into solid objects
player.collideAsSphere3D = true;
player.setCollision();
How far above its position the eye is, in its own space, so with a size3D the eye can
sit toward the top of the body instead of its middle; keep it under half the body's height, or the eye is
outside the body and sees through a ceiling it stands under
Move the way it looks, up and down included, instead of walking level
Speed of a jump in world units a frame, 0 for none; Space or gamepad button 0 jumps
while it stands on something, a height map, a voxel map, a mesh collider or a solid, see groundObject
Capture the mouse on a click, so looking needs no button held
How far a pixel of mouse movement turns the view
World units per frame at full speed
Which gamepad stick moves it, like the keys, 0 is usually the left one, -1 for none
Angle up from level, the mouse tilts it
Which gamepad stick looks around, 1 is usually the right one, -1 for none
Radians a second a stick pushed all the way turns the view
Angle around Y, the mouse turns it
Make this the camera that drives the view
Let go of the mouse and stop driving the camera
immediate boolean optional
Camera controls draw nothing
Taking over from another camera, it keeps its own eye
Read the mouse and keys and move, called automatically each frame
Put the camera at the eye, called by the camera plugin after the objects update
Move by velocity3D, and fall by render3D.gravity unless flying, called automatically each frame