How to know, if render external...

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

On 02/07/2004 at 05:20, xxxxxxxx wrote:

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

---------
... and get render fps?

How i can detect a external rendering and use fps value for rendering?
Frames per seconds (fps) rate on the document (in editor) and frames per seconds rate on rendering can be different.

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

On 02/07/2004 at 11:08, xxxxxxxx wrote:

A way I was doing it was checking when the Message MSG_MULTI_DOCUMENTCLONED was recieved in the Message() method.
 
Because the external renderer makes a copy of the document, so this works

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

On 04/07/2004 at 21:30, xxxxxxxx wrote:

That sounds a bit fragile. I think it's better to check HierarchyHelper::GetVFlags(), RenderNotificationData::external or RayParameter::internal_render, depending on where you need the information.

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

On 04/07/2004 at 22:53, xxxxxxxx wrote:

Hi. Thx for answers.

I get notification for external rendering with:

Bool CarAnimTagPlugin::Message(GeListNode* pnodeMain, LONG longMsgType, void* pvData)
{
     if (longMsgType==MSG_MULTI_RENDERNOTIFICATION)
          // begin of rendering
     {
          RenderNotificationData* prddData= (RenderNotificationData* ) pvData;
          
          if (prddData->start && prddData->external)
          {
               boRendExt= TRUE;
          }
          else
          {     
               boRendExt= FALSE;
          }
     }
     
     return TRUE;
}

But if i try to get frame rate of external rendering in Execute method with

if (boRendExt)
     {
          RenderDate* prdateOlo= (BaseContainer* ) pdocMain->GetActiveRenderData();

GePrint( "External render with frame rate of " +
               LongToString(prdateOlo->GetLong(RDATA_FRAMERATE, 0))+ " frames per sec");
     }

i get always zero :(.

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

On 06/07/2004 at 06:24, xxxxxxxx wrote:

Ok. I found self the problem:
The correct code is :

if (boRendExt) // external rendering is started
     {
          longFps= pdocMain->GetActiveRenderData()->
               GetData().GetLong(RDATA_FRAMERATE, 0); // get rendering frame rate
     }
     else
     {
          longFps= pdocMain->GetFps();
     }