View Full Version : nodal weight map delay

08-07-2012, 06:58 AM
I've been trying to figure out how to set up nodally a weight map controlling the delay of an object's parts moving, using DP Kit Part Move.

Say I have a row of 5 parts in a single object. I want them all to move to the left with an inertia like delay. The part on the extreme left moves immediately, the part adjacent 1/2 a second later, the next part another 1/2 second later, and so on.


08-07-2012, 08:26 AM
That was showed in mine video tutorial

08-07-2012, 08:49 AM
Yup... more or less as TA shows in his vid there... though there's options.

You can either take the weight value, which ofc is unique for each "part", multiply that by time, and multiply the move amount in Move by that result.

The alternative is to not use weights at all, which is also the quicker way for this... DP has the aprt info node, which'll assign an individual ID to each part, so you can mult that by time, and move by the result also... save time on creating the weights.

08-07-2012, 09:11 AM
Part index might change while editing mesh.
So you must be absolute sure that model is final.
Otherwise in Layout you will have desynchronization.

08-07-2012, 09:15 AM
Part index will change as you edit/change the model (or rather as you add/subtract "parts") as (I believe) the part index is a "psuedo" index created by the node itself, not an internal LW type of index... but... it does allow you to set up the effect and then have it all still inplace with the new "parts" added into the mix if you do change the model.

Ah... could work for or against really... depends on the situation.

08-07-2012, 09:19 AM
When you have e.g. polygon, then use cut tool on it, what happens? Modeling tool is making two polygons using same vertexes (+couple new one where is cutting edge), then delete original source polygon. This reordered indexes of whole mesh (if polygon was not last one).

ps. And that the reason for loosing CC edge weighting.. This info is stored in weight map per polygon (that is gone after cut).

08-07-2012, 09:22 AM
Im not entirely sure how part move indexes parts... for poly move sure, a slice, or replacement of a single poly would hose the "index order"... what effect altering a single poly (or even some polys) in a whole connected object would have on the part indexing I couldnt say...

DP, fess up before I waste an afternoon conducting what I (laugably) call experiments would ya??

08-07-2012, 04:26 PM
Thanks Guys, good advice as always!

08-07-2012, 11:52 PM
"Part" is not a DPKit concept,
it is implemented in dynamic tools like HardFX, Bullet,..
the Part ID is more an index since it can change
if the geometry is modified, but Part ID ouput
by Part Move and Part Info nodes matches the ID
of the LW Tools.

One simplest way to modify Part ID order in Modeler
is to copy/paste, if you have a reasonable number
of parts of course.

Part Move node has been updated recently, win32 and win64 versions,
with a new "Show ID" option for displaying the Part ID in Layout,
also new "Pivot" positions based on Part Bounding Box instead
of averaged points, "Invert" rotation options and new rotation system
(note that previous saved scenes with combined rotation may look
different but orientation should be preserved).

btw, there's a Time Lag node in DPKit for delaying.


08-16-2012, 02:57 AM
Thanks Denis

Is there a way to get parts to use a custom pivot? (I know a couple of years back this wasn't possible).

In my case I have multiple parts, all needing to use the same pivot value. So the offset for each part would be unique.

08-16-2012, 03:00 AM
How about making gradient with exposed (Show Output) keys? and plug part index to Input. Every color key will be different vector (Const > Vector). Output from Gradient will be movement.. So every part will move different offset..

08-16-2012, 03:59 AM
Sorry Sensei - I don't quite understand.

The attached scene and images hopefully demonstrate what I'm trying to do.

Inside the 'L to R' bounding box (a 'Pom's group node') is a setup which dynamically creates a gradient for any multi part object to which it is applied - left to right (using a combo of DP Kit plus TrueArt nodes), for the parts based on their horizontal position within the bounding box.

This is used to feed a delay on a control null, which is read to control the various displacements.

The results from the three different movements are obvious and almost expected. However, what I actually want to do is to get the parts to rotate around (like a cork screw) the central axis of the object as a whole (extending along the x axis at y=0) - but retain the shape of the individual parts.

As can be seen on the non-Part Move setup - this approach effects the vertices, rather than the parts (which surprises me because inside the gradient node setup I'm using part info x value divided by bounding box x value) .This approach does achieve the correct pivot. But obviously deforms the parts.

Whereas the DP Kit Part Move setups effect the parts as discreet units, but I can't get the pivot where I want it.

Since I need to apply this motion to a large number of different objects for a large number of different animations, I'm trying to keep the control as a generic nodal abstraction - rather than using traditional animation techniques. This way I can hopefully simply 'replace items from scene'...

Further help on this is most welcome!:thumbsup:

08-16-2012, 04:36 AM
A simple delayed bank rotation with Time Lag node,
if you switch to wireframe mode you should see the part index
in the opengl preview.



08-16-2012, 04:41 AM
Sorry Sensei - I don't quite understand

I am giving theoretical way to give each part different pivot.

08-16-2012, 04:59 AM
Next version should get a Shift input evaluated per part,
like in this sample, a delayed normal pitch rotation,
a pivot moved from bottom to top, could be
animated too.