Anim8or Community

Please login or register.

Login with username, password and session length
Advanced search  


Ian Ross has just released a book on Anim8or. It's perect for a beginner and a good reference for experienced users. It contains detailed chapters on every aspect, with many examples. Get your own copy here: "Anim8or Tutorial Book"

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 ... 7 8 [9] 10 11
ASL Scripts / Re: Script: Copy "Source" mesh to "Target" mesh
« on: July 14, 2008, 10:35:50 am »
The transferring of the target's material at the point of the copy to the copy of the mesh is possible and I will work at putting out an updated script for that.  Keep in mind, though, that textures and UV coordinates will likely not transfer to the mesh copies predictably.

ASL Scripts / Re: Script Request: Chain Link Maker
« on: July 14, 2008, 10:05:40 am »
Sometimes I get that behavior too.  After verifying that the script actually ran by looking at the debug window, you might have to drag a little bit instead of just clicking in the modeling window.  If you are still having problems, post your .an8 file, and I will take a look.

ASL Scripts / Anim8ing a Tank Tread
« on: July 13, 2008, 09:57:12 pm »
I have posted a tutorial on how to animate tank treads using morph targets.  The concepts and scripts used can be applied to other projects as well.

The tutorial can be found at:

Please let me know your feedback.

ASL Scripts / Re: Script: Copy "Source" mesh to "Target" mesh
« on: July 12, 2008, 11:35:28 pm »
I don't understand your request.  The script currently assigns the materials and UV coordinates of the source to all the copies.  Are you talking about assigning materials of the source to the target mesh?  Or are you talking about the materials of the target mesh being assigned to the copies of the source?  Either of these can be done.

If you could explain further, I will see what I can figure out.

I've actually already been thinking about that problem.  The main difficulty is that you cannot place objects in scene mode with a script.
One possibility:  Place each link of the track manually (or ex-program the way Terranim8or does), use a controller script to follow a path for the first link, then use controller expressions to calculate the position of the other links indexed off the first.  A lot of manual setup work or having to write an external program.

Another possibility:  Draw (using the copy_mesh_to_path) several complete tracks each offset such that the traversing of a single link is indexed until it is coincident with the next link.  Then animate using visibility controller scripts like is mentioned above.

Yet another:  write a new script to be run in the morph targets that takes a tread (made with the command version of the copy_mesh_to_path so that each link is a separate shape) and moves each link a bit to generate the several morph targets needed to move a single link distance (width) smoothly.  Then use morphing to create the animation.

There may be others, but I am going to look into the third possibility since it seems the most user friendly.

Your thought would be appreciated.

Just thinking about it...You could just use the position script and not use the orientation script.  That way you can use the normal animation keyframing methods for controlling orientation.  Unless there is some repetitive rule for the orientation behavior you are wanting, scripting is no better than manual.

Or perhaps, I am still not exactly grasping what it is you are wanting to do.

Yes, I guessed that was what kreator meant by roll, but I guess I didn't explain myself very well either.  Do you want to be able to specify a static roll (z-axis rotation) that stays the same throughout the traverse of the path, or do you want to be able to set a continuous rolling "tumble" at some rate relative to the traverse of the path, or both, or something else entirely?

BTW, this is fun, conferring about script functionality.

I am not sure what you mean by roll.  Currently the script generates two controller scripts - one for position and the other for orientation.  The orientation is generated by reading the orientation of the spline.  Since the z-direction is along the spline, you effectively only get rotations about the x and y axes from the spline.  I could easily add a provision to generate rotations about the axes if I had a clearer idea of what you have in mind.
Do you want:
1) a static tilt relative to the spline?
2) a continuous rotation as it traverses the spline?
3) all the above, plus other stuff too?

If you can give me a vision of what you are looking for, I will sure attempt it.

Oh, and of course, you are very welcome!  I am glad to contribute to the greater glory of Anim8or!

ASL Scripts / Object Script that Generates Scene Controller Scripts
« on: July 10, 2008, 04:39:11 pm »
In response to a request from Kreator:

This script outputs to the console two controller scripts - one for position and the other for orientation - generated from reading the position and orientation components of a path.
This script requires Anim8or 0.97b or later.
The generated controller scripts must be cut and pasted from the console window (debug window) into the "Expression" areas of the controller of the scene element you wish to control.  NOTE:  this is necessary because Anim8or 0.97b broke the file export abilities.  Normally one would export these generated scripts to a text file, but the console is the only output currently available.  It is recommended that the properties of the console window be altered to allow more lines to be buffered.  Do do this:
1) Right-click on the title bar of the "Anim8or Debug Output" window, select "Properties"
2) On the "Layout" tab, increase the "Screen Buffer Size" to some large value (like 1000)
The number of frames that it should take to traverse the path must be placed into an integer attribute called "framesperpath" created in the object that contains the path.  If you want the path repeated continuously during the entire length of the the scene, an integer attribute called "repeat" must be created and set to 1 (set to 0 for no repeating).
Detailed instructions on usage:
1) Draw the path in a new object that you want followed
2) Go to Object->Attributes...
3) Select "New"
4) Type the name "framesperpath"
5) Select "Int" type
6) Type the number of frames for the path traversal
7) Select "New" again
8) Type the name "repeat"
9) Select "Int" type
10) Type either "1" for repeat or "0" for no repeat
11) Be sure the path is selected
12) Scripts->Run Scripts->path_to_controller.txt

