EGMC (File Format): Difference between revisions
Jump to navigation
Jump to search
>Aruki No edit summary |
>Aruki m (→Format) |
||
(One intermediate revision by the same user not shown) | |||
Line 5: | Line 5: | ||
== Format == | == Format == | ||
This is an extremely simple format; it's just an array of a small struct mapping a surface group ID to a PointOfInterest instance. | |||
{| class="wikitable" | {| class="wikitable" | ||
! Offset | ! Offset | ||
! Type | ! Type | ||
! | ! Count | ||
! Name | |||
|- | |||
| 0x0 | |||
| u32 | |||
| 1 | |||
| '''Mapping Count''' | |||
|- | |||
| 0x4 | |||
| [[#Mapping|Mapping]] | |||
| ''Mapping Count'' | |||
| '''Mapping Array''' | |||
|- | |||
| colspan=4 {{unknown|End of file}} | |||
|} | |||
=== Mapping === | |||
{| class="wikitable" | |||
! Offset | |||
! Type | |||
! Name | |||
! Notes | |||
|- | |- | ||
| 0x00 | | 0x00 | ||
| u32 | | u32 | ||
| ''' | | '''Surface Group ID''' | ||
| Area-relative surface group ID. | |||
|- | |- | ||
| 0x04 | | 0x04 | ||
| u32 | | u32 | ||
| '''PointOfInterest | | '''PointOfInterest Instance ID''' | ||
| | |||
|- | |- | ||
| 0x08 | | 0x08 | ||
| colspan= | | colspan=3 {{unknown|End of mapping}} | ||
|} | |} | ||
Latest revision as of 05:45, 23 May 2016
The EGMC file format is in Metroid Prime 2 and 3. Its extension stands for Editor Object to Static Geometry Map Cooked. It's a simplistic format whose main responsibility is mapping PointOfInterest script objects to static world geometry, which allows world meshes to be scanned. The same POI can be mapped to multiple meshes, and likewise, the same mesh can be mapped to multiple POIs (which can be toggled on or off via script connections so only one POI is active at a time).
Format
This is an extremely simple format; it's just an array of a small struct mapping a surface group ID to a PointOfInterest instance.
Offset | Type | Count | Name |
---|---|---|---|
0x0 | u32 | 1 | Mapping Count |
0x4 | Mapping | Mapping Count | Mapping Array |
End of file |
Mapping
Offset | Type | Name | Notes |
---|---|---|---|
0x00 | u32 | Surface Group ID | Area-relative surface group ID. |
0x04 | u32 | PointOfInterest Instance ID | |
0x08 | End of mapping |