EvilEngine/CAM: Difference between revisions
Content added Content deleted
Battlepedia>Seil (→Format) |
Battlepedia>Seil (→Format) |
||
Line 11: | Line 11: | ||
{| class="wikitable" |
{| class="wikitable" |
||
! Offset !! Type |
! Offset !! Type !! Description |
||
|- |
|- |
||
| 0x8 || [[Vector3]] || ''' |
| 0x8 || [[Vector3]] || '''Position''' |
||
|- |
|- |
||
| 0x14 || [[Vector3]] || ''' |
| 0x14 || [[Vector3]] || '''Normalized forward vector''' |
||
|- |
|- |
||
| 0x20 || [[Vector3]] || ''' |
| 0x20 || [[Vector3]] || '''Normalized up vector''' |
||
|- |
|- |
||
| 0x2C || [[Vector3]] || ''' |
| 0x2C || [[Vector3]] || '''Normalized left vector''' |
||
|- |
|- |
||
| 0x38 || [[Vector3]] || ''' |
| 0x38 || [[Vector3]] || '''View Offset''' |
||
|- |
|- |
||
| 0x44 || short || ''' |
| 0x44 || short || '''Offset Start Frames''' - usually 30 |
||
|- |
|- |
||
| 0x46 || short || ''' |
| 0x46 || short || '''Offset End Frames''' - usually 45 |
||
|- |
|- |
||
| 0x48 || float || ''' |
| 0x48 || float || '''FOV''' - (degrees) |
||
|- |
|- |
||
| 0x4C || float || ''' |
| 0x4C || float || '''Transition Time''' - (seconds) Time it takes to move the camera to this position. |
||
|- |
|- |
||
| 0x50 || int |
| 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 || int || ''' |
| 0x54 || unsigned int || '''Flags''' - usually 0 |
||
|- |
|- |
||
| 0x58 || float |
| 0x58 || float || '''Fade Up''' - usually 0 |
||
|- |
|- |
||
| 0x5C || float |
| 0x5C || float || '''Fade Down''' - usually 0 |
||
|- |
|- |
||
! colspan="3" | Follow only |
|||
| 0x60 || float[6] || '''cam_follow'''<br>'''cam_shoulder'''<br>'''cam_static'''<br>'''cam_path'''<br>'''cam_staticFollow''' || ??? |
|||
|- |
|- |
||
| |
| 0x60 || float || '''Rotation''' |
||
⚫ | |||
| 0x64 || float || '''Distance''' |
|||
|- |
|||
| 0x68 || float || '''Height''' |
|||
|- |
|||
| 0x6C || float || '''Rubber Band''' |
|||
|- |
|||
| 0x70 || float || '''Start Speed''' |
|||
|- |
|||
| 0x74 || float || '''End Speed''' |
|||
|- |
|||
! colspan="3" | Shoulder only |
|||
|- |
|||
| 0x60 || float || '''Distance''' |
|||
|- |
|||
| 0x64 || float || '''Height''' |
|||
|- |
|||
| 0x68 || float || '''Realign Speed''' |
|||
|- |
|||
| 0x6C || float || '''Realign Delay''' |
|||
|- |
|||
| 0x70 || byte[0x8] || null |
|||
|- |
|||
! colspan="3" | Static only |
|||
|- |
|||
| 0x60 || unsigned int || '''Unused''' - yes this is actually called "unused" |
|||
|- |
|||
| 0x64 || byte[0x14] || null |
|||
|- |
|||
! colspan="3" | Path only |
|||
|- |
|||
| 0x60 || unsigned int || '''[[Asset ID]]''' |
|||
|- |
|||
| 0x64 || float || '''Time End''' |
|||
|- |
|||
| 0x64 || float || '''Time Delay''' |
|||
|- |
|||
| 0x68 || byte[0x10] || null |
|||
|- |
|||
! colspan="3" | Static Follow only |
|||
|- |
|||
| 0x60 || float || '''Rubber Band''' |
|||
|- |
|||
| 0x64 || byte[0x14] || null |
|||
|- |
|||
! colspan="3" | |
|||
|- |
|||
| 0x78 || unsigned int || '''Valid Flags''' |
|||
* byte 1 usually 0 |
* byte 1 usually 0 |
||
* byte 2 usually 1 |
* byte 2 usually 1 |
||
Line 47: | Line 105: | ||
* byte 4 usually 0x8F (143) or 0xC0 (192) |
* byte 4 usually 0x8F (143) or 0xC0 (192) |
||
|- |
|- |
||
| 0x7C || [[AssetID]] |
| 0x7C || [[AssetID]][2] || '''[[MRKR|Marker]] IDs''' - usually both null |
||
⚫ | |||
| 0x80 || ? || unknown || padding? usually null |
|||
|- |
|- |
||
| 0x84 || byte || ''' |
| 0x84 || byte || '''Cam Type''' - usually 0, 2, or 3 |
||
* 0 - Follow |
|||
* 1 - Shoulder |
|||
* 2 - Static |
|||
* 3 - Path |
|||
* 4 - Static Follow |
|||
|- |
|- |
||
| 0x85 || byte[3] || |
| 0x85 || byte[3] || Padding (always 0) |
||
|- |
|- |
||
! colspan="3" | Events |
! colspan="3" | Events |
Revision as of 01:21, 1 May 2019
CAM | |
---|---|
Camera | |
Type | Object |
Games used | The Incredibles |
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
|
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
|
0x7C | AssetID[2] | Marker IDs - usually both null |
0x84 | byte | Cam Type - usually 0, 2, or 3
|
0x85 | byte[3] | Padding (always 0) |
Events | ||
0x88 | Event[numberOfEvents] | Events |