Anim8or Community

Please login or register.

Login with username, password and session length
Advanced search  

News:

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 2 3 [4] 5 6 ... 11
46
General Anim8or Forum / Re: Making trees
« on: September 24, 2014, 10:39:45 am »
Sorry about posting the program that doesn't work in Win7.  I should have stated that originally.  I have WinXP virtual machines that I use for old (but well loved) programs that do not work in Win7.  Who doesn't have an old XP license from an ancient or non-working computer lying around?  Both Microsoft Virtual PC and Oracle VirtualBox are free, easy to use, and work so well you would think they were natively installed.  As an added bonus, Microsoft Virtual PC with WinXP uses XP drivers, so hardware that does not have drivers for Win7 will work.

47
General Anim8or Forum / Re: Making trees
« on: September 22, 2014, 12:57:11 pm »
Attached is a tree generator that was abandoned and made free by the author.  It will export formats that Anim8or can import.

Install the demo, then copy the patch into the program directory.

48
Steve,

There are occasions when you cannot easily get to the element (for example: if it is inside another).  I use the menu access to element settings constantly.

Thank you,
NickE

49
I kinda guessed it was something like that.  There are workarounds I can use.  I just wanted to report a found issue.

Thank you!

50
Steve,
   I think I may have found another bug (or maybe it is a feature), but it has been around since at least v0.95c. (I tested).

In Figures (and therefore Sequences and Scenes), the 28th child bone does not follow the changes to the 27th bone (the 28th bone's direct parent).  The 28th bone does follow the changes to any earlier bone.

It is strange that this has not been seen before, but I could not find any mention of it.  Maybe I am doing something incorrectly.

I have attached a sample an8 that shows this behavior in the figure (and sequence, and scene).  I have made several similar figures and each shows the same behavior.

What do you think?

Thank you!

Steve: Upon further testing, it appears to be related to having a namedobject attached to the bones.  When I delete the objects attached to the 27th bone, the 28th bone responds correctly, but the 29th now does not respond to the 28th until I delete the object attached to it (and so on).

51
Thank you, Steve.  It seems to have cleared the bug.

52
Steve,
   I have attached an an8 file and a texture jpg.  Once the file is opened, simply double clicking the mesh (battery model) to open the "Mesh Properties" dialog, then clicking "OK" will clear the materials.  I get the same results whether I alter any of the properties or not.

As far as ASL is concerned, I am still testing the newest capabilities.  If you don't mind, I will reserve my ASL wish list for another post so I can put my thoughts together as clearly as possible.

Thank you so much!

53
In Object Editor, if a textured mesh is double-clicked to bring up the "Mesh Parameters" dialog box, when the "OK" button is clicked, the mesh loses references to its materials.  The UV coordinates are not lost, but the mesh's face references to individual materials are lost.

I first noticed this in Build 1086 and it persists in Build 1088.

A close look at the an8 file before and after shows that the "materiallist" has had the materials removed (leaving only the {" -- default --"}. Further, in the "faces" section, individual references to the materials are set to zero.  The materials are still in the object, just no longer associated with the mesh.

Thank you for continuing development on Anim8or.  I have been using it continuously since 2007.

I am especially looking forward to more ASL development.


54
Ongoing Anim8or Development / Re: ASL Functions
« on: February 26, 2014, 07:14:26 am »
Wow, Steve, this is awesome!  What do you think about an #include type command or a linker type command that allows us to build libraries of functions in a separate file for easier reuse?

55
cooldude234,

Whenever I have tried to determine whether a line segment (like an edge) intersects a polygon, I have done it in two steps:
1) determine if and where the line segment intersects the plane of the polygon
2) determine if that intersection is actually inside the polygon

