Get a parameter at a specified BaseTime inside threaded function


Hi, I’m hoping to get some help implementing this functionality, I’ve hacked together a way to do it but I’m not sure it’s the best practice. I’m using the C4D C++ SDK.

I need to evaluate a parameter of a class derived from ObjectData at a specific frame. I have a BaseTime value that stores the frame I need. The evaluation at that frame needs to happen inside the ModifyObject function, so I’m in a thread that is not (necessarily) the main execution thread. My solution so far is to use the BaseDocument::ExecutePasses function after setting the document to the BaseTime I need. However, I’m not sure this is the best solution. Is there a better way to do this?

On a related note, I get a debugbreak() after running ExecutePasses(). Is this due to something I’m doing when calling it?

Thanks in advance for any help!


You are much more likely to get an answer to these types of questions over on It’s worth signing up and supporting that forum as the footfall of people who can answer developer questions is higher.