PDA

View Full Version : Expressions Crash



Chris Jones
03-25-2013, 12:42 AM
I'm trying to get the most basic of channel follower expressions to work on a morph, essentially [Null.Position.Y] as per this tutorial (http://lightwiki.com/component/k2/item/185-using-expressions-to-control-morphs-lightwave-tut#.UU-X4zd9XAz), but all I get is crashing, hanging, or just plain nothing at all. It will work on the unrigged model or by using the Channel Follower Modifier (which doesn't give realtime feedback), but not when adding an expression directly to the morph on the rigged character.

Any thoughts appreciated.

LW 11.5, WinXP 32 bit by the way.

(c:

Chris Jones
03-25-2013, 04:22 AM
Alright, I've managed to trace it to the DPont Channel Info node, which is using the same morph target and must be in conflict with the expression. I need that node for my (hard earned) wrinkle rig, so unless anyone has any bright ideas I'm going to have to either ditch the face rig, or lose an important part of the wrinkle rig. Hmm...

evenflcw
03-25-2013, 04:48 AM
Have you tried lscript notation instead of bracket notation? ie Null.Position(Time).y or something like that. It used to provide interactive feedback when bracket notation did not, hinting that it's implementation runs deeper.

RebelHill
03-25-2013, 04:57 AM
Yeah... Ive seen channel info node cause crashes in situations too... nothing you can do about it really. Id suggest that the best way around is to instead reference the nulls of your face rig rather than the morf channels to drive the nodal effects.

Chris Jones
03-25-2013, 06:19 AM
Yeah... Ive seen channel info node cause crashes in situations too... nothing you can do about it really. Id suggest that the best way around is to instead reference the nulls of your face rig rather than the morf channels to drive the nodal effects.

Ah, of course! Seems obvious now that you mention it. Thanks RH!


Have you tried lscript notation instead of bracket notation? ie Null.Position(Time).y or something like that. It used to provide interactive feedback when bracket notation did not, hinting that it's implementation runs deeper.

I tried this out of curiosity but unfortunately I couldn't get it to do anything (most likely that's down to my incompetence in this area). I like your logic though, thanks for the suggestion.

(c:

dpont
03-25-2013, 06:45 AM
Alright, I've managed to trace it to the DPont Channel Info node, which is using the same morph target and must be in conflict with the expression...

Is there a possibility to reproduce this issue,
simple scene, settings?

Denis.

Chris Jones
03-25-2013, 06:11 PM
Hey Denis, here you go.

113020

Just select Morph Plane d and turn on the expression in the graph editor and it should crash. The Horizontal morph works in Morph Mixer as long as that expression is disabled (strangely I have to open the node editor first to get the displacement to show up), and the expression works as long as the channel info node is removed from Morph Plane d.

dpont
03-26-2013, 02:07 AM
Was an issue in the Channel Info node with Thread Mesh Evaluation,
this has been fixed.

Thanks for report,
Denis.

Chris Jones
03-26-2013, 02:53 AM
Great! Thanks Denis.

RebelHill
03-26-2013, 04:27 AM
sweet!

Chris Jones
04-16-2013, 07:11 PM
Was an issue in the Channel Info node with Thread Mesh Evaluation,
this has been fixed.

Thanks for report,
Denis.

Hey Denis,

Just a little thing - referencing the morphs with Channel Info works again with displacements now, but crashes on render when the same is applied to the surface node editor. Example: 113637

(c:

dpont
04-17-2013, 01:16 AM
...Just a little thing - referencing the morphs with Channel Info works again with displacements now, but crashes on render when the same is applied to the surface node editor.

...Another multithreading issue but in surfacing context,
this has been fixed.

Denis.

Chris Jones
04-17-2013, 09:00 PM
Thanks Denis,

Works on the sample scene, but still crashes my full-blown human scene. That scene has become too unwieldy to isolate bugs easily though, so I might have to just avoid directly referencing morphs.

dpont
04-17-2013, 11:55 PM
..Works on the sample scene, but still crashes my full-blown human scene. That scene has become too unwieldy to isolate bugs easily though, so I might have to just avoid directly referencing morphs.

The multithreading issues comes from the LW Channel evaluation function
not the node itself and specifically with some optional channel type like morph,
but this isn't really documented for us, third party,
so it is now forced to be single threaded in all situations,
but in a complex setup you may reveal an issue
in another node.

Denis.