It is unclear from your code segment what Ray1 and Ray2 actually are, but if they are points that define a line segment, then this is how I would solve this problem:


   facenormal=normalize(crossproduct(vert3-vert2,vert2-vert1))   //get normal of polygon plane
   rayvector= ray2 - ray1                                        //get vector of ray line segment
        ray_plane_angle=dot(facenormal,rayvector) //actually the arccos of the angle between
        if ray_plane_angle != 0                   //if zero, the two are parallel
            ray_plane_intersection_point = ray2 + ((dot(vert1 - ray2,facenormal) / ray_plane_angle) * rayvector
            //above, calculate the intersection point of vector of the line segment and plane
            //next add angles of intersection point to two of the vertices at a time.
            //if the angles add to 360 deg (or 2*pi rad) then inside, otherwise the intersection point is outside
            total_angles= acos(dot(normalize(vert1-ray_plane_intersection_point),normalize(vert2-ray_plane_intersection_point)))
                         +acos(dot(normalize(vert2-ray_plane_intersection_point),normalize(vert3-ray_plane_intersection_point)))
                         +acos(dot(normalize(vert3-ray_plane_intersection_point),normalize(vert1-ray_plane_intersection_point)))
            if (abs(total_angles - 2*pi) < 0.001) contact_point=ray_plane_intersection_point

If you are actually dealing with a line segment, rather than an endless line, then you need to check whether the intersection point is actually between ray2 and ray1:
           
            if length(ray2-ray_plane_intersection_point)+length(ray1-ray_plane_intersection_point) > length(ray2-ray1)
                //intersection point is not between ray2 and ray1


I wrote the code in pseudo code rather than a particular language.
I hope that helps.
NickE

56
Anim8or v0.98 Discussion Forum / Re: Feature Request Thread
« on: June 12, 2013, 03:40:34 pm »
@ianross,

As kreator mentioned, Boolean operations are available via ASL script.  Kubajzz and I both did a different approach.  I cannot remember if I ever posted my version.  I attached mine below.  Please read the header to the file for instructions.

NickE

57
Anim8or v0.98 Discussion Forum / Re: Feature Request Thread
« on: June 05, 2013, 07:14:22 am »
Raxx,
The file write ability has many, many more uses than just passing parameters (like writing entire an8 files), plus setting an attribute is not going to let you pass anything large like arrays. 

An object script controller would be a scene controller like position, orientation, or morph, but allow one to run object scripts while in scene mode where the object script would have access to scene mode variables like time or frame and access to the other scene's objects controllers.  I have written fluid simulation and other "physics" scripts that run in object mode.  To use them in scene mode requires quite the workaround to render them.  Please see this thread:

http://www.anim8or.com/smf/index.php?topic=2358.msg17352#msg17352

NickE

58
Anim8or v0.98 Discussion Forum / Re: Feature Request Thread
« on: June 03, 2013, 04:49:57 pm »
If I could beg for a single ASL update for the next preview, it would be file.read member function(s).

Here's why:

It would be a work-around for most of the other items on the scripting wish-list. 
(1) One could read and write Anim8or project files allowing one to do particle animation, fluid dynamics, and physics by generating objects and morph targets and scene object placement and controller values, and so much more!
(2) One could simulate parameter passing between scripts
(3) Custom import filters

Once a file.read ability exists, the only thing needed to have robust access to all of Anim8or's modes would be the ability to trigger another script's execution from within a script.  (more begging here)  Even the simplest implementation would be sufficient: completely terminate the original script and begin execution of the requested script.  The file read/write functions can be used to simulate user defined functions ability.

Those two additional functions - file.read and script.execute - would open the door to the development of libraries of script functions like physics, walk sequences, mouth movement, lip synch, etc.

If I could beg for another:

I would like to request that an "object script" controller be added in scene mode with access to the scene variables of time,  frame, and other scene controllers.  If this were done, the full range of physics would be possible in Anim8or!


59
ASL Scripts / Re: BVH File Import into Anim8or
« on: June 02, 2013, 11:44:22 am »
A user (Daniel) found a set of BVH files that could not be converted with the current version.  Those files had 6 channels for each bone as opposed to the normal 3 channels.  It was causing the program to crash.  An updated version is attached.

Feedback is appreciated.

60
ASL Scripts / Re: Anim8ing a Tank Tread
« on: September 01, 2011, 05:04:19 pm »
Arik,
Sorry it took me so long to get to this...

I looked at your attached file and there are several reasons why you are getting this behavior.

1) The script looks at the path and reads the orientation of path at the points where it is going to copy the "copytarget".  If you adjust the individual points on the path in different views, you can inadvertently change the orientation of the path in totally unpredictable ways.  For treads (and similar things), I used the Build->Primitives->N-gon to make a circle and then stretch it out.

2) Your "target" object's pivot was at the origin of the screen rather than in the center of your object.  Your object's orientation is measured from this pivot.  The only way to move that is using the Object/Axis button and manually moving it to the center of the object.

3) Your "target" object's origin was also at the screen origin, rather than your point zero.  I have attached a script that will "fix" the internal coordinates to the apparent coordinates of any highlighted mesh.

I have also attached the original project with an additional object containing the fixed path and object so that the scripts work properly.


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