Jump to content

havok file format for animation


gsll

Recommended Posts

Posted

This topic is moved from blender nif data utils, a very inspiring work.

 

I found some interesting information about hkx animation format :

havok binary files on xentax forums

some example code using the compression algorithm from havok

a good explanation of spline compressed animation

an other  interesting explanation (less illustrated)

 

from first article and other readings, I understand skyrim uses spline compression to store skeletal animation.

It means  there is no simple correspondance between hkx compressed format and input animation.

One has to use the compression/decompression algorithms.

The two last links describe the type of algorithm that can be used for spline compression and data storage.

From second link, a demo of spline compression in havok, I guess the spline compression may use 40-48 bits to store rotation as quaternions.

 

In the thread "havok binary file", the fifth page reports a C# code that allows to convert hkx skeleton to smd format

hkx2smd

edit : volfin quotation : "This is a project I started last year for Alien:Isolation, it's a HKX converter that outputs SMD skeleton. It works with 2012.2.0 and 2010.2.0, I had intended to take it all the way with support for many versions, and animation output, but I simply moved on to other projects. It's written in C#, a lot of the file structure is defined at the top of Program.cs, and maybe will help people, so I'm making the code public."

 

edit edit : I forgot to add the smd file can be imported in blender using blender source tool from steamreview.org

It is still a two step partial import (skeleton only). Like many others I would prefer to select my files, press a button and get the result.

 

Unfortunalety, this program hkx2smd is beyond my present understanding of coding : generic class, MarshalAs, parsing of binay files,...

I probably won't be able to make use of these pieces of information to build a python code within blender in a reasonable time.

But making it available here, I hope one of the talented people  here will be able to use it somehow.

 

in the thread about alien isolation on xentax forum p.7, there are some information about parsing binary files in python in the plugin for blender io_scene_Aliens.zip

 

Best regards

Posted

Blender source tool works with the latest version of blender.

 

The other blender tools from volfin sems to works with 2.7x.

 

Please note the hkx2smd is a C# program and no compiled version is provided.

It means you have to compile the file by yourself.

 

Best regards

 

  • 2 weeks later...
Posted

There are very interesting methods on binary parsing on youtube by id-daemon :

Far Cry Primal model file reversing

 

You can find some others links to examples on his video tutorial page.

 

An other author volfin provides (on xentax) examples of blender python script that perform binary parsing :

- dishonored2 models and texture,

- watch dogs 2.

 

I have read (different authors but never any detail) the skyrim files are compressed in a way that makes this type of approach fail.

 

Has anyone some reliable information about this ?

 

Best regards

 

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...