The two scripts will be shown in the console window ready to be cut-and-pasted into the controller expression areas of the element you wish to follow the path.

Please let me know your feedback.

ASL Scripts / Re: script request-copy along a spline
« on: July 08, 2008, 10:32:10 am »
Please see the response to your other similar post:

There is already a script that can do that.  Carefully read this topic (especially the last post):

Be sure to use the final version of the script:;topic=906.0;attach=1080

The previous versions posted in that topic do not do what you want.  The final version is not a parametric script, but is very flexible.  You can choose whether shapes are copied to just the points, just the faces, or both.

General Anim8or Forum / Re: Quaternion->Euler Angle -> Quaternion?
« on: July 06, 2008, 08:25:58 pm »
Anim8or uses regular quaternions.  One can convert quaternions to Euler angles readily.  The formulas shown on the Wikipedia page at work.  In the nomenclature of the Wikipedia, the q0 is the same as w, q1 is x, etc.

If you need help writing a script to do the conversion, let me know.

ASL Scripts / Re: script request-copy along a spline
« on: July 05, 2008, 02:10:02 pm »
The file is available for download further up in this thread:;topic=879.0;attach=1027

ASL Scripts / Re: Script: Copy "Source" mesh to "Target" mesh
« on: June 26, 2008, 10:03:41 pm »
Attached is an updated and expanded version of the script.  Following Steve's wishes, there is only a command version of the script.  To use the script, you must edit it with a text editor to change the parameters.  First, create a mesh named "target" to be the template where the "source" will be copied.  Create a mesh called "source" to be copied onto the "target" mesh.  The script is very highly documented, so you can always look at it in a text editor to see how it is constructed as well as the parameter explanations below.

1) Fixed rotations of the copies around the x, y, and z axes [xabsrot,yabsrot,zabsrot]
2) Variable rotations of the copies around the x, y, and z axes.  The variable rotations are random up to half the amount entered plus or minus the Fixed rotations in (1) above.[xrot,yrot,zrot]
3) Fraction of available copy positions to be used.  If you enter 1.0, all available copy positions are populated.  If you enter less than 1.0, that fraction of the points will be randomly distributed. [meshptfraction]
4) Number of copies per available copy position.  This can be a random number between a minimum and the maximum per copy position or it can always be the maximum number. [minusemesh,maxusemesh,usemeshrand]
5) Scale of each copy.  This can be fixed at some value or random between a minimum and maximum.[minscale,maxscale,scalerand]
6) An offset to allow you to "sink" the copy into the surface of the target.  It is entered as a fraction of the total y-axis length of the "source".[yoffsetfraction]
7) Set the original orientation of the copies to be either straight up and down along the y-axis or normal to the surface of the mesh at the copy position.[usenormals]
8) Set whether to use the unrotate "source" y minimum point as the attachment point to the "target" mesh or to use the new calculated y minimum point after all the rotations.[useorigmin]
9) Set the copy positions to be the vertices (mesh points) of the "target" mesh.[useverts]
10) Set the copy positions to be on the faces of the "target" mesh.  If this is set, there will the number of sides of the face of the "target" mesh plus one: one in the center, and one each between the center and the vertices of the face.[usefaces]
11) A random seed to alter the random elements above.  If you leave this the same, each time you run script you will get the same distribution of random numbers.[the integer in parenthesis of randseed]

To achieve the highest density for fur, hair, or grass, set the variable rotation, a relatively high number for maxusemesh, use the vertices and the faces.  If you have a curved surface for the "target", use normals to have the copies point directly away from the faces and vertices instead of straight "up".


I'd love to hear your feedback and suggestions.

ASL Scripts / ASL's Future?
« on: June 26, 2008, 10:57:43 am »
Steve and us other grateful Anim8or users:

In my opinion, ASL promises to be the next great leap forward in functionality and usability for Anim8or.  I know I am (and I assume everyone else is) eager for the next updates in ASL.

I know I have been abusing the parametric scripting abilities by referencing other shapes within an object.  I did this in full knowledge that this was bad practice (and why I always do the command script version first).  Parametric versions of these scripts are desirable for one main reason: the ability to use the GUI to enter parameters and immediately see the results.  To me, this highlights the need for GUI interaction like dialog and message boxes with non-parametric scripts.

I was thinking this topic might be good place for everyone to post their wish list for ASL.  I am going to list my wish list in order of preference:

1) Object editor:  Dialog boxes for input
2) Object editor:  Ability to create and/or access other objects (including morph targets).  This would give the ability to simulate physics (cloth movement, fluid dynamics, endless other math based morphing) by creating a series of morph targets.
3) User defined functions and calling other scripts from current scripts passing variables
4) Object editor:  Message boxes (although being able to write to console in version 0.97b is awesome!)
5) ASL for scene mode, then sequence mode, then figure mode.

If you would be so kind, Steve, could you please give an update on the status of ASL?

Pages: 1 ... 7 8 [9] 10 11