Your browser does not seem to support JavaScript. As a result, your viewing experience will be diminished, and you have been placed in read-only mode.
Please download a browser that supports JavaScript, or enable it if it's disabled (i.e. NoScript).
Hi,
I have a Null Object with an In-/Exclusion Userdata attached. In In-/Exclusion Userdata some Mograph Effector have been added. I want to use Sample Node to get all Strength of Mograph Effector, then add output Strength together. How can I do?
Null Object
In-/Exclusion Userdata
Mograph Effector
Sample Node
Strength
Here is the snapshot of the scene.
The problem I meet is that I can't use Python to sample the output of a Mograph Effector(Sample Node With Python), and I haven't found a way to cumulate output of an Object List Node.
Python
Object List Node
Thanks!
Hi @eZioPan, first of all, I would like to remind you, we do not have the purpose to help you with Xpresso and we normally do not have the purpose to help you on algorithm question.
With that's said, consider this as a Christmas present . You need to store everything yourself, so a map of effector and result. Then you can do the calculation.
import c4d #Welcome to the world of Python listEffector = list() class Effector(object): def __init__(self, eff, mat): self.eff = eff self.mat = mat def main(): global finalMat, listEffector effectorInList = None for e in listEffector: if e.eff == eff: effectorInList = e break if not effectorInList: newEff = Effector(eff, mat) listEffector.append(newEff) else: effectorInList.mat = mat finalMat = c4d.Matrix() for e in listEffector: finalMat *= e.mat
Find this script in the Gvnode of this file. 0_1545392377324_effectorSampling.c4d
Note that all effector offer the possibility to be used as a Deformer by switching the Deformation Mode to Object.
Cheers, Maxime.
Hi, @m_adam
Thank you for your kindness and the inspiring answer! It's a GREAT Christmas present for me!
So sorry asking XPresso related questions in this forum. The problem I faced is a little bit complex than this: I need sample Effectors' total Output Strengths in the position from a Polygon Object's Points, and store the result into a Vertex Color Map attached for further use. This problem bothers me for months, and I didn't find any clue until your post. I have never think about using Python Node with global variable in XPresso Network can keep the data as I need and do the magic!
XPresso
Effector
Output Strength
Polygon Object
Point
Vertex Color Map
Python Node
global variable
XPresso Network
From the bottom of my heart, I want to say THANK YOU. The answer you give not only solve this problem, but also inspire me re-thinking of ObjectList Node and Python Node, and how these nodes executed in an XPresso Network.
ObjectList Node
Just let me THANK YOU AGAIN!
Best wishes for you to have a wonderful holiday!