Anim8or Community

Please login or register.

Login with username, password and session length
Advanced search  


An update to Anim8or, v1.00b, is available with a few bug fixes. Get your copy HERE. See the "ReadMe" file for details.

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - NickE

Pages: 1 ... 3 4 [5] 6 7 ... 11
ASL Scripts / BVH File Import into Anim8or
« on: March 20, 2011, 01:07:09 pm »
Attached below is a working BVH file import program for Anim8or.  For those that are not familiar, BVH is a motion capture file format that describes a skeleton made up of joints (points) and a timeline of XYZ Euler angles that describe the rotation of the joints.  See for an overview of the description.

Anim8or differs widely from the BVH file format in that Anim8or's Figure Mode uses bones for the skeleton where the orientation of the bones is described by a quaternion.  The Sequence Mode uses XYZ Euler angles to describe the change in orientation of the bone relative to the initial orientation of the bone set in Figure Mode.  In Anim8or, the rotation of the bones, when unconstrained, goes from -360 to +360 degrees.  Conversion to and from quaternions and Euler angles requires the use of trigonometric functions.  The atan2 function, for example, goes from -180 to 180 degrees.  A small change in angle in the BVH file across one of these trigonometric limits can trigger Anim8or to flip the bone 180 degrees.

Anim8or has bugs in calculating the frames between keys.  Sometimes it will interpolate wildly. 

Scene Mode has a bug (or maybe it is intentional) where the root bone orientation is completely ignored.  Since the root bone orientation is the orientation of the entire figure, the bug is overcome by keying the root bone orientation into the orientation controller of the figure in Scene Mode.

Sequence Mode has no translational motion abilities, so the BVH translation is keyed into the position controller of the figure in Scene Mode.

The program can currently read in a BVH file and create an Anim8or project file (an8).  This means it generates a skeleton in Figure Mode, a sequence that uses the skeleton, and a scene containing the figure and the sequence.  It keys the orientation and position for the figure directly in scene mode.  For reference, the program also generates a simple line object in the same position as the skeleton.  I found this useful for getting the size and posture of the object to be skinned close.

BVH files sometimes have issues as well.  Most of the Carnegie-Mellon BVH repository files have zero-offset joints.  This introduces some small error when these zero-offset joints have rotations.  Many BVH files have skeletons of very small scale.  I have added a scaling function to the program to allow you to modify the overall scale of the skeleton.  Many of the BVH file have frames-per-second (FPS) of 30, 60, or 120.  I have added the ability to change the FPS.  Please realize that the recalculation of the FPS requires computational interpolation of the motion.  I am using simple linear interpolation in that calculation that introduces some error.  To reduce the number of keys (to reduce file loading time), the program allows you to choose how often to key the original motion as well as put in a tolerance factor to not key when there is change less than this tolerance factor.  In BVH files that have a lot of fast motion, you will need to key more often.  One martial arts BVH file I tested required every frame to be keyed or significant motion error occurred.  Loading that 650 frame Anim8or file takes about 4 minutes on my computer.  Some BVH files have a first frame that is zero motion (original skeleton pose).  There is an option in the program to skip this frame in the sequence and scene.

Some minor tweaking in Anim8or is often necessary due to the fact that trigonometric functions change rapidly near the limits.  This relatively easy to do.  A BVH file I tested that had a runner turning a 90 degree turn worked fine except the right upper arm was slightly off.  A small adjustment in Figure Mode was all that was necessary.

While the program works pretty well for what it does, the results of the program are not readily portable or incorporated into existing projects.  The final product is in Scene Mode.

The program is written in VB6, so you might need to download some runtime libraries if your computer does not already have them.

Please play with the program and give me your feedback and ideas on how to make this more useful to Anim8or users.

Some hasty examples done with figures from BobIt's figure plugin are posted on youtube:

Chinese Martial Arts:[/youtube]]http://www.

Hooker Walk:[/youtube]]http://www.

Thank you.

Anim8or Challenges / Re: Challenge #24: Halls of Fury!
« on: February 06, 2011, 07:00:22 pm »
The more the merrier!  I was late and my submissions unfinished!  Where is the fun in being the only one?  Extend please.

Anim8or Challenges / Re: Challenge #24: Halls of Fury!
« on: February 06, 2011, 03:35:03 pm »
Here's the first one I started working on:

A quiet night at the alien lockup:

Anim8or Challenges / Re: Challenge #24: Halls of Fury!
« on: February 06, 2011, 03:33:02 pm »
Well, I started working on two different submission, but unfortunately was unable to finish either.  Below is a quick render of the second one:

