CAMSHOT
Class:
Camshot.oad
The Camera Shot object is used to describe a single camera view in the game. Multiple
ObjectCamShot's can be used to provide changing camera angles. There is a global mailbox which controls which
ObjectCamShot is currently used,
ObjectCamShot selection is usually done with
ObjectActBoxOR's, but it can also be done from a script.
Target:
This is the object that the camera is pointed toward.
This is normally a target class object.
Follow:
The follow object is the "stand-in" for the Track object, and sets the relation of the camera/target pair to the track object.. Normally this is the Player character. Using a stand in allows for multiple camshots to be defined without having to use a specific "real" object as the focus.
Track Object Mailbox:
If the value of this Mailbox equals 0 then the camera will track the object defined in the Track Object box (see below).
If the value is not equal to 0, camera will read the mailbox number indicated, and use the result as an Object reference. The camera will then track that object.
This feature is only used in special cases such as changing the object being tracked dynamically during gameplay. It is also the only way to track a generated object.
Track Object:
This is the object in the Gameworld that the Camera is relative to.
Notes:
Track Object Mailbox (above) must equal 0, otherwise the track object is ignored.
FOV:
This is this camera's Field of View.
Notes:
Another more common description for Field of View is Zoom.
A smaller field of view is zoomed in, a larger field of view is zoomed out.
Extreme zoom values distort the images. "Fish eyed lenses" and other effects are often seen in movies.
Roll:
The degree of rotation around the X access from 0.
Rotation:
Fixed:
When the track object rotates the camera will not rotate with the object.
Track:
When the track object rotates, the camera will rotate with it, maintaining a constant distance. This can be used to create an over the shoulder camera.
Position X,Y,Z:
Absolute:
When the track object moves in this direction the camera will not follow the object.
Relative:
When the track object moves in this direction the camera will move in that direction relative to the object.
Pan Time in Seconds:
en the camera is handed off from one Camshot object to another, this is the amount of time that it will take the camera to pan to this Camshot's angle.
Clipping Planes:
Hither:
This defines the distance from the camera where the Gameworld begins to render.
Yon:
This defines the distance beyond which the Gameworld will no longer be rendered.
Example
The Devious Designer has created an elevator and wants to set up two cameras to make it look cool.
The first camera will sit underneath the elevator and watch it as it slides upward.
The Camera will then cut to a side view and follow Playman as he rides up to his final destination.
We're assuming that everything but the Camera is already set up.
He creates his Camera object as a box and names it Camera10. He then assigns it a class of Camshot.
-
- Target Since this is the tenth camera used in this level the target object's name will be Target10.
- Follow Keeping with his naming conventions this is set to Follow 10
- Track Object Mailbox This value remains 0.
- Track Object Since this first camera is fixed this value can be almost anything, but in this case we'll use Playman.
- FOV This value can be left at it' default, although you could also create a forced perspective effect if you wanted too.
- Roll No roll needed, 0 degrees is fine.
- Rotation Fixed
- Position X,Y,Z Absolute for all values
- Pan Time in Seconds We want a cut, so this value is set to 0.
- Clipping Planes Hither Yon Both of these can be left at their defaults. Now we set up the second camera. We'll call it Camera11.
- Target Target11
- Follow Follow 11
- Track Object Mailbox 0 (there is a bug in the new markup which gets confused by only an indented 0)
- Track Object This time we need to track Playman.
- FOV Default
- Roll 0 degrees
- Rotation Fixed
- Position X,Y,Z The camera is moving upward with Playman, so Y will have to be Relative. X and Z could be either depending on how we want things to look. Let's assume we don't want to be trying to track Playman in such a small space, so we'll set those values to Absolute
- Pan Time in Seconds: A pan might look good here, so this value is set to 1.
- Clipping Planes
- Hither
- Yon Both of these can be left at their defaults unless the Designer finds that there are clipping problems inside the elevator. He won't be able to tell until he actually runs the game.