cypher2012 Posted September 16, 2017 Share Posted September 16, 2017 (edited) So if we're able to figure out the data structure used for collision, it would make it possible to make tools to create collisions for custom assets in other programs, such as Blender etc.Any programmers here able to figure out the physics binary data used? I'm referencing the binary data used by the bhkPhysicsData node Edited September 16, 2017 by cypher2012 Link to comment Share on other sites More sharing options...
cypher2012 Posted September 16, 2017 Author Share Posted September 16, 2017 (edited) To get the ball rolling, I've quickly just run a sample physics data binary file through an online base64-decoder and can pick out a few human readable words which look like they make up some kind of header at the top of the file. I'll list below what can be picked out. Khk_2014.1.0-__classnames____types____data__hkClasshkClassMemberhkClassEnumhkClassEnumItemhknpPhysicsSystemDatahknpCompressedMeshShapegHWhkRefCountedPropertieshknpBSMaterialPropertieshknpCompressedMeshShapeData Edited September 16, 2017 by cypher2012 Link to comment Share on other sites More sharing options...
kitcat81 Posted September 16, 2017 Share Posted September 16, 2017 (edited) You know you can export physics data to text files in Nifskope and import to another nif.And if you check the text file, you will get the same result : some readable part and some unreadable part that looks cyrillic on my PC, but maybe looks different for others. Collision data for some simple shape WааWÐÐ K hk_2014.1.0-r1 Ñ __classnames__ Ñ Ð Ð Ð Ð Ð Ð ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ__types__ ÑÐ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ__data__ ÑÐ @ p ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ#Ф3 hkClass §Ð¿° hkClassMember Ð 6Ð hkClassEnum lÐoО hkClassEnumItem ‹qWÑ hknpPhysicsSystemData гÑй< hknpConvexPolytopeShape gHW| hkRefCountedProperties (й hknpShapeMassProperties ÑÑÑÑÑÑÑÑÑ Ð Ð Ð Ð Ð Ð Ñ ? ?Ð>L=Ð¾Ñ Ð? Ð? @ ÑÑÑÑÑÑÑ -Ð;Ñ-Ð;3ÑÑ?i!Ñž3 CЧ#<F:Y† Ñ ( oОи?oОи? Ч#Ñ ?oОи?oÐžÐ¸Ñ Ð§#Ñ ?oОи?oОи?¬Ð¨_Ñ ?oОиÑoОи? Ч#Ñ ?oОи?oОиѬШ_Ñ ?oОиÑoОи?¬Ð¨_Ñ ?oОиÑoÐžÐ¸Ñ Ð§#Ñ ?oОиÑoОиѬШ_Ñ ? ÑÑ?Ч#< Ð ÑÑѫШ_ÑÑÑ? nОиÑÑÑÑ Ð nÐžÐ¸Ñ ÐÑÑÑ nÐžÐ¸Ñ ÑÑ? nÐžÐ¸Ñ Ð? Ð Ñ ÑÐÐ.))УQ 2 Ð Ð Ð0ÑЯâC@ЯâC@ Ð @ Ð ` 0 Ра Ð @ 0 @ ` Ра Ñ K @ f Ð Ñ Ñ Ñ I`m no programmer so no idea if there is a way to decode the unreadable part with programming methods. However maybe it`s possible to decode it by practice methods ( creating many similar collisions with some slight differences and checking how these differences look in the text file).But it would take lots of time. Edited September 16, 2017 by kitcat81 Link to comment Share on other sites More sharing options...
zilav Posted September 16, 2017 Share Posted September 16, 2017 It is simply an embedded HKX file iirc, packed havok data which you can't create yourself without Havok SDK 2014 x64 which was never released to the public. But you don't need to because Elric tool provided by Bethesda does that, so just create embedded collision shapes and process with Elric to pack them. Check how Bethesda 3dsmax plugin exports collisions. Link to comment Share on other sites More sharing options...
cypher2012 Posted September 18, 2017 Author Share Posted September 18, 2017 It is simply an embedded HKX file iirc, packed havok data which you can't create yourself without Havok SDK 2014 x64 which was never released to the public. But you don't need to because Elric tool provided by Bethesda does that, so just create embedded collision shapes and process with Elric to pack them. Check how Bethesda 3dsmax plugin exports collisions. Any chance of a sample nif file as exported by max. Is it possible to edit a nif file in nifskope to replicate what gets export by max, so that it can be run through Elric? Link to comment Share on other sites More sharing options...
Recommended Posts