A covered walkway between two buildings.  A curiously empty and unfinished urban scene.

General Anim8or Forum / Re: Anim8or Collab - "Don't Forget"
« on: February 02, 2011, 02:52:44 pm »
I will contribute to this project.  Thanks for organizing it.

ASL Scripts / Re: Scripts Request: Edge to point or Faces to point!
« on: January 13, 2011, 09:13:01 pm »

Attached is a script to do what you requested.  It will select the points of any edges and/or faces that are selected and de-select the edges and/or faces that were selected.

Edges and Faces are both handled by this single script.  I originally wrote a script for Faces and another script for Edges, then realized that there should not be a conflict having them in the same script.


Anim8or Challenges / Re: Challenge #23: Happy holidays!
« on: December 25, 2010, 05:15:46 am »
Holiday time is Family time...hence...

Get in the Holiday Spirit!

ASL Scripts / Re: I need a script....
« on: October 06, 2010, 10:27:38 pm »
How are you determining the xyz coordinates of each object?  Random?

General Anim8or Forum / Re: Problem with alpha-maps
« on: August 19, 2010, 10:42:20 pm »
You should probably post the project.  I've never seen this kind of behavior before.

ASL Scripts / Re: Simple fluid simulation
« on: August 14, 2010, 02:16:13 pm »
The script and project included above is just a demonstration of the capabilities and to point out the "quirk" of Anim8or of running scripts asynchronously to the rest of the program.

The script above requires a mesh named "s1" of 100 by 100 points.  The points have to be numbered in order of the mesh from 0 to 9999.  The points with Y-coordinates not equal to zero have "excitation", will move up and down, and gradually dampen to zero.  This script only moves the points up-and-down and expects the points to be equal distances away from each other (like a perfect plane)

I've attached a project that has a "blank" water field.  You can try the different kind of rippling, like from the corner, a wave that covers a whole edge, starting the "excitation" above or below the plane, etc.

To render your animation, you have to start the script in object mode, switch quickly to the scene mode and start the render.  The "delay" variable in the script is to allow time for Anim8or to render the frame before the script calculates the next frame.  It takes some experimentation to hone in on a proper delay value for the scene and your computer.  While hunting the proper delay value, set the number of frames variable to just a few frames because you will have to wait for the script to finish to adjust it.

Thank you for your interest.

ASL Scripts / Re: Help with Boolean script
« on: July 18, 2010, 03:15:23 pm »

There is a different version of the booleen operations script that I wrote concurrently with Kubajzz (I never released mine).  His script and mine work by totally different methods.  All methods (in all the programs that I have studied) suffer from situations where the method fails.  The good part is that mine and Kubajzz's methods usually fail under different circumstances.

With the attached script, be sure to open it in a text editor to read the usage notes at the top.

I tested the attached script on your attached Anim8or project and it failed to construct a few faces.  When the cylinder was moved a tiny amount to the positive x direction, all faces were reconstructed.

I also am attaching a test Anim8or project that I used to get a feel for when the boolean operations script fails.  The attached jpg is a texture that will have to be put in the default texture directory.

ASL Scripts / Re: Connect Edge?
« on: June 22, 2010, 02:00:23 pm »
Thank you for the further clarification of Slide and Pinch.  I think I know enough now to get started.

The only thing that concerns me is the lack of undo if the parameters selected are not what is desired.  Will have to think about that for a bit.  Any suggestions would be appreciated.

ASL Scripts / Re: Connect Edge?
« on: June 22, 2010, 02:23:29 am »
Thank you for the clarification.  Yes, this could be implemented in ASL.  Unfortunately, I do not have 3DS Max and am not sure what the scales are for the Pinch and Slide parameters.  How much is one pinch unit or slide unit?  Is it an offset of where the edge would be created if there were no Pinch or Slide applied?

I could make up my own rules, but I'd rather have the function act the same way as the 3DS Max version to avoid confusion.

If you can help me out with those questions, I can write a script to do this.

ASL Scripts / Re: Connect Edge?
« on: June 21, 2010, 09:53:32 pm »
I think this might be possible with scripting, but I cannot determine what you want to do from your explanation and example screenshots.  Can you please be more explicit?

General Anim8or Forum / Re: animated gifs and textures
« on: April 21, 2010, 12:38:08 am »
I have used virtualdub and avisynth to do chromakey composites.  Here's a link from

I have followed the suggestions in this thread and gotten good results.

Pages: 1 ... 3 4 [5] 6 7 ... 11