CAM

From Battlepedia
Jump to navigationJump to search
CAM
Camera
Type Object
Object ID 0x07
Games used Night of 100 Frights
Battle for Bikini Bottom
The SpongeBob SquarePants Movie
The Incredibles
Rise of the Underminer

This asset defines cameras. Usually, the game takes control from you to display a certain camera for a moment, such as when talking to NPCs or showing you something elsewhere in the level.

Format

Cameras are object assets, so they start with their 0x8 byte header, then are followed by:

Offset Type Description
0x8 Vector3 Position
0x14 Vector3 Normalized forward vector
0x20 Vector3 Normalized up vector
0x2C Vector3 Normalized left vector
0x38 Vector3 View Offset
0x44 short Offset Start Frames - usually 30
0x46 short Offset End Frames - usually 45
0x48 float FOV - (degrees)
0x4C float Transition Time - (seconds) Time it takes to move the camera to this position.
0x50 int Transition Type - usually 0, 1, 2, 5, or 6
  • 0 - None
  • 1 - Interp1
  • 2 - Interp2
  • 3 - Interp3
  • 4 - Interp4
  • 5 - Linear
  • 6 - Interp1Rev
  • 7 - Interp2Rev
  • 8 - Interp3Rev
  • 9 - Interp4Rev
0x54 unsigned int Flags - usually 0
0x58 float Fade Up - usually 0
0x5C float Fade Down - usually 0
Follow only
0x60 float Rotation
0x64 float Distance
0x68 float Height
0x6C float Rubber Band
0x70 float Start Speed
0x74 float End Speed
Shoulder only
0x60 float Distance
0x64 float Height
0x68 float Realign Speed
0x6C float Realign Delay
0x70 byte[0x8] null
Static only
0x60 unsigned int Unused - yes this is actually called "unused"
0x64 byte[0x14] null
Path only
0x60 unsigned int Asset ID
0x64 float Time End
0x64 float Time Delay
0x68 byte[0x10] null
Static Follow only
0x60 float Rubber Band
0x64 byte[0x14] null
0x78 unsigned int Valid Flags
  • byte 1 usually 0
  • byte 2 usually 1
  • byte 3 usually 1
  • byte 4 usually 0x8F (143) or 0xC0 (192)
0x7C AssetID[2] Marker IDs - usually both null
0x84 byte Cam Type - usually 0, 2, or 3
  • 0 - Follow
  • 1 - Shoulder
  • 2 - Static
  • 3 - Path
  • 4 - Static Follow
0x85 byte[3] Padding (always 0)
Events
0x88 Event[numberOfEvents] Events

Events