This video demonstrates use of MIX Controller in order to mix the effect of two independent curve controllers. Each of curve controllers is set to control the position of the box along a unique shape in two different dimensions. Incorporating both in one Mix controller approximate a surface which is result of translating one of the curves along the other one.
Automatic garbage collection improved. This version is more stable on all versions of 3DS MAX
Nurbs selection in Surface controller.
Surface controller now return Utangent and Vtangent value of editable polys
Error in displaying Transform controller settings is fixed.
License control system improved.
Replacing the array members with a new object is possible via PICK OBJECT button from modify panel. PARA will search for possible transformation to apply on new object.
Multiple Variable Override controllers can be used inside one controller.
Magnet controller allows use of vector controller instead of magnet object.
Convert controller error fixed.
New items:
New Deform controller has been added to library.
Custom pattern tool has been added to SubObject controller.
Curve controller can now return the closest point of array to the curve
Property search box is added to the main interface.
Deselect button is added to the main interface.
A parametric array Layer is automatically being created to hold all the array nodes.
Random controller is now available for being used inside a condition controller. This controller can generate Boolean values randomly based on a percentage (chance value).
Did you know that you can produce L-systems with parametric array!
Here is some experience with parametric array of a single line. I have used getItem function to access the parent node using the method below.
getItem index:[1+int((index1-2)/4),1,1]
Denominator (4) defines the number of branches per node. the script above returns the parent of the current object in L-system. Using this trick, you can adjust the start point of the line according to the end point of its parent. Of course the end point is just a transformation of the start point which defines the production rule of L-System. In new version of parametric array this will come as new controller and much more easy to implement on any type of object.
Positioning items based on other items location and dimensions.
Randomize function inside the script controller.
How to use getItem function to address a specific property of an item inside the array.
Note: the getItem function returns the value of specific property of the specific object inside the array. getItem index:[index1,index2,index3]prop:property
Use script controller to access objects properties outside of the array.
control the radius of cylinders in array according to their distance from a specific object.
How to use setTarget command Addressing properties of other objects from script controller.
Using getItem command the get the value of specific property of the current item.
Note1: setTarget function can return the value of the any propety of any object outside the array. setTarget object:object nameprop:property name
Note2: if you dont mention the index argument in getItem function it returns the value
of the property for the current item in the array. getItem prop:property name
How to control items along one direction using linear controller in a multi-dimensional array.
Reference: linear controller function takes the following arguments i:index value — index of item in X direction j:index value — index of item in Y direction K:index value — index of item in Z direction dim:dimensions in point3 format— defines the directions that linear controller will be applied on. for example [1,0,0] means only in x direction ,[0,1,1] means in Y and Z. Note1: if you don’t pass the i,j or kargument to the function it considers the current item indexes by default.
Note2: if you dont pass the dim argument to the function it considers all directions by default.