Havok: Difference between revisions

2,045 bytes added ,  4 years ago
Specify some header entries, added known classes
imported>HailToDodongo
m (fix typos)
imported>Kreny
(Specify some header entries, added known classes)
Line 60: Line 60:


==== hknm2 ====
==== hknm2 ====
{{Empty section}}
{{Expand section}}Used in shrines and field sections.


==== hkrb ====
==== hkrb ====
{{Empty section}}Used in actors.
{{Expand section}}Used in actors.


==== hkcl ====
==== hkcl ====
{{Empty section}}
{{Expand section}}Used in actors.


==== hkrg ====
==== hkrg ====
{{Empty section}}
{{Expand section}}Used in actors.


==== hksc ====
==== hksc ====
{{Empty section}}Used in shrines and the field sections.
{{Expand section}}Used in shrines and field sections.


==== hktmrb ====
==== hktmrb ====
{{Empty section}}
{{Expand section}}Used in field sections.


== Havok File Specification ==
== Havok File Specification ==
Line 112: Line 112:
|<code>0x08</code>
|<code>0x08</code>
|4
|4
|Unsigned Int
|Int
|Unknown 00 (always 0; possibly padding)
|User tag (always 0)
|-
|-
|<code>0x0c</code>
|<code>0x0c</code>
|4
|4
|Unsigned Int
|Int
|Unknown 01 (always 11)
|Version (always 11)
|-
|-
|<code>0x10</code>
|<code>0x10</code>
|1
|1
|Byte
|Byte
|Unknown 02 (always 4)
|Pointer size (always 4 on Wii U, 8 on Switch)
|-
|-
|<code>0x11</code>
|<code>0x11</code>
|1
|1
|Byte
|Byte
|Unknown 03 (always 0)
|Endian (always 0 on WiiU, 1 on Switch)
|-
|-
|<code>0x12</code>
|<code>0x12</code>
|1
|1
|Byte
|Byte
|Unknown 04 (always 0)
|Padding option (always 0 on WiiU, 1 on Switch)
|-
|-
|<code>0x13</code>
|<code>0x13</code>
|1
|1
|Byte
|Byte
|Unknown 05 (always 1)
|Base class (always 1)
|-
|-
|<code>0x14</code>
|<code>0x14</code>
|4
|4
|Unsigned Int
|Int
|Unknown 06 (always 3)
|Section count (always 3)
|-
|-
|<code>0x18</code>
|<code>0x18</code>
|4
|4
|Unsigned Int
|Int
|Unknown 07 (always 2)
|Contents section index (always 2)
|-
|-
|<code>0x1c</code>
|<code>0x1c</code>
|4
|4
|Unsigned Int
|Int
|Unknown 08 (always 0)
|Contents section offset (always 0)
|-
|-
|<code>0x20</code>
|<code>0x20</code>
|4
|4
|Unsigned Int
|Int
|Unknown 09 (always 0)
|Contents classname section index (always 0)
|-
|-
|<code>0x24</code>
|<code>0x24</code>
|4
|4
|Unsigned Int
|Int
|Unknown 10 (always 75)
|Contents classname section offset (always 75)
|-
|-
|<code>0x28</code>
|<code>0x28</code>
Line 172: Line 172:
|<code>0x38</code>
|<code>0x38</code>
|4
|4
|Unsigned Int
|Int
|Unknown 11 (always 0; possibly padding)
|Flags (always 0)
|-
|-
|<code>0x3c</code>
|<code>0x3c</code>
|2
|2
|Short
|Short
|Unknown 12 (always 21)
|Unknown (always 21)
|-
|-
|<code>0x3e</code>
|<code>0x3e</code>
|2
|2
|Short
|Short
|Unknown 13 (0 or 16; if 16, the header is 16 bytes longer)
|Section offset (0 or 16; if 16, the header is 16 bytes longer)
|}
|}


