Problems with RegisterMessagePlugin in R20

in previous versions
RegisterMessagePlugin(ID_MTIMER, "", 0, NewObj(MTimerMessage));
where MTimerMessage has public inheritance from MessageData, was working ok for me.

Unfortunatly it doesn't longer compiles *no suitable conversion function from "maxon::ResultPtr<MTimerMessage>" to "MessageData " exists C4D_actual_plugin

Any tip on this?

Thank you in advance


in Cinema 4D R20 the return value of NewObj() has changed. It now returns a ResultPtr<>. This simply means you need to properly handle the error case.

In our C++ SDK documentation this is covered on the API Transition page and in more detail in the Error Handling manual.

In the microsdk example there's a snippet showing one way to handle the error.

One last request, please consider tagging your posts (as I did now here), so we can keep this forum tidy and easy to search.