Difference between revisions of "Camera Creation Guide"
Jump to navigation
Jump to search
Line 11: | Line 11: | ||
* '''PRACTICALLY REQUIRED''' to set these properties true to behave properly: | * '''PRACTICALLY REQUIRED''' to set these properties true to behave properly: | ||
* '''UndoOnTriggerRevert''' - Properly registers this camera on the push/pop stack. | * '''UndoOnTriggerRevert''' - Properly registers this camera on the push/pop stack. | ||
+ | :Indented line | ||
Reverts to the last camera when exiting the trigger volume (if still an active candidate, otherwise returns to default. | Reverts to the last camera when exiting the trigger volume (if still an active candidate, otherwise returns to default. | ||
* This allows having specialized camera trigger zones inside other camera trigger zones. | * This allows having specialized camera trigger zones inside other camera trigger zones. | ||
Line 18: | Line 19: | ||
* If there is a gap too far apart, you will often see it try to transition back to default camera. | * If there is a gap too far apart, you will often see it try to transition back to default camera. | ||
* They can slightly overlap with other camera trigger volumes, since CreateSkin helps account for this. | * They can slightly overlap with other camera trigger volumes, since CreateSkin helps account for this. | ||
− | * You can use PriorityLevel in CameraObject to prevent lesser cameras from usurping more important ones. | + | * You can use PriorityLevel in '''CameraObject''' to prevent lesser cameras from usurping more important ones. |
* 0 is default, higher is more important. | * 0 is default, higher is more important. | ||
− | + | Manually Trigger a Camera Event | |
− | * Set Camera Trigger Event | + | * '''Set Camera''' Trigger Event |
− | * The difference between this and | + | * The biggest difference between this and camera volumes is that you do NOT use '''UndoOnTriggerRevert'''. |
− | * This makes the camera override event last only as long until another override camera is set. | + | * This makes the camera override event last only as long until another override camera or volume is set. |
== Camera Modes == | == Camera Modes == | ||
Line 31: | Line 32: | ||
* FixedAngle | * FixedAngle | ||
* The camera will try to stay a set distance from Octodad, in a specific direction (based on rotation of CameraObject in editor) | * The camera will try to stay a set distance from Octodad, in a specific direction (based on rotation of CameraObject in editor) | ||
− | * Spline - Based on Octodad's position along 2 PathObjects (with time values 0 and 1), | + | * Spline - Based on Octodad's position along 2 '''PathObjects''' (with time values 0 and 1), |
− | * move the camera along the spline generated by SplineObjects (ordered by time value, from 0 to 1, multiple is allowed). | + | * move the camera along the spline generated by '''SplineObjects''' (ordered by time value, from 0 to 1, multiple is allowed). |
* Movement corresponds to time value on both. | * Movement corresponds to time value on both. | ||
Line 41: | Line 42: | ||
== PhysicsObject Interaction == | == PhysicsObject Interaction == | ||
− | The camera will try to clip in front of any static object by default. Walls, chests, furniture, may all need properties adjusted. | + | The camera will try to clip in front of any '''static''' object by default. Walls, chests, furniture, may all need properties adjusted. |
− | You can prevent this by setting the ClipObject property to false. | + | You can prevent this by setting the '''ClipObject''' property to false. |
− | This will enable ClipTransparent to appear. | + | This will enable '''ClipTransparent''' to appear. |
Setting this to true will have the object fade out if it's between Octodad and the camera. | Setting this to true will have the object fade out if it's between Octodad and the camera. |
Latest revision as of 20:10, 23 November 2013
Camera Use Cases Breakdown
- Default Camera
- Default camera is supplied when no override camera is active.
- Legs camera allows A/D to move the camera around left & right.
- Arms camera will zoom in to provide a closer view.
CameraTriggerVolume
- Set Camera Trigger Event
- Currently is a part of TriggerObject, could be spun into it's own object in the future.
- Indented line
- PRACTICALLY REQUIRED to set these properties true to behave properly:
- UndoOnTriggerRevert - Properly registers this camera on the push/pop stack.
- Indented line
Reverts to the last camera when exiting the trigger volume (if still an active candidate, otherwise returns to default.
- This allows having specialized camera trigger zones inside other camera trigger zones.
- CreateSkin - Expands the size of the trigger on condition met (collision).
- This reduces oscillating between two camera trigger volumes.
- For best results, trigger zones must fill all traversable areas.
- If there is a gap too far apart, you will often see it try to transition back to default camera.
- They can slightly overlap with other camera trigger volumes, since CreateSkin helps account for this.
- You can use PriorityLevel in CameraObject to prevent lesser cameras from usurping more important ones.
- 0 is default, higher is more important.
Manually Trigger a Camera Event
- Set Camera Trigger Event
- The biggest difference between this and camera volumes is that you do NOT use UndoOnTriggerRevert.
- This makes the camera override event last only as long until another override camera or volume is set.
Camera Modes
- Stationary
- Camera does not move and is in the absolute position of the CameraObject in editor.
- FixedAngle
- The camera will try to stay a set distance from Octodad, in a specific direction (based on rotation of CameraObject in editor)
- Spline - Based on Octodad's position along 2 PathObjects (with time values 0 and 1),
- move the camera along the spline generated by SplineObjects (ordered by time value, from 0 to 1, multiple is allowed).
- Movement corresponds to time value on both.
Camera Targets
- Default - direction it is pointing in editor.
- Octodad - at Octodad.
- Object - at Object, specified by ID.
PhysicsObject Interaction
The camera will try to clip in front of any static object by default. Walls, chests, furniture, may all need properties adjusted.
You can prevent this by setting the ClipObject property to false. This will enable ClipTransparent to appear. Setting this to true will have the object fade out if it's between Octodad and the camera.