Line 197: Line 197:
|0x40
|0x40
|2
|2
|Short
|Int
|Unknown 14 (always 20)
|Unknown (always 20)
|-
|0x42
|2
|Short
|Unknown 15 (always 0; possibly padding)
|-
|-
|0x44
|0x44
|4
|4
|Int
|Int
|Unknown 16 (always 0; probably padding for alignment)
|Unknown (always 0; probably padding for alignment)
|-
|-
|0x48
|0x48
|4
|4
|Int
|Int
|Unknown 17 (always 0; probably padding for alignment)
|Unknown (always 0; probably padding for alignment)
|-
|-
|0x4c
|0x4c
Line 475: Line 470:
== Data Classes ==
== Data Classes ==
{{Expand section}}
{{Expand section}}
All known class that chunks can used are listed here:
All known classes that chunks can use are listed here.
{| class="wikitable"
|+Generally used classes
!Signature
!Name
|-
|0x2772c11e
|hkRootLevelContainer
|-
|}
 
{| class="wikitable"
|+Havok Animation classes
!Signature
!Name
|-
|0x26859f4c
|hkaAnimationContainer
|-
|0xfec1cedb
|hkaSkeleton
|-
|0xace9849c
|hkaSkeletonMapper
|-
|0x5448f464
|hkaRagdollInstance
|-
|}
 
{| class="wikitable"
|+Havok Physics classes
!Signature
!Name
|-
|0x47a8ca83
|hkpPhysicsData
|-
|0xb3cc6e64
|hkpPhysicsSystem
|-
|0xcd2e69e5
|hkpRigidBody
|-
|0xfda179f3
|hkpCapsuleShape
|-
|0xda4ce91e
|hkpConstraintInstance
|-
|0xed9648f7
|hkpRagdollConstraintData
|-
|0x75aae5a3
|hkpLimitedHingeConstraintData
|-
|0x143dd400
|hkpPositionConstraintMotor
|-
|0xabab6bb3
|hkpBvCompressedMeshShape
|-
|}
 
{| class="wikitable"
|+Havok Cloth classes
!Signature
!Name
|-
|0x3512912b
|hclClothContainer
|-
|0xf14068be
|hclCollidable
|-
|0xdd03f524
|hclCapsuleShape
|-
|0xd779f2c5
|hclSphereShape
|-
|0x92f3edba
|hclClothData
|-
|0xe6105187
|hclSimClothData
|-
|0x426b3354
|hclStandardLinkConstraintSet
|-
|0x426b3354
|hclStretchLinkConstraintSet
|-
|0x82567805
|hclLocalRangeConstraintSet
|-
|0x9cfe2c7d
|hclTransitionConstraintSet
|-
|0x26824757
|hclBendLinkConstraintSet
|-
|0x1b254ca1
|hclSimClothPose
|-
|0xa0130a2c
|hclScratchBufferDefinition
|-
|0x7f4a5bfc
|hclBufferDefinition
|-
|0x18fd4565
|hclTransformSetDefinition
|-
|0x6171b106
|hclObjectSpaceSkinPOperator
|-
|0xe65a701c
|hclMoveParticlesOperator
|-
|0x75c72f0f
|hclSimulateOperator
|-
|0x80d9769f
|hclSimpleMeshBoneDeformOperator
|-
|0xda737296
|hclGatherAllVerticesOperator
|-
|0x7b02cd1b
|hclClothState
|-
|0xe6db074c
|hclCopyVerticesOperator
|-
|}
 
{| class="wikitable"
|+Havok AI classes
!Signature
!Name
|-
|0x6d493bdb
|hkaiNavMesh
|-
|0x2f02d92c
|hkaiDirectedGraphExplicitCost
|-
|0x433a1e61
|hkaiStaticTreeNavMeshQueryMediator
|-
|}
 
{| class="wikitable"
|+Havok Compound classes
!Signature
!Name
|-
|0x99e8d0cb
|hkcdStaticAabbTree
|-
|0x33735476
|hkcdStaticTreeDefaultTreeStorage6
|-
|0x5115a202
|StaticCompoundInfo
|-
|}
 


<references />
<references />
[[Category:File formats]]
[[Category:File formats]]
Anonymous user