EvilEngine/FLY: Difference between revisions
Content added Content deleted
Battlepedia>Seil (Created page with "A '''Flythrough''' defines a path for the camera to move around a level. It is made up of individual points, each point defining the transform for the camera at a specified ti...") |
(Rename Flythrough to Fly, change wording, use zFlyKey struct from decomp) |
||
(15 intermediate revisions by 6 users not shown) | |||
Line 1: | Line 1: | ||
<onlyinclude> |
|||
A '''Flythrough''' defines a path for the camera to move around a level. It is made up of individual points, each point defining the transform for the camera at a specified time. The time is measured in frames. 30 frames = 1 second. |
|||
{{#vardefine:typeid|FLY}}<nowiki/> |
|||
{{#vardefine:name|Fly}}<nowiki/> |
|||
{{#vardefine:type|[[Binary]]}}<nowiki/> |
|||
{{#vardefine:basetype|}}<nowiki/> |
|||
{{#vardefine:games|BFBB TSSM Incredibles RatProto}}<nowiki/> |
|||
{{#vardefine:sourcecode|[https://github.com/bfbbdecomp/bfbb/blob/master/src/Game/zCamera.h zCamera.h]}}<nowiki/> |
|||
{{#vardefine:image|}}<nowiki/> |
|||
</onlyinclude> |
|||
{{AutoAssetInfobox}} |
|||
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> |
|||
struct zFlyKey |
|||
{ |
|||
int32 frame; |
|||
float32 matrix[12]; |
|||
float32 aperture[2]; |
|||
float32 focal; |
|||
}; |
|||
</source> |
|||
{{Assets}} |
|||
{| class="wikitable" |
|||
{{AutoGameNavs}} |
|||
! Offset !! Type !! Description |
|||
|- |
|||
| 0x00 || int || '''Frame number'''. Usually starts at either 1 or 0, and increments by 1 with each point |
|||
|- |
|||
| 0x04 || [[Vector3]][3] || '''Camera rotation/speed up forward normalized something something''' igor help me with this |
|||
|- |
|||
| 0x28 || [[Vector3]] || '''Camera Position''' |
|||
|- |
|||
| 0x34 || [[Vector3]] || '''Unknown''' |
|||
|} |
|||
[[Category:Asset]] |
[[Category:Asset]] |
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;
};