[Closed] Batch Rendering 2000 cameras-how to script it?
Hi there, Im having an issue rendering an animation with a plug-in for 3dsMax 2013: Clouds2Max. Great plug-in to visualize a point cloud. However, when I submit a network rendering job, or sequence on my workstation, the point cloud software is not updating to the corresponding frame in the animation, only the 3dsMax camera animates. The point cloud appears to take the initial settings of the start frame of the animation; 3dsMax renders the camera moving through the cloud with those settings applied to the whole sequence. The points do not adaptively scale nor does the level of detail modify accordingly in regards to the proximity of the camera view to the cloud. Also, the points do not align to the camera view. However, if you go to any frame manually in the animation and render a still it will.
So I used snapshot tool to create a camera at each frame of my animation. I manually submitted every 100th frame as an individual backburner job via batch render and it works. Thing is, I have 2000 cameras now that need to sequentially be called as individual render jobs, and each frame name a unique sequential frame. I want to script this with a loop until I reach the end of my animation. Im a novice scripter at best. Please help. Hopefully soon this plug-in will get updated and not need this workaround, but I have a project due before they will probably release an update.
I found a link to a prior post that might be of interest:
http://forums.cgsociety.org/archive/index.php/t-58539.html
. Thanks in advance.
Hi UnrealMirage
This function will setup a batch render view for each camera that is given to the function and assign a different single frame to render, starting at the current slidertime.
fn setup_huge_batch cams clearviews:true startframe:slidertime=
(
if clearviews then for i = 1 to batchrendermgr.numviews do batchrendermgr.deleteview 1
frame = startframe
for cam in cams do
(
theview = batchrendermgr.createview cam
theview.enabled = true
theview.overridepreset = true
theview.startframe = frame
theview.endframe = frame
theview.height = renderheight
theview.width = renderwidth
theview.pixelaspect = renderpixelaspect
frame += 1
)
)
So if you select all 2000 cameras and type
setup_huge_batch selection
all selected cameras will be used.
Now open (or close and reopen) the batch render dialog. All views will be displayed. Hit render to render (this could of course be done inside of the script as well).
you can also pass variable over to the function:
-- do not clear old batch views and start at frame 50
setup_huge_batch selection clearviews:false startframe:50
Shawn,
Our programmer thinks he has a fix for the PointCloud not updating, in C2M.
(I am one of the co-creators of the plugin).
Also, where are you located in Atlanta?
I am not too far away (and actually in Atlanta a lot).
Perhaps I could drop in?
PM me with your thoughts.
Thanks,
David