EvilEngine/FLY: Difference between revisions
Content added Content deleted
m (Seil moved page FLY to EvilEngine/FLY) |
(Rename Flythrough to Fly, change wording, use zFlyKey struct from decomp) |
||
Line 1: | Line 1: | ||
<onlyinclude> |
<onlyinclude> |
||
{{#vardefine:typeid| |
{{#vardefine:typeid|FLY}}<nowiki/> |
||
{{#vardefine:name| |
{{#vardefine:name|Fly}}<nowiki/> |
||
{{#vardefine:type|[[Binary]]}}<nowiki/> |
{{#vardefine:type|[[Binary]]}}<nowiki/> |
||
{{#vardefine:basetype|}}<nowiki/> |
{{#vardefine:basetype|}}<nowiki/> |
||
Line 10: | Line 10: | ||
{{AutoAssetInfobox}} |
{{AutoAssetInfobox}} |
||
A ''' |
A '''Fly''' asset defines a path for the camera to move around the scene. It is made up of keys containing the camera's transform, aperture, and focal length for each frame. Each frame lasts ~0.0333 ms (30 FPS). |
||
Fly assets contain all of the data necessary for [[EvilEngine/DYNA/game_object:Flythrough|game_object:Flythrough]], which is the in-game [[object]] that overrides the in-game camera. |
|||
==Format== |
==Format== |
||
A Fly asset is stored in little-endian on all platforms. It has no header and is made up of contiguous zFlyKey entries. Therefore, the number of entries is the asset's size / <code>sizeof(zFlyKey)</code> (64 bytes). |
|||
<source lang=cpp> |
<source lang=cpp> |
||
struct zFlyKey |
struct zFlyKey |
||
{ |
{ |
||
int32 frame; |
|||
float32 matrix[12]; |
|||
float cameraNormalizedRight[3]; |
|||
⚫ | |||
float cameraNormalizedUp[3]; |
|||
⚫ | |||
float cameraNormalizedBackward[3]; |
|||
float cameraPosition[3]; |
|||
⚫ | |||
⚫ | |||
}; |
}; |
||
</source> |
</source> |
Latest revision as of 17:23, 13 December 2022
FLY | |
---|---|
Fly | |
Type | Binary |
Games used | Battle for Bikini Bottom The SpongeBob SquarePants Movie |
Source code | zCamera.h |
A Fly asset defines a path for the camera to move around the scene. It is made up of keys containing the camera's transform, aperture, and focal length for each frame. Each frame lasts ~0.0333 ms (30 FPS).
Fly assets contain all of the data necessary for game_object:Flythrough, which is the in-game object that overrides the in-game camera.
Format
A Fly asset is stored in little-endian on all platforms. It has no header and is made up of contiguous zFlyKey entries. Therefore, the number of entries is the asset's size / sizeof(zFlyKey)
(64 bytes).
struct zFlyKey
{
int32 frame;
float32 matrix[12];
float32 aperture[2];
float32 focal;
};