AnimateDocument and Threads



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

    On 22/11/2003 at 08:08, xxxxxxxx wrote:

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

    ---------
    The documentation states that AnimateDoument( BaseThread*, Bool, Bool ) can be passed a NULL for the thread.  In every scenario I have tried passing NULL causes C4D to crash.  If NULL cannot be passed where should I attain a thread when executing an AnimateDocument in the Message function of a plugin object?
    Regards,
    Thomas Cray
    www.cidertank.com



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

    On 22/11/2003 at 09:29, xxxxxxxx wrote:

    Well I've used AnimateDocument() with the thread as NULL many times and never had a crash, so that isn't the problem (IMO). Have you looked at why it is crashing, maybe it is when you are calling it.



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

    On 22/11/2003 at 11:20, xxxxxxxx wrote:

    I was trying to use it in the overloaded Message function in an instance of the ObjectData class.  Passing NULL for the thread causes a crash, The same happens in GetVirtualObject but that makes sense to me.  Pushed around it, just don't understand it.
    Regards,
    Thomas Cray,
    www.cidertank.com



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

    On 24/11/2003 at 01:01, xxxxxxxx wrote:

    I think that bad things could happen if you call it with NULL when you're in another thread. From what you say, I guess that GetVirtualObject() and Message() qualifies for that. For the former you could perhaps pass hh->GetThread(). For Message() I don't know what to pass.
    Also, note that generally it's dangerous to call AnimateDocument() on the main document during the draw/render pipeline. It's safer to do it on a clone.


Log in to reply