I have a 3D scene and you want to offer an API to control the camera. The camera is currently described by its position, the look is at a point in the scene somewhere along the z axis of the frame of the reference frame, an "up" vector describing the axis of the frame of the reference frame and the field of view. I would like to provide at least the following operations:
Two-dimensional operations (drag and drop or arrow keys)
- Hold the viewpoint and rotate the camera around it. It may also seem like a turning object, with a point of view describing its center. I think at some point I heard it described as a camera “spinning around” around the center of the stage.
- Keep the position of the camera and rotate the camera around this point. In short, I would call it "looking back." With a movie camera, this could possibly be called panning and tilting, but in 3d modeling, “panning” is usually something else, see below. Using the main directions of aircraft, this will be the movement of the swing and yaw of the camera.
- Moving the camera position and the search point in parallel. It can also mean moving the object parallel to the viewing plane. As far as I know, this is commonly called "panning" in the context of 3D modeling.
One-dimensional operations (e.g. mouse wheel)
- Keep a point of view and bring the camera closer to this, taking into account this factor. Perhaps this is what most people consider “zoom,” with the exception of those who know about real cameras, see below.
- , . "" : , .
- , . , , -. 2d , . "", , , .
- , , . , , , .
- z . , . .
, ? , - API?