Cloner & Tag with EXCPRIORITY_GENERATOR



  • On 08/02/2013 at 03:05, xxxxxxxx wrote:

    User Information:
    Cinema 4D Version:   R14 
    Platform:   Windows  ;   
    Language(s) :     C++  ;

    ---------
    My TagData plugin is registered with the TAG_EXPRESSION flag. It overrides AddToExecution()
    to be executed when generators are done. When I clone an object with this Tag, the Tag is not
    executed for each clone of the object, but for the object in the AM.
    ~~
    ~~
    How can I make my Tag being executed for the cloned objects instead of/additionally to the
    source object?

    Update: It seems to be something different. When I add the tag to an object and put it under
    a cloner, the tag is executed and then the object is cloned (I see this due to the changes that
    have been done to the object with my tag).

    When I put the tag on a cloner and put that cloner into another cloner, the cloner seems to be
    cloned and then the tag is executed (I see this because the changes made to the cloned objects
    in the cloner that would have normally been done are not reflected in the viewport for the
    clones of the cloner).

    I can put my tag onto the top cloner and my tag performs the appropriate modifications, but
    they are not reflected while rendering. When I have one cloner only and put my tag on it,
    rendering works.

    My tag performs modifications to the texture-tags on the cache of the cloner.

    One cloner:

    Nested cloner:

    Nested cloner, tag on inner cloner:

    You can see that the texture-tags offset are randomizer in the viewport, but in the nested cloner
    example, they are not. What is the renderer doing different to the viewport?
    When the tag is on the inner cloner, the tag does not even find any texture-tags (I have an
    attribute in the AM that tells me how many tags have been affected). When I do only move the
    cloner outside of the parent-cloner, the tags are affected properly again.

    Thanks in advance,
    -Niklas


Log in to reply