From bca84a2afc92188e01d6556dc0bd54ed114268d3 Mon Sep 17 00:00:00 2001 From: Ramon Montoya Vozmediano <1171039+rmv@users.noreply.github.com> Date: Thu, 14 Mar 2024 10:56:32 +1300 Subject: [PATCH] feat: add Renderman Handler (#98) * feat: add Renderman Handler Signed-off-by: Ramon Montoya Vozmediano <1171039+rmv@users.noreply.github.com> --- .../expected_job_bundle/asset_references.yaml | 11 + .../expected_job_bundle/parameter_values.yaml | 25 + .../expected_job_bundle/template.yaml | 164 +++ .../renderman/scene/deadline_logo_48x48.png | Bin 0 -> 5808 bytes .../scene/deadline_logo_48x48.png.tex | Bin 0 -> 16867 bytes .../renderman/scene/renderman.ma | 1231 +++++++++++++++++ .../scene/scene_file_to_reference.mb | Bin 0 -> 54180 bytes .../maya_adaptor/MayaAdaptor/adaptor.py | 28 +- .../MayaAdaptor/schemas/init_data.schema.json | 3 +- .../MayaClient/render_handlers/__init__.py | 3 + .../render_handlers/renderman_handler.py | 85 ++ src/deadline/maya_submitter/assets.py | 18 +- .../job_bundle_output_test_runner.py | 5 + .../unit/MayaAdaptor/test_adaptor.py | 17 +- .../render_handlers/test_renderman_handler.py | 54 + 15 files changed, 1630 insertions(+), 14 deletions(-) create mode 100644 job_bundle_output_tests/renderman/expected_job_bundle/asset_references.yaml create mode 100644 job_bundle_output_tests/renderman/expected_job_bundle/parameter_values.yaml create mode 100644 job_bundle_output_tests/renderman/expected_job_bundle/template.yaml create mode 100644 job_bundle_output_tests/renderman/scene/deadline_logo_48x48.png create mode 100644 job_bundle_output_tests/renderman/scene/deadline_logo_48x48.png.tex create mode 100644 job_bundle_output_tests/renderman/scene/renderman.ma create mode 100644 job_bundle_output_tests/renderman/scene/scene_file_to_reference.mb create mode 100644 src/deadline/maya_adaptor/MayaClient/render_handlers/renderman_handler.py create mode 100644 test/deadline_adaptor_for_maya/unit/MayaClient/render_handlers/test_renderman_handler.py diff --git a/job_bundle_output_tests/renderman/expected_job_bundle/asset_references.yaml b/job_bundle_output_tests/renderman/expected_job_bundle/asset_references.yaml new file mode 100644 index 0000000..6201589 --- /dev/null +++ b/job_bundle_output_tests/renderman/expected_job_bundle/asset_references.yaml @@ -0,0 +1,11 @@ +assetReferences: + inputs: + directories: [] + filenames: + - /normalized/job/bundle/dir/deadline_logo_48x48.png + - /normalized/job/bundle/dir/deadline_logo_48x48.png.tex + - /normalized/job/bundle/dir/renderman.ma + outputs: + directories: + - /normalized/job/bundle/dir/images + referencedPaths: [] diff --git a/job_bundle_output_tests/renderman/expected_job_bundle/parameter_values.yaml b/job_bundle_output_tests/renderman/expected_job_bundle/parameter_values.yaml new file mode 100644 index 0000000..d812fa4 --- /dev/null +++ b/job_bundle_output_tests/renderman/expected_job_bundle/parameter_values.yaml @@ -0,0 +1,25 @@ +parameterValues: +- name: MayaSceneFile + value: /normalized/job/bundle/dir/renderman.ma +- name: Frames + value: '537' +- name: OutputFilePrefix + value: +- name: ImageWidth + value: 960 +- name: ImageHeight + value: 540 +- name: ProjectPath + value: /normalized/job/bundle/dir/ +- name: OutputFilePath + value: /normalized/job/bundle/dir/images +- name: RenderSetupIncludeLights + value: 'true' +- name: deadline:targetTaskRunStatus + value: READY +- name: deadline:maxFailedTasksCount + value: 20 +- name: deadline:maxRetriesPerTask + value: 5 +- name: deadline:priority + value: 50 diff --git a/job_bundle_output_tests/renderman/expected_job_bundle/template.yaml b/job_bundle_output_tests/renderman/expected_job_bundle/template.yaml new file mode 100644 index 0000000..f32de36 --- /dev/null +++ b/job_bundle_output_tests/renderman/expected_job_bundle/template.yaml @@ -0,0 +1,164 @@ +specificationVersion: jobtemplate-2023-09 +name: renderman.ma +parameterDefinitions: +- name: MayaSceneFile + type: PATH + objectType: FILE + dataFlow: IN + userInterface: + control: CHOOSE_INPUT_FILE + label: Maya Scene File + groupLabel: Maya Settings + fileFilters: + - label: Maya Scene Files + patterns: + - '*.mb' + - '*.ma' + - label: All Files + patterns: + - '*' + description: The Maya scene file to render. +- name: Frames + type: STRING + userInterface: + control: LINE_EDIT + label: Frames + groupLabel: Maya Settings + description: The frames to render. E.g. 1-3,8,11-15 + minLength: 1 +- name: ProjectPath + type: PATH + objectType: DIRECTORY + dataFlow: NONE + userInterface: + control: CHOOSE_DIRECTORY + label: Project Path + groupLabel: Maya Settings + description: The Maya project path. +- name: OutputFilePath + type: PATH + objectType: DIRECTORY + dataFlow: OUT + userInterface: + control: CHOOSE_DIRECTORY + label: Output File Path + groupLabel: Maya Settings + description: The render output path. +- name: RenderSetupIncludeLights + type: STRING + userInterface: + control: CHECK_BOX + label: Include All Lights + groupLabel: Maya Settings + description: Include all lights in the render. + default: 'true' + allowedValues: + - 'true' + - 'false' +- name: StrictErrorChecking + type: STRING + userInterface: + control: CHECK_BOX + label: Strict Error Checking + groupLabel: Maya Settings + description: Fail when errors occur. + default: 'false' + allowedValues: + - 'true' + - 'false' +- name: OutputFilePrefix + type: STRING + userInterface: + control: LINE_EDIT + label: Output File Prefix + groupLabel: Maya Settings + description: The output filename prefix. +- name: ImageWidth + type: INT + userInterface: + control: SPIN_BOX + label: Image Width + groupLabel: Maya Settings + minValue: 1 + description: The image width of the output. +- name: ImageHeight + type: INT + userInterface: + control: SPIN_BOX + label: Image Height + groupLabel: Maya Settings + minValue: 1 + description: The image height of the output. +steps: +- name: masterLayer + parameterSpace: + taskParameterDefinitions: + - name: Frame + type: INT + range: '{{Param.Frames}}' + - name: Camera + type: STRING + range: + - persp + stepEnvironments: + - name: Maya + description: Runs Maya in the background. + script: + embeddedFiles: + - name: initData + filename: init-data.yaml + type: TEXT + data: | + renderer: renderman + render_layer: masterLayer + scene_file: '{{Param.MayaSceneFile}}' + project_path: '{{Param.ProjectPath}}' + output_file_path: '{{Param.OutputFilePath}}' + render_setup_include_lights: {{Param.RenderSetupIncludeLights}} + strict_error_checking: {{Param.StrictErrorChecking}} + output_file_prefix: '{{Param.OutputFilePrefix}}' + image_width: {{Param.ImageWidth}} + image_height: {{Param.ImageHeight}} + actions: + onEnter: + command: MayaAdaptor + args: + - daemon + - start + - --path-mapping-rules + - file://{{Session.PathMappingRulesFile}} + - --connection-file + - '{{Session.WorkingDirectory}}/connection.json' + - --init-data + - file://{{Env.File.initData}} + cancelation: + mode: NOTIFY_THEN_TERMINATE + onExit: + command: MayaAdaptor + args: + - daemon + - stop + - --connection-file + - '{{ Session.WorkingDirectory }}/connection.json' + cancelation: + mode: NOTIFY_THEN_TERMINATE + script: + embeddedFiles: + - name: runData + filename: run-data.yaml + type: TEXT + data: | + frame: {{Task.Param.Frame}} + camera: '{{Task.Param.Camera}}' + actions: + onRun: + command: MayaAdaptor + args: + - daemon + - run + - --connection-file + - '{{ Session.WorkingDirectory }}/connection.json' + - --run-data + - file://{{ Task.File.runData }} + cancelation: + mode: NOTIFY_THEN_TERMINATE diff --git a/job_bundle_output_tests/renderman/scene/deadline_logo_48x48.png b/job_bundle_output_tests/renderman/scene/deadline_logo_48x48.png new file mode 100644 index 0000000000000000000000000000000000000000..c8e6cfb9cf836319945b6f4d8fb4045292dea965 GIT binary patch literal 5808 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 literal 0 HcmV?d00001 diff --git a/job_bundle_output_tests/renderman/scene/deadline_logo_48x48.png.tex b/job_bundle_output_tests/renderman/scene/deadline_logo_48x48.png.tex new file mode 100644 index 0000000000000000000000000000000000000000..7e301d0f35aabc168c2a38458480d28d69d27ddb GIT binary patch literal 16867 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 VFBdzXhnA*TvY)?wOI>5t{{h=0BH91| literal 0 HcmV?d00001 diff --git a/job_bundle_output_tests/renderman/scene/renderman.ma b/job_bundle_output_tests/renderman/scene/renderman.ma new file mode 100644 index 0000000..0e8b29f --- /dev/null +++ b/job_bundle_output_tests/renderman/scene/renderman.ma @@ -0,0 +1,1231 @@ +//Maya ASCII 2023 scene +//Name: renderman.ma +//Last modified: Tue, Mar 12, 2024 07:05:20 PM +//Codeset: UTF-8 +file -rdi 1 -ns "scene_file_to_reference" -rfn "scene_file_to_referenceRN" -op + "VERS|2023|UVER|undef|MADE|undef|CHNG|Wed, Aug 30, 2023 02:59:28 PM|ICON|undef|INFO|undef|OBJN|21|INCL|undef(|LUNI|cm|TUNI|film|AUNI|deg|TDUR|141120000|" + -typ "mayaBinary" "/Users/rmvh/work/bealine/deadline-cloud-for-maya/job_bundle_output_tests/renderman/scene/scene_file_to_reference.mb"; +file -r -ns "scene_file_to_reference" -dr 1 -rfn "scene_file_to_referenceRN" -op + "VERS|2023|UVER|undef|MADE|undef|CHNG|Wed, Aug 30, 2023 02:59:28 PM|ICON|undef|INFO|undef|OBJN|21|INCL|undef(|LUNI|cm|TUNI|film|AUNI|deg|TDUR|141120000|" + -typ "mayaBinary" "/Users/rmvh/work/bealine/deadline-cloud-for-maya/job_bundle_output_tests/renderman/scene/scene_file_to_reference.mb"; +requires maya "2023"; +requires "stereoCamera" "10.0"; +requires -nodeType "rmanVolumeAggregateSet" "rfm_volume_aggregate_set.py" "1.0"; +requires -nodeType "PxrTexture" -nodeType "PxrPathTracer" -nodeType "d_openexr" -nodeType "PxrSurface" + -nodeType "PxrDistantLight" -nodeType "rmanDisplayChannel" -nodeType "rmanGlobals" + -nodeType "rmanDisplay" -nodeType "rmanBakingGlobals" "RenderMan_for_Maya.py" "25.2 @ 2282507"; +requires -nodeType "aiOptions" -nodeType "aiAOVDriver" -nodeType "aiAOVFilter" "mtoa" "5.2.0"; +currentUnit -l centimeter -a degree -t film; +fileInfo "application" "maya"; +fileInfo "product" "Maya 2023"; +fileInfo "version" "2023"; +fileInfo "cutIdentifier" "202208031415-1dee56799d"; +fileInfo "osv" "Mac OS X 10.16"; +fileInfo "UUID" "F1FF2CE5-BD46-3C46-02D7-F186B816985D"; +createNode transform -s -n "persp"; + rename -uid "AAC32D4E-4BDF-0623-FCCD-20B6E7B8A4FC"; + setAttr ".v" no; + setAttr ".t" -type "double3" 2.7217899434229538 2.0032398278336889 2.9142293362108309 ; + setAttr ".r" -type "double3" -27.938352729602379 44.999999999999972 -5.172681101354183e-14 ; +createNode camera -s -n "perspShape" -p "persp"; + rename -uid "B34BFE09-41C9-C251-6747-2492FEF652E9"; + setAttr -k off ".v" no; + setAttr ".fl" 34.999999999999993; + setAttr ".coi" 4.4593538315420433; + setAttr ".imn" -type "string" "persp"; + setAttr ".den" -type "string" "persp_depth"; + setAttr ".man" -type "string" "persp_mask"; + setAttr ".hc" -type "string" "viewSet -p %camera"; +createNode transform -s -n "top"; + rename -uid "42E97DE1-4DB2-E14F-0329-17AFDEDB2DFE"; + setAttr ".v" no; + setAttr ".t" -type "double3" 0 1000.1 0 ; + setAttr ".r" -type "double3" -90 0 0 ; +createNode camera -s -n "topShape" -p "top"; + rename -uid "24DB9638-48AE-9C5A-D6FC-07B24B598206"; + setAttr -k off ".v" no; + setAttr ".rnd" no; + setAttr ".coi" 1000.1; + setAttr ".ow" 30; + setAttr ".imn" -type "string" "top"; + setAttr ".den" -type "string" "top_depth"; + setAttr ".man" -type "string" "top_mask"; + setAttr ".hc" -type "string" "viewSet -t %camera"; + setAttr ".o" yes; + setAttr ".ai_translator" -type "string" "orthographic"; +createNode transform -s -n "front"; + rename -uid "9ECAD887-4191-5191-7FF0-B8A1B2CD2DC1"; + setAttr ".v" no; + setAttr ".t" -type "double3" 0 0 1000.1 ; +createNode camera -s -n "frontShape" -p "front"; + rename -uid "F2682E78-4E4B-0792-EA24-BF8107C29CCD"; + setAttr -k off ".v" no; + setAttr ".rnd" no; + setAttr ".coi" 1000.1; + setAttr ".ow" 30; + setAttr ".imn" -type "string" "front"; + setAttr ".den" -type "string" "front_depth"; + setAttr ".man" -type "string" "front_mask"; + setAttr ".hc" -type "string" "viewSet -f %camera"; + setAttr ".o" yes; + setAttr ".ai_translator" -type "string" "orthographic"; +createNode transform -s -n "side"; + rename -uid "F25F3333-4D61-9A43-BD7E-AD9ED421E0CF"; + setAttr ".v" no; + setAttr ".t" -type "double3" 1000.1 0 0 ; + setAttr ".r" -type "double3" 0 90 0 ; +createNode camera -s -n "sideShape" -p "side"; + rename -uid "ED816F08-438C-6ABB-DB83-67B579AE598E"; + setAttr -k off ".v" no; + setAttr ".rnd" no; + setAttr ".coi" 1000.1; + setAttr ".ow" 30; + setAttr ".imn" -type "string" "side"; + setAttr ".den" -type "string" "side_depth"; + setAttr ".man" -type "string" "side_mask"; + setAttr ".hc" -type "string" "viewSet -s %camera"; + setAttr ".o" yes; + setAttr ".ai_translator" -type "string" "orthographic"; +createNode transform -n "pCube1"; + rename -uid "2E3FE2F0-49C3-D9E9-ECDA-2E83AC3D2245"; + setAttr ".t" -type "double3" 0 -0.064914025128262276 0 ; +createNode mesh -n "pCubeShape1" -p "pCube1"; + rename -uid "62B01004-4069-1AF7-C976-7D93577CB1C1"; + setAttr -k off ".v"; + setAttr ".vir" yes; + setAttr ".vif" yes; + setAttr ".uvst[0].uvsn" -type "string" "map1"; + setAttr ".cuvs" -type "string" "map1"; + setAttr ".dcc" -type "string" "Ambient+Diffuse"; + setAttr ".covm[0]" 0 1 1; + setAttr ".cdvm[0]" 0 1 1; +createNode transform -n "PxrDistantLight"; + rename -uid "24CC12A7-E14F-374E-224F-CD8E94EC57E8"; + setAttr ".r" -type "double3" -19.914648272552917 23.314533943281226 8.6583777442185626e-16 ; +createNode PxrDistantLight -n "PxrDistantLightShape" -p "PxrDistantLight"; + rename -uid "513B1EED-A242-1B31-220F-3BBC0F1455D2"; + setAttr ".cch" no; + setAttr ".fzn" no; + setAttr ".ihi" 2; + setAttr ".nds" 0; + setAttr ".isc" no; + setAttr ".bbx" no; + setAttr ".icn" -type "string" ""; + setAttr ".vwm" 2; + setAttr ".tpv" 0; + setAttr ".uit" 0; + setAttr -k off ".v" yes; + setAttr ".io" no; + setAttr ".tmp" no; + setAttr ".obcc" -type "float3" 0 0 0 ; + setAttr ".wfcc" -type "float3" 0 0 0 ; + setAttr ".uoc" 0; + setAttr ".oc" 0; + setAttr ".ovdt" 0; + setAttr ".ovlod" 0; + setAttr ".ovs" no; + setAttr ".ovt" yes; + setAttr ".ovp" yes; + setAttr ".ove" yes; + setAttr ".ovv" yes; + setAttr ".hpb" no; + setAttr ".ovrgbf" no; + setAttr ".ovc" 0; + setAttr ".ovrgb" -type "float3" 0 0 0 ; + setAttr ".ovca" 1; + setAttr ".lodv" yes; + setAttr ".sech" yes; + setAttr ".rlid" 0; + setAttr ".rndr" yes; + setAttr ".lovc" 0; + setAttr ".gh" no; + setAttr ".gm" 0; + setAttr ".gprf" 3; + setAttr ".gpof" 3; + setAttr ".gstp" 1; + setAttr ".golr" -type "float2" 0.15000001 0.5 ; + setAttr ".gcp" -type "float3" 0.447 1 1 ; + setAttr ".gac" -type "float3" 0.87800002 0.67799997 0.66299999 ; + setAttr ".rt" 0; + setAttr ".rv" no; + setAttr ".vf" 1; + setAttr ".hfm" 1; + setAttr ".mb" yes; + setAttr ".vir" no; + setAttr ".vif" no; + setAttr ".csh" yes; + setAttr ".rcsh" yes; + setAttr ".asbg" no; + setAttr ".vbo" no; + setAttr ".mvs" 1; + setAttr ".gao" no; + setAttr ".gal" 1; + setAttr ".sso" no; + setAttr ".ssa" 1; + setAttr ".msa" 1; + setAttr ".vso" no; + setAttr ".vss" 1; + setAttr ".dej" no; + setAttr ".iss" no; + setAttr ".vis" no; + setAttr ".tw" no; + setAttr ".rtw" yes; + setAttr ".pv" -type "double2" 0 0 ; + setAttr ".di" no; + setAttr ".dcol" no; + setAttr ".dcc" -type "string" "color"; + setAttr ".ih" no; + setAttr ".ds" yes; + setAttr ".op" no; + setAttr ".hot" no; + setAttr ".smo" yes; + setAttr ".bbs" -type "float3" 1.5 1.5 1.5 ; + setAttr ".fbda" yes; + setAttr ".dsr" 6; + setAttr ".xsr" 5; + setAttr ".fth" 0; + setAttr ".nat" 30; + setAttr ".dhe" no; + setAttr ".covm[0]" 0 1 1; + setAttr ".cdvm[0]" 0 1 1; + setAttr ".intensity" 50000; + setAttr ".exposure" 1.547619104385376; + setAttr ".angleExtent" 0.52999997138977051; + setAttr ".lightColor" -type "float3" 1 1 1 ; + setAttr ".enableTemperature" no; + setAttr ".temperature" 6500; + setAttr ".emissionFocus" 0; + setAttr ".emissionFocusNormalize" no; + setAttr ".emissionFocusTint" -type "float3" 0 0 0 ; + setAttr ".specular" 1; + setAttr ".diffuse" 1; + setAttr ".enableShadows" yes; + setAttr ".shadowColor" -type "float3" 0 0 0 ; + setAttr ".shadowDistance" -1; + setAttr ".shadowFalloff" -1; + setAttr ".shadowFalloffGamma" 1; + setAttr ".shadowSubset" -type "string" ""; + setAttr ".shadowExcludeSubset" -type "string" ""; + setAttr ".areaNormalize" no; + setAttr ".traceLightPaths" no; + setAttr ".thinShadow" yes; + setAttr ".visibleInRefractionPath" yes; + setAttr ".cheapCaustics" no; + setAttr ".cheapCausticsExcludeGroup" -type "string" ""; + setAttr ".fixedSampleCount" 0; + setAttr ".lightGroup" -type "string" ""; + setAttr ".importanceMultiplier" 1; + setAttr ".msApprox" 0; + setAttr ".msApproxBleed" -type "float3" 0.5 0.5 0.5 ; + setAttr ".msApproxContribution" -type "float3" 0.5 0.5 0.5 ; + setAttr ".rman__lightfilters[0]" -type "float3" 0 0 0; + setAttr ".cl" -type "float3" 1 1 1 ; + setAttr ".ed" yes; + setAttr ".sn" yes; + setAttr ".lls" 1; + setAttr ".de" 2; + setAttr ".urs" yes; + setAttr ".col" 5; + setAttr ".hio" no; + setAttr ".uocol" no; + setAttr ".oclr" -type "float3" 0 0 0 ; + setAttr ".locatorScale" 10; +createNode transform -n "pPlane1"; + rename -uid "3DCFB099-BC43-0852-3DCF-359987AE79CD"; + setAttr ".t" -type "double3" 0 -0.51120585240693694 0 ; + setAttr ".s" -type "double3" 15.527450621536302 15.527450621536302 15.527450621536302 ; +createNode mesh -n "pPlaneShape1" -p "pPlane1"; + rename -uid "5289FE14-6349-2CEA-0146-8186DB64F827"; + setAttr -k off ".v"; + setAttr ".vir" yes; + setAttr ".vif" yes; + setAttr ".uvst[0].uvsn" -type "string" "map1"; + setAttr ".cuvs" -type "string" "map1"; + setAttr ".dcc" -type "string" "Ambient+Diffuse"; + setAttr ".covm[0]" 0 1 1; + setAttr ".cdvm[0]" 0 1 1; +createNode lightLinker -s -n "lightLinker1"; + rename -uid "80AF45D0-2045-1283-9345-CBBE0CD0F0DA"; + setAttr -s 5 ".lnk"; + setAttr -s 5 ".slnk"; +createNode shapeEditorManager -n "shapeEditorManager"; + rename -uid "1377E558-7141-9600-BD06-5DB09EB48F9D"; +createNode poseInterpolatorManager -n "poseInterpolatorManager"; + rename -uid "4C65426B-C649-3578-16CC-75B82545DA02"; +createNode displayLayerManager -n "layerManager"; + rename -uid "B8C91144-4240-1612-3E04-7789EECC8C8B"; +createNode displayLayer -n "defaultLayer"; + rename -uid "CBCF66D2-4792-2986-C070-5A829F537E8F"; + setAttr ".ufem" -type "stringArray" 0 ; +createNode renderLayerManager -n "renderLayerManager"; + rename -uid "9E58CA9E-A14F-EB69-1CBF-BAB549B817AF"; +createNode renderLayer -n "defaultRenderLayer"; + rename -uid "E960B36F-4F60-399E-FED1-6297765596EE"; + setAttr ".g" yes; +createNode aiOptions -s -n "defaultArnoldRenderOptions"; + rename -uid "6B7909BC-4FCB-0BB1-D4A7-5296F3C7DA96"; + setAttr ".version" -type "string" "5.1.0"; +createNode aiAOVFilter -s -n "defaultArnoldFilter"; + rename -uid "DFD4CBFF-4AFB-E12B-F851-6689C247A620"; + setAttr ".ai_translator" -type "string" "gaussian"; +createNode aiAOVDriver -s -n "defaultArnoldDriver"; + rename -uid "A1CB12CF-43E3-4692-6345-4C935D930BB0"; + setAttr ".ai_translator" -type "string" "exr"; +createNode aiAOVDriver -s -n "defaultArnoldDisplayDriver"; + rename -uid "EBEB5EDB-4684-05E9-5EF7-52A24D676349"; + setAttr ".output_mode" 0; + setAttr ".ai_translator" -type "string" "maya"; +createNode script -n "uiConfigurationScriptNode"; + rename -uid "F4F09534-4A69-791B-2580-09B01043363A"; + setAttr ".b" -type "string" ( + "// Maya Mel UI Configuration File.\n//\n// This script is machine generated. Edit at your own risk.\n//\n//\n\nglobal string $gMainPane;\nif (`paneLayout -exists $gMainPane`) {\n\n\tglobal int $gUseScenePanelConfig;\n\tint $useSceneConfig = $gUseScenePanelConfig;\n\tint $nodeEditorPanelVisible = stringArrayContains(\"nodeEditorPanel1\", `getPanel -vis`);\n\tint $nodeEditorWorkspaceControlOpen = (`workspaceControl -exists nodeEditorPanel1Window` && `workspaceControl -q -visible nodeEditorPanel1Window`);\n\tint $menusOkayInPanels = `optionVar -q allowMenusInPanels`;\n\tint $nVisPanes = `paneLayout -q -nvp $gMainPane`;\n\tint $nPanes = 0;\n\tstring $editorName;\n\tstring $panelName;\n\tstring $itemFilterName;\n\tstring $panelConfig;\n\n\t//\n\t// get current state of the UI\n\t//\n\tsceneUIReplacement -update $gMainPane;\n\n\t$panelName = `sceneUIReplacement -getNextPanel \"modelPanel\" (localizedPanelLabel(\"Top View\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tmodelPanel -edit -l (localizedPanelLabel(\"Top View\")) -mbv $menusOkayInPanels $panelName;\n" + + "\t\t$editorName = $panelName;\n modelEditor -e \n -camera \"|top\" \n -useInteractiveMode 0\n -displayLights \"default\" \n -displayAppearance \"smoothShaded\" \n -activeOnly 0\n -ignorePanZoom 0\n -wireframeOnShaded 0\n -headsUpDisplay 1\n -holdOuts 1\n -selectionHiliteDisplay 1\n -useDefaultMaterial 0\n -bufferMode \"double\" \n -twoSidedLighting 0\n -backfaceCulling 0\n -xray 0\n -jointXray 0\n -activeComponentsXray 0\n -displayTextures 0\n -smoothWireframe 0\n -lineWidth 1\n -textureAnisotropic 0\n -textureHilight 1\n -textureSampling 2\n -textureDisplay \"modulate\" \n -textureMaxSize 16384\n -fogging 0\n -fogSource \"fragment\" \n -fogMode \"linear\" \n -fogStart 0\n -fogEnd 100\n -fogDensity 0.1\n -fogColor 0.5 0.5 0.5 1 \n" + + " -depthOfFieldPreview 1\n -maxConstantTransparency 1\n -rendererName \"vp2Renderer\" \n -objectFilterShowInHUD 1\n -isFiltered 0\n -colorResolution 256 256 \n -bumpResolution 512 512 \n -textureCompression 0\n -transparencyAlgorithm \"frontAndBackCull\" \n -transpInShadows 0\n -cullingOverride \"none\" \n -lowQualityLighting 0\n -maximumNumHardwareLights 1\n -occlusionCulling 0\n -shadingModel 0\n -useBaseRenderer 0\n -useReducedRenderer 0\n -smallObjectCulling 0\n -smallObjectThreshold -1 \n -interactiveDisableShadows 0\n -interactiveBackFaceCull 0\n -sortTransparent 1\n -controllers 1\n -nurbsCurves 1\n -nurbsSurfaces 1\n -polymeshes 1\n -subdivSurfaces 1\n -planes 1\n -lights 1\n -cameras 1\n -controlVertices 1\n" + + " -hulls 1\n -grid 1\n -imagePlane 1\n -joints 1\n -ikHandles 1\n -deformers 1\n -dynamics 1\n -particleInstancers 1\n -fluids 1\n -hairSystems 1\n -follicles 1\n -nCloths 1\n -nParticles 1\n -nRigids 1\n -dynamicConstraints 1\n -locators 1\n -manipulators 1\n -pluginShapes 1\n -dimensions 1\n -handles 1\n -pivots 1\n -textures 1\n -strokes 1\n -motionTrails 1\n -clipGhosts 1\n -bluePencil 1\n -greasePencils 0\n -shadows 0\n -captureSequenceNumber -1\n -width 1\n -height 1\n -sceneRenderFilter 0\n $editorName;\n modelEditor -e -viewSelected 0 $editorName;\n modelEditor -e \n -pluginObjects \"gpuCacheDisplayFilter\" 1 \n $editorName;\n\t\tif (!$useSceneConfig) {\n" + + "\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextPanel \"modelPanel\" (localizedPanelLabel(\"Side View\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tmodelPanel -edit -l (localizedPanelLabel(\"Side View\")) -mbv $menusOkayInPanels $panelName;\n\t\t$editorName = $panelName;\n modelEditor -e \n -camera \"|side\" \n -useInteractiveMode 0\n -displayLights \"default\" \n -displayAppearance \"smoothShaded\" \n -activeOnly 0\n -ignorePanZoom 0\n -wireframeOnShaded 0\n -headsUpDisplay 1\n -holdOuts 1\n -selectionHiliteDisplay 1\n -useDefaultMaterial 0\n -bufferMode \"double\" \n -twoSidedLighting 0\n -backfaceCulling 0\n -xray 0\n -jointXray 0\n -activeComponentsXray 0\n -displayTextures 0\n -smoothWireframe 0\n -lineWidth 1\n -textureAnisotropic 0\n -textureHilight 1\n" + + " -textureSampling 2\n -textureDisplay \"modulate\" \n -textureMaxSize 16384\n -fogging 0\n -fogSource \"fragment\" \n -fogMode \"linear\" \n -fogStart 0\n -fogEnd 100\n -fogDensity 0.1\n -fogColor 0.5 0.5 0.5 1 \n -depthOfFieldPreview 1\n -maxConstantTransparency 1\n -rendererName \"vp2Renderer\" \n -objectFilterShowInHUD 1\n -isFiltered 0\n -colorResolution 256 256 \n -bumpResolution 512 512 \n -textureCompression 0\n -transparencyAlgorithm \"frontAndBackCull\" \n -transpInShadows 0\n -cullingOverride \"none\" \n -lowQualityLighting 0\n -maximumNumHardwareLights 1\n -occlusionCulling 0\n -shadingModel 0\n -useBaseRenderer 0\n -useReducedRenderer 0\n -smallObjectCulling 0\n -smallObjectThreshold -1 \n -interactiveDisableShadows 0\n" + + " -interactiveBackFaceCull 0\n -sortTransparent 1\n -controllers 1\n -nurbsCurves 1\n -nurbsSurfaces 1\n -polymeshes 1\n -subdivSurfaces 1\n -planes 1\n -lights 1\n -cameras 1\n -controlVertices 1\n -hulls 1\n -grid 1\n -imagePlane 1\n -joints 1\n -ikHandles 1\n -deformers 1\n -dynamics 1\n -particleInstancers 1\n -fluids 1\n -hairSystems 1\n -follicles 1\n -nCloths 1\n -nParticles 1\n -nRigids 1\n -dynamicConstraints 1\n -locators 1\n -manipulators 1\n -pluginShapes 1\n -dimensions 1\n -handles 1\n -pivots 1\n -textures 1\n -strokes 1\n -motionTrails 1\n -clipGhosts 1\n -bluePencil 1\n -greasePencils 0\n -shadows 0\n -captureSequenceNumber -1\n" + + " -width 1\n -height 1\n -sceneRenderFilter 0\n $editorName;\n modelEditor -e -viewSelected 0 $editorName;\n modelEditor -e \n -pluginObjects \"gpuCacheDisplayFilter\" 1 \n $editorName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextPanel \"modelPanel\" (localizedPanelLabel(\"Front View\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tmodelPanel -edit -l (localizedPanelLabel(\"Front View\")) -mbv $menusOkayInPanels $panelName;\n\t\t$editorName = $panelName;\n modelEditor -e \n -camera \"|front\" \n -useInteractiveMode 0\n -displayLights \"default\" \n -displayAppearance \"smoothShaded\" \n -activeOnly 0\n -ignorePanZoom 0\n -wireframeOnShaded 0\n -headsUpDisplay 1\n -holdOuts 1\n -selectionHiliteDisplay 1\n -useDefaultMaterial 0\n -bufferMode \"double\" \n" + + " -twoSidedLighting 0\n -backfaceCulling 0\n -xray 0\n -jointXray 0\n -activeComponentsXray 0\n -displayTextures 0\n -smoothWireframe 0\n -lineWidth 1\n -textureAnisotropic 0\n -textureHilight 1\n -textureSampling 2\n -textureDisplay \"modulate\" \n -textureMaxSize 16384\n -fogging 0\n -fogSource \"fragment\" \n -fogMode \"linear\" \n -fogStart 0\n -fogEnd 100\n -fogDensity 0.1\n -fogColor 0.5 0.5 0.5 1 \n -depthOfFieldPreview 1\n -maxConstantTransparency 1\n -rendererName \"vp2Renderer\" \n -objectFilterShowInHUD 1\n -isFiltered 0\n -colorResolution 256 256 \n -bumpResolution 512 512 \n -textureCompression 0\n -transparencyAlgorithm \"frontAndBackCull\" \n -transpInShadows 0\n -cullingOverride \"none\" \n -lowQualityLighting 0\n" + + " -maximumNumHardwareLights 1\n -occlusionCulling 0\n -shadingModel 0\n -useBaseRenderer 0\n -useReducedRenderer 0\n -smallObjectCulling 0\n -smallObjectThreshold -1 \n -interactiveDisableShadows 0\n -interactiveBackFaceCull 0\n -sortTransparent 1\n -controllers 1\n -nurbsCurves 1\n -nurbsSurfaces 1\n -polymeshes 1\n -subdivSurfaces 1\n -planes 1\n -lights 1\n -cameras 1\n -controlVertices 1\n -hulls 1\n -grid 1\n -imagePlane 1\n -joints 1\n -ikHandles 1\n -deformers 1\n -dynamics 1\n -particleInstancers 1\n -fluids 1\n -hairSystems 1\n -follicles 1\n -nCloths 1\n -nParticles 1\n -nRigids 1\n -dynamicConstraints 1\n -locators 1\n -manipulators 1\n -pluginShapes 1\n" + + " -dimensions 1\n -handles 1\n -pivots 1\n -textures 1\n -strokes 1\n -motionTrails 1\n -clipGhosts 1\n -bluePencil 1\n -greasePencils 0\n -shadows 0\n -captureSequenceNumber -1\n -width 1\n -height 1\n -sceneRenderFilter 0\n $editorName;\n modelEditor -e -viewSelected 0 $editorName;\n modelEditor -e \n -pluginObjects \"gpuCacheDisplayFilter\" 1 \n $editorName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextPanel \"modelPanel\" (localizedPanelLabel(\"Persp View\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tmodelPanel -edit -l (localizedPanelLabel(\"Persp View\")) -mbv $menusOkayInPanels $panelName;\n\t\t$editorName = $panelName;\n modelEditor -e \n -camera \"|persp\" \n -useInteractiveMode 0\n -displayLights \"default\" \n" + + " -displayAppearance \"smoothShaded\" \n -activeOnly 0\n -ignorePanZoom 0\n -wireframeOnShaded 0\n -headsUpDisplay 1\n -holdOuts 1\n -selectionHiliteDisplay 1\n -useDefaultMaterial 0\n -bufferMode \"double\" \n -twoSidedLighting 0\n -backfaceCulling 0\n -xray 0\n -jointXray 0\n -activeComponentsXray 0\n -displayTextures 0\n -smoothWireframe 0\n -lineWidth 1\n -textureAnisotropic 0\n -textureHilight 1\n -textureSampling 2\n -textureDisplay \"modulate\" \n -textureMaxSize 16384\n -fogging 0\n -fogSource \"fragment\" \n -fogMode \"linear\" \n -fogStart 0\n -fogEnd 100\n -fogDensity 0.1\n -fogColor 0.5 0.5 0.5 1 \n -depthOfFieldPreview 1\n -maxConstantTransparency 1\n -rendererName \"vp2Renderer\" \n -objectFilterShowInHUD 1\n" + + " -isFiltered 0\n -colorResolution 256 256 \n -bumpResolution 512 512 \n -textureCompression 0\n -transparencyAlgorithm \"frontAndBackCull\" \n -transpInShadows 0\n -cullingOverride \"none\" \n -lowQualityLighting 0\n -maximumNumHardwareLights 1\n -occlusionCulling 0\n -shadingModel 0\n -useBaseRenderer 0\n -useReducedRenderer 0\n -smallObjectCulling 0\n -smallObjectThreshold -1 \n -interactiveDisableShadows 0\n -interactiveBackFaceCull 0\n -sortTransparent 1\n -controllers 1\n -nurbsCurves 1\n -nurbsSurfaces 1\n -polymeshes 1\n -subdivSurfaces 1\n -planes 1\n -lights 1\n -cameras 1\n -controlVertices 1\n -hulls 1\n -grid 1\n -imagePlane 1\n -joints 1\n -ikHandles 1\n -deformers 1\n -dynamics 1\n" + + " -particleInstancers 1\n -fluids 1\n -hairSystems 1\n -follicles 1\n -nCloths 1\n -nParticles 1\n -nRigids 1\n -dynamicConstraints 1\n -locators 1\n -manipulators 1\n -pluginShapes 1\n -dimensions 1\n -handles 1\n -pivots 1\n -textures 1\n -strokes 1\n -motionTrails 1\n -clipGhosts 1\n -bluePencil 1\n -greasePencils 0\n -shadows 0\n -captureSequenceNumber -1\n -width 1248\n -height 1484\n -sceneRenderFilter 0\n $editorName;\n modelEditor -e -viewSelected 0 $editorName;\n modelEditor -e \n -pluginObjects \"gpuCacheDisplayFilter\" 1 \n $editorName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextPanel \"outlinerPanel\" (localizedPanelLabel(\"ToggledOutliner\")) `;\n\tif (\"\" != $panelName) {\n" + + "\t\t$label = `panel -q -label $panelName`;\n\t\toutlinerPanel -edit -l (localizedPanelLabel(\"ToggledOutliner\")) -mbv $menusOkayInPanels $panelName;\n\t\t$editorName = $panelName;\n outlinerEditor -e \n -docTag \"isolOutln_fromSeln\" \n -showShapes 0\n -showAssignedMaterials 0\n -showTimeEditor 1\n -showReferenceNodes 1\n -showReferenceMembers 1\n -showAttributes 0\n -showConnected 0\n -showAnimCurvesOnly 0\n -showMuteInfo 0\n -organizeByLayer 1\n -organizeByClip 1\n -showAnimLayerWeight 1\n -autoExpandLayers 1\n -autoExpand 0\n -showDagOnly 1\n -showAssets 1\n -showContainedOnly 1\n -showPublishedAsConnected 0\n -showParentContainers 0\n -showContainerContents 1\n -ignoreDagHierarchy 0\n -expandConnections 0\n -showUpstreamCurves 1\n -showUnitlessCurves 1\n -showCompounds 1\n" + + " -showLeafs 1\n -showNumericAttrsOnly 0\n -highlightActive 1\n -autoSelectNewObjects 0\n -doNotSelectNewObjects 0\n -dropIsParent 1\n -transmitFilters 0\n -setFilter \"defaultSetFilter\" \n -showSetMembers 1\n -allowMultiSelection 1\n -alwaysToggleSelect 0\n -directSelect 0\n -isSet 0\n -isSetMember 0\n -displayMode \"DAG\" \n -expandObjects 0\n -setsIgnoreFilters 1\n -containersIgnoreFilters 0\n -editAttrName 0\n -showAttrValues 0\n -highlightSecondary 0\n -showUVAttrsOnly 0\n -showTextureNodesOnly 0\n -attrAlphaOrder \"default\" \n -animLayerFilterOptions \"allAffecting\" \n -sortOrder \"none\" \n -longNames 0\n -niceNames 1\n -showNamespace 1\n -showPinIcons 0\n -mapMotionTrails 0\n -ignoreHiddenAttribute 0\n" + + " -ignoreOutlinerColor 0\n -renderFilterVisible 0\n -renderFilterIndex 0\n -selectionOrder \"chronological\" \n -expandAttribute 0\n $editorName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextPanel \"outlinerPanel\" (localizedPanelLabel(\"Outliner\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\toutlinerPanel -edit -l (localizedPanelLabel(\"Outliner\")) -mbv $menusOkayInPanels $panelName;\n\t\t$editorName = $panelName;\n outlinerEditor -e \n -showShapes 0\n -showAssignedMaterials 0\n -showTimeEditor 1\n -showReferenceNodes 0\n -showReferenceMembers 0\n -showAttributes 0\n -showConnected 0\n -showAnimCurvesOnly 0\n -showMuteInfo 0\n -organizeByLayer 1\n -organizeByClip 1\n -showAnimLayerWeight 1\n -autoExpandLayers 1\n -autoExpand 0\n" + + " -showDagOnly 1\n -showAssets 1\n -showContainedOnly 1\n -showPublishedAsConnected 0\n -showParentContainers 0\n -showContainerContents 1\n -ignoreDagHierarchy 0\n -expandConnections 0\n -showUpstreamCurves 1\n -showUnitlessCurves 1\n -showCompounds 1\n -showLeafs 1\n -showNumericAttrsOnly 0\n -highlightActive 1\n -autoSelectNewObjects 0\n -doNotSelectNewObjects 0\n -dropIsParent 1\n -transmitFilters 0\n -setFilter \"defaultSetFilter\" \n -showSetMembers 1\n -allowMultiSelection 1\n -alwaysToggleSelect 0\n -directSelect 0\n -displayMode \"DAG\" \n -expandObjects 0\n -setsIgnoreFilters 1\n -containersIgnoreFilters 0\n -editAttrName 0\n -showAttrValues 0\n -highlightSecondary 0\n -showUVAttrsOnly 0\n -showTextureNodesOnly 0\n" + + " -attrAlphaOrder \"default\" \n -animLayerFilterOptions \"allAffecting\" \n -sortOrder \"none\" \n -longNames 0\n -niceNames 1\n -showNamespace 1\n -showPinIcons 0\n -mapMotionTrails 0\n -ignoreHiddenAttribute 0\n -ignoreOutlinerColor 0\n -renderFilterVisible 0\n $editorName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"graphEditor\" (localizedPanelLabel(\"Graph Editor\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Graph Editor\")) -mbv $menusOkayInPanels $panelName;\n\n\t\t\t$editorName = ($panelName+\"OutlineEd\");\n outlinerEditor -e \n -showShapes 1\n -showAssignedMaterials 0\n -showTimeEditor 1\n -showReferenceNodes 0\n -showReferenceMembers 0\n -showAttributes 1\n" + + " -showConnected 1\n -showAnimCurvesOnly 1\n -showMuteInfo 0\n -organizeByLayer 1\n -organizeByClip 1\n -showAnimLayerWeight 1\n -autoExpandLayers 1\n -autoExpand 1\n -showDagOnly 0\n -showAssets 1\n -showContainedOnly 0\n -showPublishedAsConnected 0\n -showParentContainers 0\n -showContainerContents 0\n -ignoreDagHierarchy 0\n -expandConnections 1\n -showUpstreamCurves 1\n -showUnitlessCurves 1\n -showCompounds 0\n -showLeafs 1\n -showNumericAttrsOnly 1\n -highlightActive 0\n -autoSelectNewObjects 1\n -doNotSelectNewObjects 0\n -dropIsParent 1\n -transmitFilters 1\n -setFilter \"0\" \n -showSetMembers 0\n -allowMultiSelection 1\n" + + " -alwaysToggleSelect 0\n -directSelect 0\n -displayMode \"DAG\" \n -expandObjects 0\n -setsIgnoreFilters 1\n -containersIgnoreFilters 0\n -editAttrName 0\n -showAttrValues 0\n -highlightSecondary 0\n -showUVAttrsOnly 0\n -showTextureNodesOnly 0\n -attrAlphaOrder \"default\" \n -animLayerFilterOptions \"allAffecting\" \n -sortOrder \"none\" \n -longNames 0\n -niceNames 1\n -showNamespace 1\n -showPinIcons 1\n -mapMotionTrails 1\n -ignoreHiddenAttribute 0\n -ignoreOutlinerColor 0\n -renderFilterVisible 0\n $editorName;\n\n\t\t\t$editorName = ($panelName+\"GraphEd\");\n animCurveEditor -e \n -displayValues 0\n -snapTime \"integer\" \n -snapValue \"none\" \n -showPlayRangeShades \"on\" \n" + + " -lockPlayRangeShades \"off\" \n -smoothness \"fine\" \n -resultSamples 1\n -resultScreenSamples 0\n -resultUpdate \"delayed\" \n -showUpstreamCurves 1\n -keyMinScale 1\n -stackedCurvesMin -1\n -stackedCurvesMax 1\n -stackedCurvesSpace 0.2\n -preSelectionHighlight 0\n -constrainDrag 0\n -valueLinesToggle 1\n -outliner \"graphEditor1OutlineEd\" \n -highlightAffectedCurves 0\n $editorName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"dopeSheetPanel\" (localizedPanelLabel(\"Dope Sheet\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Dope Sheet\")) -mbv $menusOkayInPanels $panelName;\n\n\t\t\t$editorName = ($panelName+\"OutlineEd\");\n outlinerEditor -e \n" + + " -showShapes 1\n -showAssignedMaterials 0\n -showTimeEditor 1\n -showReferenceNodes 0\n -showReferenceMembers 0\n -showAttributes 1\n -showConnected 1\n -showAnimCurvesOnly 1\n -showMuteInfo 0\n -organizeByLayer 1\n -organizeByClip 1\n -showAnimLayerWeight 1\n -autoExpandLayers 1\n -autoExpand 0\n -showDagOnly 0\n -showAssets 1\n -showContainedOnly 0\n -showPublishedAsConnected 0\n -showParentContainers 0\n -showContainerContents 0\n -ignoreDagHierarchy 0\n -expandConnections 1\n -showUpstreamCurves 1\n -showUnitlessCurves 0\n -showCompounds 1\n -showLeafs 1\n -showNumericAttrsOnly 1\n -highlightActive 0\n -autoSelectNewObjects 0\n" + + " -doNotSelectNewObjects 1\n -dropIsParent 1\n -transmitFilters 0\n -setFilter \"0\" \n -showSetMembers 0\n -allowMultiSelection 1\n -alwaysToggleSelect 0\n -directSelect 0\n -displayMode \"DAG\" \n -expandObjects 0\n -setsIgnoreFilters 1\n -containersIgnoreFilters 0\n -editAttrName 0\n -showAttrValues 0\n -highlightSecondary 0\n -showUVAttrsOnly 0\n -showTextureNodesOnly 0\n -attrAlphaOrder \"default\" \n -animLayerFilterOptions \"allAffecting\" \n -sortOrder \"none\" \n -longNames 0\n -niceNames 1\n -showNamespace 1\n -showPinIcons 0\n -mapMotionTrails 1\n -ignoreHiddenAttribute 0\n -ignoreOutlinerColor 0\n -renderFilterVisible 0\n $editorName;\n" + + "\n\t\t\t$editorName = ($panelName+\"DopeSheetEd\");\n dopeSheetEditor -e \n -displayValues 0\n -snapTime \"integer\" \n -snapValue \"none\" \n -outliner \"dopeSheetPanel1OutlineEd\" \n -showSummary 1\n -showScene 0\n -hierarchyBelow 0\n -showTicks 1\n -selectionWindow 0 0 0 0 \n $editorName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"timeEditorPanel\" (localizedPanelLabel(\"Time Editor\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Time Editor\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"clipEditorPanel\" (localizedPanelLabel(\"Trax Editor\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n" + + "\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Trax Editor\")) -mbv $menusOkayInPanels $panelName;\n\n\t\t\t$editorName = clipEditorNameFromPanel($panelName);\n clipEditor -e \n -displayValues 0\n -snapTime \"none\" \n -snapValue \"none\" \n -initialized 0\n -manageSequencer 0 \n $editorName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"sequenceEditorPanel\" (localizedPanelLabel(\"Camera Sequencer\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Camera Sequencer\")) -mbv $menusOkayInPanels $panelName;\n\n\t\t\t$editorName = sequenceEditorNameFromPanel($panelName);\n clipEditor -e \n -displayValues 0\n -snapTime \"none\" \n -snapValue \"none\" \n -initialized 0\n -manageSequencer 1 \n $editorName;\n" + + "\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"hyperGraphPanel\" (localizedPanelLabel(\"Hypergraph Hierarchy\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Hypergraph Hierarchy\")) -mbv $menusOkayInPanels $panelName;\n\n\t\t\t$editorName = ($panelName+\"HyperGraphEd\");\n hyperGraph -e \n -graphLayoutStyle \"hierarchicalLayout\" \n -orientation \"horiz\" \n -mergeConnections 0\n -zoom 1\n -animateTransition 0\n -showRelationships 1\n -showShapes 0\n -showDeformers 0\n -showExpressions 0\n -showConstraints 0\n -showConnectionFromSelected 0\n -showConnectionToSelected 0\n -showConstraintLabels 0\n -showUnderworld 0\n -showInvisible 0\n -transitionFrames 1\n" + + " -opaqueContainers 0\n -freeform 0\n -imagePosition 0 0 \n -imageScale 1\n -imageEnabled 0\n -graphType \"DAG\" \n -heatMapDisplay 0\n -updateSelection 1\n -updateNodeAdded 1\n -useDrawOverrideColor 0\n -limitGraphTraversal -1\n -range 0 0 \n -iconSize \"smallIcons\" \n -showCachedConnections 0\n $editorName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"hyperShadePanel\" (localizedPanelLabel(\"Hypershade\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Hypershade\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"visorPanel\" (localizedPanelLabel(\"Visor\")) `;\n" + + "\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Visor\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"nodeEditorPanel\" (localizedPanelLabel(\"Node Editor\")) `;\n\tif ($nodeEditorPanelVisible || $nodeEditorWorkspaceControlOpen) {\n\t\tif (\"\" == $panelName) {\n\t\t\tif ($useSceneConfig) {\n\t\t\t\t$panelName = `scriptedPanel -unParent -type \"nodeEditorPanel\" -l (localizedPanelLabel(\"Node Editor\")) -mbv $menusOkayInPanels `;\n\n\t\t\t$editorName = ($panelName+\"NodeEditorEd\");\n nodeEditor -e \n -allAttributes 0\n -allNodes 0\n -autoSizeNodes 1\n -consistentNameSize 1\n -createNodeCommand \"nodeEdCreateNodeCommand\" \n -connectNodeOnCreation 0\n -connectOnDrop 0\n -copyConnectionsOnPaste 0\n -connectionStyle \"bezier\" \n -defaultPinnedState 0\n" + + " -additiveGraphingMode 0\n -connectedGraphingMode 1\n -settingsChangedCallback \"nodeEdSyncControls\" \n -traversalDepthLimit -1\n -keyPressCommand \"nodeEdKeyPressCommand\" \n -nodeTitleMode \"name\" \n -gridSnap 0\n -gridVisibility 1\n -crosshairOnEdgeDragging 0\n -popupMenuScript \"nodeEdBuildPanelMenus\" \n -showNamespace 1\n -showShapes 1\n -showSGShapes 0\n -showTransforms 1\n -useAssets 1\n -syncedSelection 1\n -extendToShapes 1\n -showUnitConversions 0\n -editorMode \"default\" \n -hasWatchpoint 0\n $editorName;\n\t\t\t}\n\t\t} else {\n\t\t\t$label = `panel -q -label $panelName`;\n\t\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Node Editor\")) -mbv $menusOkayInPanels $panelName;\n\n\t\t\t$editorName = ($panelName+\"NodeEditorEd\");\n nodeEditor -e \n" + + " -allAttributes 0\n -allNodes 0\n -autoSizeNodes 1\n -consistentNameSize 1\n -createNodeCommand \"nodeEdCreateNodeCommand\" \n -connectNodeOnCreation 0\n -connectOnDrop 0\n -copyConnectionsOnPaste 0\n -connectionStyle \"bezier\" \n -defaultPinnedState 0\n -additiveGraphingMode 0\n -connectedGraphingMode 1\n -settingsChangedCallback \"nodeEdSyncControls\" \n -traversalDepthLimit -1\n -keyPressCommand \"nodeEdKeyPressCommand\" \n -nodeTitleMode \"name\" \n -gridSnap 0\n -gridVisibility 1\n -crosshairOnEdgeDragging 0\n -popupMenuScript \"nodeEdBuildPanelMenus\" \n -showNamespace 1\n -showShapes 1\n -showSGShapes 0\n -showTransforms 1\n -useAssets 1\n -syncedSelection 1\n" + + " -extendToShapes 1\n -showUnitConversions 0\n -editorMode \"default\" \n -hasWatchpoint 0\n $editorName;\n\t\t\tif (!$useSceneConfig) {\n\t\t\t\tpanel -e -l $label $panelName;\n\t\t\t}\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"createNodePanel\" (localizedPanelLabel(\"Create Node\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Create Node\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"polyTexturePlacementPanel\" (localizedPanelLabel(\"UV Editor\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"UV Editor\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"renderWindowPanel\" (localizedPanelLabel(\"Render View\")) `;\n" + + "\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Render View\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextPanel \"shapePanel\" (localizedPanelLabel(\"Shape Editor\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tshapePanel -edit -l (localizedPanelLabel(\"Shape Editor\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextPanel \"posePanel\" (localizedPanelLabel(\"Pose Editor\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tposePanel -edit -l (localizedPanelLabel(\"Pose Editor\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"dynRelEdPanel\" (localizedPanelLabel(\"Dynamic Relationships\")) `;\n\tif (\"\" != $panelName) {\n" + + "\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Dynamic Relationships\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"relationshipPanel\" (localizedPanelLabel(\"Relationship Editor\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Relationship Editor\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"referenceEditorPanel\" (localizedPanelLabel(\"Reference Editor\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Reference Editor\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"dynPaintScriptedPanelType\" (localizedPanelLabel(\"Paint Effects\")) `;\n" + + "\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Paint Effects\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"scriptEditorPanel\" (localizedPanelLabel(\"Script Editor\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Script Editor\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"profilerPanel\" (localizedPanelLabel(\"Profiler Tool\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Profiler Tool\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"contentBrowserPanel\" (localizedPanelLabel(\"Content Browser\")) `;\n" + + "\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Content Browser\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"Stereo\" (localizedPanelLabel(\"Stereo\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Stereo\")) -mbv $menusOkayInPanels $panelName;\n{ string $editorName = ($panelName+\"Editor\");\n stereoCameraView -e \n -camera \"|persp\" \n -useInteractiveMode 0\n -displayLights \"default\" \n -displayAppearance \"smoothShaded\" \n -activeOnly 0\n -ignorePanZoom 0\n -wireframeOnShaded 0\n -headsUpDisplay 1\n -holdOuts 1\n -selectionHiliteDisplay 1\n -useDefaultMaterial 0\n -bufferMode \"double\" \n -twoSidedLighting 0\n" + + " -backfaceCulling 0\n -xray 0\n -jointXray 0\n -activeComponentsXray 0\n -displayTextures 0\n -smoothWireframe 0\n -lineWidth 1\n -textureAnisotropic 0\n -textureHilight 1\n -textureSampling 2\n -textureDisplay \"modulate\" \n -textureMaxSize 16384\n -fogging 0\n -fogSource \"fragment\" \n -fogMode \"linear\" \n -fogStart 0\n -fogEnd 100\n -fogDensity 0.1\n -fogColor 0.5 0.5 0.5 1 \n -depthOfFieldPreview 1\n -maxConstantTransparency 1\n -objectFilterShowInHUD 1\n -isFiltered 0\n -colorResolution 4 4 \n -bumpResolution 4 4 \n -textureCompression 0\n -transparencyAlgorithm \"frontAndBackCull\" \n -transpInShadows 0\n -cullingOverride \"none\" \n" + + " -lowQualityLighting 0\n -maximumNumHardwareLights 0\n -occlusionCulling 0\n -shadingModel 0\n -useBaseRenderer 0\n -useReducedRenderer 0\n -smallObjectCulling 0\n -smallObjectThreshold -1 \n -interactiveDisableShadows 0\n -interactiveBackFaceCull 0\n -sortTransparent 1\n -controllers 1\n -nurbsCurves 1\n -nurbsSurfaces 1\n -polymeshes 1\n -subdivSurfaces 1\n -planes 1\n -lights 1\n -cameras 1\n -controlVertices 1\n -hulls 1\n -grid 1\n -imagePlane 1\n -joints 1\n -ikHandles 1\n -deformers 1\n -dynamics 1\n -particleInstancers 1\n -fluids 1\n -hairSystems 1\n -follicles 1\n -nCloths 1\n" + + " -nParticles 1\n -nRigids 1\n -dynamicConstraints 1\n -locators 1\n -manipulators 1\n -pluginShapes 1\n -dimensions 1\n -handles 1\n -pivots 1\n -textures 1\n -strokes 1\n -motionTrails 1\n -clipGhosts 1\n -bluePencil 1\n -greasePencils 0\n -shadows 0\n -captureSequenceNumber -1\n -width 0\n -height 0\n -sceneRenderFilter 0\n -displayMode \"centerEye\" \n -viewColor 0 0 0 1 \n -useCustomBackground 1\n $editorName;\n stereoCameraView -e -viewSelected 0 $editorName;\n stereoCameraView -e \n -pluginObjects \"gpuCacheDisplayFilter\" 1 \n $editorName; };\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\tif ($useSceneConfig) {\n" + + " string $configName = `getPanel -cwl (localizedPanelLabel(\"Current Layout\"))`;\n if (\"\" != $configName) {\n\t\t\tpanelConfiguration -edit -label (localizedPanelLabel(\"Current Layout\")) \n\t\t\t\t-userCreated false\n\t\t\t\t-defaultImage \"vacantCell.xP:/\"\n\t\t\t\t-image \"\"\n\t\t\t\t-sc false\n\t\t\t\t-configString \"global string $gMainPane; paneLayout -e -cn \\\"single\\\" -ps 1 100 100 $gMainPane;\"\n\t\t\t\t-removeAllPanels\n\t\t\t\t-ap false\n\t\t\t\t\t(localizedPanelLabel(\"Persp View\")) \n\t\t\t\t\t\"modelPanel\"\n" + + "\t\t\t\t\t\"$panelName = `modelPanel -unParent -l (localizedPanelLabel(\\\"Persp View\\\")) -mbv $menusOkayInPanels `;\\n$editorName = $panelName;\\nmodelEditor -e \\n -cam `findStartUpCamera persp` \\n -useInteractiveMode 0\\n -displayLights \\\"default\\\" \\n -displayAppearance \\\"smoothShaded\\\" \\n -activeOnly 0\\n -ignorePanZoom 0\\n -wireframeOnShaded 0\\n -headsUpDisplay 1\\n -holdOuts 1\\n -selectionHiliteDisplay 1\\n -useDefaultMaterial 0\\n -bufferMode \\\"double\\\" \\n -twoSidedLighting 0\\n -backfaceCulling 0\\n -xray 0\\n -jointXray 0\\n -activeComponentsXray 0\\n -displayTextures 0\\n -smoothWireframe 0\\n -lineWidth 1\\n -textureAnisotropic 0\\n -textureHilight 1\\n -textureSampling 2\\n -textureDisplay \\\"modulate\\\" \\n -textureMaxSize 16384\\n -fogging 0\\n -fogSource \\\"fragment\\\" \\n -fogMode \\\"linear\\\" \\n -fogStart 0\\n -fogEnd 100\\n -fogDensity 0.1\\n -fogColor 0.5 0.5 0.5 1 \\n -depthOfFieldPreview 1\\n -maxConstantTransparency 1\\n -rendererName \\\"vp2Renderer\\\" \\n -objectFilterShowInHUD 1\\n -isFiltered 0\\n -colorResolution 256 256 \\n -bumpResolution 512 512 \\n -textureCompression 0\\n -transparencyAlgorithm \\\"frontAndBackCull\\\" \\n -transpInShadows 0\\n -cullingOverride \\\"none\\\" \\n -lowQualityLighting 0\\n -maximumNumHardwareLights 1\\n -occlusionCulling 0\\n -shadingModel 0\\n -useBaseRenderer 0\\n -useReducedRenderer 0\\n -smallObjectCulling 0\\n -smallObjectThreshold -1 \\n -interactiveDisableShadows 0\\n -interactiveBackFaceCull 0\\n -sortTransparent 1\\n -controllers 1\\n -nurbsCurves 1\\n -nurbsSurfaces 1\\n -polymeshes 1\\n -subdivSurfaces 1\\n -planes 1\\n -lights 1\\n -cameras 1\\n -controlVertices 1\\n -hulls 1\\n -grid 1\\n -imagePlane 1\\n -joints 1\\n -ikHandles 1\\n -deformers 1\\n -dynamics 1\\n -particleInstancers 1\\n -fluids 1\\n -hairSystems 1\\n -follicles 1\\n -nCloths 1\\n -nParticles 1\\n -nRigids 1\\n -dynamicConstraints 1\\n -locators 1\\n -manipulators 1\\n -pluginShapes 1\\n -dimensions 1\\n -handles 1\\n -pivots 1\\n -textures 1\\n -strokes 1\\n -motionTrails 1\\n -clipGhosts 1\\n -bluePencil 1\\n -greasePencils 0\\n -shadows 0\\n -captureSequenceNumber -1\\n -width 1248\\n -height 1484\\n -sceneRenderFilter 0\\n $editorName;\\nmodelEditor -e -viewSelected 0 $editorName;\\nmodelEditor -e \\n -pluginObjects \\\"gpuCacheDisplayFilter\\\" 1 \\n $editorName\"\n" + + "\t\t\t\t\t\"modelPanel -edit -l (localizedPanelLabel(\\\"Persp View\\\")) -mbv $menusOkayInPanels $panelName;\\n$editorName = $panelName;\\nmodelEditor -e \\n -cam `findStartUpCamera persp` \\n -useInteractiveMode 0\\n -displayLights \\\"default\\\" \\n -displayAppearance \\\"smoothShaded\\\" \\n -activeOnly 0\\n -ignorePanZoom 0\\n -wireframeOnShaded 0\\n -headsUpDisplay 1\\n -holdOuts 1\\n -selectionHiliteDisplay 1\\n -useDefaultMaterial 0\\n -bufferMode \\\"double\\\" \\n -twoSidedLighting 0\\n -backfaceCulling 0\\n -xray 0\\n -jointXray 0\\n -activeComponentsXray 0\\n -displayTextures 0\\n -smoothWireframe 0\\n -lineWidth 1\\n -textureAnisotropic 0\\n -textureHilight 1\\n -textureSampling 2\\n -textureDisplay \\\"modulate\\\" \\n -textureMaxSize 16384\\n -fogging 0\\n -fogSource \\\"fragment\\\" \\n -fogMode \\\"linear\\\" \\n -fogStart 0\\n -fogEnd 100\\n -fogDensity 0.1\\n -fogColor 0.5 0.5 0.5 1 \\n -depthOfFieldPreview 1\\n -maxConstantTransparency 1\\n -rendererName \\\"vp2Renderer\\\" \\n -objectFilterShowInHUD 1\\n -isFiltered 0\\n -colorResolution 256 256 \\n -bumpResolution 512 512 \\n -textureCompression 0\\n -transparencyAlgorithm \\\"frontAndBackCull\\\" \\n -transpInShadows 0\\n -cullingOverride \\\"none\\\" \\n -lowQualityLighting 0\\n -maximumNumHardwareLights 1\\n -occlusionCulling 0\\n -shadingModel 0\\n -useBaseRenderer 0\\n -useReducedRenderer 0\\n -smallObjectCulling 0\\n -smallObjectThreshold -1 \\n -interactiveDisableShadows 0\\n -interactiveBackFaceCull 0\\n -sortTransparent 1\\n -controllers 1\\n -nurbsCurves 1\\n -nurbsSurfaces 1\\n -polymeshes 1\\n -subdivSurfaces 1\\n -planes 1\\n -lights 1\\n -cameras 1\\n -controlVertices 1\\n -hulls 1\\n -grid 1\\n -imagePlane 1\\n -joints 1\\n -ikHandles 1\\n -deformers 1\\n -dynamics 1\\n -particleInstancers 1\\n -fluids 1\\n -hairSystems 1\\n -follicles 1\\n -nCloths 1\\n -nParticles 1\\n -nRigids 1\\n -dynamicConstraints 1\\n -locators 1\\n -manipulators 1\\n -pluginShapes 1\\n -dimensions 1\\n -handles 1\\n -pivots 1\\n -textures 1\\n -strokes 1\\n -motionTrails 1\\n -clipGhosts 1\\n -bluePencil 1\\n -greasePencils 0\\n -shadows 0\\n -captureSequenceNumber -1\\n -width 1248\\n -height 1484\\n -sceneRenderFilter 0\\n $editorName;\\nmodelEditor -e -viewSelected 0 $editorName;\\nmodelEditor -e \\n -pluginObjects \\\"gpuCacheDisplayFilter\\\" 1 \\n $editorName\"\n" + + "\t\t\t\t$configName;\n\n setNamedPanelLayout (localizedPanelLabel(\"Current Layout\"));\n }\n\n panelHistory -e -clear mainPanelHistory;\n sceneUIReplacement -clear;\n\t}\n\n\ngrid -spacing 5 -size 12 -divisions 5 -displayAxes yes -displayGridLines yes -displayDivisionLines yes -displayPerspectiveLabels no -displayOrthographicLabels no -displayAxesBold yes -perspectiveLabelPosition axis -orthographicLabelPosition edge;\nviewManip -drawCompass 0 -compassAngle 0 -frontParameters \"\" -homeParameters \"\" -selectionLockParameters \"\";\n}\n"); + setAttr ".st" 3; +createNode script -n "sceneConfigurationScriptNode"; + rename -uid "AE53400C-4108-E6CF-B14F-45BEEFDFB363"; + setAttr ".b" -type "string" "playbackOptions -min 537 -max 583 -ast 0 -aet 3000 "; + setAttr ".st" 6; +createNode polyCube -n "polyCube1"; + rename -uid "5D0965A4-4163-F023-E1B2-26AC75DACB4D"; + setAttr ".cuv" 4; +createNode standardSurface -n "standardSurface2"; + rename -uid "CD1C00E2-46B7-44F8-9F26-E9A3538F66B9"; +createNode shadingEngine -n "standardSurface2SG"; + rename -uid "FC966934-483E-E4AD-13B6-D2ABA41CA196"; + setAttr ".ihi" 0; + setAttr ".ro" yes; +createNode materialInfo -n "materialInfo1"; + rename -uid "B803D1DE-4EE6-CFD3-DEC1-BD90C863A0EA"; +createNode file -n "file1"; + rename -uid "1BAA2EE5-46EB-ED01-BE45-9888E95529F2"; + setAttr ".ftn" -type "string" "/Users/rmvh/work/bealine/deadline-cloud-for-maya/job_bundle_output_tests/renderman/scene/deadline_logo_48x48.png"; + setAttr ".cs" -type "string" "sRGB"; +createNode place2dTexture -n "place2dTexture1"; + rename -uid "CEF90DC0-44C4-11AF-47D0-97B5269B63A4"; +createNode rmanGlobals -s -n "rmanGlobals"; + rename -uid "8122B870-F549-0D53-CB45-039DD770CA17"; + setAttr ".cch" no; + setAttr ".fzn" no; + setAttr ".ihi" 2; + setAttr ".nds" 0; + setAttr ".hider_minSamples" 0; + setAttr ".hider_maxSamples" 128; + setAttr ".ri_pixelVariance" 0.014999999664723873; + setAttr ".hider_incremental" yes; + setAttr ".ipr_hider_maxSamples" 64; + setAttr ".ipr_ri_pixelVariance" 0.05000000074505806; + setAttr ".ipr_ri_decidither" 0; + setAttr ".ri_maxSpecularDepth" 4; + setAttr ".ri_maxDiffuseDepth" 1; + setAttr ".ri_displayFilter" -type "string" "gaussian"; + setAttr ".ri_displayFilterSize" -type "float2" 2 2 ; + setAttr ".pixelFilterMode" -type "string" "importance"; + setAttr ".renderVariant" -type "string" "ris"; + setAttr ".xpuMode" -type "long2" 1 1 ; + setAttr ".motionBlur" 0; + setAttr ".cameraBlur" no; + setAttr ".shutterAngle" 180; + setAttr ".shutterOpenEnd" 0; + setAttr ".shutterCloseStart" 1; + setAttr ".shutterTiming" 0; + setAttr ".motionSamples" 2; + setAttr ".ocioConfig" 0; + setAttr ".ocioConfigPath" -type "string" ""; + setAttr ".ocioColorSpaceName" -type "string" ""; + setAttr ".ocioEnabled" 0; + setAttr ".enableStylizedLooks" no; + setAttr ".displayFilters[0]" -type "string" ""; + setAttr ".sampleFilters[0]" -type "string" ""; + setAttr ".outputAllShaders" no; + setAttr ".reentrantProcedurals" yes; + setAttr ".outputShadowAOV" 0; + setAttr ".enableImagePlaneFilter" yes; + setAttr ".learnLightSelection" yes; + setAttr ".shadowBumpTerminator" yes; + setAttr ".blueNoise" yes; + setAttr ".geomShadowTermBias" yes; + setAttr ".roughnessMollification" 1; + setAttr ".opt_bucket_order" -type "string" "circle"; + setAttr ".limits_bucketsize" -type "long2" 16 16 ; + setAttr ".limits_othreshold" -type "float3" 0.99599999 0.99599999 0.99599999 ; + setAttr ".rfm_referenceFrame" 0; + setAttr ".adaptiveMetric" -type "string" "variance"; + setAttr ".hider_darkfalloff" 0.02500000037252903; + setAttr ".hider_exposurebracket" -type "float2" -1 1 ; + setAttr ".ri_hider_adaptAll" no; + setAttr ".dice_micropolygonlength" 1; + setAttr ".dice_watertight" no; + setAttr ".dice_referenceCameraType" 0; + setAttr ".dice_referenceCamera" -type "string" ""; + setAttr ".hair_minWidth" 0.5; + setAttr ".trace_autobias" yes; + setAttr ".trace_bias" 0.0010000000474974513; + setAttr ".trace_worldorigin" -type "string" "camera"; + setAttr ".trace_worldoffset" -type "float3" 0 0 0 ; + setAttr ".opt_oslmatchcpp" no; + setAttr ".opt_oslSIMDEnable" yes; + setAttr ".opt_oslVerbosity" 0; + setAttr ".opt_oslStatistics" 0; + setAttr ".volume_aggregatespace" -type "string" "world"; + setAttr ".deep_quality" 0.75; + setAttr ".opt_cropWindowEnable" no; + setAttr ".opt_cropWindowTopLeft" -type "float2" 0 0 ; + setAttr ".opt_cropWindowBottomRight" -type "float2" 1 1 ; + setAttr ".user_sceneUnits" 1; + setAttr ".user_iesIgnoreWatts" yes; + setAttr ".limits_texturememory" 4096; + setAttr ".limits_geocachememory" 4096; + setAttr ".limits_opacitycachememory" 2048; + setAttr ".statistics_level" 1; + setAttr ".statistics_xmlfilename" -type "string" ""; + setAttr ".lpe_reload_definitions" -type "string" ""; + setAttr ".lpe_diffuse2" -type "string" "Diffuse,HairDiffuse,diffuse,translucent,hair4,irradiance"; + setAttr ".lpe_diffuse3" -type "string" "Subsurface,subsurface"; + setAttr ".lpe_specular2" -type "string" "Specular,HairSpecularR,specular,hair1"; + setAttr ".lpe_specular3" -type "string" "RoughSpecular,HairSpecularTRT,hair3"; + setAttr ".lpe_specular4" -type "string" "Clearcoat"; + setAttr ".lpe_specular5" -type "string" "Iridescence"; + setAttr ".lpe_specular6" -type "string" "Fuzz,HairSpecularGLINTS"; + setAttr ".lpe_specular7" -type "string" "SingleScatter,HairSpecularTT,hair2"; + setAttr ".lpe_specular8" -type "string" "Glass,specular"; + setAttr ".lpe_user2" -type "string" "Albedo,DiffuseAlbedo,SubsurfaceAlbedo,HairAlbedo"; + setAttr ".lpe_user3" -type "string" "Position"; + setAttr ".lpe_user4" -type "string" "UserColor"; + setAttr ".lpe_user5" -type "string" ""; + setAttr ".lpe_user6" -type "string" "Normal,DiffuseNormal,HairTangent,SubsurfaceNormal,SpecularNormal,RoughSpecularNormal,SingleScatterNormal,FuzzNormal,IridescenceNormal,GlassNormal"; + setAttr ".lpe_user7" -type "string" ""; + setAttr ".lpe_user8" -type "string" ""; + setAttr ".lpe_user9" -type "string" ""; + setAttr ".lpe_user10" -type "string" ""; + setAttr ".lpe_user11" -type "string" ""; + setAttr ".lpe_user12" -type "string" ""; + setAttr ".imageFileFormat" -type "string" "___.."; + setAttr ".ribFileFormat" -type "string" "..rib"; + setAttr ".version" 1; + setAttr ".take" 1; + setAttr ".imageOutputDir" -type "string" "/images/_v_t"; + setAttr ".ribOutputDir" -type "string" "/renderman/rib//v_t"; + setAttr -s 10 ".UserTokens"; + setAttr ".UserTokens[0].userTokenKeys" -type "string" ""; + setAttr ".UserTokens[0].userTokenValues" -type "string" ""; + setAttr ".UserTokens[1].userTokenKeys" -type "string" ""; + setAttr ".UserTokens[1].userTokenValues" -type "string" ""; + setAttr ".UserTokens[2].userTokenKeys" -type "string" ""; + setAttr ".UserTokens[2].userTokenValues" -type "string" ""; + setAttr ".UserTokens[3].userTokenKeys" -type "string" ""; + setAttr ".UserTokens[3].userTokenValues" -type "string" ""; + setAttr ".UserTokens[4].userTokenKeys" -type "string" ""; + setAttr ".UserTokens[4].userTokenValues" -type "string" ""; + setAttr ".UserTokens[5].userTokenKeys" -type "string" ""; + setAttr ".UserTokens[5].userTokenValues" -type "string" ""; + setAttr ".UserTokens[6].userTokenKeys" -type "string" ""; + setAttr ".UserTokens[6].userTokenValues" -type "string" ""; + setAttr ".UserTokens[7].userTokenKeys" -type "string" ""; + setAttr ".UserTokens[7].userTokenValues" -type "string" ""; + setAttr ".UserTokens[8].userTokenKeys" -type "string" ""; + setAttr ".UserTokens[8].userTokenValues" -type "string" ""; + setAttr ".UserTokens[9].userTokenKeys" -type "string" ""; + setAttr ".UserTokens[9].userTokenValues" -type "string" ""; + setAttr ".rlfData" -type "string" "init"; + setAttr ".jobid" -type "string" ""; + setAttr ".txmanagerData" -type "string" "{\"PxrTexture1.filename\": {\"params\": {\"texture_type\": \"regular\", \"data_type\": null, \"s_mode\": \"periodic\", \"t_mode\": \"periodic\", \"texture_format\": \"pixar\", \"texture_filter\": \"catmull-rom\", \"resize\": \"round-\", \"compression\": \"lossless\", \"compression_level\": null, \"ocioconfig\": null, \"ociocolorspace\": null, \"ocioconvert\": null, \"ociodither\": false, \"bumprough\": [], \"mipfilter\": \"box\", \"uid\": \"8d75e4349227eee6dd19b855e3c00edd3045ec93\"}, \"uid\": \"5ee100c2787db5d358ee97bf6fa63d251704499f\"}, \"file1.fileTextureName\": {\"params\": {\"texture_type\": \"regular\", \"data_type\": null, \"s_mode\": \"periodic\", \"t_mode\": \"periodic\", \"texture_format\": \"pixar\", \"texture_filter\": \"catmull-rom\", \"resize\": \"round-\", \"compression\": \"lossless\", \"compression_level\": null, \"ocioconfig\": null, \"ociocolorspace\": null, \"ocioconvert\": null, \"ociodither\": false, \"bumprough\": [], \"mipfilter\": \"box\", \"uid\": \"8d75e4349227eee6dd19b855e3c00edd3045ec93\"}, \"uid\": \"5ee100c2787db5d358ee97bf6fa63d251704499f\"}}"; + setAttr ".rmanVersion" -type "string" "25.2"; +createNode PxrPathTracer -s -n "PxrPathTracer"; + rename -uid "74955661-FE4D-30A6-A527-69BB0D6B83A9"; + setAttr ".cch" no; + setAttr ".fzn" no; + setAttr ".ihi" 2; + setAttr ".nds" 0; + setAttr ".maxIndirectBounces" 8; + setAttr ".maxContinuationLength" -1; + setAttr ".maxNonStochasticOpacityEvents" 0; + setAttr ".sampleMode" -type "string" "bxdf"; + setAttr ".numLightSamples" 1; + setAttr ".numBxdfSamples" 1; + setAttr ".numVolumeAggregateSamples" 1; + setAttr ".numIndirectSamples" 1; + setAttr ".numDiffuseSamples" 1; + setAttr ".numSpecularSamples" 1; + setAttr ".numSubsurfaceSamples" 1; + setAttr ".numRefractionSamples" 1; + setAttr ".allowCaustics" no; + setAttr ".accumOpacity" no; + setAttr ".risPathGuiding" no; + setAttr ".rouletteDepth" 4; + setAttr ".rouletteThreshold" 0.20000000298023224; + setAttr ".clampDepth" 2; + setAttr ".clampLuminance" 10; + setAttr ".volumeAggregate" -type "string" "globalVolumeAggregate"; + setAttr ".volumeAggregateCamera" -type "string" ""; + setAttr ".volumeAggregateIndirect" -type "string" ""; + setAttr ".volumeAggregateTransmission" -type "string" ""; + setAttr ".jointSampling" no; + setAttr ".jointScatteringBias" 0.5; +createNode rmanBakingGlobals -s -n "rmanBakingGlobals"; + rename -uid "25DF8B78-C444-86A1-A7F5-279774890E60"; + setAttr ".cch" no; + setAttr ".fzn" no; + setAttr ".ihi" 2; + setAttr ".nds" 0; + setAttr ".bakeMode" 0; + setAttr ".bakingImageFileFormat" -type "string" "__."; + setAttr ".resolution" 512; + setAttr ".rman_bakeudimstride" 1; + setAttr ".rman_bakeudimoffset" 0; + setAttr ".rman_diceDistanceLength" 0.05000000074505806; + setAttr ".rman_bakebboxmin" -type "float3" 1e+30 1e+30 1e+30 ; + setAttr ".rman_bakebboxmax" -type "float3" -1e+30 -1e+30 -1e+30 ; + setAttr ".ri_maxSpecularDepth" 4; + setAttr ".ri_maxDiffuseDepth" 1; + setAttr ".init" 0; +createNode rmanDisplay -n "rmanDefaultBakeDisplay"; + rename -uid "D32DCBD7-F647-2602-BDF3-479CCC5E4DA9"; + setAttr ".cch" no; + setAttr ".fzn" no; + setAttr ".ihi" 2; + setAttr ".nds" 0; + setAttr ".enable" yes; + setAttr ".denoise" no; + setAttr ".frameMode" 0; + setAttr ".opticalFlow" no; + setAttr ".remapBreakPoint" 0; + setAttr ".remapMaxValue" 0; + setAttr ".remapSmoothness" 0; + setAttr -s 2 ".displayChannels"; + setAttr ".name" -type "string" ""; +createNode rmanDisplayChannel -n "diffuse"; + rename -uid "32F6AD63-854E-9795-F8F7-5AB84ABAE3D0"; + setAttr ".cch" no; + setAttr ".fzn" no; + setAttr ".ihi" 2; + setAttr ".nds" 0; + setAttr ".enable" yes; + setAttr ".channelType" -type "string" "color"; + setAttr ".channelSource" -type "string" "lpe:C(D[DS]*[LO])|[LO]"; + setAttr ".lpeLightGroup" -type "string" ""; + setAttr ".filter" -type "string" "inherit from display"; + setAttr ".filterwidth" -type "float2" -1 -1 ; + setAttr ".statistics" -type "string" ""; + setAttr ".relativepixelvariance" -1; + setAttr ".shadowthreshold" 0.0099999997764825821; + setAttr ".remapBreakPoint" 0; + setAttr ".remapMaxValue" 0; + setAttr ".remapSmoothness" 0; + setAttr ".name" -type "string" "diffuse"; +createNode rmanDisplayChannel -n "a"; + rename -uid "BD41EA15-C14F-B3E4-9100-81930E2FE509"; + setAttr ".cch" no; + setAttr ".fzn" no; + setAttr ".ihi" 2; + setAttr ".nds" 0; + setAttr ".enable" yes; + setAttr ".channelType" -type "string" "float"; + setAttr ".channelSource" -type "string" "a"; + setAttr ".lpeLightGroup" -type "string" ""; + setAttr ".filter" -type "string" "inherit from display"; + setAttr ".filterwidth" -type "float2" -1 -1 ; + setAttr ".statistics" -type "string" ""; + setAttr ".relativepixelvariance" -1; + setAttr ".shadowthreshold" 0.0099999997764825821; + setAttr ".remapBreakPoint" 0; + setAttr ".remapMaxValue" 0; + setAttr ".remapSmoothness" 0; + setAttr ".name" -type "string" "a"; +createNode PxrPathTracer -s -n "bake_PxrPathTracer"; + rename -uid "EC2BDE9D-6C4D-72FE-4F5F-0CB03BEE2CF2"; + setAttr ".cch" no; + setAttr ".fzn" no; + setAttr ".ihi" 2; + setAttr ".nds" 0; + setAttr ".maxIndirectBounces" 8; + setAttr ".maxContinuationLength" -1; + setAttr ".maxNonStochasticOpacityEvents" 0; + setAttr ".sampleMode" -type "string" "bxdf"; + setAttr ".numLightSamples" 1; + setAttr ".numBxdfSamples" 1; + setAttr ".numVolumeAggregateSamples" 1; + setAttr ".numIndirectSamples" 1; + setAttr ".numDiffuseSamples" 1; + setAttr ".numSpecularSamples" 1; + setAttr ".numSubsurfaceSamples" 1; + setAttr ".numRefractionSamples" 1; + setAttr ".allowCaustics" no; + setAttr ".accumOpacity" no; + setAttr ".risPathGuiding" no; + setAttr ".rouletteDepth" 4; + setAttr ".rouletteThreshold" 0.20000000298023224; + setAttr ".clampDepth" 2; + setAttr ".clampLuminance" 10; + setAttr ".volumeAggregate" -type "string" "globalVolumeAggregate"; + setAttr ".volumeAggregateCamera" -type "string" ""; + setAttr ".volumeAggregateIndirect" -type "string" ""; + setAttr ".volumeAggregateTransmission" -type "string" ""; + setAttr ".jointSampling" no; + setAttr ".jointScatteringBias" 0.5; +createNode rmanVolumeAggregateSet -s -n "globalVolumeAggregate"; + rename -uid "0D9E6F8B-ED40-5D09-8F8D-61B077EDD3A1"; +lockNode -l 1 ; +createNode d_openexr -n "d_openexr"; + rename -uid "B706557B-BA4A-6422-CE92-7B891B58EBFD"; + setAttr ".cch" no; + setAttr ".fzn" no; + setAttr ".ihi" 2; + setAttr ".nds" 0; + setAttr ".asrgba" yes; + setAttr ".autocrop" -type "string" "false"; + setAttr ".storage" -type "string" "scanline"; + setAttr ".exrpixeltype" -type "string" "half"; + setAttr ".compression" -type "string" "zips"; + setAttr ".compressionlevel" 45; + setAttr ".forcepar" 0; + setAttr ".metadatacount" 0; +createNode rmanDisplay -s -n "rmanDefaultDisplay"; + rename -uid "353A73AE-E647-2ABD-EC31-8983B52A1EBB"; + setAttr ".cch" no; + setAttr ".fzn" no; + setAttr ".ihi" 2; + setAttr ".nds" 0; + setAttr ".enable" yes; + setAttr ".denoise" no; + setAttr ".frameMode" 0; + setAttr ".opticalFlow" no; + setAttr ".remapBreakPoint" 0; + setAttr ".remapMaxValue" 0; + setAttr ".remapSmoothness" 0; + setAttr -s 2 ".displayChannels"; + setAttr ".name" -type "string" ""; +createNode d_openexr -n "d_openexr1"; + rename -uid "819F3BC4-D949-EFE4-D0E3-F2BB91BE0428"; + setAttr ".cch" no; + setAttr ".fzn" no; + setAttr ".ihi" 2; + setAttr ".nds" 0; + setAttr ".asrgba" yes; + setAttr ".autocrop" -type "string" "false"; + setAttr ".storage" -type "string" "scanline"; + setAttr ".exrpixeltype" -type "string" "half"; + setAttr ".compression" -type "string" "zips"; + setAttr ".compressionlevel" 45; + setAttr ".forcepar" 0; + setAttr ".metadatacount" 0; +createNode rmanDisplayChannel -n "Ci"; + rename -uid "78A6C39B-B943-CD9C-5F97-21ABDF369D21"; + setAttr ".cch" no; + setAttr ".fzn" no; + setAttr ".ihi" 2; + setAttr ".nds" 0; + setAttr ".enable" yes; + setAttr ".channelType" -type "string" "color"; + setAttr ".channelSource" -type "string" "Ci"; + setAttr ".lpeLightGroup" -type "string" ""; + setAttr ".filter" -type "string" "inherit from display"; + setAttr ".filterwidth" -type "float2" -1 -1 ; + setAttr ".statistics" -type "string" ""; + setAttr ".relativepixelvariance" 1; + setAttr ".shadowthreshold" 0.0099999997764825821; + setAttr ".remapBreakPoint" 0; + setAttr ".remapMaxValue" 0; + setAttr ".remapSmoothness" 0; + setAttr ".name" -type "string" "Ci"; +createNode rmanDisplayChannel -n "a1"; + rename -uid "CF9110B9-934A-8518-00F5-B3AF521F9277"; + setAttr ".cch" no; + setAttr ".fzn" no; + setAttr ".ihi" 2; + setAttr ".nds" 0; + setAttr ".enable" yes; + setAttr ".channelType" -type "string" "float"; + setAttr ".channelSource" -type "string" "a"; + setAttr ".lpeLightGroup" -type "string" ""; + setAttr ".filter" -type "string" "inherit from display"; + setAttr ".filterwidth" -type "float2" -1 -1 ; + setAttr ".statistics" -type "string" ""; + setAttr ".relativepixelvariance" -1; + setAttr ".shadowthreshold" 0.0099999997764825821; + setAttr ".remapBreakPoint" 0; + setAttr ".remapMaxValue" 0; + setAttr ".remapSmoothness" 0; + setAttr ".name" -type "string" "a"; +createNode polyPlane -n "polyPlane1"; + rename -uid "B783B997-D048-A7D5-47A6-E38FA2C02C00"; + setAttr ".cuv" 2; +createNode PxrSurface -n "PxrSurface1"; + rename -uid "E7B07FF4-FD43-CA3B-78AE-1D992125B09F"; + addAttr -ci true -h true -sn "aal" -ln "attributeAliasList" -dt "attributeAlias"; + setAttr ".cch" no; + setAttr ".fzn" no; + setAttr ".ihi" 2; + setAttr ".nds" 0; + setAttr ".inputMaterial" 0; + setAttr ".diffuseGain" 0.53043478727340698; + setAttr ".diffuseColor" -type "float3" 0 0 0 ; + setAttr ".diffuseRoughness" 0; + setAttr ".diffuseExponent" 1; + setAttr ".diffuseBumpNormal" -type "float3" 0 0 0 ; + setAttr ".diffuseDoubleSided" no; + setAttr ".diffuseBackUseDiffuseColor" yes; + setAttr ".diffuseBackColor" -type "float3" 0.18000001 0.18000001 0.18000001 ; + setAttr ".diffuseTransmitGain" 0; + setAttr ".diffuseTransmitColor" -type "float3" 0.18000001 0.18000001 0.18000001 ; + setAttr ".specularFresnelMode" 0; + setAttr ".specularFaceColor" -type "float3" 0 0 0 ; + setAttr ".specularEdgeColor" -type "float3" 0 0 0 ; + setAttr ".specularFresnelShape" 5; + setAttr ".specularIor" -type "float3" 1.5 1.5 1.5 ; + setAttr ".specularExtinctionCoeff" -type "float3" 0 0 0 ; + setAttr ".specularRoughness" 0.20000000298023224; + setAttr ".specularModelType" 0; + setAttr ".specularAnisotropy" 0; + setAttr ".specularAnisotropyDirection" -type "float3" 0 0 0 ; + setAttr ".specularBumpNormal" -type "float3" 0 0 0 ; + setAttr ".specularDoubleSided" no; + setAttr ".roughSpecularFresnelMode" 0; + setAttr ".roughSpecularFaceColor" -type "float3" 0 0 0 ; + setAttr ".roughSpecularEdgeColor" -type "float3" 0 0 0 ; + setAttr ".roughSpecularFresnelShape" 5; + setAttr ".roughSpecularIor" -type "float3" 1.5 1.5 1.5 ; + setAttr ".roughSpecularExtinctionCoeff" -type "float3" 0 0 0 ; + setAttr ".roughSpecularRoughness" 0.60000002384185791; + setAttr ".roughSpecularModelType" 0; + setAttr ".roughSpecularAnisotropy" 0; + setAttr ".roughSpecularAnisotropyDirection" -type "float3" 0 0 0 ; + setAttr ".roughSpecularBumpNormal" -type "float3" 0 0 0 ; + setAttr ".roughSpecularDoubleSided" no; + setAttr ".clearcoatFresnelMode" 0; + setAttr ".clearcoatFaceColor" -type "float3" 0 0 0 ; + setAttr ".clearcoatEdgeColor" -type "float3" 0 0 0 ; + setAttr ".clearcoatFresnelShape" 5; + setAttr ".clearcoatIor" -type "float3" 1.5 1.5 1.5 ; + setAttr ".clearcoatExtinctionCoeff" -type "float3" 0 0 0 ; + setAttr ".clearcoatThickness" 0; + setAttr ".clearcoatAbsorptionTint" -type "float3" 0 0 0 ; + setAttr ".clearcoatRoughness" 0; + setAttr ".clearcoatModelType" 0; + setAttr ".clearcoatAnisotropy" 0; + setAttr ".clearcoatAnisotropyDirection" -type "float3" 0 0 0 ; + setAttr ".clearcoatBumpNormal" -type "float3" 0 0 0 ; + setAttr ".clearcoatDoubleSided" no; + setAttr ".specularEnergyCompensation" 1; + setAttr ".clearcoatEnergyCompensation" 1; + setAttr ".iridescenceFaceGain" 0; + setAttr ".iridescenceEdgeGain" 0; + setAttr ".iridescenceFresnelShape" 5; + setAttr ".iridescenceMode" 0; + setAttr ".iridescencePrimaryColor" -type "float3" 1 0 0 ; + setAttr ".iridescenceSecondaryColor" -type "float3" 0 0 1 ; + setAttr ".iridescenceRoughness" 0.20000000298023224; + setAttr ".iridescenceAnisotropy" 0; + setAttr ".iridescenceAnisotropyDirection" -type "float3" 0 0 0 ; + setAttr ".iridescenceBumpNormal" -type "float3" 0 0 0 ; + setAttr ".iridescenceCurve" 1; + setAttr ".iridescenceScale" 1; + setAttr ".iridescenceFlip" no; + setAttr ".iridescenceThickness" 800; + setAttr ".iridescenceDoubleSided" no; + setAttr ".fuzzGain" 0; + setAttr ".fuzzColor" -type "float3" 1 1 1 ; + setAttr ".fuzzConeAngle" 8; + setAttr ".fuzzBumpNormal" -type "float3" 0 0 0 ; + setAttr ".fuzzDoubleSided" no; + setAttr ".subsurfaceType" 5; + setAttr ".subsurfaceGain" 0; + setAttr ".subsurfaceColor" -type "float3" 0.82999998 0.79100001 0.75300002 ; + setAttr ".subsurfaceDmfp" 10; + setAttr ".subsurfaceDmfpColor" -type "float3" 0.85100001 0.55699998 0.39500001 ; + setAttr ".shortSubsurfaceGain" 0; + setAttr ".shortSubsurfaceColor" -type "float3" 0.89999998 0.89999998 0.89999998 ; + setAttr ".shortSubsurfaceDmfp" 5; + setAttr ".longSubsurfaceGain" 0; + setAttr ".longSubsurfaceColor" -type "float3" 0.80000001 0 0 ; + setAttr ".longSubsurfaceDmfp" 20; + setAttr ".subsurfaceDirectionality" 0; + setAttr ".subsurfaceBleed" 0; + setAttr ".subsurfaceDiffuseBlend" 0; + setAttr ".subsurfaceResolveSelfIntersections" no; + setAttr ".subsurfaceIor" 1.3999999761581421; + setAttr ".subsurfacePostTint" -type "float3" 1 1 1 ; + setAttr ".subsurfaceDiffuseSwitch" 1; + setAttr ".subsurfaceDoubleSided" no; + setAttr ".subsurfaceTransmitGain" 0; + setAttr ".considerBackside" yes; + setAttr ".continuationRayMode" 0; + setAttr ".maxContinuationHits" 2; + setAttr ".followTopology" 0; + setAttr ".subsurfaceSubset" -type "string" ""; + setAttr ".singlescatterGain" 0; + setAttr ".singlescatterColor" -type "float3" 0.82999998 0.79100001 0.75300002 ; + setAttr ".singlescatterMfp" 10; + setAttr ".singlescatterMfpColor" -type "float3" 0.85100001 0.55699998 0.39500001 ; + setAttr ".singlescatterDirectionality" 0; + setAttr ".singlescatterIor" 1.2999999523162842; + setAttr ".singlescatterBlur" 0; + setAttr ".singlescatterDirectGain" 0; + setAttr ".singlescatterDirectGainTint" -type "float3" 1 1 1 ; + setAttr ".singlescatterDoubleSided" no; + setAttr ".singlescatterConsiderBackside" yes; + setAttr ".singlescatterContinuationRayMode" 0; + setAttr ".singlescatterMaxContinuationHits" 2; + setAttr ".singlescatterDirectGainMode" 0; + setAttr ".singlescatterSubset" -type "string" ""; + setAttr ".irradianceTint" -type "float3" 1 1 1 ; + setAttr ".irradianceRoughness" 0; + setAttr ".unitLength" 0.10000000149011612; + setAttr ".refractionGain" 0; + setAttr ".reflectionGain" 0; + setAttr ".refractionColor" -type "float3" 1 1 1 ; + setAttr ".glassRoughness" 0.10000000149011612; + setAttr ".glassRefractionRoughness" -1; + setAttr ".glassRefraction2Roughness" 0; + setAttr ".glassRefraction2Blend" 0; + setAttr ".glassRefraction2Tint" -type "float3" 1 1 1 ; + setAttr ".glassAnisotropy" 0; + setAttr ".glassAnisotropyDirection" -type "float3" 0 0 0 ; + setAttr ".glassBumpNormal" -type "float3" 0 0 0 ; + setAttr ".glassIor" 1.5; + setAttr ".mwWalkable" no; + setAttr ".mwIor" -1; + setAttr ".thinGlass" no; + setAttr ".ignoreFresnel" no; + setAttr ".ignoreAccumOpacity" no; + setAttr ".blocksVolumes" no; + setAttr ".volumeAggregate" no; + setAttr ".volumeAggregateName" -type "string" "interiorVolumeAggregate"; + setAttr ".ssAlbedo" -type "float3" 0 0 0 ; + setAttr ".extinction" -type "float3" 0 0 0 ; + setAttr ".g0" 0; + setAttr ".g1" 0; + setAttr ".blend" 0; + setAttr ".volumeGlow" -type "float3" 0 0 0 ; + setAttr ".maxExtinction" -1; + setAttr ".multiScatter" no; + setAttr ".enableOverlappingVolumes" no; + setAttr ".glowGain" 0; + setAttr ".glowColor" -type "float3" 1 1 1 ; + setAttr ".bumpNormal" -type "float3" 0 0 0 ; + setAttr ".shadowBumpTerminator" yes; + setAttr ".shadowColor" -type "float3" 0 0 0 ; + setAttr ".shadowMode" 0; + setAttr ".presence" 1; + setAttr ".presenceCached" 1; + setAttr ".mwStartable" no; + setAttr ".roughnessMollificationClamp" 32; + setAttr ".userColor" -type "float3" 0 0 0 ; + setAttr ".utilityPattern[0]" 0; + setAttr ".aal" -type "attributeAlias" {"g","g0"} ; +createNode shadingEngine -n "PxrSurface1SG"; + rename -uid "7819DB33-AC45-57A8-EB49-B79F515E519A"; + setAttr ".ihi" 0; + setAttr ".ro" yes; +createNode materialInfo -n "materialInfo2"; + rename -uid "C4E9126F-E94A-0785-3241-DFB6425D621E"; +createNode lambert -n "lambert2"; + rename -uid "CDB665F9-8A49-C282-7687-6298D8F71156"; +createNode PxrSurface -n "PxrSurface2"; + rename -uid "A9DA751A-884D-0E4F-8113-3F9980C41F64"; + addAttr -ci true -h true -sn "aal" -ln "attributeAliasList" -dt "attributeAlias"; + setAttr ".cch" no; + setAttr ".fzn" no; + setAttr ".ihi" 2; + setAttr ".nds" 0; + setAttr ".inputMaterial" 0; + setAttr ".diffuseGain" 1; + setAttr ".diffuseColor" -type "float3" 0.43270001 0.43979999 0.1552 ; + setAttr ".diffuseRoughness" 0; + setAttr ".diffuseExponent" 1; + setAttr ".diffuseBumpNormal" -type "float3" 0 0 0 ; + setAttr ".diffuseDoubleSided" no; + setAttr ".diffuseBackUseDiffuseColor" yes; + setAttr ".diffuseBackColor" -type "float3" 0.18000001 0.18000001 0.18000001 ; + setAttr ".diffuseTransmitGain" 0; + setAttr ".diffuseTransmitColor" -type "float3" 0.18000001 0.18000001 0.18000001 ; + setAttr ".specularFresnelMode" 0; + setAttr ".specularFaceColor" -type "float3" 0.19548872 0.19548872 0.19548872 ; + setAttr ".specularEdgeColor" -type "float3" 0 0 0 ; + setAttr ".specularFresnelShape" 5; + setAttr ".specularIor" -type "float3" 1.5 1.5 1.5 ; + setAttr ".specularExtinctionCoeff" -type "float3" 0 0 0 ; + setAttr ".specularRoughness" 0.20000000298023224; + setAttr ".specularModelType" 0; + setAttr ".specularAnisotropy" 0; + setAttr ".specularAnisotropyDirection" -type "float3" 0 0 0 ; + setAttr ".specularBumpNormal" -type "float3" 0 0 0 ; + setAttr ".specularDoubleSided" no; + setAttr ".roughSpecularFresnelMode" 0; + setAttr ".roughSpecularFaceColor" -type "float3" 0 0 0 ; + setAttr ".roughSpecularEdgeColor" -type "float3" 0 0 0 ; + setAttr ".roughSpecularFresnelShape" 5; + setAttr ".roughSpecularIor" -type "float3" 1.5 1.5 1.5 ; + setAttr ".roughSpecularExtinctionCoeff" -type "float3" 0 0 0 ; + setAttr ".roughSpecularRoughness" 0.60000002384185791; + setAttr ".roughSpecularModelType" 0; + setAttr ".roughSpecularAnisotropy" 0; + setAttr ".roughSpecularAnisotropyDirection" -type "float3" 0 0 0 ; + setAttr ".roughSpecularBumpNormal" -type "float3" 0 0 0 ; + setAttr ".roughSpecularDoubleSided" no; + setAttr ".clearcoatFresnelMode" 0; + setAttr ".clearcoatFaceColor" -type "float3" 0 0 0 ; + setAttr ".clearcoatEdgeColor" -type "float3" 0 0 0 ; + setAttr ".clearcoatFresnelShape" 5; + setAttr ".clearcoatIor" -type "float3" 1.5 1.5 1.5 ; + setAttr ".clearcoatExtinctionCoeff" -type "float3" 0 0 0 ; + setAttr ".clearcoatThickness" 0; + setAttr ".clearcoatAbsorptionTint" -type "float3" 0 0 0 ; + setAttr ".clearcoatRoughness" 0; + setAttr ".clearcoatModelType" 0; + setAttr ".clearcoatAnisotropy" 0; + setAttr ".clearcoatAnisotropyDirection" -type "float3" 0 0 0 ; + setAttr ".clearcoatBumpNormal" -type "float3" 0 0 0 ; + setAttr ".clearcoatDoubleSided" no; + setAttr ".specularEnergyCompensation" 1; + setAttr ".clearcoatEnergyCompensation" 1; + setAttr ".iridescenceFaceGain" 0; + setAttr ".iridescenceEdgeGain" 0; + setAttr ".iridescenceFresnelShape" 5; + setAttr ".iridescenceMode" 0; + setAttr ".iridescencePrimaryColor" -type "float3" 1 0 0 ; + setAttr ".iridescenceSecondaryColor" -type "float3" 0 0 1 ; + setAttr ".iridescenceRoughness" 0.20000000298023224; + setAttr ".iridescenceAnisotropy" 0; + setAttr ".iridescenceAnisotropyDirection" -type "float3" 0 0 0 ; + setAttr ".iridescenceBumpNormal" -type "float3" 0 0 0 ; + setAttr ".iridescenceCurve" 1; + setAttr ".iridescenceScale" 1; + setAttr ".iridescenceFlip" no; + setAttr ".iridescenceThickness" 800; + setAttr ".iridescenceDoubleSided" no; + setAttr ".fuzzGain" 0; + setAttr ".fuzzColor" -type "float3" 1 1 1 ; + setAttr ".fuzzConeAngle" 8; + setAttr ".fuzzBumpNormal" -type "float3" 0 0 0 ; + setAttr ".fuzzDoubleSided" no; + setAttr ".subsurfaceType" 5; + setAttr ".subsurfaceGain" 0; + setAttr ".subsurfaceColor" -type "float3" 0.82999998 0.79100001 0.75300002 ; + setAttr ".subsurfaceDmfp" 10; + setAttr ".subsurfaceDmfpColor" -type "float3" 0.85100001 0.55699998 0.39500001 ; + setAttr ".shortSubsurfaceGain" 0; + setAttr ".shortSubsurfaceColor" -type "float3" 0.89999998 0.89999998 0.89999998 ; + setAttr ".shortSubsurfaceDmfp" 5; + setAttr ".longSubsurfaceGain" 0; + setAttr ".longSubsurfaceColor" -type "float3" 0.80000001 0 0 ; + setAttr ".longSubsurfaceDmfp" 20; + setAttr ".subsurfaceDirectionality" 0; + setAttr ".subsurfaceBleed" 0; + setAttr ".subsurfaceDiffuseBlend" 0; + setAttr ".subsurfaceResolveSelfIntersections" no; + setAttr ".subsurfaceIor" 1.3999999761581421; + setAttr ".subsurfacePostTint" -type "float3" 1 1 1 ; + setAttr ".subsurfaceDiffuseSwitch" 1; + setAttr ".subsurfaceDoubleSided" no; + setAttr ".subsurfaceTransmitGain" 0; + setAttr ".considerBackside" yes; + setAttr ".continuationRayMode" 0; + setAttr ".maxContinuationHits" 2; + setAttr ".followTopology" 0; + setAttr ".subsurfaceSubset" -type "string" ""; + setAttr ".singlescatterGain" 0; + setAttr ".singlescatterColor" -type "float3" 0.82999998 0.79100001 0.75300002 ; + setAttr ".singlescatterMfp" 10; + setAttr ".singlescatterMfpColor" -type "float3" 0.85100001 0.55699998 0.39500001 ; + setAttr ".singlescatterDirectionality" 0; + setAttr ".singlescatterIor" 1.2999999523162842; + setAttr ".singlescatterBlur" 0; + setAttr ".singlescatterDirectGain" 0; + setAttr ".singlescatterDirectGainTint" -type "float3" 1 1 1 ; + setAttr ".singlescatterDoubleSided" no; + setAttr ".singlescatterConsiderBackside" yes; + setAttr ".singlescatterContinuationRayMode" 0; + setAttr ".singlescatterMaxContinuationHits" 2; + setAttr ".singlescatterDirectGainMode" 0; + setAttr ".singlescatterSubset" -type "string" ""; + setAttr ".irradianceTint" -type "float3" 1 1 1 ; + setAttr ".irradianceRoughness" 0; + setAttr ".unitLength" 0.10000000149011612; + setAttr ".refractionGain" 0; + setAttr ".reflectionGain" 0; + setAttr ".refractionColor" -type "float3" 1 1 1 ; + setAttr ".glassRoughness" 0.10000000149011612; + setAttr ".glassRefractionRoughness" -1; + setAttr ".glassRefraction2Roughness" 0; + setAttr ".glassRefraction2Blend" 0; + setAttr ".glassRefraction2Tint" -type "float3" 1 1 1 ; + setAttr ".glassAnisotropy" 0; + setAttr ".glassAnisotropyDirection" -type "float3" 0 0 0 ; + setAttr ".glassBumpNormal" -type "float3" 0 0 0 ; + setAttr ".glassIor" 1.5; + setAttr ".mwWalkable" no; + setAttr ".mwIor" -1; + setAttr ".thinGlass" no; + setAttr ".ignoreFresnel" no; + setAttr ".ignoreAccumOpacity" no; + setAttr ".blocksVolumes" no; + setAttr ".volumeAggregate" no; + setAttr ".volumeAggregateName" -type "string" "interiorVolumeAggregate"; + setAttr ".ssAlbedo" -type "float3" 0 0 0 ; + setAttr ".extinction" -type "float3" 0 0 0 ; + setAttr ".g0" 0; + setAttr ".g1" 0; + setAttr ".blend" 0; + setAttr ".volumeGlow" -type "float3" 0 0 0 ; + setAttr ".maxExtinction" -1; + setAttr ".multiScatter" no; + setAttr ".enableOverlappingVolumes" no; + setAttr ".glowGain" 0; + setAttr ".glowColor" -type "float3" 1 1 1 ; + setAttr ".bumpNormal" -type "float3" 0 0 0 ; + setAttr ".shadowBumpTerminator" yes; + setAttr ".shadowColor" -type "float3" 0 0 0 ; + setAttr ".shadowMode" 0; + setAttr ".presence" 1; + setAttr ".presenceCached" 1; + setAttr ".mwStartable" no; + setAttr ".roughnessMollificationClamp" 32; + setAttr ".userColor" -type "float3" 0 0 0 ; + setAttr ".utilityPattern[0]" 0; + setAttr ".aal" -type "attributeAlias" {"g","g0"} ; +createNode shadingEngine -n "PxrSurface2SG"; + rename -uid "81F86CF0-364C-F915-5BA1-B283606EDE88"; + setAttr ".ihi" 0; + setAttr ".ro" yes; +createNode materialInfo -n "materialInfo3"; + rename -uid "3D8406E0-8C47-A7F7-D9B1-A1A43EEA7BCF"; +createNode lambert -n "lambert3"; + rename -uid "FA6C77C6-614D-E825-0F74-F685B5C18E92"; +createNode PxrTexture -n "PxrTexture1"; + rename -uid "3BB359F8-6745-35AD-F963-888EE44B373C"; + setAttr ".cch" no; + setAttr ".fzn" no; + setAttr ".ihi" 2; + setAttr ".nds" 0; + setAttr ".filename" -type "string" "/Users/rmvh/work/bealine/deadline-cloud-for-maya/job_bundle_output_tests/renderman/scene/deadline_logo_48x48.png"; + setAttr ".firstChannel" 0; + setAttr ".atlasStyle" 0; + setAttr ".invertT" yes; + setAttr ".filter" 1; + setAttr ".blur" 0; + setAttr ".missingColor" -type "float3" 1 0 1 ; + setAttr ".missingAlpha" 1; + setAttr ".linearize" no; + setAttr ".colorScale" -type "float3" 1 1 1 ; + setAttr ".colorOffset" -type "float3" 0 0 0 ; + setAttr ".saturation" 1; + setAttr ".alphaScale" 1; + setAttr ".alphaOffset" 0; + setAttr ".mipBias" 0; + setAttr ".maxResolution" 0; +createNode nodeGraphEditorInfo -n "hyperShadePrimaryNodeEditorSavedTabsInfo"; + rename -uid "7BE100E3-3344-2390-C7B7-979E2FC38F40"; + setAttr ".tgi[0].tn" -type "string" "Untitled_1"; + setAttr ".tgi[0].vl" -type "double2" -503.98637453120375 -1006.4999600052849 ; + setAttr ".tgi[0].vh" -type "double2" -92.31292150188203 179.98978876621555 ; + setAttr -s 5 ".tgi[0].ni"; + setAttr ".tgi[0].ni[0].x" 184.28572082519531; + setAttr ".tgi[0].ni[0].y" -107.14286041259766; + setAttr ".tgi[0].ni[0].nvs" 1923; + setAttr ".tgi[0].ni[1].x" -132.5201416015625; + setAttr ".tgi[0].ni[1].y" 429.29818725585938; + setAttr ".tgi[0].ni[1].nvs" 2387; + setAttr ".tgi[0].ni[2].x" -14.285714149475098; + setAttr ".tgi[0].ni[2].y" -301.42855834960938; + setAttr ".tgi[0].ni[2].nvs" 2387; + setAttr ".tgi[0].ni[3].x" 334.28570556640625; + setAttr ".tgi[0].ni[3].y" -301.42855834960938; + setAttr ".tgi[0].ni[3].nvs" 1923; + setAttr ".tgi[0].ni[4].x" -400.08163452148438; + setAttr ".tgi[0].ni[4].y" -198.81632995605469; + setAttr ".tgi[0].ni[4].nvs" 1923; +createNode reference -n "scene_file_to_referenceRN"; + rename -uid "035C5992-B741-E94D-81D5-729F530D9A93"; + setAttr ".ed" -type "dataReferenceEdits" + "scene_file_to_referenceRN" + "scene_file_to_referenceRN" 0; + setAttr ".ptag" -type "string" ""; +lockNode -l 1 ; +select -ne :time1; + setAttr ".o" 537; + setAttr ".unw" 537; +select -ne :hardwareRenderingGlobals; + setAttr ".otfna" -type "stringArray" 22 "NURBS Curves" "NURBS Surfaces" "Polygons" "Subdiv Surface" "Particles" "Particle Instance" "Fluids" "Strokes" "Image Planes" "UI" "Lights" "Cameras" "Locators" "Joints" "IK Handles" "Deformers" "Motion Trails" "Components" "Hair Systems" "Follicles" "Misc. UI" "Ornaments" ; + setAttr ".otfva" -type "Int32Array" 22 0 1 1 1 1 1 + 1 1 1 0 0 0 0 0 0 0 0 0 + 0 0 0 0 ; + setAttr ".fprt" yes; +select -ne :renderPartition; + setAttr -s 5 ".st"; +select -ne :renderGlobalsList1; +select -ne :defaultShaderList1; + setAttr -s 8 ".s"; +select -ne :postProcessList1; + setAttr -s 2 ".p"; +select -ne :defaultRenderUtilityList1; +select -ne :defaultRenderingList1; + setAttr -s 9 ".r"; +select -ne :lightList1; +select -ne :defaultTextureList1; + setAttr -s 2 ".tx"; +select -ne :lambert1; + setAttr ".c" -type "float3" 0.37920001 0.38350001 0.2105 ; +select -ne :initialShadingGroup; + setAttr ".ro" yes; +select -ne :initialParticleSE; + setAttr ".ro" yes; +select -ne :defaultRenderGlobals; + addAttr -ci true -h true -sn "dss" -ln "defaultSurfaceShader" -dt "string"; + setAttr ".ren" -type "string" "renderman"; + setAttr ".imfkey" -type "string" "exr"; + setAttr ".dss" -type "string" "lambert1"; +select -ne :defaultResolution; + setAttr ".pa" 1; +select -ne :defaultLightSet; +select -ne :defaultColorMgtGlobals; + setAttr ".cfe" yes; + setAttr ".cfp" -type "string" "/OCIO-configs/Maya2022-default/config.ocio"; + setAttr ".vtn" -type "string" "ACES 1.0 SDR-video (sRGB)"; + setAttr ".vn" -type "string" "ACES 1.0 SDR-video"; + setAttr ".dn" -type "string" "sRGB"; + setAttr ".wsn" -type "string" "ACEScg"; + setAttr ".otn" -type "string" "ACES 1.0 SDR-video (sRGB)"; + setAttr ".potn" -type "string" "ACES 1.0 SDR-video (sRGB)"; +select -ne :hardwareRenderGlobals; + setAttr ".ctrs" 256; + setAttr ".btrs" 512; +connectAttr "polyCube1.out" "pCubeShape1.i"; +connectAttr "polyPlane1.out" "pPlaneShape1.i"; +relationship "link" ":lightLinker1" ":initialShadingGroup.message" ":defaultLightSet.message"; +relationship "link" ":lightLinker1" ":initialParticleSE.message" ":defaultLightSet.message"; +relationship "link" ":lightLinker1" "standardSurface2SG.message" ":defaultLightSet.message"; +relationship "link" ":lightLinker1" "PxrSurface1SG.message" ":defaultLightSet.message"; +relationship "link" ":lightLinker1" "PxrSurface2SG.message" ":defaultLightSet.message"; +relationship "shadowLink" ":lightLinker1" ":initialShadingGroup.message" ":defaultLightSet.message"; +relationship "shadowLink" ":lightLinker1" ":initialParticleSE.message" ":defaultLightSet.message"; +relationship "shadowLink" ":lightLinker1" "standardSurface2SG.message" ":defaultLightSet.message"; +relationship "shadowLink" ":lightLinker1" "PxrSurface1SG.message" ":defaultLightSet.message"; +relationship "shadowLink" ":lightLinker1" "PxrSurface2SG.message" ":defaultLightSet.message"; +connectAttr "layerManager.dli[0]" "defaultLayer.id"; +connectAttr "renderLayerManager.rlmi[0]" "defaultRenderLayer.rlid"; +connectAttr ":defaultArnoldDisplayDriver.msg" ":defaultArnoldRenderOptions.drivers" + -na; +connectAttr ":defaultArnoldFilter.msg" ":defaultArnoldRenderOptions.filt"; +connectAttr ":defaultArnoldDriver.msg" ":defaultArnoldRenderOptions.drvr"; +connectAttr "file1.oc" "standardSurface2.bc"; +connectAttr "file1.oa" "standardSurface2.opr"; +connectAttr "file1.oa" "standardSurface2.opg"; +connectAttr "file1.oa" "standardSurface2.opb"; +connectAttr "standardSurface2.oc" "standardSurface2SG.ss"; +connectAttr "standardSurface2SG.msg" "materialInfo1.sg"; +connectAttr "standardSurface2.msg" "materialInfo1.m"; +connectAttr "standardSurface2.msg" "materialInfo1.t" -na; +connectAttr ":defaultColorMgtGlobals.cme" "file1.cme"; +connectAttr ":defaultColorMgtGlobals.cfe" "file1.cmcf"; +connectAttr ":defaultColorMgtGlobals.cfp" "file1.cmcp"; +connectAttr ":defaultColorMgtGlobals.wsn" "file1.ws"; +connectAttr "place2dTexture1.c" "file1.c"; +connectAttr "place2dTexture1.tf" "file1.tf"; +connectAttr "place2dTexture1.rf" "file1.rf"; +connectAttr "place2dTexture1.mu" "file1.mu"; +connectAttr "place2dTexture1.mv" "file1.mv"; +connectAttr "place2dTexture1.s" "file1.s"; +connectAttr "place2dTexture1.wu" "file1.wu"; +connectAttr "place2dTexture1.wv" "file1.wv"; +connectAttr "place2dTexture1.re" "file1.re"; +connectAttr "place2dTexture1.of" "file1.of"; +connectAttr "place2dTexture1.r" "file1.ro"; +connectAttr "place2dTexture1.n" "file1.n"; +connectAttr "place2dTexture1.vt1" "file1.vt1"; +connectAttr "place2dTexture1.vt2" "file1.vt2"; +connectAttr "place2dTexture1.vt3" "file1.vt3"; +connectAttr "place2dTexture1.vc1" "file1.vc1"; +connectAttr "place2dTexture1.o" "file1.uv"; +connectAttr "place2dTexture1.ofs" "file1.fs"; +connectAttr ":PxrPathTracer.msg" ":rmanGlobals.ri_integrator"; +connectAttr ":rmanDefaultDisplay.msg" ":rmanGlobals.displays[0]"; +connectAttr "rmanDefaultBakeDisplay.msg" ":rmanBakingGlobals.displays[0]"; +connectAttr ":bake_PxrPathTracer.msg" ":rmanBakingGlobals.ri_integrator"; +connectAttr "diffuse.msg" "rmanDefaultBakeDisplay.displayChannels[0]"; +connectAttr "a.msg" "rmanDefaultBakeDisplay.displayChannels[1]"; +connectAttr "d_openexr.msg" "rmanDefaultBakeDisplay.displayType"; +connectAttr "d_openexr1.msg" ":rmanDefaultDisplay.displayType"; +connectAttr "Ci.msg" ":rmanDefaultDisplay.displayChannels[0]"; +connectAttr "a1.msg" ":rmanDefaultDisplay.displayChannels[1]"; +connectAttr "PxrTexture1.resultRGB" "PxrSurface1.diffuseColor"; +connectAttr "PxrSurface1.oc" "PxrSurface1SG.rman__surface"; +connectAttr "lambert2.oc" "PxrSurface1SG.ss"; +connectAttr "pCubeShape1.iog" "PxrSurface1SG.dsm" -na; +connectAttr "PxrSurface1SG.msg" "materialInfo2.sg"; +connectAttr "lambert2.msg" "materialInfo2.m"; +connectAttr "PxrSurface2.oc" "PxrSurface2SG.rman__surface"; +connectAttr "lambert3.oc" "PxrSurface2SG.ss"; +connectAttr "pPlaneShape1.iog" "PxrSurface2SG.dsm" -na; +connectAttr "PxrSurface2SG.msg" "materialInfo3.sg"; +connectAttr "lambert3.msg" "materialInfo3.m"; +connectAttr "PxrSurface2SG.msg" "hyperShadePrimaryNodeEditorSavedTabsInfo.tgi[0].ni[0].dn" + ; +connectAttr "PxrSurface2.msg" "hyperShadePrimaryNodeEditorSavedTabsInfo.tgi[0].ni[1].dn" + ; +connectAttr "PxrSurface1.msg" "hyperShadePrimaryNodeEditorSavedTabsInfo.tgi[0].ni[2].dn" + ; +connectAttr "PxrSurface1SG.msg" "hyperShadePrimaryNodeEditorSavedTabsInfo.tgi[0].ni[3].dn" + ; +connectAttr "PxrTexture1.msg" "hyperShadePrimaryNodeEditorSavedTabsInfo.tgi[0].ni[4].dn" + ; +connectAttr "standardSurface2SG.pa" ":renderPartition.st" -na; +connectAttr "PxrSurface1SG.pa" ":renderPartition.st" -na; +connectAttr "PxrSurface2SG.pa" ":renderPartition.st" -na; +connectAttr "standardSurface2.msg" ":defaultShaderList1.s" -na; +connectAttr "PxrSurface1.msg" ":defaultShaderList1.s" -na; +connectAttr "PxrSurface2.msg" ":defaultShaderList1.s" -na; +connectAttr "place2dTexture1.msg" ":defaultRenderUtilityList1.u" -na; +connectAttr "defaultRenderLayer.msg" ":defaultRenderingList1.r" -na; +connectAttr ":rmanGlobals.msg" ":defaultRenderingList1.r" -na; +connectAttr ":PxrPathTracer.msg" ":defaultRenderingList1.r" -na; +connectAttr ":rmanBakingGlobals.msg" ":defaultRenderingList1.r" -na; +connectAttr ":bake_PxrPathTracer.msg" ":defaultRenderingList1.r" -na; +connectAttr "d_openexr.msg" ":defaultRenderingList1.r" -na; +connectAttr ":rmanDefaultDisplay.msg" ":defaultRenderingList1.r" -na; +connectAttr "d_openexr1.msg" ":defaultRenderingList1.r" -na; +connectAttr "PxrDistantLightShape.msg" ":lightList1.l" -na; +connectAttr "file1.msg" ":defaultTextureList1.tx" -na; +connectAttr "PxrTexture1.msg" ":defaultTextureList1.tx" -na; +connectAttr "PxrDistantLight.iog" ":defaultLightSet.dsm" -na; +// End of renderman.ma diff --git a/job_bundle_output_tests/renderman/scene/scene_file_to_reference.mb b/job_bundle_output_tests/renderman/scene/scene_file_to_reference.mb new file mode 100644 index 0000000000000000000000000000000000000000..4396bada38d3860bb38de5e741f6cf6f8b5eb456 GIT binary patch literal 54180 zcmeHweT*c>bzdL9%w67*5+#b1B2lgJQn-sad;4`q>W&g`c4qf>#r@LG?wzEp&Fh`+ znQ3iLceA@^KPWOjI{JfFBp3!L*@7j1$gqtdf)N3B5+k(ptswqT5(RLeM1~Rrajcj? zWGjK4*pBjhRn=eB)w6rbiF+r^kbApR^{VRCt5>hyd-bYnes%pxE&2TWSC)+fV;*T6 zC*s6A#}?*ljVp8O&G|S<)9#v@n3|@qo5;wd-`#gjtBv&KT4PR?USC+boJoJjRm*%_ zuk}0n^u*&jRjN-+T{!pN3sX<(Ys;u-vA(*JflumRT$x{0rLWF@paj0Yl!3p8;dxrq zmNr)wGwFAmE?V8?Rs83Glb8ch> zeqe`|zKia?S3f=5w;l6>KKb5>nR927@@GZ)zrMM-*wAJspFCfmJ~v&RX`FwuIy*UC zuTIR*JyD&hzjx-`#1oC_CuU+gtu1X{7G>$zn?kf_d3B>_1%@^`FzA_ON!9bX{OqHz{ME0n{kuQa8na7t>3q}f z+ttQ0#Wc#F&gB2KNYgJp#UU=86TiiG_DzNlH2oicF@VWJ^jsh{l!M3`sP>v zZT-2g{oUZt8GIi16OT9QH5vEH-3<3;*YGWkcO(4oU-{)Xe|=`}hWJ;?KiPJ)u}ifd`3`*uM9M$a@@xRi+tc^#d`Cxqb7Ni4(BeM3=W04fh>FYk zZv@Ya{AW$ekGc$~2=|7bk-+tga7V7^;ciRQcWrC0X+?U~*B@(fj@0tB(^TXB(5E8L z*G~QD)Q{HQ@Z8cbysSO&pMUwS9|jImUym~GG5VK&{L=5>^SkkP_8ax(_=Lv&f3xv^ zBnKCN$>V9U`S_LJ?*ISrRg7_tzw)@8_?&`IDt9wnIHz#5zV?3~dF226@QL}~ z_|nOze&kP{{vlqqOsCx(Hx&5kd(AIgesF{tg3>r~`N8sIj^X`~;JEzYaEHr}_Upzs zDtYvlPldK=X{S#HpZv}vt(9N@`RV`k@?So@SfKq;@@KQE8M*Nv~D^`)g}B>m>mmmIs(jh1Y8#|kF36B7q7t$yVX7e4*RKm7i; zZhibY=!Q#|o0+wH#Bp~tsNmWif+?i@(NF@&^N03Sv$4D+;V^bRBo$@Ov>{fP4cF*E z+nx32=Ks}?e`W6H8qx2b{Pb71s5z;w#u_S<>N<1X_d;utX}lhj({Y6>-+1UVuU&p^ z?l<4`Gk@>zyzS3^J;pz0H)$J+y8xMTlYS3mKF+Am%EvETZsfAe!p^_0gfaC$j}B|4+6 zhK%o6jPH8dr1pu6zw+t7^F@5|cL7Q6O zdXC9k6efc9)!$ow=Y2CDUi|FmM*jBy=>Oi&P@B?xdmy&6bZ%?Nd_-;DCAIljzD;2? z{Mti*`43$#PE^Ye1&WvsZEKt4LkI~?4s#!zt(!`g%|E!{&?lv z?+D-aFTP53O5^#E*N^;u^lT5-TTUyGaD20bV`4t%as2xm&HDP9gyVaz_wBmpw(U+o zV8(Z|71(~XLQTG7^dCgsuYY;=i;sWf`oBK)#TN-hi9WyfjcrXodsb)G__F2bn~Qp` zIvt~HjgOu^i~n_fqictH$Xd|xSI=m5ZP(H}mJ4e(vdnQ^CrPCnk$&Ly1Krzmb=cNB zqJq)Uj^k|`jvhvV?RNCB&az>1#gz#0&-9^s2RQhf$b;xpqeX*y!kp zsKRz5Otadd?8@EPliT%Mu7@6ZBdXLC`@D!gKc_O@f8AV;_s1jYd> zi-2`_x*|bORvy={b*zXL)vLR9cGq*1q6^3eA0o`s!5l(~j3N9Q%38WC=^gw&k3zYGX+wX_L#~CDO}6 zy&~2=xgG&k^L@*JP1=IrEbMt+)PDxEyqItJ$J!&z~?2UL8=B>0HJKFP_P}EIEO_IlQ4MuCHO=7C=IEw6j2t&EZM?J{i4=FM@ zjq6^|_gu`bPz57~Z3DBXA3&Z+=fGLv25%&Ap-R2sVB}qnXjqsbvg<roNK}jE>Rlk4a*Jf2;)00u_yBCp5q0` zIhXuQN)0m4rjdG?cUWV_$< zGeGAir*!(s0||y8UI!P`CWhP?bCih=*PM-Sdry#*sM_b@C%+DeSzwOUS} zdRHPIV7Hp!X5!0&Y=ZQfH9{*MOSvb=UbnDIWC?r50=MO99QL4;tg<05Yd(e8=wcj5 z-0D@CQ6a6Mxw7R36WD-|BvGy)ZU&HsXI_ZK0$%WYrtDl0B`vP-IoLLlS<~$Y+hM&Q z>_YHKlxA7Yen7Igkm-BQK@Z(4=7jxi)7~vD=P;d3YKjTKLK}R|E++HdT(N@4R$$fz zKNiY#z?yRZ>>j)tYlM%S!ZlV^=*6zP;-e(Gqg8PzkhuZ>QL5 z&m%#M$z&I~sO8xH<*rBep~S$Qz=B{|!%{-UWT~N^+bzQ}l%FGMPwgJwBT$*ZS*h zG?C+6Rttt!6U@q?)iku4$iEPOs<2arR@2aG(yK$ODVY;Pt4WZeI<%T%rqHWHtBGh) z9a>F8s|jrI{cAPNlY8;_%%*(vue066T&qLFX}H~#EPGh@_+H}1&~QqL0s%NQoQB&? zOd%Q?PVu~`4h<(kilN~Y^8_U2&~RdMVrV!G4X5vG!)c99IUb+klyClZHk{Z=#G&Cd zG@P>Q-q3Iw#_37X5yLpWWP%KLoKjK@4JSd1q2ZJ;#n5o#q!{iveGlXG&d*Heqv1rP z-uW3R=zbWhM~8a8+gLrE)T1K@0glKFI^opmI2IjtVX!yxpi{2-!_PVu(70*FRE$X3 zsVCEGZ5SQBf+Hvn(ZPKdJ5oJ_ce=7|g+TQ^5r$icUiJ2BI8V@VEi*p!qX=>J_BIf& zD-e;iG^%{v!m%J0=ZeVuLi}tFV%efdSS3s?!V%8xeuNqnXd*b-6@jbySxD96AWn}5 zx~q;{5yUd;U3A-?T(uW;5W@VtHG9C0am%s4X?7j)!E$cgG%I>l8MkZnBX4dWfvqM3 zDs()}mocNt8%Bq9NI`Q9n^lZerb3_;ohHTXpyOwXqH8$0Wh1=btc3%qiZF5<42rA6 zps9z2H5L#Uox+kEoR4Hhsi&TZR~Axe@C2rfWxt zkuN#$zzKt+Vz|_-fFortSw>r#f!J*vhHDXbhAQsrB3zrDaj3B~A2Mn*z&z%9#oCJ_ zr=<>>-ij9;3WRfJi#QfbVO%5N%+y}Rbmeo8Y$%wYf;`6!|4|VTf#d{3vHQ3P?#Ky zv#*pgA7zW(<`t5?Dh4&se9iH@#%h3bZwU*?q=FdiF&V{)AufEt^>B_;!?8~=x7(4+ zggBcdYE_>Mb2~(o0zU6!uGK{p4bBR7aMxks zfF5VyGL&zDqZP55GEiNMX?k3GTDJYyO+h1eeLdAKi4UpyL@|ryxdJBPt-_q58pN_( zJl#r}L$yno-GWj>wM!+k*$Mrj+C{fb-KuKWP>mX@Q6$Q$w~QKfoSF^4?@C;$gHx__ zVji$~7f{DBM#Cu7pati;97zZYZUjN`jGA`J|!PU6t1|lWe8SD#-;! zGx}3W6-RJgB^4gxzDnTYhEo@oqVYrBSgg9DE30JO2fDKo%m%u&5~x(aQs7OKQ03Z6 zN*CN)3XBssg>Z2x+EKc>6jdF?)x~f#%iUcpUv_yZ+Jb+FTk3jcLh@WB-G@dtKo%VC z?_w1l>ht0~D))Pde0CXRnJ+_%NsBQvnfzr`RD<|*@W zCG~8U`neL2LwsEf&N!04i-X3J@#sD;j>c zmz6jL$Wi=ZtgXX+Vhk+n^iuo92rQ@69inxSE5*F3@1S@GlzI0lN4=A9yFyRB@Q-7JXv zFHu_?J2@&C+&@JICEXy0MioOW09t`%xiOeRaC5LtelaC(KSXZ|*BK^#J$%{Pu@07T z=?^@avip`-65*yR%jA1?0F|Z^A=Bx=daOYb>Y6WWUFE!-l?{-R$>z6a=G? zek_}=)K@LF-8i;v*1~PXDhMjRVYhaarcx4-!5=}u)tLOhoXeXg$StITM@dBHz{m?` z<%-RVoA(;P4Q)(FC>%)(KVI{O?tV%v3_T^ zf~4)Av_RoC2AU@EJt#+Uz$oIzSQX@=ImG*7Lm9*?1@!ubYRcnoVq5|pU%`v}zKhoP zEi|7)aaHgU_>RByswX`=F6&x_$9Ktr`QCp&bD?xOGV%H?#D!hF2plli>p;o3KwurV z>79gi9~T#v;qqN_Vn*n_r^4zk@kFPjQp-R_9;njLhMLg<+@Y0NOQASVo}qH=;^_uN zc(aGMPz2weS3w~ry+e;Z(U}NE%sdmJ&(jMt3RQ}9e7q*IL2qP0f)*Z=;PMv=(>lDt ztoE+$s}(2G+4u$T3ay)TF1#os?$0j)nA?w^w2=XJ-+Hy zfsjg}H$-gyKv>Z@dt9j$gH3u=1g~x3Nr)007hSyH#h%bo0I=;$HW>5t{*RK{o^Rkf zc_7bETqsd#!`)95S0TY4MeyP=S1pKD22<+3XSs7OJ!+xsCgXYjs(3LNpN%ITFp8Fq z8d%)SdZ?@H&X^w4dSh~9$^kP-{aXcm` zLjpV2RUpCONV5NUZ4Af)Z}1sM?4urEG+EO4Z9q!tMZ&V}D3TWnb8Sp2j-E3i{lW`+ zCQJ3eB7e1l-m}2tdhg3VTqoYMpe*%E7ljur=!MNB(65hY6WK8@Ts00&i}s&$k4RR^ zU*D5DSvGoj)30a-=2Rc5h}$AXcTafPL3cD9P`9GZ0ZUP6Tv%p^^h%Z;@zwP z4O?aoP(f2{AJ8eVu#QK1I#|UpjN90Tk15+ca9ijqy+0bNu!fGqSJ;N-N8Ke_d6jD| zVhHfU8%}cO2kx1CvZ@7Q%ndpQ%7ds}@P`VFUW{tOzn~%pR zZKX8#vdC9(C6#9SKk14}WfKb2fOt)eG#D>F$fnZKa0M>j*@J#P5J!q|1j`Uxlvyzr zm>BPrV`R&YF0vkXjqs`wwYok%7pWLnNvWdi2}WMjEhn_tL#Ri833cR#oS!5?GK)@` zJkC9OI+V;}=Bwte5V%9hOk5v-@K(`KGGiBaD4E0CUosDPAnx!N;<#MD(P!eM@HWIu z3f*y_)yp+WokY=bnY|JUM_OKv*Y2ffazqq2!eRNt=mV*|c_p)c-lW&eZ)ge6A#fW| zn8#xCt?Yr6U1tv=-|SmxZ-}-M3b!J4842;)JL$0l$;mX`?*XqS4Ig$Jm5jhGOikaz zi>iY>ifaJ4`Ls-$J&cr6^S2@;r8Nt0_+qQbF0clFv{=t=>>StHRf^1QKt3pmJMKTih>qgy4uIpgq&Y?pF26#IMLbrqJHB^&=7TV>&`< zuz{3~c+=m9JyM@c0ov|(PlXFa`MwcsnSlsA;P8rV?Wy-2Tc{y0^vVmWCq~FuTE(u$ zB6u+{*j=4$Q$eviBF+yl;k+n9j&LZJ?Y61B(E_sO`<8(a5p2~U2E_BCE^IMGrl^YW zrWF@8G6eZ~Yp9eTq2MhAZhN>zpiLn{t1fRt1%xOYGu%v~Y!q90UC*K0la*UPNjUrh z?SWYh{x*kdlZT>gIC0|JgH_mU_n{rcJ2)OLpH*(kMSIxx1f0?<6#|L|2s}EV9(MAZNToO%Eh>q}x6<>>K1>Al=y0@_jeWM^ zK0Wos`TVWttn+y2QSppPoYnOD0nHGwZ>I+`t7Zpk;9Gq}BtyCRO|MBtMxff{qn9S< zu+={~pVxrUddunArF^K=2<$xGo-P!}j%Rd)~INiyK(GB##vJ^^AS2 zI5?>8Mr^Cqrrq7wq_UIh0TVlPCMj4>hQZ3ZV?UEEnEoRXJMT) z`b;tAy}I4+`G*1t-k>Q#Tk$2)57^Onu|v)JRdYHBR*kwn8elB=HP@WQbfu}P8fad0 zkqI$q5Gp2b@mU_n@X_wM`Yr^V`T1ZU2LYmkLBa#$VfXqyTzIo!1m+&F76M+uD_*PR z^r_baBuxkrkC{d6>Zs6%aGW(li@P{+@vfp7fUH|)AA9M8pbmZUL7EIOTMuR3fDj;UQ4Ul`D_i54P18 zc(X3D>}EfpB|ur8HWv^x(N*V${cY3U9a!FhBBHFB$ysF%S31;Lyth}ZAi{;mN{}vi zT$w>}C`t*?!=V=JoZujwLguhlPFbJ5vw$F|lDk5n;fN@0MV)X77(KhCtQB(~U2~vR zk(_Il3~Srz+l5=#*@#jYP4fWSojM4m4OXG*m2JCq2a1+D3-NOdFLmy^-6_FG^p(kN zx(r0EAeB5%$$ErPGux+S)KjxKe+(WIt|W5D#JN5!Qdl@t zp^$q!YWnuF_h~Emf)0UQ?s}oR(GK=d;p4}OXM@2NvX8`PiOgvke$=OnTM+IJrh>%A zn-R)Tu|1|nDQXvQvnX;7d!2=iqEPg>DuPp|5SViZO2vp)f1x(8@NkvDg_y7R!^rEA z1nmU$27zL5a}i2}Mf_12KUHcsJ?D_MsPZ>8stOm*wN^P-#`ok`I)1-Sf$BmvX&0%rUmHZl?fOjcJ+> z+dYno2KOkN*s7#$Y>|_x%qem0;+C6XTr`xniY(SB_d^hYwp`+nD%N@Z8gApFc-tV_ z^tm%aXRd~8F%U*}G1ab^_?Qsog-8)P=T_`h0Lk+J8D9d1CF4v;A+s(7QCRXDh*X8M zK;+0Cf;c&G3y6d=Ux3I)e+v!(k(IIf(OG8pr#&bd`*A7R!WZe>tQTK0w!BDD8}K4i zP=14(uvm;ldcjl|=^6W6q=*$XXO!o&5=%UvoSNVHbRk$V@xW}%=+4kaVQP!gFj2XE zoqiWa^;Tk4rxgL3ao|>k8`HTQVM3=B3A;H>$Qa9MqRK)Rxk|HG;8BU#jtwTwlQYz|MIJFnA^$d>HjbCXj#{fJzZ0UT#3tzH^|yxE(g zUNClJ3?&P9ik@LoCnqII_<9g_@8&??;E4i4J zvqeRA#-_wX$QhtTh`iMqHz1puA{|R$YF~=9oKcxgOD#c>nl&Fql58`^kit+DUt{Y~ zd`(Qk_`7TeigaQ8iErHE6JOXmFU&lV6x((&L~789l#CS@rzEDENKn~pA}co1#Mhi< z7K5bbm`F)%u=sn%@QRaSYfF4rnOGt#wW~xz-k1`Jc?&A8HDfl3q{LQ=%LxNXd`+z) zk&u`|;(Oly5s6u&MPF!1T-oynCSmLL9 zIx)}02Xv&39FaX#-h>PoDsSpN4Z$ZvSTQ}t&`l4&H_&Id${qD zoWj`XF#^3O{FHH4T9$e4Hy76}KR!4l%D{DudPkW7RizWt6!36PuZFlrK!-_>`{;IY zs{`$+AXT`7YWvvsIKWSwa2Y#pOLV_`F0~`-^Tq_Wi@>U!)t z9J^J_rM72jf0nh+T!@*9aQJ{<%Y+SUpa)YoUsaNC;rRK*QQ8Surd=mAjw^3y%ih4t z0TUn&|FcG}UHZ-(6tK`Rir_&+Ho@K7^?H_+l=%FX=*@yG_{Gr|M>VZ6yEM0PLW@5q z!${LF-5Y<^wE5NbC)01*7n}9Mb>?(9Yc+8Q!p1rsBJE4+_9~3 zw|J<5ci0}N_5ljK0{An!*nrmHG3L9?8h^4^N6-K^3AHr-N?X9bur4-+wfWfXpe@^B zYg|WTs{!_;DN-x$`r`CdmJZK?4!fKV1aab!pSYHz|CZ*!{cS(MEO`1`aSi#g)t*v} z?Hev|uP389#p}#3U2ewZ@%vuPE1FezNOe7~sOwFlF2Nj2kg8x%e5A4sWm&QDL{T7C zkSUwT=LbUVG-|y2D0RN^0*+cmh^*<$}O7nF^v}sgFyF zKEC;axGa?VNRtSgus+d;#xXO0P6n97=_nTHr>gtGxbArJH0P-18?O5`1>O(k`<%}G z+Q!B@Z-xC^H8wuHrv15o3ExhTtc-`02g~r0)yy!NF9eh8x8-WO5#SwalT|45H*PU( zL&`5+XSrM+XUp5YHm+^abZb9g5K{g3Q`5R*&_+Jv%p;81gK6L6h&JB1gxg6U6TN)Q zPQ0R^>%(!~Y(HbU6UCI3>OR$KTe-@meqCy{eNBIAx%T1Ov+Hxs)y?(#T=V^BSL=(b zbf-MFi^H?a#(^<4F*OAno5c~IT%$^ll6<-9My&H2#iajNT%xeen>< z`p5mPCWnvyS1PrNw4OKe@A8UtMYD@wsyYX)Eh7NxX&Qb1-f?_TQNJAx%s&*e6yn zZZlyfm7CG{y30V~(t*><7UxS0uOx7IHFEoNCt~u~nA{Y5x{Uw^K``D6JIUbld|s!} zR>w^S#^kYt-$kh$clRG!VH<`er_Leu9T~x0F3RP8PoBuF!< list[RegexCallback]: "and necessary write permissions of MAYA_APP_DIR." ) _vray_license_error = "error: Could not obtain a license" + _renderman_license_error = ".*{SEVERE}\s+License.*" callback_list = [] completed_regexes = [re.compile("MayaClient: Finished Rendering Frame [0-9]+")] progress_regexes = [ re.compile("\\[PROGRESS\\] ([0-9]+) percent"), re.compile("([0-9]+)% done"), # arnold + re.compile("R90000\\s+([0-9]+)%"), # renderman ] - error_regexes = [re.compile(".*Exception:.*|.*Error:.*|.*Warning.*")] + error_regexes = [re.compile(".*Exception:.*|.*Error:.*|.*Warning.*|.*SEVERE.*")] callback_list.append(RegexCallback(completed_regexes, self._handle_complete)) callback_list.append(RegexCallback(progress_regexes, self._handle_progress)) @@ -211,6 +213,11 @@ def _get_regex_callbacks(self) -> list[RegexCallback]: self._handle_error, ) ) + callback_list.append( + RegexCallback( + [re.compile(_renderman_license_error)], self._handle_renderman_license_error + ) + ) callback_list.append( RegexCallback([re.compile(_vray_license_error)], self._handle_vray_license_error) ) @@ -291,6 +298,25 @@ def _handle_vray_license_error(self, match: re.Match) -> None: " Check your licensing configuration.\n" ) + def _handle_renderman_license_error(self, match: re.Match) -> None: + """ + Callback for stdout that indicates an license error with RenderMan. + Args: + match (re.Match): The match object from the regex pattern that was matched the message + + Raises: + RuntimeError: Always raises a runtime error to halt the adaptor. + """ + pixar_license_file = os.environ.get("PIXAR_LICENSE_FILE") + rmantree = os.environ.get("RMANTREE") + self._exc_info = RuntimeError( + f"{match.group(0)}\n" + "This error is typically associated with a licensing error " + "when using RenderMan. Check your licensing configuration.\n" + f"RMANTREE: {rmantree}\n" + f"PIXAR_LICENSE_FILE: {pixar_license_file}\n" + ) + @property def maya_client_path(self) -> str: """ diff --git a/src/deadline/maya_adaptor/MayaAdaptor/schemas/init_data.schema.json b/src/deadline/maya_adaptor/MayaAdaptor/schemas/init_data.schema.json index fb47547..66ac942 100644 --- a/src/deadline/maya_adaptor/MayaAdaptor/schemas/init_data.schema.json +++ b/src/deadline/maya_adaptor/MayaAdaptor/schemas/init_data.schema.json @@ -19,7 +19,8 @@ "mayaHardware2", "mayaSoftware", "mayaVector", - "vray" + "vray", + "renderman" ] }, "scene_file": { "type": "string" }, diff --git a/src/deadline/maya_adaptor/MayaClient/render_handlers/__init__.py b/src/deadline/maya_adaptor/MayaClient/render_handlers/__init__.py index 00ae3d6..b0ea73d 100644 --- a/src/deadline/maya_adaptor/MayaClient/render_handlers/__init__.py +++ b/src/deadline/maya_adaptor/MayaClient/render_handlers/__init__.py @@ -3,6 +3,7 @@ from .default_maya_handler import DefaultMayaHandler from .arnold_handler import ArnoldHandler from .vray_handler import VRayHandler +from .renderman_handler import RenderManHandler __all__ = ["DefaultMayaHandler", "get_render_handler"] @@ -21,5 +22,7 @@ def get_render_handler(renderer: str = "mayaSoftware") -> DefaultMayaHandler: return ArnoldHandler() elif renderer == "vray": return VRayHandler() + elif renderer == "renderman": + return RenderManHandler() else: return DefaultMayaHandler() diff --git a/src/deadline/maya_adaptor/MayaClient/render_handlers/renderman_handler.py b/src/deadline/maya_adaptor/MayaClient/render_handlers/renderman_handler.py new file mode 100644 index 0000000..913c664 --- /dev/null +++ b/src/deadline/maya_adaptor/MayaClient/render_handlers/renderman_handler.py @@ -0,0 +1,85 @@ +# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + +from .default_maya_handler import DefaultMayaHandler + +import maya.cmds + + +class RenderManHandler(DefaultMayaHandler): + """Render Handler for RenderMan""" + + def __init__(self): + """ + Initializes the RenderMan Renderer Handler + """ + super().__init__() + self.render_layer = "defaultRenderLayer" + + def set_render_layer(self, data: dict) -> None: + """ + Sets the render layer. + + Args: + data (dict): The data given from the Adaptor. Keys expected: ['render_layer'] + + Raises: + RuntimeError: If the render layer cannot be found + """ + rl = self.get_render_layer_to_render(data) + if rl: + self.render_layer = rl + + def set_image_height(self, data: dict) -> None: + """ + Sets the image height. + + Args: + data (dict): The data given from the Adaptor. Keys expected: ['image_height'] + """ + yresolution = int(data.get("image_height", 0)) + maya.cmds.setAttr("defaultResolution.height", yresolution) + + def set_image_width(self, data: dict) -> None: + """ + Sets the image width. + + Args: + data (dict): The data given from the Adaptor. Keys expected: ['image_width'] + """ + xresolution = int(data.get("image_width", 0)) + maya.cmds.setAttr("defaultResolution.width", xresolution) + + def start_render(self, data: dict) -> None: + """ + Starts a render. + + Args: + data (dict): The data given from the Adaptor. Keys expected: ['frame'] + + Raises: + RuntimeError: If Renderman for Maya was not loaded + """ + + if not maya.cmds.pluginInfo("RenderManForMaya.py", query=True, loaded=True): + raise RuntimeError( + "MayaClient: The RenderMan for Maya plugin was not loaded. Please verify that it is installed." + ) + + frame = data.get("frame") + if frame is None: + raise RuntimeError("MayaClient: start_render called without a frame number.") + self.render_kwargs["seq"] = frame + + # Note that some overrides are currently not implemented (camera, resolution, etc...) + + import rfm2 + + rfm2.render.RNDR.set_render_type(rfm2.render.RT_BATCH) + rfm2.render_with_renderman() + rfm2.render.RNDR.start() + rfm2.render.frame( + f" -s {frame} -e {frame} -layer {self.render_layer} -numThreads 0 -txmake " + ) + rfm2.render.RNDR.stop() + + print(f"MayaClient: Finished Rendering Frame {frame}\n", flush=True) diff --git a/src/deadline/maya_submitter/assets.py b/src/deadline/maya_submitter/assets.py index e78f73f..ecb2e3f 100644 --- a/src/deadline/maya_submitter/assets.py +++ b/src/deadline/maya_submitter/assets.py @@ -87,14 +87,16 @@ def _get_tex_files(self) -> set[Path]: full_path = os.path.join(directory, filename) # Expand tags if any are present for expanded_path in self._expand_path(full_path): - # add the original texture - filename_tex_set.add(expanded_path) - try: - # Returns a key error if the resource is not in tx manager - filename_tex = get_texture_by_path(str(expanded_path), attribute) - filename_tex_set.add(Path(filename_tex)) - except KeyError: - pass + # get_texture_by_path expects an attribute, not a node + if "." in attribute: + # add the original texture + filename_tex_set.add(expanded_path) + try: + # Returns a key error if the resource is not in tx manager + filename_tex = get_texture_by_path(str(expanded_path), attribute) + filename_tex_set.add(Path(filename_tex)) + except KeyError: + pass return filename_tex_set diff --git a/src/deadline/maya_submitter/job_bundle_output_test_runner.py b/src/deadline/maya_submitter/job_bundle_output_test_runner.py index 5027ad6..8d520d5 100644 --- a/src/deadline/maya_submitter/job_bundle_output_test_runner.py +++ b/src/deadline/maya_submitter/job_bundle_output_test_runner.py @@ -162,6 +162,11 @@ def run_maya_render_submitter_job_bundle_output_test(): f"Directory {job_bundle_test} does not contain the expected .ma scene: {dcc_scene_file}." ) + # skip renderman tests if rfm is not available + if "renderman" in dcc_scene_file: + if not maya.cmds.pluginInfo("RenderMan_for_Maya.py", query=True, loaded=True): + continue + succeeded = _run_job_bundle_output_test( job_bundle_test, dcc_scene_file, report_fh, mainwin ) diff --git a/test/deadline_adaptor_for_maya/unit/MayaAdaptor/test_adaptor.py b/test/deadline_adaptor_for_maya/unit/MayaAdaptor/test_adaptor.py index 83ad63b..bba5da9 100644 --- a/test/deadline_adaptor_for_maya/unit/MayaAdaptor/test_adaptor.py +++ b/test/deadline_adaptor_for_maya/unit/MayaAdaptor/test_adaptor.py @@ -255,7 +255,8 @@ def test_populate_action_queue_test_mapping( assert mapping_call.args["path_mapping_rules"] == {"/source": "/destination"} @pytest.mark.parametrize( - "renderer, expected", [("mayaSoftware", False), ("arnold", True), ("vray", False)] + "renderer, expected", + [("mayaSoftware", False), ("arnold", True), ("vray", False), ("renderman", False)], ) @patch.object(MayaAdaptor, "_setup_arnold_pathmapping") @patch.object(MayaAdaptor, "map_path") @@ -641,9 +642,13 @@ def test_handle_complete(self, mock_update_status: Mock, init_data: dict): assert match is not None mock_update_status.assert_called_once_with(progress=100) - handle_progess_params = [(0, "[PROGRESS] 99 percent", 99), (1, " 45% done - 11 rays/pixel", 45)] + handle_progress_params = [ + (0, "[PROGRESS] 99 percent", 99), + (1, " 45% done - 11 rays/pixel", 45), + (2, "R90000 24%", 24), + ] - @pytest.mark.parametrize("regex_index, stdout, expected_progress", handle_progess_params) + @pytest.mark.parametrize("regex_index, stdout, expected_progress", handle_progress_params) @patch("deadline.maya_adaptor.MayaAdaptor.adaptor.MayaAdaptor.update_status") def test_handle_progress( self, @@ -681,6 +686,10 @@ def test_handle_progress( " is invalid or is not designated 'usedAsFilename'.", re.compile(".*Warning:.*"), ), + ( + "G32001 {SEVERE} Out of memory allocating tessellation cache.", + re.compile(".*SEVERE.*"), + ), ], ) def test_handle_error(self, init_data: dict, stdout: str, error_regex: re.Pattern) -> None: @@ -737,7 +746,7 @@ def test_strict_error_checking(self, init_data: dict, strict_error_checking: boo # GIVEN init_data["strict_error_checking"] = strict_error_checking adaptor = MayaAdaptor(init_data) - error_regexes = [re.compile(".*Exception:.*|.*Error:.*|.*Warning.*")] + error_regexes = [re.compile(".*Exception:.*|.*Error:.*|.*Warning.*|.*SEVERE.*")] # WHEN callbacks = adaptor._get_regex_callbacks() diff --git a/test/deadline_adaptor_for_maya/unit/MayaClient/render_handlers/test_renderman_handler.py b/test/deadline_adaptor_for_maya/unit/MayaClient/render_handlers/test_renderman_handler.py new file mode 100644 index 0000000..54324cd --- /dev/null +++ b/test/deadline_adaptor_for_maya/unit/MayaClient/render_handlers/test_renderman_handler.py @@ -0,0 +1,54 @@ +# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. +from __future__ import annotations + +from typing import Any + +import pytest + +import maya.cmds +from unittest.mock import patch +from deadline.maya_adaptor.MayaClient.render_handlers.renderman_handler import RenderManHandler + + +class TestRenderManHandler: + @pytest.mark.parametrize("args", [{"image_height": 1500}]) + @patch("deadline.maya_adaptor.MayaClient.render_handlers.renderman_handler.maya.cmds") + def test_set_image_height(self, mock_cmds, args: dict[str, Any]) -> None: + """Tests that setting the image height sets the maya render height""" + # GIVEN + handler = RenderManHandler() + + # WHEN + handler.set_image_height(args) + + # THEN + assert mock_cmds.mock_calls + mock_cmds.setAttr.assert_called_with("defaultResolution.height", args["image_height"]) + + @pytest.mark.parametrize("args", [{"image_width": 1500}]) + @patch("deadline.maya_adaptor.MayaClient.render_handlers.renderman_handler.maya.cmds") + def test_set_image_width(self, mock_cmds, args: dict[str, Any]) -> None: + """Tests that setting the image width set the maya render width""" + # GIVEN + handler = RenderManHandler() + + # WHEN + handler.set_image_width(args) + + # THEN + mock_cmds.setAttr.assert_called_with("defaultResolution.width", args["image_width"]) + + @patch.object(maya.cmds, "pluginInfo") + def test_no_renderman(self, plguinInfo) -> None: + """Tests that the handler detects missing RenderMan for Maya installation""" + # GIVEN + handler = RenderManHandler() + plguinInfo.return_value = False + + # WHEN/THEN + with pytest.raises(RuntimeError) as exc_info: + handler.start_render({}) + assert ( + str(exc_info.value) + == "MayaClient: The RenderMan for Maya plugin was not loaded. Please verify that it is installed." + )