Jump to content
Hash, Inc. Forums

Where can I find Action file documentation?


Recommended Posts

I would like to test if it is possible to animate a model in Animation Master and then use the action file to control an animatronic version of the model in the real World.

 

I wonder if there is any documentation about the contents of the Animation Master action files? It would be more efficient to read a specification instead of just guessing and testing...

 

(The idea is to translate the pose values into commands to Control servos in an Arduino setup.)

Link to comment
Share on other sites

  • Hash Fellow

That does sound very cool. I'm not aware of a formal release of the file format but like Sebastian said it's text readable.

 

Start with one bone, look at that, and that will tell you most of it.

 

If you get stuck, ask.

Link to comment
Share on other sites

  • Admin

Stefan,

If you can get in contact with Steffen Gross, he's got the current (or most current) Software Development Kit (SDK).

There should be some good info on how to interface with Actions files there.

Link to comment
Share on other sites

sound´s cool... and complicated ;) you can open any a:m file with a text editor, a simple action will be actually not that difficult to understand.

 

Not really a robot, what I have in mind is more humanlike. Animatronics are often used in movies special effects. My Project is much more modest. My first goal is to make a proof of concept and if possible the go from there one step at a time.

 

Yes I did open some action files and it depends on what I have animated how difficult it gets. A percentage pose slider is really easy but when it comes to rotating a bone it gets complicated, at least for me.

 

 

This example is a simple pose slider with a value of 15% at frame 8 and a value of 97% at frame 12


MatchName=User Properties

MatchName=Pose1

1 0 0
1 9.2700 15
1 14.1800 97



 

 

And this is a bone at different rotations (somewhat random in this example) in frames 0,1,2,3,6 (In frame 1 I changed the x rotation 90 degrees and in frame 2 the y rotation 90 degrees etc...)

 


MatchName=Bone1

MatchName=Transform

MatchName=Rotate
ParentToBone=0 0 0 1

MatchName=X

1 0 0
1 1.900 70.7107
1 2.1800 50
1 3.2700 70.7107
1 6 66.1401



MatchName=Y

1 0 0
1 1.900 0
1 2.1800 50
1 3.2700 0
1 6 -73.8962



MatchName=Z

1 0 0
1 1.900 0
1 2.1800 50
1 3.2700 0
1 6 0



MatchName=W

1 0 100
1 1.900 70.7107
1 2.1800 50
1 3.2700 70.7107
1 6 12.8391




MatchName=Translate

MatchName=X

1 0 0
1 9.2700 -9.24234



MatchName=Y

1 0 0
1 9.2700 0



MatchName=Z

1 0 0
1 9.2700 8.92522







 

What I really need to derive from the action file is the angle of the bones. The aim is to translate the bone angle into a RC servo angle. So for example when a bone is rotated 20 degrees in one axis it will make a servo rotate 20 degrees in the same axis. I will use individual servos for x, y and z rotations.

 

As can be seen it is not just the angles (rotation values) for the bone that is presented. I guess I will be needing some kind of mathematical formula to figure out the angles of the bone.

 

How do I interpret a line like this?: 1 1.900 70.7107

 

1: Seems like a fixed number...?

 

1.900: This should be the time in some format

 

70.7107: The actual value, but exactly what does it stand for?

Link to comment
Share on other sites

If you can get in contact with Steffen Gross, he's got the current (or most current) Software Development Kit (SDK).

I searched for him on the A:M forum and on the Internet but couldn´t find any Contact information. Is he still Active?

Link to comment
Share on other sites

  • Admin
Is he still active?

 

Sure is. He's a busy man these days so go easy on him.

 

He goes by Yoda64 (presumably to distinquish himself from the other 63 yodas that are considerably less active than he is).

 

http://www.hash.com/forums/index.php?showuser=218

 

 

Added: What you've got going sounds like a very cool project.

Link to comment
Share on other sites

  • Hash Fellow

You can simplify your angle numbers by changing the rotation "driver" to Euler instead of the default Quaternion.

 

Quat is the default in A:M because it avoids gimble lock in complicated rotations but for simple one-axis moves Euler numbers will be easier for you to understand.

 

To change:

Select the bone,

Open the properties window,

Object Properties>Transform>Rotate

RMB on Rotate and choose Convert Driver To>Euler

 

Here is a bone being rotated on one axis from 0 to 45 to 90 to 120 degrees

 

MatchName=Rotate

ParentToBone=0 6.63102e-007 0 1

MatchName=X

1 0 0

1 5 0

1 10 0

1 15 0

MatchName=Y

1 0 0

1 5 45

1 10 90

1 15 120

MatchName=Z

1 0 0

1 5 0

1 10 0

1 15 0

 

 

 

The three-number groups are, from left to right...

 

interpolation of the curve through that CP.

 

1="default" (one of the below previously set as default. "Spline" is the default default.)

3=hold

5=linear

7=spline

9=zero slope

 

Time. I believe this counts 30ths of a second. Any other FPS setting, such as 24 fps, will create fractional values.

 

Angle in degrees

1=

Link to comment
Share on other sites

Thank you for the clear explanation of the values :-)

I changed to Euler and after that it was easy to grasp what was happening.

I think this is actually going to work. Now I have got some programming and mechanical work to do.

Link to comment
Share on other sites

A rig could be designed to drive poses when a bone is rotated. Poses can be set to -180 to 180, giving you the exact degree of rotation. Each bone would drive 3 poses.

 

This sounds interresting...

How do you change the pose values when rotating a bone?

Link to comment
Share on other sites

Is he still active?

Sure is. He's a busy man these days so go easy on him.

 

I will wait and see if I need to Contact Steffen. I got good answers from Mark and Robert. This may be all the information I will need.

Link to comment
Share on other sites

  • Hash Fellow
A rig could be designed to drive poses when a bone is rotated. Poses can be set to -180 to 180, giving you the exact degree of rotation. Each bone would drive 3 poses.

 

This sounds interresting...

How do you change the pose values when rotating a bone?

 

A "Smartskin" can associate any keyable parameter with a bone rotation.

 

Are you already familiar with creating smartskins and pose sliders?

-

Link to comment
Share on other sites

A "Smartskin" can associate any keyable parameter with a bone rotation.

 

Are you already familiar with creating smartskins and pose sliders?

 

Yes I am familiar with those.

 

Now I understand how to do it.

 

Thank you

Link to comment
Share on other sites

Join the conversation

You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...