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
    • Recent
    • Tags
    • Users
    • Login

    Detecting accurate object dirt

    Scheduled Pinned Locked Moved SDK Help
    2 Posts 0 Posters 229 Views
    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.
    • H Offline
      Helper
      last edited by

      THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

      On 04/02/2010 at 07:11, xxxxxxxx wrote:

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

      ---------
      Hi,

      I have a scene object I get (I am in an object plugins GetVirtualObject) via link field in my object plugin and am currently using obj->GetDirty(DIRTY_DATA|DIRTY_MATRIX) to detect if that scene object's checksum changed. (also tried additionally with DIRTY_CACHE)

      However, that doesn´t work as expected. It always returns that the object changed (checksum always differs), even when the linked object is absolutely untouched (not moving, not rotating, no settings changed or animated and no deformers acting on it).  This happens mostly with polygon objects and but also with primitives. Overall I don´t get a consistent result. But then again, sometimes I get the correct result it seems however when the object gets a deformer and this one is removed again the checksum is permanently updated again. So it´s kind of hard to react correctly.

      So my question is, how to accurately detect if such an object really changed and only if it changed? I saw GetHDirty() but I am not fully sure how to use it (and not sure if it is better suited but as the docs say it´s a better way I guess it should do the job?).

      Thanks iA

      1 Reply Last reply Reply Quote 0
      • H Offline
        Helper
        last edited by

        THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

        On 04/02/2010 at 08:04, xxxxxxxx wrote:

        ok, I think GetHDirty() is working. First tests at least work as expected. Thanks for listening. 🙂

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