GoodEngine/Assets: Difference between revisions

no edit summary
No edit summary
No edit summary
Line 1:
==Classes of Assets==
===Base assets===
Base assets start with a 0x10 byte header, defined by the <code>xBaseAsset</code> struct:
{| class="wikitable"
! Offset !! Type !! Variable !! Description
|-
| 0x00 || long || '''id''' ||
|-
| 0x08 || uint || '''baseType''' ||
|-
| 0x0C || short || '''linkCount''' || Leftover from EvilEngine, unused in GoodEngine.
|-
| 0x0E || short || '''baseFlags''' ||
|}
 
===Entity assets===
Entity assets (also referred to as placeable assets) are base assets which have a 3D placement in the world. They start with a 0xF8 byte header, which is defined by the <code>xEntAsset</code> struct (which extends from <code>xBaseAsset</code>):
{| class="wikitable"
! Offset !! Type !! Variable !! Description
|-
| 0x10 || byte || '''flags''' ||
|-
| 0x11 || byte || '''subtype'''||
|-
| 0x12 || byte || '''pad''' ||
|-
| 0x13 || byte || '''Targettable''' ||
|-
| 0x14 || byte || '''Pad0''' ||
|-
| 0x15 || ? || '''moreFlags''' ||
|-
| 0x18 || [[AssetID]] || '''surfaceID''' ||
|-
| 0x20 || [[Vector3]] || '''Orientation''' ||
|-
| 0x2C || [[Vector3]] || '''Pos''' ||
|-
| 0x38 || [[Vector3]] || '''Scale''' ||
|-
! 0x50 || colspan="3" | [[#ModelInstanceAsset|modelInstance]]
|-
| 0x90 || [[AssetID]] || '''animListID''' ||
|-
! 0x98 || colspan="3" | PhysicsDataStruct
|-
| 0x98 || float || '''mass''' ||
|-
| 0x9C || float || '''friction''' ||
|-
| 0xA0 || float || '''elasticity''' ||
|-
| 0xA4 || float || '''linearDamping''' ||
|-
| 0xA8 || float || '''angularDamping''' ||
|-
| 0xAC || float || '''settleTimer''' ||
|-
| 0xB0 || byte || '''magnetic_Charge''' ||
|-
| 0xB1 || byte || '''pad1''' ||
|-
| 0xB2 || byte || '''pad2''' ||
|-
| 0xB3 || byte || '''pad3''' ||
|-
! 0xB4 || colspan="3" | '''SoundSourcesPhysics'''
|-
| 0xB4 || [[#SoundBankSource|SoundBankSource]] || '''SoundHit''' ||
|-
| 0xC0 || [[#SoundBankSource|SoundBankSource]] || '''SoundScrape''' ||
|-
| 0xCC || [[#SoundBankSource|SoundBankSource]] || '''SoundRoll''' ||
|-
! 0xD8 || colspan="3" | '''PhysicsData'''
|-
| 0xD8 || float || '''MinVelocity''' ||
|-
| 0xDC || float || '''MaxVelocity''' ||
|-
| 0xE0 || float || '''MinRun''' ||
|-
| 0xE4 || float || '''MaxRun''' ||
|-
| 0xE8 || float || '''MaxRise''' ||
|-
! colspan="4" |
|-
| 0xEC || uint || '''Pad1''' ||
|-
| 0xF0 || uint || '''Pad2''' ||
|-
| 0xF4 || uint || '''Pad3''' ||
|}
 
====SoundBankSource====
{| class="wikitable"
|-
! Offset !! Type !! Variable !! Description
|-
| 0x00 || byte || '''streamed''' ||
|-
| 0x01 || byte || '''pad1''' || ''0x33''
|-
| 0x02 || byte || '''pad2''' || ''0x33''
|-
| 0x03 || byte || '''pad3''' || ''0x33''
|-
| 0x04 || int || '''sourceString''' ||
|-
| 0x08 || int || '''indices''' ||
|}
 
====ModelInstanceAsset====
{| class="wikitable"
! Offset !! Type !! Variable !! Description
|-
| 0x00 || [[AssetID]] || '''modelPrototypeID''' ||
|-
| 0x08 || [[AssetID]] || '''lightKitID''' ||
|-
| 0x10 || uint || '''instanceParamCount''' ||
|-
| 0x14 || uint || '''renderCustomizerCount''' ||
|-
| 0x18 || uint || '''instanceParams''' ||
|-
| 0x1C || uint || '''renderCustomizers''' ||
|-
| 0x20 || short || '''shadowType''' ||
|-
| 0x22 || short || '''shadowFlags''' ||
|-
| 0x24 || float || '''shadowColorOverride''' ||
|-
| 0x28 || float || '''shadowMaxDepthOverride''' ||
|-
| 0x2C || float || '''shadowStartDepthOverride''' ||
|-
| 0x30 || float || '''shadowMinBlurOverride''' ||
|-
| 0x34 || float || '''shadowMaxBlurOverride''' ||
|-
| 0x38 || [[AssetID]] || '''parentID''' ||
|}
 
==List of asset types==
2,079

edits