Maxon Developers Maxon Developers
    • Documentation
      • Cinema 4D Python API
      • Cinema 4D C++ API
      • Cineware API
      • ZBrush Python API
      • ZBrush GoZ API
      • Code Examples on Github
    • Forum
    • Downloads
    • Support
      • Support Procedures
      • Registered Developer Program
      • Plugin IDs
      • Contact Us
    • Categories
      • Overview
      • News & Information
      • Cinema 4D SDK Support
      • Cineware SDK Support
      • ZBrush 4D SDK Support
      • Bugs
      • General Talk
    • Unread
    • Recent
    • Tags
    • Users
    • Login

    Python Tag Priority Problem

    Cinema 4D SDK
    r20 python
    2
    7
    1.0k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • B
      bentraje
      last edited by

      Hi,

      I'm trying to rig using the Python tag but having a priority problem. I already tried shifting the priority numbers but it seems to be something else.

      There is only two tags that are at work the Python tag and the IK Tag

      You can see an illustration video of the problem here:
      illustration video

      For the illustration file, you can check it here:
      illustration file

      Thank you for looking at the problem

      1 Reply Last reply Reply Quote 0
      • M
        m_adam
        last edited by

        Hi @bentraje this is, unfortunately, a know Cinema 4D limitation.

        But I do have a few things to mention:
        In a TagData and a Python Scripting tag you are not allowed to modify the scene (so calling AddUndo,EndUndo, and EventAdd) from this threaded context is really wrong and can lead to undefined behavior (and it's actually doing nothing).

        Moreover, if you move your python tag to the lowerArm_bendy_L_con then the issue is limited (of course you still need to press CLTR+A after an Undo if you move the lowerArm_bendy_L_con).

        Finally, if you move the lowerArm_bendy_L_con_grp while the python tag is moved to lowerArm_bendy_L_con, it's working nicely (and could be a workaround)

        Cheers,
        Maxime.

        MAXON SDK Specialist

        Development Blog, MAXON Registered Developer

        1 Reply Last reply Reply Quote 2
        • B
          bentraje
          last edited by

          Hi @m_adam

          Thanks for the response. I'm not quite sure what you mean by

          RE: a know Cinema4D limitation"
          Is it the priority system or the python tag itself?

          RE: Finally, if you move the lowerArm_bendy_L_con_grp. . .
          I'm not sure. By any chance, do you mean something like this?
          https://www.dropbox.com/s/haf3nay9fu730ie/c4d082_python_priority_problem_v2.mp4?dl=0

          I'm not sure if I got it right since it still lags a little bit.

          1 Reply Last reply Reply Quote 0
          • M
            m_adam
            last edited by

            Sorry for not being enough clear.

            This is a Cinema 4D limitation of the priority/Viewport system.

            Yes, you get it correctly. I know you still need to click on "A" or CLTR+A in order to redraw the view. But this as a said a Priority/Viewport issue that can't be fixed in your end.

            My last point is that if you move the null (lowerArm_bendy_L_con_grp) on your last video it's working. So maybe you can hide the spline and display the null as a Rectangle, so you will only interact with this Null (note that it's also faster to draw null than Spline).

            Cheers,
            Maxime.

            MAXON SDK Specialist

            Development Blog, MAXON Registered Developer

            1 Reply Last reply Reply Quote 1
            • B
              bentraje
              last edited by

              Thanks @m_adam for the reply.

              RE: This is a Cinema 4D limitation of the priority/Viewport system.
              Gotcha. I'm guessing this is a python tag specific priority system too.

              The reason is the file above is a stripped down version of the Character Object with the Xpresso changed to python tag.
              And in the Character Object, there are no priority/viewport lag.

              RE: you can hide the spline and display the null as a Rectangle,
              Thanks for the suggestion but I can't. The reason is I'll toggle an effect of a bendy arm and no bendy. As such, I need a buffer where a control is with bendy and another not.

              Same thing IK and FK switch mechanism.

              1 Reply Last reply Reply Quote 0
              • M
                m_adam
                last edited by

                Apply the change I mentioned and apply the correct priority (same than Xpresso) fixed the issue but in some case.

                c4d082_python_priority_problem.c4d

                Cheers,
                Maxime.

                MAXON SDK Specialist

                Development Blog, MAXON Registered Developer

                1 Reply Last reply Reply Quote 1
                • B
                  bentraje
                  last edited by

                  Works as expected. Thank you @m_adam for getting back to me.

                  Have a great day ahead!

                  1 Reply Last reply Reply Quote 0
                  • First post
                    Last post