Difference between revisions of "EGMC (File Format)"
From Retro Modding Wiki
(→Format) |
|||
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=2 {{unknown|End of | + | | colspan=2 {{unknown|End of mapping}} |
|} | |} | ||
Revision as of 23:45, 22 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).
Contents
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 |