|
Hi there,
I have some issues concerning the netrender-interface which seem to be a general bug of 3ds max’ maxscript (going back to 2004!).
Since that did not improve up to now, I like to share my workarounds and appreciate anyone sharing his one.
BitmapIO-Classes
I found the problem that sometimes the backburner’s servers just render any bit-depth or with or without alpha-channel. I found out that this relates to the settings you have in your render setup dialog. Rendering in an other file format or BitmapIO-setting than the ones in the render setup dialog seems to cause these problems.
I tried to fix it by
renderscenedialog.close() /* close the render scene dialog, if open */ mypath = getBitmapSaveFileName() /* use the Bitmap-Save-dialog to choose the BitmapIO-settings */ rendOutputFilename = mypath /* use this path as output path for this job */
However, this will only work if you submit the saved file, not by submitting the job right now (perhaps there is something left in max’s cache?).
mySubmissionFile = (maxfilepath + "tmp_submissionfile.max") /* generate a temporary filename */ saveMaxFile mySubmissionFile clearNeedSaveFlag:false useNewFile:false quiet:true /* save this scene to a temporary file */ myRenderjob = mymanager.newjob file:mySubmissionFile /* set the renderjob for the file */
/* blabla */ jobSub.submit() /* submit the job */ deleteFile mySubmissionFile /* delete the temporary file */
Submitting multiple jobs from same max scene
The netrender-interface does not support changing the jobname if you have set an external file for submission. This does NOT work:
myRenderjob = mymanager.newjob file:mySubmissionFile
myRenderjob.jobName = "My beautiful name"
Instead, the name of the max file is used and should not be changed. So the only possibility to change the job name while using the same max file is to use different names for the max file:
myTempFilename = (substituteString mySubmissionFile ".max" "") + "_My additional name.max" /* this will generate a new file name */ copyFile mySubmissionFile myTempFilename /* copy current file to new temporary file name */ myRenderjob = mymanager.newjob file:mySubmissionFile /* set the renderjob for the file */
/* blabla */ jobSub.submit() /* submit the job */ deleteFile mySubmissionFile /* delete the temporary file */
Working with server-groups
Up to now, I just managed to get the number of groups (.numGroups) and the number of servers in a group (.SizeofGroup <number>). I did not manage to get the group names nor to get the servers by group.
Single frame output
Net rendering of frames via maxscript always puts a number between name and file extension. I have not found a way to prevent this yet.
Btw: Is there any possibility to get “official” support for maxscript? I’d enjoy speaking to (or even helping) someone who is able to improve maxscript implementation in 3ds max.
Chris
|