m_hinks
September 4, 2013, 8:37am
#1
Hi,
I have just tried the new multiregion render in 3dsmax 2012 design and it throughs an error, see attached. I have tried in 3ds max 2014 and it works! The error happens when I make a sphere, and make a region, and use the fit to object btn.
Also I’m not sure its working with the Vray frame buffer, only when saving through the max common save section. It saves over the original image, not saving a patch file, so the draft job fails.
Thanks,
Mark
Bobo
September 4, 2013, 9:34am
#2
Thanks for the report!
Please also send the content of the MAXScript Listener. The screenshot is cool, but it does not really tell me what went wrong…
I tested in Max 2012 and it works for me, but I don’t have the Design version. I don’t see why it would make a difference.
Out of curiosity, is your Max 2012 running a different graphics driver? (trying to figure out whether the gw method is having an issue with that).
m_hinks
September 4, 2013, 9:37am
#3
Sure, this ok?
[code]Welcome to MAXScript.
Resolving Network Path: 305ms
SMTD_AutoLoadSuccessful = true
Loading RegionManipulator.ms: 37ms
Loading TileManipulator.ms: 2ms
Loading SubmitMaxToDeadline_Functions.ms: 363ms
Loading SubmitMaxToDeadline_SanityCheck_Private.ms: 2ms
Loading SubmitMaxToDeadline_SanityCheck_General.ms: 2ms
Loading SubmitMaxToDeadline_SanityCheck.ms: 2ms
Loading SubmitMaxToDeadline.ms: 1ms
Loading SubmitMaxToDeadline_Defaults.ini: 2ms
Loading SubmitMaxToDeadline_StickySettings.ini: 2ms
Total SMTD Launcher Time: 4440ms
– Error occurred in V loop; filename: C:\Users\mark.h\AppData\Local\Autodesk\3dsMaxDesign\2012 - 64bit\enu\scripts\SubmitMaxToDeadline.ms; position: 275322; line: 5825
– Frame:
– V: [-15.176,-4.26522,-12.2787]
– thePos: undefined
– called in o loop; filename: C:\Users\mark.h\AppData\Local\Autodesk\3dsMaxDesign\2012 - 64bit\enu\scripts\SubmitMaxToDeadline.ms; position: 275417; line: 5828
– Frame:
– o: $Sphere001
– called in fitToSelection(); filename: C:\Users\mark.h\AppData\Local\Autodesk\3dsMaxDesign\2012 - 64bit\enu\scripts\SubmitMaxToDeadline.ms; position: 275423; line: 5829
– Frame:
– theMaxX: undefined
– theMinY: undefined
– xCoords: #()
– theMaxY: undefined
– yCoords: #()
– vpAspect: 2.24356
– theMinX: undefined
– rAspect: 1.77778
– ySize: 853
– xSize: 1518.22
– yDiff: 0
– selected: #($Sphere001)
– xDiff: 198.889
– called in btn_FitToSelection.pressed(); filename: C:\Users\mark.h\AppData\Local\Autodesk\3dsMaxDesign\2012 - 64bit\enu\scripts\SubmitMaxToDeadline.ms; position: 276123; line: 5853
– Frame:
– theObjects: #($Sphere001)
– theSel: #(1)
– result: undefined
MAXScript Rollout Handler Exception:
– No “”-"" function for undefined <<
[/code]
Bobo
September 4, 2013, 9:42am
#4
Can you run this in MAXScript Listener and tell me the result?
gw.transPoint [0,0,0]
m_hinks
September 4, 2013, 9:49am
#5
gw.transPoint [0,0,0]
undefined
Bobo
September 4, 2013, 9:52am
#6
Ok, this is interesting.
What is your graphics driver set to?
Bobo
September 4, 2013, 9:56am
#7
Oh wonderful. Nitrous in 2012 does not implement this method. D3D and OGL work. Nitrous in 2013+ works. Crap.
Will have to work around this…
m_hinks
September 4, 2013, 10:10am
#8
Its the Nitrous (Direct3D 9.0 - NVIDIA GeForce GTX 580)
Bobo
September 4, 2013, 10:13am
#9
Here is a quick fix.
Copy into your Repository\submission\3dsmax\main\ folder.
Restart SMTD.
SubmitMaxToDeadline_Nitrous2012fix.zip (63.9 KB)
m_hinks
September 4, 2013, 10:17am
#10
Perfecto, works now, although it has a pretty big gap around the sphere, not a tight region bos, but that might be planed?
Works now thought, thats the main thing. Jus the issue about using Vray render elements, and patching them correctly. Also I wondered whether a multi layer exr could be patched, that would be AMAZING!
Mark
Bobo
September 4, 2013, 10:58am
#11
The region uses the world bounding box (if you are displaying the selection brackets, you should be able to see). The Safe Frames MUST be turned on for the regions to match the display.
The VRay / RE / EXR questions are out of my competence, they are for the Deadline / Draft developers. (The Assembly is performed by Draft).
m_hinks
September 4, 2013, 11:24am
#12
Cool, sounds good.
I’ll await further info from them.
Thanks for fixing so quick!
Mark
@Mark - Hi, have you tested this yet?
paul
September 5, 2013, 3:13pm
#14
Currently Draft does not support multi-layer EXR files, but it is on our wish list.
Also I’m not sure its working with the Vray frame buffer, only when saving through the max common save section. It saves over the original image, not saving a patch file, so the draft job fails.
The VRay frame buffer should work with tile rendering in most cases. The exception is if you’re saving out a raw vrimg or exr file by specifying a path in the VRay frame buffer settings (which I think you’re doing here). However, since draft (or even the old tile assembler) don’t support these formats, if we were to extend support to these vray frame buffer formats, the assembly at the end would still have to be a manual process.
It probably makes sense for us to wait until Draft supports one or both of these formats before we go down this road.
Cheers,
m_hinks
September 6, 2013, 8:31am
#16
Sorry Mike, no not yet, been oft and now a stupid Friday deadline!! I’ll try again later if I can, but the first time I tried, i’m sure it dodnt work saving .tga elements through VFB.
VFB only supports *.vrimg or tile-based *.exr as an output if saving directly from the VFB. Images files such as *.tga should work via the normal 3dsMax Frame Buffer tho…
(I’m a little confused by Ryan’s reply yesterday as the old TileAssembler does support multi-channel tile/scanline based EXR files including RE’s if saved from the 3dsMax Frame Buffer)
So, the old TileAssembler supports EXR file tile rendering (saved from Max FB), but the new Draft doesn’t?
TileAssembler plugin playing nicely with multi-channel EXR assembly:
0: Loaded plugin: TileAssembler
0: Task timeout is disabled.
0: Loaded job: oldTileRenderingEXR_SingleFrame - Tile Assembly Job (52299a8d71bd0c0ff86505fd)
0: INFO: Executing plugin script C:\Users\owenm\AppData\Local\Thinkbox\Deadline6\slave\WIN7X64\plugins\TileAssembler.py
0: INFO: About: Tile Assembler Plugin for Deadline
0: INFO: The current environment will be used for rendering
0: Plugin rendering frame(s): 0
0: INFO: Stdout Handling Enabled: True
0: INFO: Popup Handling Enabled: False
0: INFO: Using Process Tree: True
0: INFO: Hiding DOS Window: True
0: INFO: Creating New Console: False
0: INFO: Render Executable: “C:\Program Files\Thinkbox\Deadline6\bin\TileAssembler64.exe”
0: INFO: Cleaning up tiles after assembly is finished
0: INFO: Render Argument: --verbose 5 --cleanup-tiles “C:\MultiRegionRenderTests\EXR\test_tile_1x1_4x4_0000.exr”
0: INFO: Startup Directory: “C:\Program Files\Thinkbox\Deadline6\bin”
0: INFO: Process Priority: BelowNormal
0: INFO: Process Affinity: default
0: INFO: Process is now running
0: STDOUT: TileAssembler 1.2 rev 52433
0: STDOUT: Copyright © 2005-2013 Thinkbox Software Inc
0: STDOUT: Portions Copyright © Copyright 1999-2007 ImageMagick Studio LLC, a non-profit organization dedicated to making software imaging solutions freely available.
0: STDOUT: Portions Copyright © 2002, Industrial Light & Magic, a division of Lucas Digital Ltd. LLC All rights reserved.
0: STDOUT: Processing 4 by 4, a total of 16 tiles…
0: STDOUT: Validating that component tile “C:\MultiRegionRenderTests\EXR\test_tile_1x1_4x4_0000.exr” exists.
0: STDOUT: Validating that component tile “C:\MultiRegionRenderTests\EXR\test_tile_1x2_4x4_0000.exr” exists.
0: STDOUT: Validating that component tile “C:\MultiRegionRenderTests\EXR\test_tile_1x3_4x4_0000.exr” exists.
0: STDOUT: Validating that component tile “C:\MultiRegionRenderTests\EXR\test_tile_1x4_4x4_0000.exr” exists.
0: STDOUT: Validating that component tile “C:\MultiRegionRenderTests\EXR\test_tile_2x1_4x4_0000.exr” exists.
0: STDOUT: Validating that component tile “C:\MultiRegionRenderTests\EXR\test_tile_2x2_4x4_0000.exr” exists.
0: STDOUT: Validating that component tile “C:\MultiRegionRenderTests\EXR\test_tile_2x3_4x4_0000.exr” exists.
0: STDOUT: Validating that component tile “C:\MultiRegionRenderTests\EXR\test_tile_2x4_4x4_0000.exr” exists.
0: STDOUT: Validating that component tile “C:\MultiRegionRenderTests\EXR\test_tile_3x1_4x4_0000.exr” exists.
0: STDOUT: Validating that component tile “C:\MultiRegionRenderTests\EXR\test_tile_3x2_4x4_0000.exr” exists.
0: STDOUT: Validating that component tile “C:\MultiRegionRenderTests\EXR\test_tile_3x3_4x4_0000.exr” exists.
0: STDOUT: Validating that component tile “C:\MultiRegionRenderTests\EXR\test_tile_3x4_4x4_0000.exr” exists.
0: STDOUT: Validating that component tile “C:\MultiRegionRenderTests\EXR\test_tile_4x1_4x4_0000.exr” exists.
0: STDOUT: Validating that component tile “C:\MultiRegionRenderTests\EXR\test_tile_4x2_4x4_0000.exr” exists.
0: STDOUT: Validating that component tile “C:\MultiRegionRenderTests\EXR\test_tile_4x3_4x4_0000.exr” exists.
0: STDOUT: Validating that component tile “C:\MultiRegionRenderTests\EXR\test_tile_4x4_4x4_0000.exr” exists.
0: STDOUT: Assembling a .exr image file
0: STDOUT: Getting the image width of file “C:\MultiRegionRenderTests\EXR\test_tile_1x1_4x4_0000.exr”
0: STDOUT: Getting the image width of file “C:\MultiRegionRenderTests\EXR\test_tile_2x1_4x4_0000.exr”
0: STDOUT: Getting the image width of file “C:\MultiRegionRenderTests\EXR\test_tile_3x1_4x4_0000.exr”
0: STDOUT: Getting the image width of file “C:\MultiRegionRenderTests\EXR\test_tile_4x1_4x4_0000.exr”
0: STDOUT: Getting the image height of file “C:\MultiRegionRenderTests\EXR\test_tile_1x1_4x4_0000.exr”
0: STDOUT: Getting the image height of file “C:\MultiRegionRenderTests\EXR\test_tile_1x2_4x4_0000.exr”
0: STDOUT: Getting the image height of file “C:\MultiRegionRenderTests\EXR\test_tile_1x3_4x4_0000.exr”
0: STDOUT: Getting the image height of file “C:\MultiRegionRenderTests\EXR\test_tile_1x4_4x4_0000.exr”
0: STDOUT: The fully assembled image is 640 by 480
0: STDOUT: Reading the channels from “C:\MultiRegionRenderTests\EXR\test_tile_1x1_4x4_0000.exr”
0: STDOUT: Assembling a tiled EXR.
0: STDOUT: channel A (1)
0: STDOUT: channel B (1)
0: STDOUT: channel G (1)
0: STDOUT: channel MultiMatteElement1.A (1)
0: STDOUT: channel MultiMatteElement1.B (1)
0: STDOUT: channel MultiMatteElement1.G (1)
0: STDOUT: channel MultiMatteElement1.R (1)
0: STDOUT: channel MultiMatteElement2.A (1)
0: STDOUT: channel MultiMatteElement2.B (1)
0: STDOUT: channel MultiMatteElement2.G (1)
0: STDOUT: channel MultiMatteElement2.R (1)
0: STDOUT: channel MultiMatteElement3.A (1)
0: STDOUT: channel MultiMatteElement3.B (1)
0: STDOUT: channel MultiMatteElement3.G (1)
0: STDOUT: channel MultiMatteElement3.R (1)
0: STDOUT: channel R (1)
0: STDOUT: channel VRayLighting.A (1)
0: STDOUT: channel VRayLighting.B (1)
0: STDOUT: channel VRayLighting.G (1)
0: STDOUT: channel VRayLighting.R (1)
0: STDOUT: channel VRayObjectID.A (1)
0: STDOUT: channel VRayObjectID.B (1)
0: STDOUT: channel VRayObjectID.G (1)
0: STDOUT: channel VRayObjectID.R (1)
0: STDOUT: channel VRaySpecular.A (1)
0: STDOUT: channel VRaySpecular.B (1)
0: STDOUT: channel VRaySpecular.G (1)
0: STDOUT: channel VRaySpecular.R (1)
0: STDOUT: channel VRayVelocity.A (1)
0: STDOUT: channel VRayVelocity.B (1)
0: STDOUT: channel VRayVelocity.G (1)
0: STDOUT: channel VRayVelocity.R (1)
0: STDOUT: Reading the header attributes from “C:\MultiRegionRenderTests\EXR\test_tile_1x1_4x4_0000.exr”
0: STDOUT: attribute cameraAperture (float)
0: STDOUT: attribute cameraFarClip (float)
0: STDOUT: attribute cameraFarRange (float)
0: STDOUT: attribute cameraFov (float)
0: STDOUT: attribute cameraNearClip (float)
0: STDOUT: attribute cameraNearRange (float)
0: STDOUT: attribute cameraProjection (int)
0: STDOUT: attribute cameraTargetDistance (float)
0: STDOUT: attribute cameraTransform (m44f)
0: STDOUT: attribute channels (chlist)
0: STDOUT: attribute compression (compression)
0: STDOUT: attribute dataWindow (box2i)
0: STDOUT: attribute displayWindow (box2i)
0: STDOUT: attribute gamma (float)
0: STDOUT: attribute lineOrder (lineOrder)
0: STDOUT: attribute pixelAspectRatio (float)
0: STDOUT: attribute screenWindowCenter (v2f)
0: STDOUT: attribute screenWindowWidth (float)
0: STDOUT: attribute tiles (tiledesc)
0: STDOUT: Allocating memory for image data.
0: STDOUT: Processing input file “C:\MultiRegionRenderTests\EXR\test_tile_1x1_4x4_0000.exr”
0: STDOUT: Setting up cropped FrameBuffer
0: STDOUT: Reading 3x2 tiles from level 0
0: STDOUT: Processing input file “C:\MultiRegionRenderTests\EXR\test_tile_1x2_4x4_0000.exr”
0: STDOUT: Setting up cropped FrameBuffer
0: STDOUT: Reading 3x2 tiles from level 0
0: STDOUT: Processing input file “C:\MultiRegionRenderTests\EXR\test_tile_1x3_4x4_0000.exr”
0: STDOUT: Setting up cropped FrameBuffer
0: STDOUT: Reading 3x2 tiles from level 0
0: STDOUT: Processing input file “C:\MultiRegionRenderTests\EXR\test_tile_1x4_4x4_0000.exr”
0: STDOUT: Setting up cropped FrameBuffer
0: STDOUT: Reading 3x2 tiles from level 0
0: STDOUT: Processing input file “C:\MultiRegionRenderTests\EXR\test_tile_2x1_4x4_0000.exr”
0: STDOUT: Setting up cropped FrameBuffer
0: STDOUT: Reading 3x2 tiles from level 0
0: STDOUT: Processing input file “C:\MultiRegionRenderTests\EXR\test_tile_2x2_4x4_0000.exr”
0: STDOUT: Setting up cropped FrameBuffer
0: STDOUT: Reading 3x2 tiles from level 0
0: STDOUT: Processing input file “C:\MultiRegionRenderTests\EXR\test_tile_2x3_4x4_0000.exr”
0: STDOUT: Setting up cropped FrameBuffer
0: STDOUT: Reading 3x2 tiles from level 0
0: STDOUT: Processing input file “C:\MultiRegionRenderTests\EXR\test_tile_2x4_4x4_0000.exr”
0: STDOUT: Setting up cropped FrameBuffer
0: STDOUT: Reading 3x2 tiles from level 0
0: STDOUT: Processing input file “C:\MultiRegionRenderTests\EXR\test_tile_3x1_4x4_0000.exr”
0: STDOUT: Setting up cropped FrameBuffer
0: STDOUT: Reading 3x2 tiles from level 0
0: STDOUT: Processing input file “C:\MultiRegionRenderTests\EXR\test_tile_3x2_4x4_0000.exr”
0: STDOUT: Setting up cropped FrameBuffer
0: STDOUT: Reading 3x2 tiles from level 0
0: STDOUT: Processing input file “C:\MultiRegionRenderTests\EXR\test_tile_3x3_4x4_0000.exr”
0: STDOUT: Setting up cropped FrameBuffer
0: STDOUT: Reading 3x2 tiles from level 0
0: STDOUT: Processing input file “C:\MultiRegionRenderTests\EXR\test_tile_3x4_4x4_0000.exr”
0: STDOUT: Setting up cropped FrameBuffer
0: STDOUT: Reading 3x2 tiles from level 0
0: STDOUT: Processing input file “C:\MultiRegionRenderTests\EXR\test_tile_4x1_4x4_0000.exr”
0: STDOUT: Setting up cropped FrameBuffer
0: STDOUT: Reading 3x2 tiles from level 0
0: STDOUT: Processing input file “C:\MultiRegionRenderTests\EXR\test_tile_4x2_4x4_0000.exr”
0: STDOUT: Setting up cropped FrameBuffer
0: STDOUT: Reading 3x2 tiles from level 0
0: STDOUT: Processing input file “C:\MultiRegionRenderTests\EXR\test_tile_4x3_4x4_0000.exr”
0: STDOUT: Setting up cropped FrameBuffer
0: STDOUT: Reading 3x2 tiles from level 0
0: STDOUT: Processing input file “C:\MultiRegionRenderTests\EXR\test_tile_4x4_4x4_0000.exr”
0: STDOUT: Setting up cropped FrameBuffer
0: STDOUT: Reading 3x2 tiles from level 0
0: STDOUT: Copying attribute “cameraAperture”
0: STDOUT: Copying attribute “cameraFarClip”
0: STDOUT: Copying attribute “cameraFarRange”
0: STDOUT: Copying attribute “cameraFov”
0: STDOUT: Copying attribute “cameraNearClip”
0: STDOUT: Copying attribute “cameraNearRange”
0: STDOUT: Copying attribute “cameraProjection”
0: STDOUT: Copying attribute “cameraTargetDistance”
0: STDOUT: Copying attribute “cameraTransform”
0: STDOUT: Copying attribute “channels”
0: STDOUT: Copying attribute “compression”
0: STDOUT: Copying attribute “gamma”
0: STDOUT: Copying attribute “lineOrder”
0: STDOUT: Copying attribute “pixelAspectRatio”
0: STDOUT: Copying attribute “screenWindowCenter”
0: STDOUT: Copying attribute “screenWindowWidth”
0: STDOUT: Copying attribute “tiles”
0: STDOUT: Writing output to “C:\MultiRegionRenderTests\EXR\test0000.exr”
0: STDOUT: Deleting component tile “C:\MultiRegionRenderTests\EXR\test_tile_1x1_4x4_0000.exr”.
0: STDOUT: Deleting component tile “C:\MultiRegionRenderTests\EXR\test_tile_1x2_4x4_0000.exr”.
0: STDOUT: Deleting component tile “C:\MultiRegionRenderTests\EXR\test_tile_1x3_4x4_0000.exr”.
0: STDOUT: Deleting component tile “C:\MultiRegionRenderTests\EXR\test_tile_1x4_4x4_0000.exr”.
0: STDOUT: Deleting component tile “C:\MultiRegionRenderTests\EXR\test_tile_2x1_4x4_0000.exr”.
0: STDOUT: Deleting component tile “C:\MultiRegionRenderTests\EXR\test_tile_2x2_4x4_0000.exr”.
0: STDOUT: Deleting component tile “C:\MultiRegionRenderTests\EXR\test_tile_2x3_4x4_0000.exr”.
0: STDOUT: Deleting component tile “C:\MultiRegionRenderTests\EXR\test_tile_2x4_4x4_0000.exr”.
0: STDOUT: Deleting component tile “C:\MultiRegionRenderTests\EXR\test_tile_3x1_4x4_0000.exr”.
0: STDOUT: Deleting component tile “C:\MultiRegionRenderTests\EXR\test_tile_3x2_4x4_0000.exr”.
0: STDOUT: Deleting component tile “C:\MultiRegionRenderTests\EXR\test_tile_3x3_4x4_0000.exr”.
0: STDOUT: Deleting component tile “C:\MultiRegionRenderTests\EXR\test_tile_3x4_4x4_0000.exr”.
0: STDOUT: Deleting component tile “C:\MultiRegionRenderTests\EXR\test_tile_4x1_4x4_0000.exr”.
0: STDOUT: Deleting component tile “C:\MultiRegionRenderTests\EXR\test_tile_4x2_4x4_0000.exr”.
0: STDOUT: Deleting component tile “C:\MultiRegionRenderTests\EXR\test_tile_4x3_4x4_0000.exr”.
0: STDOUT: Deleting component tile “C:\MultiRegionRenderTests\EXR\test_tile_4x4_4x4_0000.exr”.
0: INFO: Process exit code: 0
0: Render time for frame(s): 1.081 s
0: Total time for task: 3.229 s
@Paul - I assume when Draft supports multi-channel EXR’s (tile/scanline), that EXR v2.0 support for DEEP EXR’s will also be implemented?
Thanks,
Mike
m_hinks
September 6, 2013, 9:37am
#19
And that would be amazing!
Sorry, you’re right. The old Tile assembler does support multi-channel EXRs. Hopefully that’s something the Draft team can support soon.