Your browser does not seem to support JavaScript. As a result, your viewing experience will be diminished, and you have been placed in read-only mode.
Please download a browser that supports JavaScript, or enable it if it's disabled (i.e. NoScript).
THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 21/02/2012 at 17:49, xxxxxxxx wrote:
Hey Guys(and gals?)! ran into a bit of a problem with the new script I'm working on. I'm sure the solution is simple, but I cant seem to find where the multipass render's layers are stored at(in the docs active renderdata as a c4d.BaseContainer... right?).
I found the command [RenderData.GetFirstMultipass()](file:///C:/Users/AVDesign/Downloads/C4DR13051PYTHONSDKHTML05012012/modules/c4d.documents/RenderData/index.html#RenderData.GetFirstMultipass) which seems to work fine for retrieving whatever the very first render pass is, but how exactly can a create a list of all my render passes if i only have a command to get the first one?
[RenderData.GetFirstMultipass()](file:///C:/Users/AVDesign/Downloads/C4DR13051PYTHONSDKHTML05012012/modules/c4d.documents/RenderData/index.html#RenderData.GetFirstMultipass)
I also tried getting the base container of the Active RenderData in my document, and explored which container houses the multipass layers, but it doesn't seem that there is one... am i missing something here?
here is an example of my code:
rd = doc.GetActiveRenderData()
multiPass = rd.GetFirstMultipass #this works! but i need to get other passes... for i,o in rd.GetData() : if isinstance(o,c4d.BaseContainer) : #find all BaseContainers... print "container found!" #print container found! print i,o #print whats inside! print o.GetData(i) #get any further data for my own checking #none of this yields the multipass renders...
On 21/02/2012 at 18:27, xxxxxxxx wrote:
Figured it out. i hate when i do this.. sorry guys.
rd = docs.GetActiveDocument().GetActiveRenderData() MP = rd.GetFirstMultipass() RP = RenderPasses = [] RP.append(MP) print MP while MP.GetNext() and MP.GetNext() not in RP: MP = MP.GetNext() RP.append(MP) print RP