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
    The Maxon SDK Team is currently short staffed due to the winter holidays. No forum support is being provided between 15/12/2025 and 5/1/2026. For details see Maxon SDK 2025 Winter Holidays.

    Team Render Questions [SOLVED]

    Scheduled Pinned Locked Moved SDK Help
    3 Posts 0 Posters 277 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

      On 19/11/2015 at 06:29, xxxxxxxx wrote:

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

      ---------
      ok, killed that other thread again because I noticed that if I first call "Save Project with all assets" and then do the team rendering it works fine. I was under the assumption that calling Team Render to PV would automatically call an asset saving into a temporary folder or something like that. Apparently that's not the case.

      Anyway, I have another question. When I Team Render to the Picture Viewer with 2 machines, I noticed that if one machine finishes its frame range and is assigned a new range, that there is a pre-roll stage of all previous frames.

      So if it is assigned frames 75-90, my scene hook::Execute function is called for all 74 previous frames.
      How can I detect these pre-roll frames so I can tell my scene hook not to do anything? Alternatively knowing the frame range itself would already do.

      Thanks!

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

        On 20/11/2015 at 04:19, xxxxxxxx wrote:

        Hello,

        actually, prerolling in this Team Render context is no different than prerolling in any other context. When you render locally a frame or frame sequence that does not start with frame 0, it will preroll. It seems there are not special flags or anything else given to the Execute() function to indicate this this is a preroll call.

        To get the assigned frame range on a client you have to send a message to the server requesting that range. This can look like this:

          
        NetRenderDocumentContext* context = doc->GetNetRenderDocumentContext();  
        if(context)  
        {  
         BaseContainer msg(MSG_NETRENDER_ANIMATION_RANGE), result;  
         msg.SetUuid(CONTAINER_JOBUUID, context->_renderJob->GetUuid());  
                   
          if(NetGeSyncMessage(context->_service, context->_renderJob->GetServerUuid(), msg, result) == MESSAGERESULT_OK)  
          {  
              if(result.GetBool(CONTAINER_RANGE_AVAILABLE))  
              {  
                  const Int32 rangeStart = result.GetInt32(CONTAINER_RANGE_FROM);  
                  const Int32 rangeEnd = result.GetInt32(CONTAINER_RANGE_TO);  
          
                  GePrint("Range: " + String::IntToString(rangeStart) + ":" + String::IntToString(rangeEnd));  
              }  
          }  
        }  
        

        best wishes,
        Sebastian

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

          On 20/11/2015 at 10:26, xxxxxxxx wrote:

          Thank you Sebastian! It would have taken me quite some time to figure out this one on my own. Also it helps me diving into the net lib conceptually.

          Cheers

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