From 6fe36006b4fac7d2fb12490483abf5d3895164be Mon Sep 17 00:00:00 2001 From: roopavr-adsk <134624277+roopavr-adsk@users.noreply.github.com> Date: Tue, 20 Feb 2024 14:41:21 -0500 Subject: [PATCH] Add Unit Test for Maya Shading Modes (#77) * Add Unit Test for Maya Shading Modes --- .../mayaUsd/render/mayaToHydra/CMakeLists.txt | 1 + .../MayaShadingModesTest/backfaceCulling.png | Bin 0 -> 3596 bytes .../MayaShadingModesTest/boundingBox.png | Bin 0 -> 4175 bytes .../MayaShadingModesTest/default.png | Bin 0 -> 3653 bytes .../MayaShadingModesTest/flatShaded.png | Bin 0 -> 3358 bytes .../MayaShadingModesTest/jointxray.png | Bin 0 -> 4474 bytes .../MayaShadingModesTest/smoothwireframe.png | Bin 0 -> 8735 bytes .../smoothwireframeonshaded.png | Bin 0 -> 8339 bytes .../mayaToHydra/MayaShadingModesTest/xray.png | Bin 0 -> 4131 bytes .../mayaToHydra/testMayaDisplayModes.py | 21 +- .../mayaToHydra/testMayaShadingModes.py | 106 +++++++ .../testMayaShadingModes.ma | 295 ++++++++++++++++++ 12 files changed, 410 insertions(+), 13 deletions(-) create mode 100644 test/lib/mayaUsd/render/mayaToHydra/MayaShadingModesTest/backfaceCulling.png create mode 100644 test/lib/mayaUsd/render/mayaToHydra/MayaShadingModesTest/boundingBox.png create mode 100644 test/lib/mayaUsd/render/mayaToHydra/MayaShadingModesTest/default.png create mode 100644 test/lib/mayaUsd/render/mayaToHydra/MayaShadingModesTest/flatShaded.png create mode 100644 test/lib/mayaUsd/render/mayaToHydra/MayaShadingModesTest/jointxray.png create mode 100644 test/lib/mayaUsd/render/mayaToHydra/MayaShadingModesTest/smoothwireframe.png create mode 100644 test/lib/mayaUsd/render/mayaToHydra/MayaShadingModesTest/smoothwireframeonshaded.png create mode 100644 test/lib/mayaUsd/render/mayaToHydra/MayaShadingModesTest/xray.png create mode 100644 test/lib/mayaUsd/render/mayaToHydra/testMayaShadingModes.py create mode 100644 test/testSamples/testMayaShadingModes/testMayaShadingModes.ma diff --git a/test/lib/mayaUsd/render/mayaToHydra/CMakeLists.txt b/test/lib/mayaUsd/render/mayaToHydra/CMakeLists.txt index 54c62243f0..fa2b6dedb2 100644 --- a/test/lib/mayaUsd/render/mayaToHydra/CMakeLists.txt +++ b/test/lib/mayaUsd/render/mayaToHydra/CMakeLists.txt @@ -15,6 +15,7 @@ set(INTERACTIVE_TEST_SCRIPT_FILES testMaterialXOnNative.py testNewSceneWithStage.py testMayaDisplayModes.py + testMayaShadingModes.py testMayaIsolateSelect.py testMayaLights.py testUSDLights.py diff --git a/test/lib/mayaUsd/render/mayaToHydra/MayaShadingModesTest/backfaceCulling.png b/test/lib/mayaUsd/render/mayaToHydra/MayaShadingModesTest/backfaceCulling.png new file mode 100644 index 0000000000000000000000000000000000000000..5aff008c0f0780fe2e20834ff553e4274d24ee97 GIT binary patch literal 3596 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ð@@U~p2O7WzV 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 E@Ah-90RR91 literal 0 HcmV?d00001 diff --git a/test/lib/mayaUsd/render/mayaToHydra/MayaShadingModesTest/flatShaded.png b/test/lib/mayaUsd/render/mayaToHydra/MayaShadingModesTest/flatShaded.png new file mode 100644 index 0000000000000000000000000000000000000000..517b1ee00ad3ad60141dee00827e9990c047dc4b GIT binary patch literal 3358 zcmd55vqmm6RFc~=Zf$pB_T(5=3`WVN-37T#uGJQ&>4IDqrm%_WB4e|M zoyo2p5fUXilR~MaHo3%1iXw@@ju|;q=bZg?&VKgu>_7G&=a2Qh-}}Dbx7K_4z3cnl zEN@RYMftVz7z{?yole_|!2s+}4@>mIRXi?MWyfj$iw%-OMPeo}&u zadl;W7JM4|jq4v`Fbc))w2j;1iYK3M+^_NVN|bRU_By_1;>SdwYJB7s!C~8B7u0y` z4^Gkf{kf)lxDm&vP7Ys_?;@2)&_8k*X9gV{9ELD0+iulqV=%UO2&0R|BAFM5*51arH11~SH;R4Ch)YMdrlrTK8*qFqRl7;7V$^1afgXH;DXR6_GQ8OZ(b!aFa(#--5Aqt3If zM)?In3nc&mOhYgbk$`am!M~Da-{_G+JGoqLbJc?Aois$flK5CfAa%JyD|>SrY#e3) zE0{UkJdFRF>qgxb0E51YKh3@U>=>&@^PIC!z8+oYvpo!Y@U7%%D(lkHbem3PMvI_0 z)w05w=8!CT7N`FtQ9NHcM-b>>`S0roCi8+*KD_@?NcU7#sv#2MgoM*)br(K9@1xj4 zkVov1Bgq|uL)?!~u0DG7$Y@!-|5}laVbmR6yMMzD*;w?Te2#!1m`oyp-U`^|{|kb$ zO_CbDFkRTPj5!RXa(}}m;-jprJXG-b%%22o#p{KI#yLU=`FDA~^DVik#~Dre?bTma zKu7eo0jaVK1mzRr;u@l{o&wL~I1MR(=`iN<+<9 zF2~djkypw6_!(iZPl-;&h^wkbYi%%0E(~1|u z8)yKXvM8D!X)CGyY_KnnE$U&;#CJaHiT zEz2Uq>@kk1RI4ErjE>&UP<}%qX$PEpB@|Z!M8%`d>G zqBL2uI8VN_FWRnphsSYzW-L2Dwwh-U+IW5hArLJlScx|i#GWz9mm?vR`){f zMCza~Top9G28hqt>EEJ~(7zLWnZw;r?%EL}&O!r9uN5g(RJA415c8)a4{!~~Q4c`? znECq9FoBH*8Od1Q;{Lhmjo#fV-fl@Qn_vkn{32I4#pXgtLv3Mzf(L7=c>ovIuq zns*aHB5b-_fn;*OHVm&9ZCY{H=EZe2_OTpFVaT?!%SQmet_!E-U9D&Aq{0*SjipD* zs$u}YR3`Cto~;>t$y$hVq4s+;aJ)8m*#K7LBzhOji5-DGt&Pyr&!CQ3F`(fH~H&)^OAa z)~XE=1o!Z*K^}9pQdzCsSv^>$8eNm$c*_(}XEBMcq0JUvh+L?T6;_m}g|&vWS8&o% zg?lDu3E@FiZirmumB*^0_&{u$icQU-*i)n@9Pj7A7jtBu>!A-V5{a9T~w z{4K{0s1Te?qYwmACH91HUm3swcV0xekM7)$<^NKgT@5mg9RUV;wLR0SU@w6X5iVq! zF)t_qjKgHixy~Q_rN3#48pBw0UK?QekY&vo+^71m>BG^MuSVShv3%pE?iXvA=g0tK zJ6S=g^VlND`lXLziCctW8-`4(l#M9P&gq~|WuRTfis72?4h4g(mEW2!G4sTFFprV` zrr_v+5um$jjI{K3N3j9S3w!b=UHt58K-a9uEBamVGRS(`)ctb@RU;ksPE)+7^y^+t ztdlyqTrya81%l2$E1fwIb5{>OGZLV$^J}OF*2#}-7PT2!w}sZvRK9BfpNW*&*LGE> z2`x zT!3>fk#IajCWkp0mxo#^jFFx+1{ITFg|_lI_1-Kd$kOf8^kOD8uux0WBK-h2WX<=? zlO>JX0hRw5ChD2-9yXw*=bz4h#=)!c78%#Dmgy<&WDM OjJt~`?Xpuy+CKrIl^Z$$ literal 0 HcmV?d00001 diff --git a/test/lib/mayaUsd/render/mayaToHydra/MayaShadingModesTest/jointxray.png b/test/lib/mayaUsd/render/mayaToHydra/MayaShadingModesTest/jointxray.png new file mode 100644 index 0000000000000000000000000000000000000000..9b8dd6ff25eec02bed2b97605f61039cba99a27a GIT binary patch literal 4474 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 PZI7}(>|j}9PKy37D+tGU literal 0 HcmV?d00001 diff --git a/test/lib/mayaUsd/render/mayaToHydra/testMayaDisplayModes.py b/test/lib/mayaUsd/render/mayaToHydra/testMayaDisplayModes.py index 0c0f0d0d55..56944b9ac4 100644 --- a/test/lib/mayaUsd/render/mayaToHydra/testMayaDisplayModes.py +++ b/test/lib/mayaUsd/render/mayaToHydra/testMayaDisplayModes.py @@ -41,7 +41,14 @@ def imageDiffFailPercent(self): return 4 return 0.2 - def switchDisplayModes(self): + def test_MayaDisplayModes(self): + + # open simple Maya scene + testFile = mayaUtils.openTestScene( + "testMayaDisplayModes", + "testMayaDisplayModes.ma") + cmds.refresh() + panel = mayaUtils.activeModelPanel() cmds.modelEditor(panel, edit=True, wireframeOnShaded=False) @@ -85,18 +92,6 @@ def switchDisplayModes(self): cmds.modelEditor(panel, edit=True, displayAppearance="smoothShaded") cmds.refresh() self.assertSnapshotClose("smoothShaded" + ".png", self.imageDiffFailThreshold, self.imageDiffFailPercent) - - - def test_MayaDisplayModes(self): - cmds.file(new=True, force=True) - - # open simple Maya scene - testFile = mayaUtils.openTestScene( - "testMayaDisplayModes", - "testMayaDisplayModes.ma") - cmds.refresh() - - self.switchDisplayModes() if __name__ == '__main__': fixturesUtils.runTests(globals()) diff --git a/test/lib/mayaUsd/render/mayaToHydra/testMayaShadingModes.py b/test/lib/mayaUsd/render/mayaToHydra/testMayaShadingModes.py new file mode 100644 index 0000000000..15b193d2c1 --- /dev/null +++ b/test/lib/mayaUsd/render/mayaToHydra/testMayaShadingModes.py @@ -0,0 +1,106 @@ +# +# Copyright 2024 Autodesk, Inc. All rights reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +import maya.cmds as cmds +import fixturesUtils +import mtohUtils +import mayaUtils + +import platform + +class TestMayaShadingModes(mtohUtils.MtohTestCase): #Subclassing mtohUtils.MtohTestCase to be able to call self.assertSnapshotClose + # MayaHydraBaseTestCase.setUpClass requirement. + _file = __file__ + + @property + def imageDiffFailThreshold(self): + # HYDRA-837 : Wireframes seem to have a slightly different color on macOS. We'll increase the thresholds + # for that platform specifically for now, so we can still catch issues on other platforms. + if platform.system() == "Darwin": + return 0.05 + return 0.01 + + @property + def imageDiffFailPercent(self): + # HYDRA-837 : Wireframes seem to have a slightly different color on macOS. We'll increase the thresholds + # for that platform specifically for now, so we can still catch issues on other platforms. + if platform.system() == "Darwin": + return 5 + return 0.2 + + def test_MayaShadingModes(self): + + testFile = mayaUtils.openTestScene( + "testMayaShadingModes", + "testMayaShadingModes.ma") + + cmds.refresh() + + panel = mayaUtils.activeModelPanel() + + cmds.modelEditor(panel, edit=True, wireframeOnShaded=False) + #Smooth Shading + cmds.modelEditor(panel, edit=True, displayAppearance="smoothShaded") + cmds.refresh() + self.assertSnapshotClose("default" + ".png", self.imageDiffFailThreshold, self.imageDiffFailPercent) + + #Flat Shading + cmds.modelEditor(panel, edit=True, displayAppearance="flatShaded") + cmds.refresh() + self.assertSnapshotClose("flatShaded" + ".png", self.imageDiffFailThreshold, self.imageDiffFailPercent) + cmds.modelEditor(panel, edit=True, displayAppearance="smoothShaded") + + #Bounding Box + cmds.modelEditor(panel, edit=True, displayAppearance="boundingBox") + cmds.refresh() + self.assertSnapshotClose("boundingBox" + ".png", self.imageDiffFailThreshold, self.imageDiffFailPercent) + cmds.modelEditor(panel, edit=True, displayAppearance="smoothShaded") + + #SmoothWirefame + cmds.modelEditor(panel, edit=True, displayAppearance="wireframe") + cmds.modelEditor(panel, edit=True, smoothWireframe=True) + cmds.refresh() + self.assertSnapshotClose("smoothwireframe" + ".png", self.imageDiffFailThreshold, self.imageDiffFailPercent) + cmds.modelEditor(panel, edit=True, smoothWireframe=False) + cmds.modelEditor(panel, edit=True, displayAppearance="smoothShaded") + + #SmoothWirefameOnShaded + cmds.modelEditor(panel, edit=True, wireframeOnShaded=True) + cmds.modelEditor(panel, edit=True, smoothWireframe=True) + cmds.refresh() + self.assertSnapshotClose("smoothwireframeonshaded" + ".png", self.imageDiffFailThreshold, self.imageDiffFailPercent) + cmds.modelEditor(panel, edit=True, smoothWireframe=False) + cmds.modelEditor(panel, edit=True, wireframeOnShaded=False) + + #X-ray + cmds.modelEditor(panel, edit=True, xray=True) + cmds.refresh() + self.assertSnapshotClose("xray" + ".png", self.imageDiffFailThreshold, self.imageDiffFailPercent) + cmds.modelEditor(panel, edit=True, xray=False) + + #joint xray mode + cmds.modelEditor(panel, edit=True, jointXray=True) + cmds.refresh() + self.assertSnapshotClose("jointxray" + ".png", self.imageDiffFailThreshold, self.imageDiffFailPercent) + cmds.modelEditor(panel, edit=True, jointXray=False) + + #backfaceCulling + cmds.modelEditor(panel, edit=True, backfaceCulling=True) + cmds.refresh() + self.assertSnapshotClose("backfaceCulling" + ".png", self.imageDiffFailThreshold, self.imageDiffFailPercent) + +if __name__ == '__main__': + fixturesUtils.runTests(globals()) diff --git a/test/testSamples/testMayaShadingModes/testMayaShadingModes.ma b/test/testSamples/testMayaShadingModes/testMayaShadingModes.ma new file mode 100644 index 0000000000..a727f45866 --- /dev/null +++ b/test/testSamples/testMayaShadingModes/testMayaShadingModes.ma @@ -0,0 +1,295 @@ +//Maya ASCII 2026ff01 scene +//Name: testMayaShadingModes.ma +//Last modified: Fri, Feb 16, 2024 03:55:53 PM +//Codeset: 1252 +requires maya "2026ff01"; +currentUnit -l centimeter -a degree -t film; +fileInfo "application" "maya"; +fileInfo "product" "Maya 2025"; +fileInfo "version" "Preview Release 153"; +fileInfo "cutIdentifier" "202402051305-000000"; +fileInfo "osv" "Windows 10 Enterprise v2009 (Build: 19045)"; +fileInfo "UUID" "438E2829-4785-062C-C0E5-AABD293C925C"; +createNode transform -s -n "persp"; + rename -uid "448BF34B-4CCB-748F-A705-ECAB4D9203AF"; + setAttr ".v" no; + setAttr ".t" -type "double3" 10.003872245262713 10.027792236737 11.741331868091853 ; + setAttr ".r" -type "double3" -24.938352729602922 42.600000000000357 0 ; +createNode camera -s -n "perspShape" -p "persp"; + rename -uid "B0FAA539-4D09-01B2-13BB-D9B695CE162A"; + setAttr -k off ".v" no; + setAttr ".fl" 34.999999999999993; + setAttr ".coi" 18.5051889679353; + 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 "9D12DDA3-4F63-4132-31B4-DB9622221CA3"; + 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 "73C1FE4E-4012-DC55-5602-35B6FC571A3B"; + 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; +createNode transform -s -n "front"; + rename -uid "F82125C6-44ED-9549-0644-CF84B1C4FB35"; + setAttr ".v" no; + setAttr ".t" -type "double3" -0.79105990622025524 4.1215547075605352 1000.1 ; +createNode camera -s -n "frontShape" -p "front"; + rename -uid "942D301E-44B5-49BA-273B-3697EFF30A83"; + setAttr -k off ".v" no; + setAttr ".rnd" no; + setAttr ".coi" 1000.1; + setAttr ".ow" 19.28130170987313; + 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; +createNode transform -s -n "side"; + rename -uid "691BD4FB-475B-4D05-9DFC-3A9C7CA70109"; + 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 "8C27F8EE-4C7E-7D32-3296-978899C54D9C"; + 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; +createNode transform -n "pCylinder1"; + rename -uid "3A1A640F-4351-C30A-0D01-1DB7BA003D32"; + setAttr ".t" -type "double3" 0 3.7520336636929112 0 ; + setAttr ".s" -type "double3" 1 3 1 ; +createNode mesh -n "pCylinderShape1" -p "pCylinder1"; + rename -uid "5401FFF0-4924-8A10-8453-349D74C1027A"; + 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 "pPlane1"; + rename -uid "CD003557-40CC-DAD9-9D32-838A942D4342"; + setAttr ".s" -type "double3" 11.281847136210049 11.281847136210049 11.281847136210049 ; +createNode mesh -n "pPlaneShape1" -p "pPlane1"; + rename -uid "8AE641B2-4680-FFB5-6617-10952ADC9BE6"; + 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 joint -n "joint1"; + rename -uid "E6AC5E01-4870-D86C-DF52-1F940275FAAB"; + setAttr ".t" -type "double3" 0.45953250547845054 6.331336742147549 0 ; + setAttr ".mnrl" -type "double3" -360 -360 -360 ; + setAttr ".mxrl" -type "double3" 360 360 360 ; + setAttr ".jo" -type "double3" 90 0 -94.653351587268347 ; + setAttr ".radi" 0.56221405943871339; +createNode joint -n "joint2" -p "joint1"; + rename -uid "6B5E28F2-42D6-11B9-ED97-9D8BF00EC453"; + setAttr ".t" -type "double3" 2.202805149148459 0 -7.56197393213957e-16 ; + setAttr ".mnrl" -type "double3" -360 -360 -360 ; + setAttr ".mxrl" -type "double3" 360 360 360 ; + setAttr ".jo" -type "double3" 3.8925502931577922e-16 6.3505077768685867 7.0167092985348649e-15 ; + setAttr ".radi" 0.62662101672800485; +createNode joint -n "joint3" -p "joint2"; + rename -uid "AA1034E2-4A31-A260-D3DE-69BB587092F1"; + setAttr ".t" -type "double3" 3.0824318357445191 4.1966794011589954e-16 0.27011682671729331 ; + setAttr ".mnrl" -type "double3" -360 -360 -360 ; + setAttr ".mxrl" -type "double3" 360 360 360 ; + setAttr ".jot" -type "string" "none"; + setAttr ".radi" 0.62662101672800485; +createNode transform -n "pCube1"; + rename -uid "BCAABA64-4536-1927-3D38-BFA751D3681D"; + setAttr ".t" -type "double3" 0 8.5266824867672835 0 ; +createNode mesh -n "pCubeShape1" -p "pCube1"; + rename -uid "A0965E64-4FF5-FC24-2AD6-0995C9A07DE6"; + setAttr -k off ".v"; + setAttr ".vir" yes; + setAttr ".vif" yes; + setAttr ".pv" -type "double2" 0.625 0.125 ; + 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 "55E158B3-4292-70D9-1AFA-429A0D1E887E"; + setAttr -s 2 ".lnk"; + setAttr -s 2 ".slnk"; +createNode shapeEditorManager -n "shapeEditorManager"; + rename -uid "D5CE6540-445F-588D-63F6-5D956EA0AC8F"; +createNode poseInterpolatorManager -n "poseInterpolatorManager"; + rename -uid "106C8573-48B0-A887-333D-5AAC742F65B2"; +createNode displayLayerManager -n "layerManager"; + rename -uid "50EF0719-454E-B507-88B3-3AB473A3C4FA"; +createNode displayLayer -n "defaultLayer"; + rename -uid "8FA5B98D-4800-0E38-BABA-10920F2184AE"; + setAttr ".ufem" -type "stringArray" 0 ; +createNode renderLayerManager -n "renderLayerManager"; + rename -uid "EAA84833-4B38-9D32-3D33-0297E687D801"; +createNode renderLayer -n "defaultRenderLayer"; + rename -uid "EDC17E95-49A3-1AD9-7E08-E39E06C5398E"; + setAttr ".g" yes; +createNode polyCylinder -n "polyCylinder1"; + rename -uid "4E938D7C-4E7A-250F-A7FC-01A24CA24E1C"; + setAttr ".sc" 1; + setAttr ".cuv" 3; +createNode polyPlane -n "polyPlane1"; + rename -uid "AA89F69D-4283-A2F6-314E-24A30AF5DA13"; + setAttr ".cuv" 2; +createNode script -n "uiConfigurationScriptNode"; + rename -uid "F55527C7-4E8A-AA06-C72F-4D807F208FA9"; + 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 32768\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 -excludeObjectPreset \"All\" \n -shadows 0\n -captureSequenceNumber -1\n -width 882\n -height 781\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 32768\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 -excludeObjectPreset \"All\" \n" + + " -shadows 0\n -captureSequenceNumber -1\n -width 881\n -height 781\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 32768\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 -excludeObjectPreset \"All\" \n -shadows 0\n -captureSequenceNumber -1\n -width 882\n -height 781\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 32768\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 -excludeObjectPreset \"All\" \n -shadows 0\n -captureSequenceNumber -1\n -width 1446\n -height 1650\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 1\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 -showUfeItems 1\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 -selectCommand \"print(\\\"\\\")\" \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 -showUfeItems 1\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 -showUfeItems 1\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 1\n -limitToSelectedCurves 0\n -constrainDrag 0\n -valueLinesToggle 0\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 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 0\n -showCompounds 0\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 1\n -allowMultiSelection 1\n -alwaysToggleSelect 0\n -directSelect 0\n -showUfeItems 1\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 \"none\" \n -snapValue \"none\" \n -outliner \"dopeSheetPanel1OutlineEd\" \n -hierarchyBelow 0\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\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 32768\\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 -excludeObjectPreset \\\"All\\\" \\n -shadows 0\\n -captureSequenceNumber -1\\n -width 1446\\n -height 1650\\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 32768\\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 -excludeObjectPreset \\\"All\\\" \\n -shadows 0\\n -captureSequenceNumber -1\\n -width 1446\\n -height 1650\\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 "6C41354E-471C-1254-FE5E-2E83F260D5D3"; + setAttr ".b" -type "string" "playbackOptions -min 1 -max 120 -ast 1 -aet 200 "; + setAttr ".st" 6; +createNode polyCube -n "polyCube1"; + rename -uid "3AB04CAE-4B0A-ACA4-12B2-72B7A8289120"; + setAttr ".cuv" 4; +createNode deleteComponent -n "deleteComponent1"; + rename -uid "F196CD28-4F66-419C-0691-3EB2158C086A"; + setAttr ".dc" -type "componentList" 2 "f[0]" "f[4]"; +select -ne :time1; + setAttr ".o" 1; + setAttr ".unw" 1; +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; + setAttr ".rtfm" 1; +select -ne :renderPartition; + setAttr -s 2 ".st"; +select -ne :renderGlobalsList1; +select -ne :defaultShaderList1; + setAttr -s 5 ".s"; +select -ne :postProcessList1; + setAttr -s 2 ".p"; +select -ne :defaultRenderingList1; +select -ne :standardSurface1; + setAttr ".bc" -type "float3" 0.40000001 0.40000001 0.40000001 ; + setAttr ".sr" 0.5; +select -ne :initialShadingGroup; + setAttr -s 3 ".dsm"; + setAttr ".ro" yes; +select -ne :initialParticleSE; + setAttr ".ro" yes; +select -ne :defaultRenderGlobals; + addAttr -ci true -sn "mtohMotionSampleStart" -ln "mtohMotionSampleStart" -at "float"; + addAttr -ci true -sn "mtohMotionSampleEnd" -ln "mtohMotionSampleEnd" -at "float"; + addAttr -ci true -sn "mayaHydraRenderPurpose" -ln "mayaHydraRenderPurpose" -min + 0 -max 1 -at "bool"; + addAttr -ci true -sn "mayaHydraProxyPurpose" -ln "mayaHydraProxyPurpose" -dv 1 -min + 0 -max 1 -at "bool"; + addAttr -ci true -sn "mayaHydraGuidePurpose" -ln "mayaHydraGuidePurpose" -min 0 + -max 1 -at "bool"; + addAttr -ci true -sn "mtohTextureMemoryPerTexture" -ln "mtohTextureMemoryPerTexture" + -dv 4096 -min 1 -max 262144 -smn 16384 -at "long"; + addAttr -ci true -sn "mtohMaximumShadowMapResolution" -ln "mtohMaximumShadowMapResolution" + -dv 2048 -min 32 -max 8192 -at "long"; + addAttr -ci true -sn "HdStormRendererPlugin__enableTinyPrimCulling" -ln "HdStormRendererPlugin__enableTinyPrimCulling" + -min 0 -max 1 -at "bool"; + addAttr -ci true -sn "HdStormRendererPlugin__volumeRaymarchingStepSize" -ln "HdStormRendererPlugin__volumeRaymarchingStepSize" + -dv 1 -at "float"; + addAttr -ci true -sn "HdStormRendererPlugin__volumeRaymarchingStepSizeLighting" + -ln "HdStormRendererPlugin__volumeRaymarchingStepSizeLighting" -dv 10 -at "float"; + addAttr -ci true -sn "HdStormRendererPlugin__volumeMaxTextureMemoryPerField" -ln "HdStormRendererPlugin__volumeMaxTextureMemoryPerField" + -dv 128 -at "float"; + addAttr -ci true -sn "HdStormRendererPlugin__maxLights" -ln "HdStormRendererPlugin__maxLights" + -dv 16 -at "long"; + addAttr -ci true -h true -sn "dss" -ln "defaultSurfaceShader" -dt "string"; + setAttr ".dss" -type "string" "standardSurface1"; +select -ne :defaultResolution; + setAttr ".pa" 1; +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 "polyCylinder1.out" "pCylinderShape1.i"; +connectAttr "polyPlane1.out" "pPlaneShape1.i"; +connectAttr "joint1.s" "joint2.is"; +connectAttr "joint2.s" "joint3.is"; +connectAttr "deleteComponent1.og" "pCubeShape1.i"; +relationship "link" ":lightLinker1" ":initialShadingGroup.message" ":defaultLightSet.message"; +relationship "link" ":lightLinker1" ":initialParticleSE.message" ":defaultLightSet.message"; +relationship "shadowLink" ":lightLinker1" ":initialShadingGroup.message" ":defaultLightSet.message"; +relationship "shadowLink" ":lightLinker1" ":initialParticleSE.message" ":defaultLightSet.message"; +connectAttr "layerManager.dli[0]" "defaultLayer.id"; +connectAttr "renderLayerManager.rlmi[0]" "defaultRenderLayer.rlid"; +connectAttr "polyCube1.out" "deleteComponent1.ig"; +connectAttr "defaultRenderLayer.msg" ":defaultRenderingList1.r" -na; +connectAttr "pCylinderShape1.iog" ":initialShadingGroup.dsm" -na; +connectAttr "pPlaneShape1.iog" ":initialShadingGroup.dsm" -na; +connectAttr "pCubeShape1.iog" ":initialShadingGroup.dsm" -na; +// End of testMayaShadingModes.ma