0707070000010000000006660000000000000000010000001440237341500000700000000237.startfplayback -i on -r off -f 1 -e on -h on -t on -a on -k on -s 1 tcur 0 fps 24 tset 0 10 frange 1 240 unitlength 1 unitmass 1 prompt '`strcat(oppwf(), " -> ")`' 0707070000010000000006660000000000000000010000001440237341500001300000001206.variablesset -g DRIVER = 'arnold1' set -g DRIVERPATH = '/out/arnold1' set -g E = '2.7182818284590452354' set -g EYE = 'stereo' set -g HIP = 'C:/Users/OEM User/Documents/maya/projects/htoa' set -g HIPFILE = 'C:/Users/OEM User/Documents/maya/projects/htoa/distance-shader-user-guide.hip' set -g HIPNAME = 'distance-shader-user-guide' set -g JOB = 'C:/Users/griggsl' set -g PI = '3.1415926535897932384' set -g POSE = 'C:/Users/OEMUSE~1/DOCUME~1/houdini19.5/poselib' set -g _HIP_SAVEPLATFORM = 'windows-x86_64-cl19.29' set -g _HIP_SAVETIME = 'Thu Mar 9 16:11:09 2023' set -g _HIP_SAVEVERSION = '19.5.493' set -g _HIP_SHELFTOOLCOUNT = '3' set -g status = '0' 0707070000010000000006660000000000000000010000001440237341500001100000000310.aliasesalias bye 'quit' alias cd 'opcf' alias cp 'opcp' alias h 'history' alias hython 'python' alias ls 'opls' alias matramp 'opramp' alias opcd 'opcf' alias oppwd 'oppwf' alias pwd 'oppwf' alias rm 'oprm' 0707070000010000000006660000000000000000010000001440237341500001400000000021.takeconfigtakename -g take 0707070000010000000006660000000000000000010000001440237341500001500000000000.hou.session0707070000010000000006660000000000000000010000001440237341500001500000000000.OPlibraries0707070000010000000006660000000000000000010000001440237341500001700000000000.OPpreferences0707070000010000000006660000000000000000010000001440237341500001500000000267.OPfallbacksDriver/arnold C:/Users/OEM User/htoa/htoa-6.2.1.0.beta49_r2d79fe3_houdini-19.5.493/htoa-6.2.1.0.beta49_r2d79fe3_houdini-19.5.493/otls/arnold_rop.otl Driver/arnold otls/arnold_rop.otl 0707070000010000000006660000000000000000010000001440237341500001500000134564.OPdummydefsINDX INDEX_SECTION“d ÷ houdini.hdalibrary“d ÷ Driver/arnold“¸ud öÜarnoldArnold"oplib:/Driver/arnold?Driver/arnoldopdef:/Driver/arnold?IconSVGDriver'd ÷ INDX DialogScript¸I_(7¹# Dialog script for arnold automatically generated 05/13/14 16:44:23 { name arnold script arnold label Arnold help { "" } inputlabel 1 "Sub-Network Input #1" inputlabel 2 "Sub-Network Input #2" inputlabel 3 "Sub-Network Input #3" inputlabel 4 "Sub-Network Input #4" inputlabel 5 "Sub-Network Input #5" inputlabel 6 "Sub-Network Input #6" inputlabel 7 "Sub-Network Input #7" inputlabel 8 "Sub-Network Input #8" inputlabel 9 "Sub-Network Input #9" inputlabel 10 "Sub-Network Input #10" inputlabel 11 "Sub-Network Input #11" inputlabel 12 "Sub-Network Input #12" inputlabel 13 "Sub-Network Input #13" inputlabel 14 "Sub-Network Input #14" inputlabel 15 "Sub-Network Input #15" inputlabel 16 "Sub-Network Input #16" inputlabel 17 "Sub-Network Input #17" inputlabel 18 "Sub-Network Input #18" inputlabel 19 "Sub-Network Input #19" inputlabel 20 "Sub-Network Input #20" inputlabel 21 "Sub-Network Input #21" inputlabel 22 "Sub-Network Input #22" inputlabel 23 "Sub-Network Input #23" inputlabel 24 "Sub-Network Input #24" inputlabel 25 "Sub-Network Input #25" inputlabel 26 "Sub-Network Input #26" inputlabel 27 "Sub-Network Input #27" inputlabel 28 "Sub-Network Input #28" inputlabel 29 "Sub-Network Input #29" inputlabel 30 "Sub-Network Input #30" inputlabel 31 "Sub-Network Input #31" inputlabel 32 "Sub-Network Input #32" inputlabel 33 "Sub-Network Input #33" inputlabel 34 "Sub-Network Input #34" inputlabel 35 "Sub-Network Input #35" inputlabel 36 "Sub-Network Input #36" inputlabel 37 "Sub-Network Input #37" inputlabel 38 "Sub-Network Input #38" inputlabel 39 "Sub-Network Input #39" inputlabel 40 "Sub-Network Input #40" inputlabel 41 "Sub-Network Input #41" inputlabel 42 "Sub-Network Input #42" inputlabel 43 "Sub-Network Input #43" inputlabel 44 "Sub-Network Input #44" inputlabel 45 "Sub-Network Input #45" inputlabel 46 "Sub-Network Input #46" inputlabel 47 "Sub-Network Input #47" inputlabel 48 "Sub-Network Input #48" inputlabel 49 "Sub-Network Input #49" inputlabel 50 "Sub-Network Input #50" inputlabel 51 "Sub-Network Input #51" inputlabel 52 "Sub-Network Input #52" inputlabel 53 "Sub-Network Input #53" inputlabel 54 "Sub-Network Input #54" inputlabel 55 "Sub-Network Input #55" inputlabel 56 "Sub-Network Input #56" inputlabel 57 "Sub-Network Input #57" inputlabel 58 "Sub-Network Input #58" inputlabel 59 "Sub-Network Input #59" inputlabel 60 "Sub-Network Input #60" inputlabel 61 "Sub-Network Input #61" inputlabel 62 "Sub-Network Input #62" inputlabel 63 "Sub-Network Input #63" inputlabel 64 "Sub-Network Input #64" inputlabel 65 "Sub-Network Input #65" inputlabel 66 "Sub-Network Input #66" inputlabel 67 "Sub-Network Input #67" inputlabel 68 "Sub-Network Input #68" inputlabel 69 "Sub-Network Input #69" inputlabel 70 "Sub-Network Input #70" inputlabel 71 "Sub-Network Input #71" inputlabel 72 "Sub-Network Input #72" inputlabel 73 "Sub-Network Input #73" inputlabel 74 "Sub-Network Input #74" inputlabel 75 "Sub-Network Input #75" inputlabel 76 "Sub-Network Input #76" inputlabel 77 "Sub-Network Input #77" inputlabel 78 "Sub-Network Input #78" inputlabel 79 "Sub-Network Input #79" inputlabel 80 "Sub-Network Input #80" inputlabel 81 "Sub-Network Input #81" inputlabel 82 "Sub-Network Input #82" inputlabel 83 "Sub-Network Input #83" inputlabel 84 "Sub-Network Input #84" inputlabel 85 "Sub-Network Input #85" inputlabel 86 "Sub-Network Input #86" inputlabel 87 "Sub-Network Input #87" inputlabel 88 "Sub-Network Input #88" inputlabel 89 "Sub-Network Input #89" inputlabel 90 "Sub-Network Input #90" inputlabel 91 "Sub-Network Input #91" inputlabel 92 "Sub-Network Input #92" inputlabel 93 "Sub-Network Input #93" inputlabel 94 "Sub-Network Input #94" inputlabel 95 "Sub-Network Input #95" inputlabel 96 "Sub-Network Input #96" inputlabel 97 "Sub-Network Input #97" inputlabel 98 "Sub-Network Input #98" inputlabel 99 "Sub-Network Input #99" inputlabel 100 "Sub-Network Input #100" inputlabel 101 "Sub-Network Input #101" inputlabel 102 "Sub-Network Input #102" inputlabel 103 "Sub-Network Input #103" inputlabel 104 "Sub-Network Input #104" inputlabel 105 "Sub-Network Input #105" inputlabel 106 "Sub-Network Input #106" inputlabel 107 "Sub-Network Input #107" inputlabel 108 "Sub-Network Input #108" inputlabel 109 "Sub-Network Input #109" inputlabel 110 "Sub-Network Input #110" inputlabel 111 "Sub-Network Input #111" inputlabel 112 "Sub-Network Input #112" inputlabel 113 "Sub-Network Input #113" inputlabel 114 "Sub-Network Input #114" inputlabel 115 "Sub-Network Input #115" inputlabel 116 "Sub-Network Input #116" inputlabel 117 "Sub-Network Input #117" inputlabel 118 "Sub-Network Input #118" inputlabel 119 "Sub-Network Input #119" inputlabel 120 "Sub-Network Input #120" inputlabel 121 "Sub-Network Input #121" inputlabel 122 "Sub-Network Input #122" inputlabel 123 "Sub-Network Input #123" inputlabel 124 "Sub-Network Input #124" inputlabel 125 "Sub-Network Input #125" inputlabel 126 "Sub-Network Input #126" inputlabel 127 "Sub-Network Input #127" inputlabel 128 "Sub-Network Input #128" inputlabel 129 "Sub-Network Input #129" inputlabel 130 "Sub-Network Input #130" inputlabel 131 "Sub-Network Input #131" inputlabel 132 "Sub-Network Input #132" inputlabel 133 "Sub-Network Input #133" inputlabel 134 "Sub-Network Input #134" inputlabel 135 "Sub-Network Input #135" inputlabel 136 "Sub-Network Input #136" inputlabel 137 "Sub-Network Input #137" inputlabel 138 "Sub-Network Input #138" inputlabel 139 "Sub-Network Input #139" inputlabel 140 "Sub-Network Input #140" inputlabel 141 "Sub-Network Input #141" inputlabel 142 "Sub-Network Input #142" inputlabel 143 "Sub-Network Input #143" inputlabel 144 "Sub-Network Input #144" inputlabel 145 "Sub-Network Input #145" inputlabel 146 "Sub-Network Input #146" inputlabel 147 "Sub-Network Input #147" inputlabel 148 "Sub-Network Input #148" inputlabel 149 "Sub-Network Input #149" inputlabel 150 "Sub-Network Input #150" inputlabel 151 "Sub-Network Input #151" inputlabel 152 "Sub-Network Input #152" inputlabel 153 "Sub-Network Input #153" inputlabel 154 "Sub-Network Input #154" inputlabel 155 "Sub-Network Input #155" inputlabel 156 "Sub-Network Input #156" inputlabel 157 "Sub-Network Input #157" inputlabel 158 "Sub-Network Input #158" inputlabel 159 "Sub-Network Input #159" inputlabel 160 "Sub-Network Input #160" inputlabel 161 "Sub-Network Input #161" inputlabel 162 "Sub-Network Input #162" inputlabel 163 "Sub-Network Input #163" inputlabel 164 "Sub-Network Input #164" inputlabel 165 "Sub-Network Input #165" inputlabel 166 "Sub-Network Input #166" inputlabel 167 "Sub-Network Input #167" inputlabel 168 "Sub-Network Input #168" inputlabel 169 "Sub-Network Input #169" inputlabel 170 "Sub-Network Input #170" inputlabel 171 "Sub-Network Input #171" inputlabel 172 "Sub-Network Input #172" inputlabel 173 "Sub-Network Input #173" inputlabel 174 "Sub-Network Input #174" inputlabel 175 "Sub-Network Input #175" inputlabel 176 "Sub-Network Input #176" inputlabel 177 "Sub-Network Input #177" inputlabel 178 "Sub-Network Input #178" inputlabel 179 "Sub-Network Input #179" inputlabel 180 "Sub-Network Input #180" inputlabel 181 "Sub-Network Input #181" inputlabel 182 "Sub-Network Input #182" inputlabel 183 "Sub-Network Input #183" inputlabel 184 "Sub-Network Input #184" inputlabel 185 "Sub-Network Input #185" inputlabel 186 "Sub-Network Input #186" inputlabel 187 "Sub-Network Input #187" inputlabel 188 "Sub-Network Input #188" inputlabel 189 "Sub-Network Input #189" inputlabel 190 "Sub-Network Input #190" inputlabel 191 "Sub-Network Input #191" inputlabel 192 "Sub-Network Input #192" inputlabel 193 "Sub-Network Input #193" inputlabel 194 "Sub-Network Input #194" inputlabel 195 "Sub-Network Input #195" inputlabel 196 "Sub-Network Input #196" inputlabel 197 "Sub-Network Input #197" inputlabel 198 "Sub-Network Input #198" inputlabel 199 "Sub-Network Input #199" inputlabel 200 "Sub-Network Input #200" inputlabel 201 "Sub-Network Input #201" inputlabel 202 "Sub-Network Input #202" inputlabel 203 "Sub-Network Input #203" inputlabel 204 "Sub-Network Input #204" inputlabel 205 "Sub-Network Input #205" inputlabel 206 "Sub-Network Input #206" inputlabel 207 "Sub-Network Input #207" inputlabel 208 "Sub-Network Input #208" inputlabel 209 "Sub-Network Input #209" inputlabel 210 "Sub-Network Input #210" inputlabel 211 "Sub-Network Input #211" inputlabel 212 "Sub-Network Input #212" inputlabel 213 "Sub-Network Input #213" inputlabel 214 "Sub-Network Input #214" inputlabel 215 "Sub-Network Input #215" inputlabel 216 "Sub-Network Input #216" inputlabel 217 "Sub-Network Input #217" inputlabel 218 "Sub-Network Input #218" inputlabel 219 "Sub-Network Input #219" inputlabel 220 "Sub-Network Input #220" inputlabel 221 "Sub-Network Input #221" inputlabel 222 "Sub-Network Input #222" inputlabel 223 "Sub-Network Input #223" inputlabel 224 "Sub-Network Input #224" inputlabel 225 "Sub-Network Input #225" inputlabel 226 "Sub-Network Input #226" inputlabel 227 "Sub-Network Input #227" inputlabel 228 "Sub-Network Input #228" inputlabel 229 "Sub-Network Input #229" inputlabel 230 "Sub-Network Input #230" inputlabel 231 "Sub-Network Input #231" inputlabel 232 "Sub-Network Input #232" inputlabel 233 "Sub-Network Input #233" inputlabel 234 "Sub-Network Input #234" inputlabel 235 "Sub-Network Input #235" inputlabel 236 "Sub-Network Input #236" inputlabel 237 "Sub-Network Input #237" inputlabel 238 "Sub-Network Input #238" inputlabel 239 "Sub-Network Input #239" inputlabel 240 "Sub-Network Input #240" inputlabel 241 "Sub-Network Input #241" inputlabel 242 "Sub-Network Input #242" inputlabel 243 "Sub-Network Input #243" inputlabel 244 "Sub-Network Input #244" inputlabel 245 "Sub-Network Input #245" inputlabel 246 "Sub-Network Input #246" inputlabel 247 "Sub-Network Input #247" inputlabel 248 "Sub-Network Input #248" inputlabel 249 "Sub-Network Input #249" inputlabel 250 "Sub-Network Input #250" inputlabel 251 "Sub-Network Input #251" inputlabel 252 "Sub-Network Input #252" inputlabel 253 "Sub-Network Input #253" inputlabel 254 "Sub-Network Input #254" inputlabel 255 "Sub-Network Input #255" inputlabel 256 "Sub-Network Input #256" inputlabel 257 "Sub-Network Input #257" inputlabel 258 "Sub-Network Input #258" inputlabel 259 "Sub-Network Input #259" inputlabel 260 "Sub-Network Input #260" inputlabel 261 "Sub-Network Input #261" inputlabel 262 "Sub-Network Input #262" inputlabel 263 "Sub-Network Input #263" inputlabel 264 "Sub-Network Input #264" inputlabel 265 "Sub-Network Input #265" inputlabel 266 "Sub-Network Input #266" inputlabel 267 "Sub-Network Input #267" inputlabel 268 "Sub-Network Input #268" inputlabel 269 "Sub-Network Input #269" inputlabel 270 "Sub-Network Input #270" inputlabel 271 "Sub-Network Input #271" inputlabel 272 "Sub-Network Input #272" inputlabel 273 "Sub-Network Input #273" inputlabel 274 "Sub-Network Input #274" inputlabel 275 "Sub-Network Input #275" inputlabel 276 "Sub-Network Input #276" inputlabel 277 "Sub-Network Input #277" inputlabel 278 "Sub-Network Input #278" inputlabel 279 "Sub-Network Input #279" inputlabel 280 "Sub-Network Input #280" inputlabel 281 "Sub-Network Input #281" inputlabel 282 "Sub-Network Input #282" inputlabel 283 "Sub-Network Input #283" inputlabel 284 "Sub-Network Input #284" inputlabel 285 "Sub-Network Input #285" inputlabel 286 "Sub-Network Input #286" inputlabel 287 "Sub-Network Input #287" inputlabel 288 "Sub-Network Input #288" inputlabel 289 "Sub-Network Input #289" inputlabel 290 "Sub-Network Input #290" inputlabel 291 "Sub-Network Input #291" inputlabel 292 "Sub-Network Input #292" inputlabel 293 "Sub-Network Input #293" inputlabel 294 "Sub-Network Input #294" inputlabel 295 "Sub-Network Input #295" inputlabel 296 "Sub-Network Input #296" inputlabel 297 "Sub-Network Input #297" inputlabel 298 "Sub-Network Input #298" inputlabel 299 "Sub-Network Input #299" inputlabel 300 "Sub-Network Input #300" inputlabel 301 "Sub-Network Input #301" inputlabel 302 "Sub-Network Input #302" inputlabel 303 "Sub-Network Input #303" inputlabel 304 "Sub-Network Input #304" inputlabel 305 "Sub-Network Input #305" inputlabel 306 "Sub-Network Input #306" inputlabel 307 "Sub-Network Input #307" inputlabel 308 "Sub-Network Input #308" inputlabel 309 "Sub-Network Input #309" inputlabel 310 "Sub-Network Input #310" inputlabel 311 "Sub-Network Input #311" inputlabel 312 "Sub-Network Input #312" inputlabel 313 "Sub-Network Input #313" inputlabel 314 "Sub-Network Input #314" inputlabel 315 "Sub-Network Input #315" inputlabel 316 "Sub-Network Input #316" inputlabel 317 "Sub-Network Input #317" inputlabel 318 "Sub-Network Input #318" inputlabel 319 "Sub-Network Input #319" inputlabel 320 "Sub-Network Input #320" inputlabel 321 "Sub-Network Input #321" inputlabel 322 "Sub-Network Input #322" inputlabel 323 "Sub-Network Input #323" inputlabel 324 "Sub-Network Input #324" inputlabel 325 "Sub-Network Input #325" inputlabel 326 "Sub-Network Input #326" inputlabel 327 "Sub-Network Input #327" inputlabel 328 "Sub-Network Input #328" inputlabel 329 "Sub-Network Input #329" inputlabel 330 "Sub-Network Input #330" inputlabel 331 "Sub-Network Input #331" inputlabel 332 "Sub-Network Input #332" inputlabel 333 "Sub-Network Input #333" inputlabel 334 "Sub-Network Input #334" inputlabel 335 "Sub-Network Input #335" inputlabel 336 "Sub-Network Input #336" inputlabel 337 "Sub-Network Input #337" inputlabel 338 "Sub-Network Input #338" inputlabel 339 "Sub-Network Input #339" inputlabel 340 "Sub-Network Input #340" inputlabel 341 "Sub-Network Input #341" inputlabel 342 "Sub-Network Input #342" inputlabel 343 "Sub-Network Input #343" inputlabel 344 "Sub-Network Input #344" inputlabel 345 "Sub-Network Input #345" inputlabel 346 "Sub-Network Input #346" inputlabel 347 "Sub-Network Input #347" inputlabel 348 "Sub-Network Input #348" inputlabel 349 "Sub-Network Input #349" inputlabel 350 "Sub-Network Input #350" inputlabel 351 "Sub-Network Input #351" inputlabel 352 "Sub-Network Input #352" inputlabel 353 "Sub-Network Input #353" inputlabel 354 "Sub-Network Input #354" inputlabel 355 "Sub-Network Input #355" inputlabel 356 "Sub-Network Input #356" inputlabel 357 "Sub-Network Input #357" inputlabel 358 "Sub-Network Input #358" inputlabel 359 "Sub-Network Input #359" inputlabel 360 "Sub-Network Input #360" inputlabel 361 "Sub-Network Input #361" inputlabel 362 "Sub-Network Input #362" inputlabel 363 "Sub-Network Input #363" inputlabel 364 "Sub-Network Input #364" inputlabel 365 "Sub-Network Input #365" inputlabel 366 "Sub-Network Input #366" inputlabel 367 "Sub-Network Input #367" inputlabel 368 "Sub-Network Input #368" inputlabel 369 "Sub-Network Input #369" inputlabel 370 "Sub-Network Input #370" inputlabel 371 "Sub-Network Input #371" inputlabel 372 "Sub-Network Input #372" inputlabel 373 "Sub-Network Input #373" inputlabel 374 "Sub-Network Input #374" inputlabel 375 "Sub-Network Input #375" inputlabel 376 "Sub-Network Input #376" inputlabel 377 "Sub-Network Input #377" inputlabel 378 "Sub-Network Input #378" inputlabel 379 "Sub-Network Input #379" inputlabel 380 "Sub-Network Input #380" inputlabel 381 "Sub-Network Input #381" inputlabel 382 "Sub-Network Input #382" inputlabel 383 "Sub-Network Input #383" inputlabel 384 "Sub-Network Input #384" inputlabel 385 "Sub-Network Input #385" inputlabel 386 "Sub-Network Input #386" inputlabel 387 "Sub-Network Input #387" inputlabel 388 "Sub-Network Input #388" inputlabel 389 "Sub-Network Input #389" inputlabel 390 "Sub-Network Input #390" inputlabel 391 "Sub-Network Input #391" inputlabel 392 "Sub-Network Input #392" inputlabel 393 "Sub-Network Input #393" inputlabel 394 "Sub-Network Input #394" inputlabel 395 "Sub-Network Input #395" inputlabel 396 "Sub-Network Input #396" inputlabel 397 "Sub-Network Input #397" inputlabel 398 "Sub-Network Input #398" inputlabel 399 "Sub-Network Input #399" inputlabel 400 "Sub-Network Input #400" inputlabel 401 "Sub-Network Input #401" inputlabel 402 "Sub-Network Input #402" inputlabel 403 "Sub-Network Input #403" inputlabel 404 "Sub-Network Input #404" inputlabel 405 "Sub-Network Input #405" inputlabel 406 "Sub-Network Input #406" inputlabel 407 "Sub-Network Input #407" inputlabel 408 "Sub-Network Input #408" inputlabel 409 "Sub-Network Input #409" inputlabel 410 "Sub-Network Input #410" inputlabel 411 "Sub-Network Input #411" inputlabel 412 "Sub-Network Input #412" inputlabel 413 "Sub-Network Input #413" inputlabel 414 "Sub-Network Input #414" inputlabel 415 "Sub-Network Input #415" inputlabel 416 "Sub-Network Input #416" inputlabel 417 "Sub-Network Input #417" inputlabel 418 "Sub-Network Input #418" inputlabel 419 "Sub-Network Input #419" inputlabel 420 "Sub-Network Input #420" inputlabel 421 "Sub-Network Input #421" inputlabel 422 "Sub-Network Input #422" inputlabel 423 "Sub-Network Input #423" inputlabel 424 "Sub-Network Input #424" inputlabel 425 "Sub-Network Input #425" inputlabel 426 "Sub-Network Input #426" inputlabel 427 "Sub-Network Input #427" inputlabel 428 "Sub-Network Input #428" inputlabel 429 "Sub-Network Input #429" inputlabel 430 "Sub-Network Input #430" inputlabel 431 "Sub-Network Input #431" inputlabel 432 "Sub-Network Input #432" inputlabel 433 "Sub-Network Input #433" inputlabel 434 "Sub-Network Input #434" inputlabel 435 "Sub-Network Input #435" inputlabel 436 "Sub-Network Input #436" inputlabel 437 "Sub-Network Input #437" inputlabel 438 "Sub-Network Input #438" inputlabel 439 "Sub-Network Input #439" inputlabel 440 "Sub-Network Input #440" inputlabel 441 "Sub-Network Input #441" inputlabel 442 "Sub-Network Input #442" inputlabel 443 "Sub-Network Input #443" inputlabel 444 "Sub-Network Input #444" inputlabel 445 "Sub-Network Input #445" inputlabel 446 "Sub-Network Input #446" inputlabel 447 "Sub-Network Input #447" inputlabel 448 "Sub-Network Input #448" inputlabel 449 "Sub-Network Input #449" inputlabel 450 "Sub-Network Input #450" inputlabel 451 "Sub-Network Input #451" inputlabel 452 "Sub-Network Input #452" inputlabel 453 "Sub-Network Input #453" inputlabel 454 "Sub-Network Input #454" inputlabel 455 "Sub-Network Input #455" inputlabel 456 "Sub-Network Input #456" inputlabel 457 "Sub-Network Input #457" inputlabel 458 "Sub-Network Input #458" inputlabel 459 "Sub-Network Input #459" inputlabel 460 "Sub-Network Input #460" inputlabel 461 "Sub-Network Input #461" inputlabel 462 "Sub-Network Input #462" inputlabel 463 "Sub-Network Input #463" inputlabel 464 "Sub-Network Input #464" inputlabel 465 "Sub-Network Input #465" inputlabel 466 "Sub-Network Input #466" inputlabel 467 "Sub-Network Input #467" inputlabel 468 "Sub-Network Input #468" inputlabel 469 "Sub-Network Input #469" inputlabel 470 "Sub-Network Input #470" inputlabel 471 "Sub-Network Input #471" inputlabel 472 "Sub-Network Input #472" inputlabel 473 "Sub-Network Input #473" inputlabel 474 "Sub-Network Input #474" inputlabel 475 "Sub-Network Input #475" inputlabel 476 "Sub-Network Input #476" inputlabel 477 "Sub-Network Input #477" inputlabel 478 "Sub-Network Input #478" inputlabel 479 "Sub-Network Input #479" inputlabel 480 "Sub-Network Input #480" inputlabel 481 "Sub-Network Input #481" inputlabel 482 "Sub-Network Input #482" inputlabel 483 "Sub-Network Input #483" inputlabel 484 "Sub-Network Input #484" inputlabel 485 "Sub-Network Input #485" inputlabel 486 "Sub-Network Input #486" inputlabel 487 "Sub-Network Input #487" inputlabel 488 "Sub-Network Input #488" inputlabel 489 "Sub-Network Input #489" inputlabel 490 "Sub-Network Input #490" inputlabel 491 "Sub-Network Input #491" inputlabel 492 "Sub-Network Input #492" inputlabel 493 "Sub-Network Input #493" inputlabel 494 "Sub-Network Input #494" inputlabel 495 "Sub-Network Input #495" inputlabel 496 "Sub-Network Input #496" inputlabel 497 "Sub-Network Input #497" inputlabel 498 "Sub-Network Input #498" inputlabel 499 "Sub-Network Input #499" inputlabel 500 "Sub-Network Input #500" parm { name "execute" baseparm joinnext export none } parm { name "renderdialog" baseparm export none } parm { name "trange" baseparm export none } parm { name "f" baseparm export none } parm { name "take" baseparm export none } group { name "main" label " Main " groupsimple { name "folder_camera" label "Camera" parm { name "camera" label "Camera" type oppath default { "/obj/cam1" } range { 0 1 } export none parmtag { "opfilter" "!!OBJ/CAMERA!!" } parmtag { "oprelative" "." } disablewhen "{ ar_baking_enable == 1 }" help "The camera. This parameter is disabled when texture baking is enabled since a uv_camera will be used instead." } groupsimple { name "folder_subdivision" label "Subdivision" parm { name "ar_subdiv_dicing_camera_enable" label "Use Alternate Dicing Camera" type toggle nolabel joinnext default { "0" } help "Enable Alternate Dicing Camera." range { 0 1 } export none parmtag { "script_callback_language" "python" } parmtag { "script_callback" "hou.hscript('opparm -b %i . ar_subdiv_dicing_camera' % (not kwargs['parm'].eval()))" } } parm { name "ar_subdiv_dicing_camera" label "Dicing Camera" type oppath default { "" } help "This is mostly useful for debugging and rarely used in practice. When enabled, the user provides a specific camera that will be used for all dicing calculations during Adaptative Subdivision. By default this is disabled, meaning that the current render camera also serves as dicing camera." disablewhen "{ ar_subdiv_dicing_camera_enable == 0 }" range { 0 1 } export none parmtag { "oprelative" "." } parmtag { "opfilter" "!!OBJ/CAMERA!!" } } parm { name "ar_subdiv_frustum_culling" label "Enable" type toggle nolabel joinnext default { "0" } help " Subdivision patches outside the view or dicing camera frustum will not be subdivided" range { 0 1 } export none } parm { name "ar_subdiv_frustum_padding" label "Frustum Culling" type float default { "0" } help "World space padding for the subdiv frustum culling that can be increased as needed to minimize artifacts from out-of-view objects in cast shadows, reflections, etc." disablewhen "{ ar_subdiv_frustum_culling == 0 }" range { 0 10 } export none } } } parm { name "target" label "Render Target" type string invisible default { "current" } menu { "current" "Arnold Current" "arnold4.0" "Arnold 4.0" } range { 0 1 } export none } parm { name "sepparm" label "Separator" type separator invisible default { } range { 0 1 } export none } groupsimple { name "folder_objects" label "Objects" parm { name "vobject" label "Candidate Objects" type oplist default { "*" } help "Objects will not be output if their display flag is off" range { 0 1 } export none parmtag { "opfilter" "!!OBJ/GEOMETRY!!" } parmtag { "oprelative" "/obj" } } parm { name "forceobject" label "Force Objects" type oplist default { "" } help "Objects will be output regardless of the state of their display flag" range { 0 1 } export none parmtag { "opfilter" "!!OBJ/GEOMETRY!!" } parmtag { "oprelative" "/obj" } } parm { name "excludeobject" label "Exclude Objects" type oplist default { "" } help "Objects which are not output" range { 0 1 } export none parmtag { "opfilter" "!!OBJ/GEOMETRY!!" } parmtag { "oprelative" "/obj" } } parm { name "phantom_objects" label "Forced Phantom" type oplist default { "" } help "Objects forced to be output as phantom objects" range { 0 1 } export none parmtag { "opfilter" "!!OBJ/GEOMETRY!!" } parmtag { "oprelative" "/" } } parm { name "matte_objects" label "Forced Matte" type oplist default { "" } help "Objects forced to be output as matte objects" range { 0 1 } export none parmtag { "opfilter" "!!OBJ/GEOMETRY!!" } parmtag { "oprelative" "/" } } } groupsimple { name "folder_shaders" label "Shaders" parm { name "ar_environment" label "Environment" type oppath default { "" } help "The environment material, for background color and atmospheric effects." range { 0 1 } export none parmtag { "opfilter" "!!CUSTOM/MATERIAL!!" } parmtag { "oprelative" "." } } parm { name "ar_forced_materials" label "Forced Materials" type oplist default { "" } help "Export these materials, even if they are not assigned to any object. All shaders networks that are connected to any Output node in the VOP network will be exported." range { 0 1 } export none parmtag { "opfilter" "!!CUSTOM/MATERIAL!!" } } parm { name "ar_shader_override" label "Shader Override" type oppath default { "" } help "Override the material on all objects with this shader" range { 0 1 } export none parmtag { "opfilter" "!!CUSTOM/MATERIAL!!" } parmtag { "oprelative" "." } } parm { name "ar_export_referenced_materials" label "Export Referenced Materials" type toggle default { "0" } help "Look for materials inside alembic files when rendering using the shop_materialpath primitive attribute, and translate these materials when found." range { 0 1 } export none } } parm { name "obj_light_sep" label "Separator" type separator invisible default { } range { 0 1 } export none } groupsimple { name "folder_lights" label "Lights" parm { name "sololight" label "Solo Light" type oplist default { "" } help "Solo Lights" range { 0 1 } export none parmtag { "opfilter" "!!OBJ/LIGHT!!" } parmtag { "oprelative" "/obj" } } parm { name "alights" label "Candidate Lights" type oplist default { "*" } help "Lights will not be output if their dimmer channel is 0." disablewhen "{ sololight != \"\" }" range { 0 1 } export none parmtag { "opfilter" "!!OBJ/LIGHT!!" } parmtag { "oprelative" "/obj" } } parm { name "forcelights" label "Force Lights" type oplist default { "" } help "Lights will be output regardless of the value of their dimmer channel" disablewhen "{ sololight != \"\" }" range { 0 1 } export none parmtag { "opfilter" "!!OBJ/LIGHT!!" } parmtag { "oprelative" "/obj" } } parm { name "excludelights" label "Exclude Lights" type oplist default { "" } help "Lights will not be output under any circumstances." disablewhen "{ sololight != \"\" }" range { 0 1 } export none parmtag { "opfilter" "!!OBJ/LIGHT!!" } parmtag { "oprelative" "/obj" } } parm { name "soho_autoheadlight" label "Headlight Creation" type toggle invisible default { "0" } help "By default, if there are no lights in the scene, a headlight will automatically be created. To disable this, turn this toggle off." disablewhen "{ sololight != \"\" }" range { 0 1 } export none } parm { name "light_fog_sep" label "Separator" type separator invisible default { } range { 0 1 } export none } } parm { name "vfog" label "Visible Fog" type oplist invisible default { "*" } help "Objects will not be output if their display flag is off" range { 0 1 } export none parmtag { "opfilter" "!!OBJ/FOG!!" } parmtag { "oprelative" "/obj" } } parm { name "soho_viewport_menu" label "Show in Viewport Menu" type toggle default { "1" } help "By default SOHO output drivers do not appear in the viewport menu. Adding this property and turning it on will cause the driver to show up in the menu." range { 0 1 } export none parmtag { "spare_category" "SOHO Intrinsics" } } parm { name "soho_initsim" label "Initialize Simulation OPs" type toggle default { "0" } help "When starting a render from the middle of an animation, turning this toggle on will cause any simulation OPs to re-initialize." range { 0 1 } export none parmtag { "spare_category" "SOHO Intrinsics" } } parm { name "ar_render_selection_only" label "Render Selection Only" type toggle default { "0" } help "Render only the selected objects, selected lights and objects with the selected materials assigned." range { 0 1 } export none } parm { name "ar_render_selection_others" label "Render Others As" type ordinal default { "0" } disablewhen "{ ar_render_selection_only == 0 }" menu { "invisible" "Invisible" "phantom" "Phantom" "matte" "Matte" } help "When rendering only the selected objects, this is how the non-selected objects will be rendered as." range { 0 1 } export none } } group { name "properties" label "Properties" parm { name "shop_propertiespath" label "Default Properties" type oppath default { "" } range { 0 1 } export none parmtag { "opfilter" "!!SHOP/PROPERTIES!!" } parmtag { "oprelative" "." } } parm { name "ar_user_options" label "User Options" type string default { "" } joinnext help "This string is passed to AiNodeSetAttributes() on the Arnold options node. It can contain any number of parameter/value pairs separated by whitespace (spaces, tabs, newlines) as found in .ass files." disablewhen "{ ar_user_options_enable == 0 }" export none } parm { name "ar_user_options_enable" label "Enable" type toggle default { "0" } help "Overrides the value of any parameter of the Arnold options node." export none } } group { name "archive" label "Archive" hidewhentab "{ ar_ass_export_authorized == 0 }" parm { name "ar_ass_export_enable" label "Export ASS File" type toggle nolabel joinnext default { "0" } help "Export Arnold Scene Script file (.ass) instead of rendering." range { 0 1 } export none } parm { name "ar_ass_file" label "Export ASS File" type file default { "$HIP/$HIPNAME:r.$F4.ass" } help "Arnold Scene Script file (.ass)" disablewhen "{ ar_ass_export_enable == 0 }" range { 0 1 } export none parmtag { "filechooser_pattern" "*.ass, *.ass.gz" } } parm { name "ar_node_prefix_enable" label "Enable Node Prefix" type toggle nolabel joinnext default { "0" } help "Enable node name prefix" disablewhen "{ ar_ass_export_enable == 0 }" range { 0 1 } export none } parm { name "ar_node_prefix" label "Node Prefix" type string default { "" } help "A prefix to be prepended to each Arnold node name." disablewhen "{ ar_node_prefix_enable == 0 } { ar_ass_export_enable == 0 }" range { 0 1 } export none } parm { name "ar_node_suffix_enable" label "Enable Node Suffix" type toggle nolabel joinnext default { "0" } help "Enable node name suffix" disablewhen "{ ar_ass_export_enable == 0 }" range { 0 1 } export none } parm { name "ar_node_suffix" label "Node Suffix" type string default { "[$F]" } help "A suffix to be appended to each Arnold node name." disablewhen "{ ar_node_suffix_enable == 0 } { ar_ass_export_enable == 0 }" range { 0 1 } export none } parm { name "ar_ass_export_authorized" label "Authorize Exporting ASS Files" type toggle invisible default { [ "__import__('htoa.utils').utils.allowSceneExport()" python ] } range { 0 1 } export none } parm { name "ar_binary_ass" label "Binary Encoding" type toggle default { "1" } help "Compress large float arrays into a more compact ASCII representation, leading to smaller files and faster load times. In addition, the binary encoding has exact 32-bit precision, whereas without the floats are truncated and stored into at most 8 ASCII digits (e.g. 1234.5678)." disablewhen "{ ar_ass_export_enable == 0 }" range { 0 1 } export none } parm { name "ar_ass_export_options" label "Export Options" type toggle default { "1" } help "Export the options node singleton." disablewhen "{ ar_ass_export_enable == 0 }" range { 0 1 } export none } parm { name "ar_ass_export_color_managers" label "Export Color Managers" type toggle default { "1" } help "Export color manager nodes." disablewhen "{ ar_ass_export_enable == 0 }" range { 0 1 } export none } parm { name "ar_ass_export_cameras" label "Export Cameras" type toggle default { "1" } help "Export camera nodes." disablewhen "{ ar_ass_export_enable == 0 }" range { 0 1 } export none } parm { name "ar_ass_export_lights" label "Export Lights" type toggle default { "1" } help "Export light nodes." disablewhen "{ ar_ass_export_enable == 0 }" range { 0 1 } export none } parm { name "ar_ass_export_shapes" label "Export Shapes" type toggle default { "1" } help "Export shape nodes." disablewhen "{ ar_ass_export_enable == 0 }" range { 0 1 } export none } parm { name "ar_ass_export_shaders" label "Export Shaders" type toggle default { "1" } help "Export shader nodes." disablewhen "{ ar_ass_export_enable == 0 }" range { 0 1 } export none } parm { name "ar_ass_export_shader_assignments" label "Export Shader Assignments" type toggle default { "1" } help "Export shader assignments. The export shader option must be off to enable this parameter." disablewhen "{ ar_ass_export_enable == 0 } { ar_ass_export_shaders != 0 }" range { 0 1 } export none } parm { name "ar_ass_export_operators" label "Export Operators" type toggle default { "1" } help "Export operator nodes." disablewhen "{ ar_ass_export_enable == 0 }" range { 0 1 } export none } parm { name "ar_ass_export_overrides" label "Export Overrides" type toggle default { "1" } help "Export override nodes." disablewhen "{ ar_ass_export_enable == 0 }" range { 0 1 } export none } parm { name "ar_ass_export_drivers" label "Export Output Drivers" type toggle default { "1" } help "Export output driver nodes." disablewhen "{ ar_ass_export_enable == 0 }" range { 0 1 } export none } parm { name "ar_ass_export_filters" label "Export Pixel Filters" type toggle default { "1" } help "Export sample pixel filter nodes." disablewhen "{ ar_ass_export_enable == 0 }" range { 0 1 } export none } parm { name "ar_export_asstoc" label "Export .asstoc File" type toggle default { "0" } help "Export an .asstoc file containing the world space bounding box of the exported geometry." disablewhen "{ ar_ass_export_enable == 0 }" range { 0 1 } export none } parm { name "ar_prepend_htoa_paths" label "Prepend Plugin Paths" type toggle default { "1" } help "Prepend the shader and procedurals paths of the Arnold options with the running HtoA shader and procedural paths, including any defined with the ARNOLD_PLUGIN_PATH environment variable." disablewhen "{ ar_ass_export_enable == 0 } { ar_ass_export_options == 0 }" range { 0 1 } export none } parm { name "ar_ass_expand_procedurals" label "Expand Procedurals" type toggle default { "0" } help "Recursively expand all procedurals." disablewhen "{ ar_ass_export_enable == 0 }" range { 0 1 } export none } parm { name "ar_ass_absolute_texture_paths" label "Absolute Texture Paths" type toggle default { "1" } help "Export absolute texture paths. If disabled, the paths are resolved relative to the texture search paths." disablewhen "{ ar_ass_export_enable == 0 }" range { 0 1 } export none } parm { name "ar_ass_absolute_procedural_paths" label "Absolute Procedural Paths" type toggle default { "1" } help "Export absolute procedural paths. If disabled, the paths are resolved relative to the procedural search paths." disablewhen "{ ar_ass_export_enable == 0 }" range { 0 1 } export none } } group { name "main_3" label "Scripts" parm { name "tprerender" label "tprerender" type toggle nolabel joinnext default { "1" } help "None" range { 0 1 } export none } parm { name "prerender" label "Pre-Render" type file joinnext default { "" } help "None" disablewhen "{ tprerender == 0 }" range { 0 1 } export none parmtag { "filechooser_mode" "read" } } parm { name "lprerender" label "lprerender" type ordinal nolabel default { "0" } help "None" disablewhen "{ tprerender == 0 }" menu { "hscript" "Hscript" "python" "Python" } range { 0 1 } export none } parm { name "tpreframe" label "tpreframe" type toggle nolabel joinnext default { "1" } help "None" range { 0 1 } export none } parm { name "preframe" label "Pre-Frame" type file joinnext default { "" } help "None" disablewhen "{ tpreframe == 0 }" range { 0 1 } export none parmtag { "filechooser_mode" "read" } } parm { name "lpreframe" label "lpreframe" type ordinal nolabel default { "0" } help "None" disablewhen "{ tpreframe == 0 }" menu { "hscript" "Hscript" "python" "Python" } range { 0 1 } export none } parm { name "tpostframe" label "tpostframe" type toggle nolabel joinnext default { "1" } help "None" range { 0 1 } export none } parm { name "postframe" label "Post-Frame" type file joinnext default { "" } help "None" disablewhen "{ tpostframe == 0 }" range { 0 1 } export none parmtag { "filechooser_mode" "read" } } parm { name "lpostframe" label "lpostframe" type ordinal nolabel default { "0" } help "None" disablewhen "{ tpostframe == 0 }" menu { "hscript" "Hscript" "python" "Python" } range { 0 1 } export none } parm { name "tpostrender" label "tpostrender" type toggle nolabel joinnext default { "1" } help "None" range { 0 1 } export none } parm { name "postrender" label "Post-Render" type file joinnext default { "" } help "None" disablewhen "{ tpostrender == 0 }" range { 0 1 } export none parmtag { "filechooser_mode" "read" } } parm { name "lpostrender" label "lpostrender" type ordinal nolabel default { "0" } help "None" disablewhen "{ tpostrender == 0 }" menu { "hscript" "Hscript" "python" "Python" } range { 0 1 } export none } } group { name "soho" label "SOHO" invisibletab parm { name "soho_program" label "SOHO Program" type file default { "arnold.py" } help "The Python program to run for a SOHO output driver" range { 0 1 } export none parmtag { "filechooser_mode" "read" } parmtag { "spare_category" "SOHO Intrinsics" } } parm { name "soho_outputmode" label "SOHO Output Mode" type ordinal default { "if(ch(\"ar_ass_export_enable\"), 2, 0)" } help "Often implemented as a toggle rather than an ordinal." menu { "0" "Send output to soho_pipecommand" "1" "Send output to soho_diskfile" "2" "Output is controled by soho_program" "3" "Run as pipe but leave pipe open for IPR mode" } range { 0 1 } export none parmtag { "spare_category" "SOHO Intrinsics" } } parm { name "soho_pipecmd" label "Command" type string default { [ "import htoa.searchpath\nreturn htoa.searchpath.hick" python ] } help "This is the command to run. The file descriptor for the pipe can be retrieved from sohoglue.getFile(1), and is handled automatically in soho.initialize()" disablewhen "{ soho_outputmode != 0 soho_outputmode != 3 }" range { 0 1 } export none parmtag { "spare_category" "SOHO Intrinsics" } } parm { name "soho_diskfile" label "Script Disk File" type file default { "" } help "This is disk file to send output to. The file descriptor for the pipe can be retrieved from sohoglue.getFile(1), and is handled automatically in soho.initialize()" disablewhen "{ soho_outputmode != 1 }" range { 0 1 } export none parmtag { "filechooser_mode" "write" } parmtag { "spare_category" "SOHO Intrinsics" } } parm { name "soho_errormode" label "Error Mode" type integer default { "1" } menu { "0" "Trap script errors on output driver" "1" "Print script errors in terminal" "2" "Trap script as well as printing them" } range { 0 10 } export none } parm { name "soho_shopstyle" label "SOHO SHOP Style" type string default { "Arnold" } help "This determines the SHOP Clerk used to evaluate shader strings" menureplace { "VMantra" "Mantra" "RIB" "RIB" "MI" "mentalray" "Arnold" "Arnold" } range { 0 1 } export none parmtag { "filechooser_mode" "read" } parmtag { "spare_category" "SOHO Intrinsics" } } parm { name "soho_precision" label "Float Precision" type integer default { "12" } help "The number of significant floating point digits to output." range { 4 15 } export none parmtag { "spare_category" "Formatting" } } parm { name "soho_indentstep" label "Indent Step" type integer default { "2" } help "An indent step of 8 should produce files the same size as an indent step of 1" range { 0 8 } export none parmtag { "spare_category" "Formatting" } } parm { name "soho_almostzero" label "Almost Zero" type float default { "0" } help "Any number closer to zero than this value will print as a 0." range { 0 0.0001 } export none parmtag { "spare_category" "Formatting" } } parm { name "soho_multiframe" label "Multi-frame mode" type toggle default { "0" } help "If this toggle is turned on, then the soho_program will only be called one time, rather than once per frame (which is the default)" range { 0 1 } export none parmtag { "spare_category" "SOHO Intrinsics" } } parm { name "soho_safename" label "Safe Object names" type toggle default { "0" } help "If enabled, names will not contain any special characters other than _)" range { 0 1 } export none parmtag { "spare_category" "Formatting" } } parm { name "soho_ipr_support" label "SOHO IPR Support" type toggle default { "1" } help "None" range { 0 1 } export none parmtag { "spare_category" "SOHO_Intrinsics" } } parm { name "soho_foreground" label "Block Until Render Completes" type toggle default { "0" } help "When rendering to the soho_pipecmd, turning this on will block Houdini until the pipe command completes." disablewhen "{ soho_outputmode != 0 }" range { 0 1 } export none parmtag { "spare_category" "SOHO Intrinsics" } } } } 0707070000010000000006660000000000000000010000001440237341500002000000000012expression.func# 0 bytes 0707070000010000000006660000000000000000010000001440237341500001000000000672vex.defcomment "" position 0 6 connectornextid 0 flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed off outputsNamed3 { } inputsNamed3 { } inputs { } stat { create 1581329963 modify 1678374424 author griggsl@MAD4H7J8D2.ads.autodesk.com access 0777 } color UT_Color RGB 0.8 0.8 0.8 delscript "" exprlanguage hscript end 0707070000010000000006660000000000000000010000001440237341500001100000000020vex.parm{ version 0.8 } 0707070000010000000006660000000000000000010000001440237341500001500000000041vex.userdata ___Version___19.5.4930707070000010000000006660000000000000000010000001440237341500001000000000674mat.defcomment "" position 0 3.75 connectornextid 0 flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on outputsNamed3 { } inputsNamed3 { } inputs { } stat { create 1581329963 modify 1678374429 author griggsl@MAD4H7J8D2.ads.autodesk.com access 0777 } color UT_Color RGB 0.8 0.8 0.8 delscript "" exprlanguage hscript end 0707070000010000000006660000000000000000010000001440237341500001100000000020mat.parm{ version 0.8 } 0707070000010000000006660000000000000000010000001440237341500001500000000041mat.userdata ___Version___19.5.4930707070000010000000006660000000000000000010000001440237341500004100000000055mat/arnold_materialbuilder1.inittype = arnold_materialbuilder matchesdef = 0 0707070000010000000006660000000000000000010000001440237341500004000000000763mat/arnold_materialbuilder1.defcomment "" position -2.0403 1.43621 connectornextid 0 flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on lowdetail off mediumdetail off highdetail on material on outputsNamed3 { } inputsNamed3 { } inputs { } stat { create 1678374429 modify 1678374833 author OEM_User@DESKTOP-FJNJNKH access 0777 } color UT_Color RGB 0.8 0.8 0.8 delscript "" exprlanguage hscript end 0707070000010000000006660000000000000000010000001440237341500004100000000020mat/arnold_materialbuilder1.parm{ version 0.8 } 0707070000010000000006660000000000000000010000001440237341500004500000000041mat/arnold_materialbuilder1.userdata ___Version___19.5.4930707070000010000000006660000000000000000010000001440237341500005600000000046mat/arnold_materialbuilder1/OUT_material.inittype = arnold_material matchesdef = 1 0707070000010000000006660000000000000000010000001440237341500005500000001030mat/arnold_materialbuilder1/OUT_material.defcomment "" position 1.35577 0.0402703 connectornextid 1 flags = lock off model off template off footprint off xray off bypass off display on render on highlight off unload off savedata off compress on colordefault on exposed on lowdetail off mediumdetail off highdetail on material off outputsNamed3 { } inputsNamed3 { 0 flat1 0 1 "surface" } inputs { 0 flat1 0 1 } stat { create 1678374429 modify 1678374671 author OEM_User@DESKTOP-FJNJNKH access 0777 } color UT_Color RGB 0.8 0.8 0.8 delscript "" exprlanguage hscript end 0707070000010000000006660000000000000000010000001440237341500005600000000020mat/arnold_materialbuilder1/OUT_material.parm{ version 0.8 } 0707070000010000000006660000000000000000010000001440237341500006200000000041mat/arnold_materialbuilder1/OUT_material.userdata ___Version___19.5.4930707070000010000000006660000000000000000010000001440237341500004700000000043mat/arnold_materialbuilder1/flat1.inittype = arnold::flat matchesdef = 1 0707070000010000000006660000000000000000010000001440237341500004600000001052mat/arnold_materialbuilder1/flat1.defcomment "" position -0.475423 -0.126513 connectornextid 2 flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on lowdetail off mediumdetail off highdetail on material off outputsNamed3 { 0 "rgb" } inputsNamed3 { 1 ramp_rgb1 0 1 "color" } inputs { 0 ramp_rgb1 0 1 } stat { create 1678374435 modify 1678374671 author OEM_User@DESKTOP-FJNJNKH access 0777 } color UT_Color RGB 0.8 0.8 0.8 delscript "" exprlanguage hscript end 0707070000010000000006660000000000000000010000001440237341500004700000000214mat/arnold_materialbuilder1/flat1.parm{ version 0.8 color [ 0 locks=0 ] ( 1 1 1 ) rgb [ 0 locks=0 ] ( 0 0 0 ) r [ 0 locks=0 ] ( 0 ) g [ 0 locks=0 ] ( 0 ) b [ 0 locks=0 ] ( 0 ) } 0707070000010000000006660000000000000000010000001440237341500005300000000041mat/arnold_materialbuilder1/flat1.userdata ___Version___19.5.4930707070000010000000006660000000000000000010000001440237341500005300000000047mat/arnold_materialbuilder1/ramp_rgb1.inittype = arnold::ramp_rgb matchesdef = 1 0707070000010000000006660000000000000000010000001440237341500005200000001051mat/arnold_materialbuilder1/ramp_rgb1.defcomment "" position -2.69386 -0.126513 connectornextid 2 flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on lowdetail off mediumdetail on highdetail off material off outputsNamed3 { 0 "rgb" } inputsNamed3 { 1 distance1 0 1 "input" } inputs { 0 distance1 0 1 } stat { create 1678374550 modify 1678374673 author OEM_User@DESKTOP-FJNJNKH access 0777 } color UT_Color RGB 0.8 0.8 0.8 delscript "" exprlanguage hscript end 0707070000010000000006660000000000000000010000001440237341500005300000000777mat/arnold_materialbuilder1/ramp_rgb1.parm{ version 0.8 input [ 0 locks=0 ] ( 0 ) type [ 0 locks=0 ] ( custom ) uvset [ 0 locks=0 ] ( "" ) use_implicit_uvs [ 0 locks=0 ] ( off ) wrap_uvs [ 0 locks=0 ] ( "off" ) ramp [ 0 locks=0 ] ( 3 ) ramp1pos [ 0 locks=0 ] ( 0 ) ramp1c [ 0 locks=0 ] ( 1 0 0 ) ramp1interp [ 0 locks=0 ] ( "linear" ) ramp2pos [ 0 locks=0 ] ( 0.48706895112991333 ) ramp2c [ 0 locks=0 ] ( 0 1 0 ) ramp2interp [ 0 locks=0 ] ( "linear" ) ramp3pos [ 0 locks=0 ] ( 1 ) ramp3c [ 0 locks=0 ] ( 0 0 1 ) ramp3interp [ 0 locks=0 ] ( "linear" ) } 0707070000010000000006660000000000000000010000001440237341500005700000000041mat/arnold_materialbuilder1/ramp_rgb1.userdata ___Version___19.5.4930707070000010000000006660000000000000000010000001440237341500005300000000047mat/arnold_materialbuilder1/distance1.inittype = arnold::distance matchesdef = 1 0707070000010000000006660000000000000000010000001440237341500005200000000777mat/arnold_materialbuilder1/distance1.defcomment "" position -4.83207 0.0402703 connectornextid 1 flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on lowdetail off mediumdetail on highdetail off material off outputsNamed3 { 0 "rgb" } inputsNamed3 { } inputs { } stat { create 1678374568 modify 1678374662 author OEM_User@DESKTOP-FJNJNKH access 0777 } color UT_Color RGB 0.8 0.8 0.8 delscript "" exprlanguage hscript end 0707070000010000000006660000000000000000010000001440237341500005300000000716mat/arnold_materialbuilder1/distance1.parm{ version 0.8 samples [ 0 locks=0 ] ( 16 ) distance [ 0 locks=0 ] ( 1 ) near_color [ 0 locks=0 ] ( 0 0 0 ) far_color [ 0 locks=0 ] ( 1 1 1 ) inside_separate [ 0 locks=0 ] ( "off" ) inside_color [ 0 locks=0 ] ( 0 0 0 ) outside_separate [ 0 locks=0 ] ( "off" ) outside_color [ 0 locks=0 ] ( 0 0 0 ) trace_set [ 0 locks=0 ] ( sphere ) inclusive [ 0 locks=0 ] ( "off" ) rgb [ 0 locks=0 ] ( 0 0 0 ) r [ 0 locks=0 ] ( 0 ) g [ 0 locks=0 ] ( 0 ) b [ 0 locks=0 ] ( 0 ) } 0707070000010000000006660000000000000000010000001440237341500005700000000041mat/arnold_materialbuilder1/distance1.userdata ___Version___19.5.4930707070000010000000006660000000000000000010000001440237341500001000000000671obj.defcomment "" position 0 0 connectornextid 0 flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on outputsNamed3 { } inputsNamed3 { } inputs { } stat { create 1581329962 modify 1678374530 author griggsl@MAD4H7J8D2.ads.autodesk.com access 0777 } color UT_Color RGB 0.8 0.8 0.8 delscript "" exprlanguage hscript end 0707070000010000000006660000000000000000010000001440237341500001100000000020obj.parm{ version 0.8 } 0707070000010000000006660000000000000000010000001440237341500001500000000041obj.userdata ___Version___19.5.4930707070000010000000006660000000000000000010000001440237341500002600000000032obj/grid_object1.inittype = geo matchesdef = 0 0707070000010000000006660000000000000000010000001440237341500002500000001037obj/grid_object1.defobjflags objflags = origin off pretransform UT_DMatrix4 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 comment "" position -3.3888 1.7884 connectornextid 0 flags = lock off model off template off footprint off xray off bypass off display on render off highlight off unload off savedata off compress on colordefault on exposed on selectable on outputsNamed3 { } inputsNamed3 { } inputs { } stat { create 1678374307 modify 1678374503 author OEM_User@DESKTOP-FJNJNKH access 0777 } color UT_Color RGB 0.8 0.8 0.8 delscript "" exprlanguage hscript end 0707070000010000000006660000000000000000010000001440237341500003600000214214obj/grid_object1.spareparmdef group { name "stdswitcher4" label "Transform" parm { name "xOrd" baseparm label "Transform Order" joinnext export none } parm { name "rOrd" baseparm label "Rotate Order" nolabel export none } parm { name "t" baseparm label "Translate" export all } parm { name "r" baseparm label "Rotate" export all } parm { name "s" baseparm label "Scale" export none } parm { name "p" baseparm label "Pivot Translate" export none } parm { name "pr" baseparm label "Pivot Rotate" export none } parm { name "scale" baseparm label "Uniform Scale" export none } parm { name "pre_xform" baseparm label "Modify Pre-Transform" export none } parm { name "keeppos" baseparm label "Keep Position When Parenting" export none } parm { name "childcomp" baseparm label "Child Compensation" export none } parm { name "constraints_on" baseparm label "Enable Constraints" export none } parm { name "constraints_path" baseparm label "Constraints" export none } parm { name "lookatpath" baseparm label "Look At" invisible export none } parm { name "lookupobjpath" baseparm label "Look Up Object" invisible export none } parm { name "lookup" baseparm label "Look At Up Vector" invisible export none } parm { name "pathobjpath" baseparm label "Path Object" invisible export none } parm { name "roll" baseparm label "Roll" invisible export none } parm { name "pos" baseparm label "Position" invisible export none } parm { name "uparmtype" baseparm label "Parameterization" invisible export none } parm { name "pathorient" baseparm label "Orient Along Path" invisible export none } parm { name "up" baseparm label "Orient Up Vector" invisible export none } parm { name "bank" baseparm label "Auto-Bank factor" invisible export none } } group { name "stdswitcher4_1" label "Render" parm { name "shop_materialpath" baseparm label "Material" export none } parm { name "shop_materialopts" baseparm label "Options" invisible export none } parm { name "tdisplay" baseparm label "Display" joinnext export none } parm { name "display" baseparm label "Display" export none } parm { name "viewportlod" label "Display As" type ordinal default { "full" } help "Choose how the object's geometry should be rendered in the viewport" menu { "full" "Full Geometry" "points" "Point Cloud" "box" "Bounding Box" "centroid" "Centroid" "hidden" "Hidden" "subd" "Subdivision Surface / Curves" } parmtag { "spare_category" "Render" } } parm { name "vm_rendervisibility" label "Render Visibility" type string default { "*" } menureplace { "*" "Visible to all" "primary" "Visible only to primary rays" "primary|shadow" "Visible only to primary and shadow rays" "-primary" "Invisible to primary rays (Phantom)" "-diffuse" "Invisible to diffuse rays" "-diffuse&-reflect&-refract" "Invisible to secondary rays" "" "Invisible (Unrenderable)" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "rendervisibility" } parmtag { "spare_category" "Render" } } parm { name "vm_rendersubd" label "Render Polygons As Subdivision (Mantra)" type toggle default { "0" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "rendersubd" } parmtag { "spare_category" "Geometry" } } parm { name "vm_subdstyle" label "Subdivision Style" type string default { "mantra_catclark" } hidewhen "{ vm_rendersubd == 0 }" menu { "mantra_catclark" "Mantra Catmull-Clark" "osd_catclark" "OpenSubdiv Catmull-Clark" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "subdstyle" } parmtag { "spare_category" "Geometry" } } parm { name "vm_subdgroup" label "Subdivision Group" type string default { "" } hidewhen "{ vm_rendersubd == 0 }" parmtag { "mantra_class" "object" } parmtag { "mantra_name" "subdgroup" } parmtag { "spare_category" "Geometry" } } parm { name "vm_osd_quality" label "Open Subdiv Quality" type float default { "1" } hidewhen "{ vm_rendersubd == 0 vm_subdstyle != osd_catclark }" range { 0 10 } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "osd_quality" } parmtag { "spare_category" "Geometry" } } parm { name "vm_osd_vtxinterp" label "OSD Vtx Interp" type integer default { "2" } hidewhen "{ vm_rendersubd == 0 vm_subdstyle != osd_catclark }" menu { "0" "No vertex interpolation" "1" "Edges only" "2" "Edges and Corners" } range { 0 10 } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "osd_vtxinterp" } parmtag { "spare_category" "Geometry" } } parm { name "vm_osd_fvarinterp" label "OSD FVar Interp" type integer default { "4" } hidewhen "{ vm_rendersubd == 0 vm_subdstyle != osd_catclark }" menu { "0" "Smooth everywhere" "1" "Sharpen corners only" "2" "Sharpen edges and corners" "3" "Sharpen edges and propagated corners" "4" "Sharpen all boundaries" "5" "Bilinear interpolation" } range { 0 10 } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "osd_fvarinterp" } parmtag { "spare_category" "Geometry" } } group { name "folder0" label "Shading" parm { name "categories" label "Categories" type string default { "" } help "A list of tags which can be used to select the object" parmtag { "spare_category" "Shading" } } parm { name "reflectmask" label "Reflection Mask" type oplist default { "*" } help "Objects that will be reflected on this object." parmtag { "opexpand" "1" } parmtag { "opfilter" "!!OBJ/GEOMETRY!!" } parmtag { "oprelative" "/obj" } parmtag { "spare_category" "Shading" } } parm { name "refractmask" label "Refraction Mask" type oplist default { "*" } help "Objects that will be refracted on this object." parmtag { "opexpand" "1" } parmtag { "opfilter" "!!OBJ/GEOMETRY!!" } parmtag { "oprelative" "/obj" } parmtag { "spare_category" "Shading" } } parm { name "lightmask" label "Light Mask" type oplist default { "*" } help "Lights that illuminate this object." parmtag { "opexpand" "1" } parmtag { "opfilter" "!!OBJ/LIGHT!!" } parmtag { "oprelative" "/obj" } parmtag { "spare_category" "Shading" } } parm { name "lightcategories" label "Light Selection" type string default { "*" } parmtag { "spare_category" "Shading" } } parm { name "vm_lpetag" label "LPE Tag" type string default { "" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "lpetag" } parmtag { "spare_category" "Shading" } } parm { name "vm_volumefilter" label "Volume Filter" type string default { "box" } menu { "box" "Box Filter" "gaussian" "Gaussian" "bartlett" "Bartlett (triangle)" "catrom" "Catmull-Rom" "hanning" "Hanning" "blackman" "Blackman" "sinc" "Sinc (sharpening)" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "filter" } parmtag { "spare_category" "Shading" } } parm { name "vm_volumefilterwidth" label "Volume Filter Width" type float default { "1" } range { 0.001 5 } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "filterwidth" } parmtag { "spare_category" "Shading" } } parm { name "vm_matte" label "Matte shading" type toggle default { "0" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "matte" } parmtag { "spare_category" "Shading" } } parm { name "vm_rayshade" label "Raytrace Shading" type toggle default { "0" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "rayshade" } parmtag { "spare_category" "Shading" } } } group { name "folder0_1" label "Sampling" parm { name "geo_velocityblur" label "Geometry Velocity Blur" type ordinal default { "off" } disablewhen "{ allowmotionblur == 0 }" menu { "off" "No Velocity Blur" "on" "Velocity Blur" "accelblur" "Acceleration Blur" } } parm { name "geo_accelattribute" label "Acceleration Attribute" type string default { "accel" } hidewhen "{ geo_velocityblur != accelblur }" parmtag { "spare_category" "Sampling" } } } group { name "folder0_2" label "Dicing" parm { name "vm_shadingquality" label "Shading Quality" type float default { "1" } range { 0 10 } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "shadingquality" } parmtag { "spare_category" "Dicing" } } parm { name "vm_flatness" label "Dicing Flatness" type float default { "0.05" } range { 0 1 } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "flatness" } parmtag { "spare_category" "Dicing" } } parm { name "vm_raypredice" label "Ray Predicing" type integer default { "0" } menu { "0" "Disable Predicing" "1" "Full Predicing" "2" "Precompute Bounds" } range { 0 10 } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "raypredice" } parmtag { "spare_category" "Dicing" } } parm { name "vm_curvesurface" label "Shade Curves As Surfaces" type toggle default { "0" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "curvesurface" } parmtag { "spare_category" "Dicing" } } } group { name "folder0_3" label "Geometry" parm { name "vm_rmbackface" label "Backface Removal" type toggle default { "0" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "rmbackface" } parmtag { "spare_category" "Geometry" } } parm { name "shop_geometrypath" label "Procedural Shader" type oppath default { "" } parmtag { "opfilter" "!!SHOP/GEOMETRY!!" } parmtag { "oprelative" "." } parmtag { "spare_category" "Geometry" } } parm { name "vm_forcegeometry" label "Force Procedural Geometry Output" type toggle default { "1" } parmtag { "spare_category" "Geometry" } } parm { name "vm_rendersubdcurves" label "Render Polygon Curves As Subdivision (Mantra)" type toggle default { "0" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "rendersubdcurves" } parmtag { "spare_category" "Geometry" } } parm { name "vm_renderpoints" label "Render As Points (Mantra)" type integer default { "2" } menu { "0" "No Point Rendering" "1" "Render Only Points" "2" "Render Unconnected Points" } range { 0 10 } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "renderpoints" } parmtag { "spare_category" "Geometry" } } parm { name "vm_renderpointsas" label "Render Points As (Mantra)" type integer default { "0" } disablewhen "{ vm_renderpoints == 0 }" menu { "0" "Spheres" "1" "Circles" } range { 0 10 } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "renderpointsas" } parmtag { "spare_category" "Geometry" } } parm { name "vm_usenforpoints" label "Use N For Point Rendering" type toggle default { "0" } disablewhen "{ vm_renderpoints == 0 }" parmtag { "mantra_class" "object" } parmtag { "mantra_name" "usenforpoints" } parmtag { "spare_category" "Geometry" } } parm { name "vm_pointscale" label "Point Scale" type float default { "1" } disablewhen "{ vm_renderpoints == 0 }" range { 0! 10 } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "pointscale" } parmtag { "spare_category" "Geometry" } } parm { name "vm_pscalediameter" label "Treat Point Scale as Diameter Instead of Radius" type toggle default { "0" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "pscalediameter" } parmtag { "spare_category" "Geometry" } } parm { name "vm_metavolume" label "Metaballs as Volume" type toggle default { "0" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "metavolume" } parmtag { "spare_category" "Geometry" } } parm { name "vm_coving" label "Coving" type integer default { "1" } menu { "0" "Disable Coving" "1" "Coving for displacement/sub-d" "2" "Coving for all primitives" } range { 0 10 } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "coving" } parmtag { "spare_category" "Geometry" } } parm { name "vm_materialoverride" label "Material Override" type string default { "compact" } menu { "none" "Disabled" "full" "Evaluate for Each Primitve/Point" "compact" "Evaluate Once" } parmtag { "spare_category" "Geometry" } } parm { name "vm_overridedetail" label "Ignore Geometry Attribute Shaders" type toggle default { "0" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "overridedetail" } parmtag { "spare_category" "Geometry" } } parm { name "vm_procuseroottransform" label "Proc Use Root Transform" type toggle default { "1" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "procuseroottransform" } parmtag { "spare_category" "Geometry" } } } } group { name "stdswitcher4_2" label "Arnold" parm { name "shop_propertiespath" label "Default Properties" type oppath default { "" } help "Specifies a Property SHOP that is used to resolve rendering parameter values. At render time, this SHOP (if given) is used to resolve rendering parameter values first, before looking for then on the objects being rendered." range { 0 1 } parmtag { "opfilter" "!!SHOP/PROPERTIES!!" } parmtag { "oprelative" "." } parmtag { "spare_category" "Shaders" } } parm { name "ar_user_options" label "User Options" type string joinnext default { "" } help "This string is passed to AiNodeSetAttributes() ont the Arnold node. It can contain any number of parameter/value pairs separated by whitespace (spaces, tabs, newlines) as found in .ass files." disablewhen "{ ar_user_options_enable == 0 }" } parm { name "ar_user_options_enable" label "Enable" type toggle default { "0" } help "Overrides the value of any parameter of the Arnold node." } group { name "folder_subdivision" label "Subdivision" parm { name "ar_subdiv_type" label "Type" type string default { "none" } help "Subdivision algorithm. None ignores any subdivision and renders the mesh as it is. Linear subdivision puts vertices in the middle of each face. The Catmull-Clark algorithm is used to create smooth surfaces by recursive subdivision surface modeling. The resulting surface will always consist of a mesh of quadrilateral faces." menu { "none" "None" "catclark" "Catmull-Clark" "linear" "Linear" } range { 0 1 } parmtag { "spare_category" "Subdivision" } } parm { name "ar_subdiv_iterations" label "Iterations" type integer default { "1" } help "The number of iterations / levels of subdivision. With Catmull-Clark subdivision, increasing the number of iterations produces a smoother mesh." disablewhen "{ ar_subdiv_type == none }" range { 1! 10 } parmtag { "spare_category" "Subdivision" } } parm { name "ar_subdiv_adaptive_metric" label "Adaptive Metric" type string joinnext default { "auto" } help "The adaptive subdivision criterion. Auto subdiv will choose between the EDGELENGTH mode and the FLATNESS depending on the displacement property of the polymesh. This means that if there is a displacement it will use the EDGELENGTH algorithm. If there is not displacement (or it is ignored in the global options) it will use FLATNESS." disablewhen "{ ar_subdiv_type == none }" menu { "auto" "Auto" "edge_length" "Edge Length" "flatness" "Flatness" } parmtag { "spare_category" "Subdivision" } } parm { name "ar_subdiv_adaptive_error" label " Error" type float default { "0" } help "The \"adaptive error\" refers to the acceptable tessellation error as seen from the camera. If there's no displacement, then the error represents the distance from the subdivided mesh to the \"true\" or \"limit\" surface -- sort of a \"flatness\" heuristic. The smaller the error, the closer to the limit surface a mesh will be and the less inter-frame popping when the subdivision level jumps. If displacement is enabled, then the error represents the final size of the subdivided quads. A value of 0 disables adaptive subdivision." disablewhen "{ ar_subdiv_type == none }" range { 0! 10 } parmtag { "spare_category" "Subdivision" } } parm { name "ar_subdiv_adaptive_space" label "Adaptive Space" type string default { "raster" } help "The space in which the adaptive metric is evaluated." disablewhen "{ ar_subdiv_type == none }" menu { "raster" "Raster" "object" "Object" } parmtag { "spare_category" "Subdivision" } } parm { name "ar_subdiv_uv_smoothing" label "UV Smoothing" type string joinnext default { "pin_corners" } help "UV smoothing algorithm." disablewhen "{ ar_subdiv_type == none }" menu { "pin_corners" "Pin Corners" "pin_borders" "Pin Borders" "linear" "Linear" "smooth" "Smooth" } range { 0 1 } parmtag { "spare_category" "Subdivision" } } parm { name "ar_subdiv_smooth_derivs" label "Smooth Derivatives" type toggle default { "0" } help "This option makes it possible to remove the faceted appearance from anisotropic speculars. The object must have a valid UV map for this option to work and only works if you apply at least one subdivision level to the geometry." disablewhen "{ ar_subdiv_type == none }" range { 0 1 } parmtag { "spare_category" "Subdivision" } } parm { name "ar_merge_vertex_indices" label "Merge Vertex Indices" type toggle default { "1" } help "Enable merging of the indices and data of coincident and identical vertex attribute values (UVs, normals, vertex user data). This allows the proper interpolation of vertex attributes when subdividing, and yields more compact render scenes in memory and on disk, at the cost of a slower export." range { 0 1 } parmtag { "spare_category" "Subdivision" } } parm { name "ar_subdiv_frustum_ignore" label "Ignore Frustum Culling" type toggle default { "0" } help "Subdivision surfaces outside the view or dicing camera frustum will not be subdivided. This can be turned on globally by enabling subdiv_frustum_culling on the ROP and can be turned off for specific meshes by setting subdiv_frustum_ignore true." disablewhen "{ ar_subdiv_type == none }" parmtag { "spare_category" "Subdivision" } } } group { name "folder_subdivision_1" label "Displacement" parm { name "ar_disp_height" label "Height" type float default { "1" } range { 0 10 } parmtag { "spare_category" "Displacement" } } parm { name "ar_disp_zero_value" label "Zero Value" type float default { "0" } range { 0 1 } parmtag { "spare_category" "Displacement" } } parm { name "ar_disp_padding" label "Bounds Padding" type float default { "0" } range { 0 10 } parmtag { "spare_category" "Displacement" } } parm { name "ar_disp_autobump" label "Autobump" type toggle default { "0" } range { 0 1 } parmtag { "spare_category" "Displacement" } } groupcollapsible { name "folder_autobump" label "Autobump Visibility" parm { name "ar_autobump_visibility_camera" label "Camera" type toggle default { "1" } help "Toggle autobump for camera rays (i.e. primary or view rays)." disablewhen "{ ar_disp_autobump == 0 }" range { 0 1 } parmtag { "spare_category" "Displacement" } } parm { name "ar_autobump_visibility_shadow" label "Shadow" type toggle default { "0" } help "Toggle autobump for shadow rays fired in the direct lighting calculations." disablewhen "{ ar_disp_autobump == 0 }" range { 0 1 } parmtag { "spare_category" "Displacement" } } parm { name "ar_autobump_visibility_diffuse_transmit" label "Diffuse Transmission" type toggle default { "0" } help "Toggle autobump for indirect diffuse transmission rays." disablewhen "{ ar_disp_autobump == 0 }" range { 0 1 } parmtag { "spare_category" "Displacement" } } parm { name "ar_autobump_visibility_specular_transmit" label "Specular Transmission" type toggle default { "0" } help "Toggle autobump for indirect specular transmission rays." disablewhen "{ ar_disp_autobump == 0 }" range { 0 1 } parmtag { "spare_category" "Displacement" } } parm { name "ar_autobump_visibility_diffuse_reflect" label "Diffuse Reflection" type toggle default { "0" } help "Toggle autobump for indirect diffuse reflection rays." disablewhen "{ ar_disp_autobump == 0 }" range { 0 1 } parmtag { "spare_category" "Displacement" } } parm { name "ar_autobump_visibility_specular_reflect" label "Specular Reflection" type toggle default { "0" } help "Toggle autobump for indirect specular reflection rays." disablewhen "{ ar_disp_autobump == 0 }" range { 0 1 } parmtag { "spare_category" "Displacement" } } parm { name "ar_autobump_visibility_volume" label "Volume Scattering" type toggle default { "0" } help "Toggle autobump for indirect volume scattering rays." disablewhen "{ ar_disp_autobump == 0 }" range { 0 1 } parmtag { "spare_category" "Displacement" } } } } group { name "folder_subdivision_2" label "Shapes" parm { name "ar_min_pixel_width" label "Minimum Pixel Width" type float default { "0" } help "If this value is non-zero, points or curves with a small on-screen width will be automatically enlarged so that they are at least the specified size in pixels. The enlargement fraction is then used in the hair shader to adjust the opacity so that the visible thickness of the hair remains the same. For a given number of AA samples, this makes it a lot easier to antialias fine hair, at the expense of render time (because of the additional transparency/depth complexity). Good values are in the range 0.2 to 0.7. Values closer to 0 are faster to render but need more AA samples. So if your scene already uses very high AA settings, you should use a low value like 0.1. For best results, you may need to increase the auto-transparency depth, and/or lower the auto-transparency threshold, but watch the effect on render times. Note that this parameter currently works with the ribbon mode only." range { 0 10 } parmtag { "spare_category" "Curves" } } parm { name "ar_radius" label "Default Radius" type float default { "0.05" } help "Sets the default rendered radius of points or thickness of curves. This property can be overridden per point with the \"ar_radius\", \"pscale\" or \"width\" (curves only) attributes." range { 0 10 } parmtag { "units" "m1" } } group { name "folder_points" label "Points" parm { name "ar_mode" label "Mode" type ordinal default { "sphere" } help "Rendering mode for points or particles. Can be spheres, or camera-facing disks or quads." menu { "disk" "Disk" "sphere" "Sphere" "quad" "Quad" } range { 0 1 } } parm { name "ar_point_scale" label "Point Scale" type float default { "1" } help "A global scale factor applied to points." range { 0! 10 } } parm { name "ar_aspect" label "Aspect" type log default { "1" } help "The aspect ratio for quads. This property can be overrriden per point by setting the \"ar_aspect\" or \"spritescale\" attributes on the geometry." disablewhen "{ ar_mode != quad }" range { 0.1 10 } } parm { name "ar_rotation" label "Rotation" type angle default { "0" } help "The rotation angle in degrees for quads. This property can be overrriden per point by setting the \"ar_rotation\" or the \"spriterot\" attributes on the geometry." disablewhen "{ ar_mode != quad }" range { -180 180 } } } group { name "folder_points_1" label "Curves" parm { name "ar_curves_basis" label "Basis" type string default { "auto" } help "The curves basis to interpret the knots of the input curves or open polygons. When set to \"Automatic\", the basis will attempt to match the closest equivalent in Arnold, ie. linear for open polygons, Bezier for Bezier curves and B-spline for NURBS." menu { "bezier" "Bezier" "b-spline" "B-Spline" "catmull-rom" "Catmull-Rom" "linear" "Linear" "auto" "Automatic" } range { 0 1 } parmtag { "spare_category" "Curves" } } parm { name "ar_curves_mode" label "Mode" type string default { "ribbon" } help "- Ribbon: This mode is recommended for fine geometry such as realistic hair, fur or fields of grass. These curves are rendered as camera-facing flat ribbons. For secondary and shadow rays, they face the incoming ray direction. This mode doesn't look so good for very wide hairs or dramatic zoom-ins because of the flat appearance. This mode works best with a proper hair shader (perhaps based on a Kay-Kajiya or Marschner specular model).\\n\\n- Thick: This mode resembles spaghetti. It has a circular cross section, and a normal vector that varies across the width of the hair. Thick hairs look great when zoomed in, and are specially useful for effects work, but their varying normals make them more difficult to antialias when they are small. You can use any shader with this rendering mode, including lambert, phong, etc.\\n\\n- Oriented: This mode is similar to the ribbons mode, but you can set the ribbon orientation for each knot with an \"ar_orientations\" vector attribute representing the direction of the normal of the ribbon. This mode can be useful to render grass strands for example." menu { "ribbon" "Ribbon" "thick" "Thick" "oriented" "Oriented " } range { 0 1 } parmtag { "spare_category" "Curves" } } } group { name "folder_points_2" label "Volumes" parm { name "ar_step_size" label "Volume Step Size" type float default { "0" } help "When ar_step_size is set to a value other than zero, then points rendered as spheres, particles and polymeshes will be rendered as volumes." range { 0 1 } } parm { name "ar_volume_padding" label "Volume Padding" type float default { "0" } help "When rendering particles or polymeshes as volumes (when ar_step_size is non-zero), ar_volume_padding will provide extra the volume padding specified for displacement requirements" disablewhen "{ ar_step_size == 0 }" range { 0 10 } } parm { name "label_volume" label "Label" type label nolabel default { "" } } parm { name "label_volume2" label "Label" type label nolabel default { "Points and polymeshes are rendered as volumes if Step Size > 0" } } } group { name "folder_points_3" label " VDB " parm { name "ar_vdb_file_enable" label "Export VDB File" type toggle nolabel joinnext default { "0" } help "Export the VDB primitives as a VDB file and reference the file in the Arnold volume." range { 0 1 } } parm { name "ar_vdb_file" label "Save to File" type file default { "$HIP/`pythonexprs(\"hou.pwd().path()[1:].replace('/', '_')\")`.$F4.vdb" } help "The OpenVDB file name that the VDB primitves will be written to, and that will be referenced by the Arnold volume instead of attaching the volume data." disablewhen "{ ar_vdb_file_enable == 0 }" range { 0 1 } parmtag { "filechooser_pattern" "*.vdb" } } parm { name "ar_grids" label "Export Grids" type string default { "*" } help "The VDB grids to export and make available in the volume shading context." menutoggle { [ "import htoa.properties" ] [ "return htoa.properties.vdbGridMenu()" ] language python } range { 0 1 } parmtag { "script_callback" "__import__('htoa').properties.vdbAutoStepSizeCallback()" } parmtag { "script_callback_language" "python" } } parm { name "ar_velocity_grids" label "Velocity Grids" type string default { "*" } help "Select 1 vector or 3 float grids representing velocity for motion blur." menutoggle { [ "import htoa.properties" ] [ "return htoa.properties.vdbGridMenu()" ] language python } range { 0 1 } } parm { name "ar_velocity_scale" label "Velocity Scale" type log default { "1" } help "Scale the velocities by this factor." disablewhen "{ ar_velocity_grids == \"\" }" range { 0.1 10 } } parm { name "ar_velocity_threshold" label "Velocity Threshold" type log default { "0.001" } help "Controls filtering of noisy velocities. The default value 0.001 should have little to no visual impact, setting it to zero disables filtering entirely." disablewhen "{ ar_velocity_grids == \"\" }" range { 0! 1! } } parm { name "ar_padding" label "Bounds Padding" type float default { "0" } help "Extra padding for the volume bounds" range { 0 10 } } parm { name "ar_step_size_type" label "Volume Step" type ordinal joinnext default { "0" } help "When set to auto, the step size is automatically determined by the volume plugin, yielding the minimum voxel size." menu { "auto" "Automatic " "custom" "Custom" } range { 0 1 } parmtag { "script_callback" "__import__('htoa').properties.vdbAutoStepSizeCallback()" } parmtag { "script_callback_language" "python" } } parm { name "ar_vdb_step_size" label " Step Size" type float default { "0.02" } help "The ray marching step size. When the step type is auto, this indicates the computed step size, the minimum voxel size." disablewhen "{ ar_step_size_type == auto }" range { 0! 10 } } parm { name "ar_step_scale" label "Step Scale" type log default { "1" } help "Multiply the step size by this factor, including when it's automatically detected." range { 0.1! 10 } } parm { name "ar_compress" label "Compress" type toggle invisible default { "1" } help "Optimize voxel storage to reduce memory usage." range { 0 1 } } } group { name "folder_points_4" label "Tessellation" parm { name "ar_tessellation_enable" label "Tessellate Primitives" type toggle default { "1" } help "Tessellate Houdini primitives such as NURBS, Bezier meshes, circles, tubes or spheres prior to sending to Arnold." disablewhen "{ ar_tessellation_use_rop == 1 }" range { 0 1 } parmtag { "spare_category" "Tessellation" } } parm { name "ar_tessellation_style" label "Tessellation Style" type string invisible default { "lod" } help "Specifies the conversion style for the geometry. The default is\"Level of Detail\". Can be one of the following:\\n- Level of Detail: Tessellate geometry using the level of detail settings.\\n- Divisions: Tessellate geometry based on the number of divisions settings." disablewhen "{ ar_tessellation_enable == 0 }" menu { "lod" "Level of Detail" "div" "Divisions" } range { 0 1 } parmtag { "spare_category" "Tessellation" } } parm { name "ar_tessellation_ulod" label "U Level of Detail" type float default { "1" } help "Specifies the level of detail for U subdivisions of the surface being converted. Applicable only when conversion method is set to Level of Detail. Defaults to 1.0." disablewhen "{ ar_tessellation_enable == 0 }" hidewhen "{ ar_tessellation_style != lod }" range { 0! 10 } parmtag { "spare_category" "Tessellation" } } parm { name "ar_tessellation_vlod" label "V Level of Detail" type float default { "1" } help "Specifies the level of detail for V subdivisions of the surface being converted. Applicable only when conversion method is set to Level of Detail. Defaults to 1.0." disablewhen "{ ar_tessellation_enable == 0 }" hidewhen "{ ar_tessellation_style != lod }" range { 0! 10 } parmtag { "spare_category" "Tessellation" } } parm { name "ar_tessellation_trimlod" label "Trim Level of Detail" type float default { "1" } help "Specifies the level of detail for trim curves of the surface being converted. Applicable only when conversion method is set to Level of Detail. Defaults to 1.0." disablewhen "{ ar_tessellation_enable == 0 }" hidewhen "{ ar_tessellation_style != lod }" range { 0! 10 } parmtag { "spare_category" "Tessellation" } } } group { name "folder_points_5" label "Procedurals" parm { name "ar_operator_graph_enable" label "Enable Operator Graph" type toggle nolabel joinnext default { "1" } help "Enables the operator graph on procedurals in this OBJ node." range { 0 1 } } parm { name "ar_operator_graph" label "Operator Graph" type oppath default { "" } help "Specify an operator ROP graph to connect to procedurals created by this OBJ node." disablewhen "{ ar_operator_graph_enable == 0 }" parmtag { "opfilter" "!!ROP!!" } parmtag { "oprelative" "." } } } } group { name "folder_subdivision_3" label "Attributes" parm { name "ar_toon_id" label "Toon ID Group" type string default { "" } help "Objects in the same toon ID group will be rendered with the same silhouette, if the user_id attribute is set on the toon shader" } parm { name "ar_attributes_detail" label "Detail Attributes" type string default { "*" } help "The list of details attributes to be exported as user data for Arnold. As user data is costly in memory, nothing is exported by default. If this field contains a wildcard character (*), all available attributes will be exported." menutoggle { [ "__import__('htoa').properties.detailAttributeMenu()" ] language python } range { 0 1 } parmtag { "spare_category" "Attributes" } } parm { name "ar_attributes_primitive" label "Primitive Attributes" type string default { "*" } help "The list of primitive attributes to be exported as user data for Arnold. As user data is costly in memory, nothing is exported by default. If this field contains a wildcard character (*), all available attributes will be exported." menutoggle { [ "__import__('htoa').properties.primitiveAttributeMenu()" ] language python } range { 0 1 } parmtag { "spare_category" "Attributes" } } parm { name "ar_attributes_point" label "Point Attributes" type string default { "*" } help "The list of point attributes to be exported as user data for Arnold. As user data is costly in memory, nothing is exported by default. If this field contains a wildcard character (*), all available attributes will be exported." menutoggle { [ "__import__('htoa').properties.pointAttributeMenu()" ] language python } range { 0 1 } parmtag { "spare_category" "Attributes" } } parm { name "ar_attributes_vertex" label "Vertex Attributes" type string default { "*" } help "The list of vertex attributes to be exported as user data for Arnold. As user data is costly in memory, nothing is exported by default. If this field contains a wildcard character (*), all available attributes will be exported." menutoggle { [ "__import__('htoa').properties.vertexAttributeMenu()" ] language python } range { 0 1 } parmtag { "spare_category" "Attributes" } } } group { name "folder_subdivision_4" label "Motion Blur" parm { name "ar_transform_type" label "Transform Type" type ordinal default { "2" } help "The type of motion for the transformation of the object, as a hint for the matrix interpolation for transformation motion blur." menu { "linear" "Linear" "rotate_about_origin" "Rotate About Origin" "rotate_about_center" "Rotate About Center" } range { 0 2 } parmtag { "spare_category" "Motion Blur" } } parm { name "ar_mb_xform_keys_override" label "Transform Keys Override" type toggle nolabel joinnext default { "0" } help "Override the ROP settings for Transform Keys." range { 0 1 } parmtag { "spare_category" "Motion Blur" } } parm { name "ar_mb_xform_keys" label "Transform Keys" type integer default { "2" } help "Number of motion keys for matrix transformation. Transformation motion blur is calculated based on a linear interpolation of an object transform matrix, between successive motion keys. Increasing this value will add extra steps, which can improve the blurred result, especially for rotating objects. The default is 2, which results in straight lines of blur between shutter start and shutter end." disablewhen "{ ar_mb_xform_keys_override == 0 }" range { 1! 20 } parmtag { "spare_category" "Motion Blur" } } parm { name "ar_mb_dform_keys_override" label "Deform Keys Override" type toggle nolabel joinnext default { "0" } help "Override the ROP settings for Transform Keys." range { 0 1 } parmtag { "spare_category" "Motion Blur" } } parm { name "ar_mb_dform_keys" label "Deform Keys" type integer default { "2" } help "Number of motion keys for object points. Just like with transformation motion keys, increasing this value allows curved motion paths to be rendered more accurately, at the expense of using more memory." disablewhen "{ ar_mb_dform_keys_override == 0 } { ar_mb_velocity_enable == 1 ar_mb_acceleration_enable != 1 }" range { 1! 20 } parmtag { "spare_category" "Motion Blur" } } parm { name "ar_mb_velocity_enable" label "Velocity Blur Enable" type toggle nolabel joinnext default { "0" } help "Deformation blur will be computed from the \"v\" point attribute." range { 0 1 } parmtag { "spare_category" "Motion Blur" } } parm { name "ar_mb_velocity_attribute" label "Velocity Blur" type string default { "v" } help "The velocity point attribute to use for velocity blur. The Houdini convention is 'v'." disablewhen "{ ar_mb_velocity_enable == 0 }" menureplace { [ "geometry = hou.pwd().renderNode().geometry()" ] [ "if not geometry:" ] [ " return []" ] [ "menu_items = []" ] [ "for attr in geometry.pointAttribs():" ] [ " if not attr.name() in ('P', 'Pw'):" ] [ " menu_items += [attr.name(), '%s\\t %s[%i]' % (attr.name(), attr.dataType().name().lower(), attr.size())]" ] [ "return menu_items" ] language python } range { 0 1 } } parm { name "ar_mb_acceleration_enable" label "Acceleration Blur Enable" type toggle nolabel joinnext default { "0" } disablewhen "{ ar_mb_velocity_enable == 0 }" range { 0 1 } } parm { name "ar_mb_acceleration_attribute" label "Acceleration Blur" type string default { "force" } help "The acceleration point attribute to use for acceleration blur. The Houdini convention is 'force' or 'accel'. If you use use 'force' ensure you divide by the mass." disablewhen "{ ar_mb_velocity_enable == 0 } { ar_mb_acceleration_enable == 0 }" menureplace { [ "geometry = hou.pwd().renderNode().geometry()" ] [ "if not geometry:" ] [ " return []" ] [ "menu_items = []" ] [ "for attr in geometry.pointAttribs():" ] [ " if not attr.name() in ('P', 'Pw'):" ] [ " menu_items += [attr.name(), '%s\\t %s[%i]' % (attr.name(), attr.dataType().name().lower(), attr.size())]" ] [ "return menu_items" ] language python } range { 0 1 } } } group { name "folder_subdivision_5" label "Visibility" parm { name "ar_visibility_camera" label "Visible to Camera Rays" type toggle default { "1" } help "Toggle object visibility for camera rays (i.e. primary or view rays)." range { 0 1 } parmtag { "spare_category" "Visibility" } } parm { name "ar_visibility_shadow" label "Visible to Shadow Rays" type toggle default { "1" } help "Toggle object visibility for shadow rays fired in the direct lighting calculations." range { 0 1 } parmtag { "spare_category" "Visibility" } } parm { name "ar_visibility_diffuse_transmit" label "Visible to Diffuse Transmission Rays" type toggle default { "1" } help "Toggle object visibility for indirect diffuse transmission rays." range { 0 1 } parmtag { "spare_category" "Visibility" } } parm { name "ar_visibility_specular_transmit" label "Visible to Specular Transmission Rays" type toggle default { "1" } help "Toggle object visibility for indirect specular transmission rays." range { 0 1 } parmtag { "spare_category" "Visibility" } } parm { name "ar_visibility_diffuse_reflect" label "Visible to Diffuse Reflection Rays" type toggle default { "1" } help "Toggle object visibility for indirect diffuse reflection rays." range { 0 1 } parmtag { "spare_category" "Visibility" } } parm { name "ar_visibility_specular_reflect" label "Visible to Specular Reflection Rays" type toggle default { "1" } help "Toggle object visibility for indirect specular reflection rays." range { 0 1 } parmtag { "spare_category" "Visibility" } } parm { name "ar_visibility_volume" label "Visible to Volume Scattering Rays" type toggle default { "1" } help "Toggle object visibility for indirect volume scattering rays." range { 0 1 } parmtag { "spare_category" "Visibility" } } parm { name "ar_receive_shadows" label "Receive Shadows" type toggle default { "1" } help "Enable/disable received shadows over the object." range { 0 1 } parmtag { "spare_category" "Visibility" } } parm { name "ar_self_shadows" label "Self Shadows" type toggle default { "1" } help "Enable/disable self-shadowing over the object." disablewhen "{ ar_receive_shadows == 0 }" range { 0 1 } parmtag { "spare_category" "Visibility" } } parm { name "ar_opaque" label "Opaque" type toggle default { "1" } help "By default, Arnold will assume that objects are opaque, which lets the renderer take certain shortcuts and optimizations for maximum ray tracing speed. When this option is unchecked, the object is assumed as \"possibly transparent\", and Arnold will perform extra computations to support transparency and transparent shadows, according to the shader's opacity settings." range { 0 1 } parmtag { "spare_category" "Visibility" } } parm { name "ar_matte" label "Matte" type toggle default { "0" } help "Output black and zero alpha for camera rays to create a holdout." range { 0 1 } parmtag { "spare_category" "Visibility" } } parm { name "ar_skip" label "Skip" type toggle default { "0" } help "Do not output this object regardless of it being forced or not." range { 0 1 } parmtag { "spare_category" "Visibility" } } parm { name "ar_use_light_group" label "Use Light Group" type toggle invisible nolabel joinnext default { "0" } range { 0 1 } } parm { name "ar_light_group" label "Light Group" type oplist invisible default { "" } disablewhen "{ ar_use_light_group == 0 }" range { 0 1 } parmtag { "opfilter" "!!OBJ/LIGHT!!" } parmtag { "oprelative" "/" } } parm { name "ar_use_shadow_group" label "Use Shadow Group" type toggle invisible nolabel joinnext default { "0" } range { 0 1 } } parm { name "ar_shadow_group" label "Shadow Group" type oplist invisible default { "" } disablewhen "{ ar_use_shadow_group == 0 }" range { 0 1 } parmtag { "opfilter" "!!OBJ/LIGHT!!" } parmtag { "oprelative" "/" } } parm { name "ar_trace_sets" label "Trace Sets" type string default { "" } menutoggle { [ "__import__('htoa.properties').properties.tracesetMenu()" ] language python } range { 0 1 } } parm { name "ar_sss_setname" label "SSS Set" type string default { "" } help "Use this parameter to tag multiple objects as belonging to the same SSS set so that illumination will blur across object boundaries. A common use case might be blurring between teeth and gum geometry. This feature is only available when using raytraced SSS." menureplace { [ "__import__('htoa.properties').properties.sssMenu()" ] language python } range { 0 1 } } } group { name "folder_subdivision_6" label "Normals" parm { name "ar_smoothing" label "Smoothing" type toggle default { "1" } help "Smooth/Flat normals." range { 0 1 } parmtag { "spare_category" "Render" } } parm { name "ar_invert_normals" label "Invert Normals" type toggle default { "0" } help "Invert normals" range { 0 1 } parmtag { "spare_category" "Render" } } parm { name "ar_sidedness_camera" label "Double-sided for Camera Rays" type toggle default { "1" } help "Toggle object double-sidedness for camera rays (i.e. primary or view rays)." range { 0 1 } parmtag { "spare_category" "Sidedness" } } parm { name "ar_sidedness_shadow" label "Double-sided for Shadow Rays" type toggle default { "1" } help "Toggle object double-sidedness for shadow rays fired in the direct lighting calculations." range { 0 1 } parmtag { "spare_category" "Sidedness" } } parm { name "ar_sidedness_diffuse_transmit" label "Double-sided for Diffuse Transmission Rays" type toggle default { "1" } help "Toggle object double-sidedness for indirect diffuse transmission rays." range { 0 1 } parmtag { "spare_category" "Sidedness" } } parm { name "ar_sidedness_specular_transmit" label "Double-sided for Specular Transmission Rays" type toggle default { "1" } help "Toggle object double-sidedness for indirect specular transmission rays." range { 0 1 } parmtag { "spare_category" "Sidedness" } } parm { name "ar_sidedness_diffuse_reflect" label "Double-sided for Diffuse Reflection Rays" type toggle default { "1" } help "Toggle object double-sidedness for indirect diffuse reflection rays." range { 0 1 } parmtag { "spare_category" "Sidedness" } } parm { name "ar_sidedness_specular_reflect" label "Double-sided for Specular Reflection Rays" type toggle default { "1" } help "Toggle object double-sidedness for indirect specular reflection rays." range { 0 1 } parmtag { "spare_category" "Sidedness" } } parm { name "ar_sidedness_volume" label "Double-sided for Volume Scattering Rays" type toggle default { "1" } help "Toggle object double-sidedness for indirect volume scattering rays." range { 0 1 } parmtag { "spare_category" "Sidedness" } } } } group { name "stdswitcher4_3" label "Misc" parm { name "use_dcolor" baseparm label "Set Wireframe Color" export none } parm { name "dcolor" baseparm label "Wireframe Color" export none } parm { name "picking" baseparm label "Viewport Selecting Enabled" export none } parm { name "pickscript" baseparm label "Select Script" export none } parm { name "caching" baseparm label "Cache Object Transform" export none } parm { name "vport_shadeopen" baseparm label "Shade Open Curves In Viewport" export none } parm { name "vport_displayassubdiv" baseparm label "Display as Subdivision in Viewport" invisible export none } parm { name "vport_onionskin" baseparm label "Onion Skinning" export none } } 0707070000010000000006660000000000000000010000001440237341500002500000001162obj/grid_object1.chn{ channel ar_matte { lefttype = extend righttype = extend flags = 0 segment { options = { untie iv ov is os ia oa } length = 0 expr = ch(\"vm_matte\") } } channel ar_mb_velocity_enable { lefttype = extend righttype = extend flags = 0 segment { options = { untie iv ov is os ia oa } length = 0 expr = ch(\"geo_velocityblur\") } } channel ar_point_scale { lefttype = extend righttype = extend default = 1 flags = 0 segment { options = { untie iv ov is os ia oa } length = 0 expr = ch(\"vm_pointscale\") } } } 0707070000010000000006660000000000000000010000001440237341500002600000015757obj/grid_object1.parm{ version 0.8 stdswitcher [ 0 locks=0 ] ( 0 0 0 ) xOrd [ 0 locks=0 ] ( "srt" ) rOrd [ 0 locks=0 ] ( "xyz" ) t [ 0 locks=0 ] ( 0.0050876140594482422 -1.1920928955078125e-07 -0.0050876140594482422 ) r [ 0 locks=0 ] ( 0 0 0 ) s [ 0 locks=0 ] ( 1 1 1 ) p [ 0 locks=0 ] ( 0 0 0 ) pr [ 0 locks=0 ] ( 0 0 0 ) scale [ 0 locks=0 ] ( 1 ) pre_xform [ 0 locks=0 ] ( 0 ) keeppos [ 0 locks=0 ] ( "off" ) childcomp [ 0 locks=0 ] ( "off" ) constraints_on [ 0 locks=0 ] ( "off" ) constraints_path [ 0 locks=0 ] ( "" ) lookatpath [ 0 locks=0 ] ( "" ) lookupobjpath [ 0 locks=0 ] ( "" ) lookup [ 0 locks=0 ] ( on ) pathobjpath [ 0 locks=0 ] ( "" ) roll [ 0 locks=0 ] ( 0 ) pos [ 0 locks=0 ] ( 0 ) uparmtype [ 0 locks=0 ] ( "arc" ) pathorient [ 0 locks=0 ] ( 1 ) up [ 0 locks=0 ] ( 0 1 0 ) bank [ 0 locks=0 ] ( 0 ) shop_materialpath [ 0 locks=0 ] ( /mat/arnold_materialbuilder1 ) shop_materialopts [ 0 locks=0 ] ( 0 ) tdisplay [ 0 locks=0 ] ( "off" ) display [ 0 locks=0 ] ( 1 ) use_dcolor [ 0 locks=0 ] ( "off" ) dcolor [ 0 locks=0 ] ( 1 1 1 ) picking [ 0 locks=0 ] ( "on" ) pickscript [ 0 locks=0 ] ( "" ) caching [ 0 locks=0 ] ( "on" ) vport_shadeopen [ 0 locks=0 ] ( "off" ) vport_displayassubdiv [ 0 locks=0 ] ( "off" ) vport_onionskin [ 0 locks=0 ] ( "off" ) stdswitcher4 [ 0 locks=0 ] ( 1 1 1 1 ) viewportlod [ 0 locks=0 ] ( "full" ) vm_rendervisibility [ 0 locks=0 ] ( * ) vm_rendersubd [ 0 locks=0 ] ( "off" ) vm_subdstyle [ 0 locks=0 ] ( mantra_catclark ) vm_subdgroup [ 0 locks=0 ] ( "" ) vm_osd_quality [ 0 locks=0 ] ( 1 ) vm_osd_vtxinterp [ 0 locks=0 ] ( 2 ) vm_osd_fvarinterp [ 0 locks=0 ] ( 4 ) folder0 [ 0 locks=0 ] ( 0 0 0 0 ) categories [ 0 locks=0 ] ( "" ) reflectmask [ 0 locks=0 ] ( * ) refractmask [ 0 locks=0 ] ( * ) lightmask [ 0 locks=0 ] ( * ) lightcategories [ 0 locks=0 ] ( * ) vm_lpetag [ 0 locks=0 ] ( "" ) vm_volumefilter [ 0 locks=0 ] ( box ) vm_volumefilterwidth [ 0 locks=0 ] ( 1 ) vm_matte [ 0 locks=0 ] ( "off" ) vm_rayshade [ 0 locks=0 ] ( "off" ) geo_velocityblur [ 0 locks=0 ] ( "off" ) geo_accelattribute [ 0 locks=0 ] ( accel ) vm_shadingquality [ 0 locks=0 ] ( 1 ) vm_flatness [ 0 locks=0 ] ( 0.050000000000000003 ) vm_raypredice [ 0 locks=0 ] ( 0 ) vm_curvesurface [ 0 locks=0 ] ( "off" ) vm_rmbackface [ 0 locks=0 ] ( "off" ) shop_geometrypath [ 0 locks=0 ] ( "" ) vm_forcegeometry [ 0 locks=0 ] ( "on" ) vm_rendersubdcurves [ 0 locks=0 ] ( "off" ) vm_renderpoints [ 0 locks=0 ] ( 2 ) vm_renderpointsas [ 0 locks=0 ] ( 0 ) vm_usenforpoints [ 0 locks=0 ] ( "off" ) vm_pointscale [ 0 locks=0 ] ( 1 ) vm_pscalediameter [ 0 locks=0 ] ( "off" ) vm_metavolume [ 0 locks=0 ] ( "off" ) vm_coving [ 0 locks=0 ] ( 1 ) vm_materialoverride [ 0 locks=0 ] ( compact ) vm_overridedetail [ 0 locks=0 ] ( "off" ) vm_procuseroottransform [ 0 locks=0 ] ( "on" ) shop_propertiespath [ 0 locks=0 ] ( "" ) ar_user_options [ 0 locks=0 ] ( "" ) ar_user_options_enable [ 0 locks=0 ] ( "off" ) folder_subdivision [ 0 locks=0 ] ( 0 0 0 0 0 0 0 ) ar_subdiv_type [ 0 locks=0 ] ( none ) ar_subdiv_iterations [ 0 locks=0 ] ( 1 ) ar_subdiv_adaptive_metric [ 0 locks=0 ] ( auto ) ar_subdiv_adaptive_error [ 0 locks=0 ] ( 0 ) ar_subdiv_adaptive_space [ 0 locks=0 ] ( raster ) ar_subdiv_uv_smoothing [ 0 locks=0 ] ( pin_corners ) ar_subdiv_smooth_derivs [ 0 locks=0 ] ( "off" ) ar_merge_vertex_indices [ 0 locks=0 ] ( "on" ) ar_subdiv_frustum_ignore [ 0 locks=0 ] ( "off" ) ar_disp_height [ 0 locks=0 ] ( 1 ) ar_disp_zero_value [ 0 locks=0 ] ( 0 ) ar_disp_padding [ 0 locks=0 ] ( 0 ) ar_disp_autobump [ 0 locks=0 ] ( "off" ) folder_autobump [ 0 locks=0 ] ( 0 ) ar_autobump_visibility_camera [ 0 locks=0 ] ( "on" ) ar_autobump_visibility_shadow [ 0 locks=0 ] ( "off" ) ar_autobump_visibility_diffuse_transmit [ 0 locks=0 ] ( "off" ) ar_autobump_visibility_specular_transmit [ 0 locks=0 ] ( "off" ) ar_autobump_visibility_diffuse_reflect [ 0 locks=0 ] ( "off" ) ar_autobump_visibility_specular_reflect [ 0 locks=0 ] ( "off" ) ar_autobump_visibility_volume [ 0 locks=0 ] ( "off" ) ar_min_pixel_width [ 0 locks=0 ] ( 0 ) ar_radius [ 0 locks=0 ] ( 0.050000000000000003 ) folder_points [ 0 locks=0 ] ( 0 0 0 0 0 0 ) ar_mode [ 0 locks=0 ] ( "sphere" ) ar_point_scale [ 0 locks=0 ] ( [ ar_point_scale 1 ] ) ar_aspect [ 0 locks=0 ] ( 1 ) ar_rotation [ 0 locks=0 ] ( 0 ) ar_curves_basis [ 0 locks=0 ] ( auto ) ar_curves_mode [ 0 locks=0 ] ( ribbon ) ar_step_size [ 0 locks=0 ] ( 0 ) ar_volume_padding [ 0 locks=0 ] ( 0 ) label_volume [ 0 locks=0 ] ( "" ) label_volume2 [ 0 locks=0 ] ( "Points and polymeshes are rendered as volumes if Step Size > 0" ) ar_vdb_file_enable [ 0 locks=0 ] ( "off" ) ar_vdb_file [ 0 locks=0 ] ( "$HIP/`pythonexprs(\"hou.pwd().path()[1:].replace('/', '_')\")`.$F4.vdb" ) ar_grids [ 0 locks=0 ] ( * ) ar_velocity_grids [ 0 locks=0 ] ( * ) ar_velocity_scale [ 0 locks=0 ] ( 1 ) ar_velocity_threshold [ 0 locks=0 ] ( 0.001 ) ar_padding [ 0 locks=0 ] ( 0 ) ar_step_size_type [ 0 locks=0 ] ( "auto" ) ar_vdb_step_size [ 0 locks=0 ] ( 0.02 ) ar_step_scale [ 0 locks=0 ] ( 1 ) ar_compress [ 0 locks=0 ] ( "on" ) ar_tessellation_enable [ 0 locks=0 ] ( "on" ) ar_tessellation_style [ 0 locks=0 ] ( lod ) ar_tessellation_ulod [ 0 locks=0 ] ( 1 ) ar_tessellation_vlod [ 0 locks=0 ] ( 1 ) ar_tessellation_trimlod [ 0 locks=0 ] ( 1 ) ar_operator_graph_enable [ 0 locks=0 ] ( "on" ) ar_operator_graph [ 0 locks=0 ] ( "" ) ar_toon_id [ 0 locks=0 ] ( "" ) ar_attributes_detail [ 0 locks=0 ] ( * ) ar_attributes_primitive [ 0 locks=0 ] ( * ) ar_attributes_point [ 0 locks=0 ] ( * ) ar_attributes_vertex [ 0 locks=0 ] ( * ) ar_transform_type [ 0 locks=0 ] ( "rotate_about_center" ) ar_mb_xform_keys_override [ 0 locks=0 ] ( "off" ) ar_mb_xform_keys [ 0 locks=0 ] ( 2 ) ar_mb_dform_keys_override [ 0 locks=0 ] ( "off" ) ar_mb_dform_keys [ 0 locks=0 ] ( 2 ) ar_mb_velocity_enable [ 0 locks=0 ] ( [ ar_mb_velocity_enable 0 ] ) ar_mb_velocity_attribute [ 0 locks=0 ] ( v ) ar_mb_acceleration_enable [ 0 locks=0 ] ( "off" ) ar_mb_acceleration_attribute [ 0 locks=0 ] ( force ) ar_visibility_camera [ 0 locks=0 ] ( "on" ) ar_visibility_shadow [ 0 locks=0 ] ( "on" ) ar_visibility_diffuse_transmit [ 0 locks=0 ] ( "on" ) ar_visibility_specular_transmit [ 0 locks=0 ] ( "on" ) ar_visibility_diffuse_reflect [ 0 locks=0 ] ( "on" ) ar_visibility_specular_reflect [ 0 locks=0 ] ( "on" ) ar_visibility_volume [ 0 locks=0 ] ( "on" ) ar_receive_shadows [ 0 locks=0 ] ( "on" ) ar_self_shadows [ 0 locks=0 ] ( "on" ) ar_opaque [ 0 locks=0 ] ( "on" ) ar_matte [ 0 locks=0 ] ( [ ar_matte 0 ] ) ar_skip [ 0 locks=0 ] ( "off" ) ar_use_light_group [ 0 locks=0 ] ( "off" ) ar_light_group [ 0 locks=0 ] ( "" ) ar_use_shadow_group [ 0 locks=0 ] ( "off" ) ar_shadow_group [ 0 locks=0 ] ( "" ) ar_trace_sets [ 0 locks=0 ] ( "" ) ar_sss_setname [ 0 locks=0 ] ( "" ) ar_smoothing [ 0 locks=0 ] ( "on" ) ar_invert_normals [ 0 locks=0 ] ( "off" ) ar_sidedness_camera [ 0 locks=0 ] ( "on" ) ar_sidedness_shadow [ 0 locks=0 ] ( "on" ) ar_sidedness_diffuse_transmit [ 0 locks=0 ] ( "on" ) ar_sidedness_specular_transmit [ 0 locks=0 ] ( "on" ) ar_sidedness_diffuse_reflect [ 0 locks=0 ] ( "on" ) ar_sidedness_specular_reflect [ 0 locks=0 ] ( "on" ) ar_sidedness_volume [ 0 locks=0 ] ( "on" ) } 0707070000010000000006660000000000000000010000001440237341500003200000000125obj/grid_object1.userdata ___Version___19.5.493___toolcount___1 ___toolid___sop_grid0707070000010000000006660000000000000000010000001440237341500003400000000033obj/grid_object1/grid1.inittype = grid matchesdef = 1 0707070000010000000006660000000000000000010000001440237341500003300000000700obj/grid_object1/grid1.defsopflags sopflags = comment "" position 0 0 connectornextid 0 flags = lock off model off template off footprint off xray off bypass off display on render on highlight on unload off savedata off compress on colordefault on exposed on outputsNamed3 { } inputsNamed3 { } inputs { } stat { create 1678374307 modify 1678374424 author OEM_User@DESKTOP-FJNJNKH access 0777 } color UT_Color RGB 0.8 0.8 0.8 delscript "" exprlanguage hscript end 0707070000010000000006660000000000000000010000001440237341500003400000000550obj/grid_object1/grid1.parm{ version 0.8 type [ 0 locks=0 ] ( "poly" ) surftype [ 0 locks=0 ] ( "quads" ) orient [ 0 locks=0 ] ( "zx" ) size [ 0 locks=0 ] ( 10 10 ) t [ 0 locks=0 ] ( 0 0 0 ) r [ 0 locks=0 ] ( 0 0 0 ) rows [ 0 locks=0 ] ( 10 ) cols [ 0 locks=0 ] ( 10 ) orderu [ 0 locks=0 ] ( 4 ) orderv [ 0 locks=0 ] ( 4 ) interpu [ 0 locks=0 ] ( "on" ) interpv [ 0 locks=0 ] ( "on" ) } 0707070000010000000006660000000000000000010000001440237341500004000000000125obj/grid_object1/grid1.userdata ___Version___19.5.493___toolcount___1 ___toolid___sop_grid0707070000010000000006660000000000000000010000001440237341500002500000000002obj/grid_object1.net1 0707070000010000000006660000000000000000010000001440237341500002500000000032obj/box_object1.inittype = geo matchesdef = 0 0707070000010000000006660000000000000000010000001440237341500002400000001037obj/box_object1.defobjflags objflags = origin off pretransform UT_DMatrix4 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 comment "" position -3.3888 0.6589 connectornextid 0 flags = lock off model off template off footprint off xray off bypass off display on render off highlight off unload off savedata off compress on colordefault on exposed on selectable on outputsNamed3 { } inputsNamed3 { } inputs { } stat { create 1678374390 modify 1678374497 author OEM_User@DESKTOP-FJNJNKH access 0777 } color UT_Color RGB 0.8 0.8 0.8 delscript "" exprlanguage hscript end 0707070000010000000006660000000000000000010000001440237341500003500000214214obj/box_object1.spareparmdef group { name "stdswitcher4" label "Transform" parm { name "xOrd" baseparm label "Transform Order" joinnext export none } parm { name "rOrd" baseparm label "Rotate Order" nolabel export none } parm { name "t" baseparm label "Translate" export all } parm { name "r" baseparm label "Rotate" export all } parm { name "s" baseparm label "Scale" export none } parm { name "p" baseparm label "Pivot Translate" export none } parm { name "pr" baseparm label "Pivot Rotate" export none } parm { name "scale" baseparm label "Uniform Scale" export none } parm { name "pre_xform" baseparm label "Modify Pre-Transform" export none } parm { name "keeppos" baseparm label "Keep Position When Parenting" export none } parm { name "childcomp" baseparm label "Child Compensation" export none } parm { name "constraints_on" baseparm label "Enable Constraints" export none } parm { name "constraints_path" baseparm label "Constraints" export none } parm { name "lookatpath" baseparm label "Look At" invisible export none } parm { name "lookupobjpath" baseparm label "Look Up Object" invisible export none } parm { name "lookup" baseparm label "Look At Up Vector" invisible export none } parm { name "pathobjpath" baseparm label "Path Object" invisible export none } parm { name "roll" baseparm label "Roll" invisible export none } parm { name "pos" baseparm label "Position" invisible export none } parm { name "uparmtype" baseparm label "Parameterization" invisible export none } parm { name "pathorient" baseparm label "Orient Along Path" invisible export none } parm { name "up" baseparm label "Orient Up Vector" invisible export none } parm { name "bank" baseparm label "Auto-Bank factor" invisible export none } } group { name "stdswitcher4_1" label "Render" parm { name "shop_materialpath" baseparm label "Material" export none } parm { name "shop_materialopts" baseparm label "Options" invisible export none } parm { name "tdisplay" baseparm label "Display" joinnext export none } parm { name "display" baseparm label "Display" export none } parm { name "viewportlod" label "Display As" type ordinal default { "full" } help "Choose how the object's geometry should be rendered in the viewport" menu { "full" "Full Geometry" "points" "Point Cloud" "box" "Bounding Box" "centroid" "Centroid" "hidden" "Hidden" "subd" "Subdivision Surface / Curves" } parmtag { "spare_category" "Render" } } parm { name "vm_rendervisibility" label "Render Visibility" type string default { "*" } menureplace { "*" "Visible to all" "primary" "Visible only to primary rays" "primary|shadow" "Visible only to primary and shadow rays" "-primary" "Invisible to primary rays (Phantom)" "-diffuse" "Invisible to diffuse rays" "-diffuse&-reflect&-refract" "Invisible to secondary rays" "" "Invisible (Unrenderable)" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "rendervisibility" } parmtag { "spare_category" "Render" } } parm { name "vm_rendersubd" label "Render Polygons As Subdivision (Mantra)" type toggle default { "0" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "rendersubd" } parmtag { "spare_category" "Geometry" } } parm { name "vm_subdstyle" label "Subdivision Style" type string default { "mantra_catclark" } hidewhen "{ vm_rendersubd == 0 }" menu { "mantra_catclark" "Mantra Catmull-Clark" "osd_catclark" "OpenSubdiv Catmull-Clark" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "subdstyle" } parmtag { "spare_category" "Geometry" } } parm { name "vm_subdgroup" label "Subdivision Group" type string default { "" } hidewhen "{ vm_rendersubd == 0 }" parmtag { "mantra_class" "object" } parmtag { "mantra_name" "subdgroup" } parmtag { "spare_category" "Geometry" } } parm { name "vm_osd_quality" label "Open Subdiv Quality" type float default { "1" } hidewhen "{ vm_rendersubd == 0 vm_subdstyle != osd_catclark }" range { 0 10 } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "osd_quality" } parmtag { "spare_category" "Geometry" } } parm { name "vm_osd_vtxinterp" label "OSD Vtx Interp" type integer default { "2" } hidewhen "{ vm_rendersubd == 0 vm_subdstyle != osd_catclark }" menu { "0" "No vertex interpolation" "1" "Edges only" "2" "Edges and Corners" } range { 0 10 } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "osd_vtxinterp" } parmtag { "spare_category" "Geometry" } } parm { name "vm_osd_fvarinterp" label "OSD FVar Interp" type integer default { "4" } hidewhen "{ vm_rendersubd == 0 vm_subdstyle != osd_catclark }" menu { "0" "Smooth everywhere" "1" "Sharpen corners only" "2" "Sharpen edges and corners" "3" "Sharpen edges and propagated corners" "4" "Sharpen all boundaries" "5" "Bilinear interpolation" } range { 0 10 } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "osd_fvarinterp" } parmtag { "spare_category" "Geometry" } } group { name "folder0" label "Shading" parm { name "categories" label "Categories" type string default { "" } help "A list of tags which can be used to select the object" parmtag { "spare_category" "Shading" } } parm { name "reflectmask" label "Reflection Mask" type oplist default { "*" } help "Objects that will be reflected on this object." parmtag { "opexpand" "1" } parmtag { "opfilter" "!!OBJ/GEOMETRY!!" } parmtag { "oprelative" "/obj" } parmtag { "spare_category" "Shading" } } parm { name "refractmask" label "Refraction Mask" type oplist default { "*" } help "Objects that will be refracted on this object." parmtag { "opexpand" "1" } parmtag { "opfilter" "!!OBJ/GEOMETRY!!" } parmtag { "oprelative" "/obj" } parmtag { "spare_category" "Shading" } } parm { name "lightmask" label "Light Mask" type oplist default { "*" } help "Lights that illuminate this object." parmtag { "opexpand" "1" } parmtag { "opfilter" "!!OBJ/LIGHT!!" } parmtag { "oprelative" "/obj" } parmtag { "spare_category" "Shading" } } parm { name "lightcategories" label "Light Selection" type string default { "*" } parmtag { "spare_category" "Shading" } } parm { name "vm_lpetag" label "LPE Tag" type string default { "" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "lpetag" } parmtag { "spare_category" "Shading" } } parm { name "vm_volumefilter" label "Volume Filter" type string default { "box" } menu { "box" "Box Filter" "gaussian" "Gaussian" "bartlett" "Bartlett (triangle)" "catrom" "Catmull-Rom" "hanning" "Hanning" "blackman" "Blackman" "sinc" "Sinc (sharpening)" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "filter" } parmtag { "spare_category" "Shading" } } parm { name "vm_volumefilterwidth" label "Volume Filter Width" type float default { "1" } range { 0.001 5 } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "filterwidth" } parmtag { "spare_category" "Shading" } } parm { name "vm_matte" label "Matte shading" type toggle default { "0" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "matte" } parmtag { "spare_category" "Shading" } } parm { name "vm_rayshade" label "Raytrace Shading" type toggle default { "0" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "rayshade" } parmtag { "spare_category" "Shading" } } } group { name "folder0_1" label "Sampling" parm { name "geo_velocityblur" label "Geometry Velocity Blur" type ordinal default { "off" } disablewhen "{ allowmotionblur == 0 }" menu { "off" "No Velocity Blur" "on" "Velocity Blur" "accelblur" "Acceleration Blur" } } parm { name "geo_accelattribute" label "Acceleration Attribute" type string default { "accel" } hidewhen "{ geo_velocityblur != accelblur }" parmtag { "spare_category" "Sampling" } } } group { name "folder0_2" label "Dicing" parm { name "vm_shadingquality" label "Shading Quality" type float default { "1" } range { 0 10 } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "shadingquality" } parmtag { "spare_category" "Dicing" } } parm { name "vm_flatness" label "Dicing Flatness" type float default { "0.05" } range { 0 1 } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "flatness" } parmtag { "spare_category" "Dicing" } } parm { name "vm_raypredice" label "Ray Predicing" type integer default { "0" } menu { "0" "Disable Predicing" "1" "Full Predicing" "2" "Precompute Bounds" } range { 0 10 } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "raypredice" } parmtag { "spare_category" "Dicing" } } parm { name "vm_curvesurface" label "Shade Curves As Surfaces" type toggle default { "0" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "curvesurface" } parmtag { "spare_category" "Dicing" } } } group { name "folder0_3" label "Geometry" parm { name "vm_rmbackface" label "Backface Removal" type toggle default { "0" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "rmbackface" } parmtag { "spare_category" "Geometry" } } parm { name "shop_geometrypath" label "Procedural Shader" type oppath default { "" } parmtag { "opfilter" "!!SHOP/GEOMETRY!!" } parmtag { "oprelative" "." } parmtag { "spare_category" "Geometry" } } parm { name "vm_forcegeometry" label "Force Procedural Geometry Output" type toggle default { "1" } parmtag { "spare_category" "Geometry" } } parm { name "vm_rendersubdcurves" label "Render Polygon Curves As Subdivision (Mantra)" type toggle default { "0" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "rendersubdcurves" } parmtag { "spare_category" "Geometry" } } parm { name "vm_renderpoints" label "Render As Points (Mantra)" type integer default { "2" } menu { "0" "No Point Rendering" "1" "Render Only Points" "2" "Render Unconnected Points" } range { 0 10 } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "renderpoints" } parmtag { "spare_category" "Geometry" } } parm { name "vm_renderpointsas" label "Render Points As (Mantra)" type integer default { "0" } disablewhen "{ vm_renderpoints == 0 }" menu { "0" "Spheres" "1" "Circles" } range { 0 10 } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "renderpointsas" } parmtag { "spare_category" "Geometry" } } parm { name "vm_usenforpoints" label "Use N For Point Rendering" type toggle default { "0" } disablewhen "{ vm_renderpoints == 0 }" parmtag { "mantra_class" "object" } parmtag { "mantra_name" "usenforpoints" } parmtag { "spare_category" "Geometry" } } parm { name "vm_pointscale" label "Point Scale" type float default { "1" } disablewhen "{ vm_renderpoints == 0 }" range { 0! 10 } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "pointscale" } parmtag { "spare_category" "Geometry" } } parm { name "vm_pscalediameter" label "Treat Point Scale as Diameter Instead of Radius" type toggle default { "0" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "pscalediameter" } parmtag { "spare_category" "Geometry" } } parm { name "vm_metavolume" label "Metaballs as Volume" type toggle default { "0" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "metavolume" } parmtag { "spare_category" "Geometry" } } parm { name "vm_coving" label "Coving" type integer default { "1" } menu { "0" "Disable Coving" "1" "Coving for displacement/sub-d" "2" "Coving for all primitives" } range { 0 10 } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "coving" } parmtag { "spare_category" "Geometry" } } parm { name "vm_materialoverride" label "Material Override" type string default { "compact" } menu { "none" "Disabled" "full" "Evaluate for Each Primitve/Point" "compact" "Evaluate Once" } parmtag { "spare_category" "Geometry" } } parm { name "vm_overridedetail" label "Ignore Geometry Attribute Shaders" type toggle default { "0" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "overridedetail" } parmtag { "spare_category" "Geometry" } } parm { name "vm_procuseroottransform" label "Proc Use Root Transform" type toggle default { "1" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "procuseroottransform" } parmtag { "spare_category" "Geometry" } } } } group { name "stdswitcher4_2" label "Arnold" parm { name "shop_propertiespath" label "Default Properties" type oppath default { "" } help "Specifies a Property SHOP that is used to resolve rendering parameter values. At render time, this SHOP (if given) is used to resolve rendering parameter values first, before looking for then on the objects being rendered." range { 0 1 } parmtag { "opfilter" "!!SHOP/PROPERTIES!!" } parmtag { "oprelative" "." } parmtag { "spare_category" "Shaders" } } parm { name "ar_user_options" label "User Options" type string joinnext default { "" } help "This string is passed to AiNodeSetAttributes() ont the Arnold node. It can contain any number of parameter/value pairs separated by whitespace (spaces, tabs, newlines) as found in .ass files." disablewhen "{ ar_user_options_enable == 0 }" } parm { name "ar_user_options_enable" label "Enable" type toggle default { "0" } help "Overrides the value of any parameter of the Arnold node." } group { name "folder_subdivision" label "Subdivision" parm { name "ar_subdiv_type" label "Type" type string default { "none" } help "Subdivision algorithm. None ignores any subdivision and renders the mesh as it is. Linear subdivision puts vertices in the middle of each face. The Catmull-Clark algorithm is used to create smooth surfaces by recursive subdivision surface modeling. The resulting surface will always consist of a mesh of quadrilateral faces." menu { "none" "None" "catclark" "Catmull-Clark" "linear" "Linear" } range { 0 1 } parmtag { "spare_category" "Subdivision" } } parm { name "ar_subdiv_iterations" label "Iterations" type integer default { "1" } help "The number of iterations / levels of subdivision. With Catmull-Clark subdivision, increasing the number of iterations produces a smoother mesh." disablewhen "{ ar_subdiv_type == none }" range { 1! 10 } parmtag { "spare_category" "Subdivision" } } parm { name "ar_subdiv_adaptive_metric" label "Adaptive Metric" type string joinnext default { "auto" } help "The adaptive subdivision criterion. Auto subdiv will choose between the EDGELENGTH mode and the FLATNESS depending on the displacement property of the polymesh. This means that if there is a displacement it will use the EDGELENGTH algorithm. If there is not displacement (or it is ignored in the global options) it will use FLATNESS." disablewhen "{ ar_subdiv_type == none }" menu { "auto" "Auto" "edge_length" "Edge Length" "flatness" "Flatness" } parmtag { "spare_category" "Subdivision" } } parm { name "ar_subdiv_adaptive_error" label " Error" type float default { "0" } help "The \"adaptive error\" refers to the acceptable tessellation error as seen from the camera. If there's no displacement, then the error represents the distance from the subdivided mesh to the \"true\" or \"limit\" surface -- sort of a \"flatness\" heuristic. The smaller the error, the closer to the limit surface a mesh will be and the less inter-frame popping when the subdivision level jumps. If displacement is enabled, then the error represents the final size of the subdivided quads. A value of 0 disables adaptive subdivision." disablewhen "{ ar_subdiv_type == none }" range { 0! 10 } parmtag { "spare_category" "Subdivision" } } parm { name "ar_subdiv_adaptive_space" label "Adaptive Space" type string default { "raster" } help "The space in which the adaptive metric is evaluated." disablewhen "{ ar_subdiv_type == none }" menu { "raster" "Raster" "object" "Object" } parmtag { "spare_category" "Subdivision" } } parm { name "ar_subdiv_uv_smoothing" label "UV Smoothing" type string joinnext default { "pin_corners" } help "UV smoothing algorithm." disablewhen "{ ar_subdiv_type == none }" menu { "pin_corners" "Pin Corners" "pin_borders" "Pin Borders" "linear" "Linear" "smooth" "Smooth" } range { 0 1 } parmtag { "spare_category" "Subdivision" } } parm { name "ar_subdiv_smooth_derivs" label "Smooth Derivatives" type toggle default { "0" } help "This option makes it possible to remove the faceted appearance from anisotropic speculars. The object must have a valid UV map for this option to work and only works if you apply at least one subdivision level to the geometry." disablewhen "{ ar_subdiv_type == none }" range { 0 1 } parmtag { "spare_category" "Subdivision" } } parm { name "ar_merge_vertex_indices" label "Merge Vertex Indices" type toggle default { "1" } help "Enable merging of the indices and data of coincident and identical vertex attribute values (UVs, normals, vertex user data). This allows the proper interpolation of vertex attributes when subdividing, and yields more compact render scenes in memory and on disk, at the cost of a slower export." range { 0 1 } parmtag { "spare_category" "Subdivision" } } parm { name "ar_subdiv_frustum_ignore" label "Ignore Frustum Culling" type toggle default { "0" } help "Subdivision surfaces outside the view or dicing camera frustum will not be subdivided. This can be turned on globally by enabling subdiv_frustum_culling on the ROP and can be turned off for specific meshes by setting subdiv_frustum_ignore true." disablewhen "{ ar_subdiv_type == none }" parmtag { "spare_category" "Subdivision" } } } group { name "folder_subdivision_1" label "Displacement" parm { name "ar_disp_height" label "Height" type float default { "1" } range { 0 10 } parmtag { "spare_category" "Displacement" } } parm { name "ar_disp_zero_value" label "Zero Value" type float default { "0" } range { 0 1 } parmtag { "spare_category" "Displacement" } } parm { name "ar_disp_padding" label "Bounds Padding" type float default { "0" } range { 0 10 } parmtag { "spare_category" "Displacement" } } parm { name "ar_disp_autobump" label "Autobump" type toggle default { "0" } range { 0 1 } parmtag { "spare_category" "Displacement" } } groupcollapsible { name "folder_autobump" label "Autobump Visibility" parm { name "ar_autobump_visibility_camera" label "Camera" type toggle default { "1" } help "Toggle autobump for camera rays (i.e. primary or view rays)." disablewhen "{ ar_disp_autobump == 0 }" range { 0 1 } parmtag { "spare_category" "Displacement" } } parm { name "ar_autobump_visibility_shadow" label "Shadow" type toggle default { "0" } help "Toggle autobump for shadow rays fired in the direct lighting calculations." disablewhen "{ ar_disp_autobump == 0 }" range { 0 1 } parmtag { "spare_category" "Displacement" } } parm { name "ar_autobump_visibility_diffuse_transmit" label "Diffuse Transmission" type toggle default { "0" } help "Toggle autobump for indirect diffuse transmission rays." disablewhen "{ ar_disp_autobump == 0 }" range { 0 1 } parmtag { "spare_category" "Displacement" } } parm { name "ar_autobump_visibility_specular_transmit" label "Specular Transmission" type toggle default { "0" } help "Toggle autobump for indirect specular transmission rays." disablewhen "{ ar_disp_autobump == 0 }" range { 0 1 } parmtag { "spare_category" "Displacement" } } parm { name "ar_autobump_visibility_diffuse_reflect" label "Diffuse Reflection" type toggle default { "0" } help "Toggle autobump for indirect diffuse reflection rays." disablewhen "{ ar_disp_autobump == 0 }" range { 0 1 } parmtag { "spare_category" "Displacement" } } parm { name "ar_autobump_visibility_specular_reflect" label "Specular Reflection" type toggle default { "0" } help "Toggle autobump for indirect specular reflection rays." disablewhen "{ ar_disp_autobump == 0 }" range { 0 1 } parmtag { "spare_category" "Displacement" } } parm { name "ar_autobump_visibility_volume" label "Volume Scattering" type toggle default { "0" } help "Toggle autobump for indirect volume scattering rays." disablewhen "{ ar_disp_autobump == 0 }" range { 0 1 } parmtag { "spare_category" "Displacement" } } } } group { name "folder_subdivision_2" label "Shapes" parm { name "ar_min_pixel_width" label "Minimum Pixel Width" type float default { "0" } help "If this value is non-zero, points or curves with a small on-screen width will be automatically enlarged so that they are at least the specified size in pixels. The enlargement fraction is then used in the hair shader to adjust the opacity so that the visible thickness of the hair remains the same. For a given number of AA samples, this makes it a lot easier to antialias fine hair, at the expense of render time (because of the additional transparency/depth complexity). Good values are in the range 0.2 to 0.7. Values closer to 0 are faster to render but need more AA samples. So if your scene already uses very high AA settings, you should use a low value like 0.1. For best results, you may need to increase the auto-transparency depth, and/or lower the auto-transparency threshold, but watch the effect on render times. Note that this parameter currently works with the ribbon mode only." range { 0 10 } parmtag { "spare_category" "Curves" } } parm { name "ar_radius" label "Default Radius" type float default { "0.05" } help "Sets the default rendered radius of points or thickness of curves. This property can be overridden per point with the \"ar_radius\", \"pscale\" or \"width\" (curves only) attributes." range { 0 10 } parmtag { "units" "m1" } } group { name "folder_points" label "Points" parm { name "ar_mode" label "Mode" type ordinal default { "sphere" } help "Rendering mode for points or particles. Can be spheres, or camera-facing disks or quads." menu { "disk" "Disk" "sphere" "Sphere" "quad" "Quad" } range { 0 1 } } parm { name "ar_point_scale" label "Point Scale" type float default { "1" } help "A global scale factor applied to points." range { 0! 10 } } parm { name "ar_aspect" label "Aspect" type log default { "1" } help "The aspect ratio for quads. This property can be overrriden per point by setting the \"ar_aspect\" or \"spritescale\" attributes on the geometry." disablewhen "{ ar_mode != quad }" range { 0.1 10 } } parm { name "ar_rotation" label "Rotation" type angle default { "0" } help "The rotation angle in degrees for quads. This property can be overrriden per point by setting the \"ar_rotation\" or the \"spriterot\" attributes on the geometry." disablewhen "{ ar_mode != quad }" range { -180 180 } } } group { name "folder_points_1" label "Curves" parm { name "ar_curves_basis" label "Basis" type string default { "auto" } help "The curves basis to interpret the knots of the input curves or open polygons. When set to \"Automatic\", the basis will attempt to match the closest equivalent in Arnold, ie. linear for open polygons, Bezier for Bezier curves and B-spline for NURBS." menu { "bezier" "Bezier" "b-spline" "B-Spline" "catmull-rom" "Catmull-Rom" "linear" "Linear" "auto" "Automatic" } range { 0 1 } parmtag { "spare_category" "Curves" } } parm { name "ar_curves_mode" label "Mode" type string default { "ribbon" } help "- Ribbon: This mode is recommended for fine geometry such as realistic hair, fur or fields of grass. These curves are rendered as camera-facing flat ribbons. For secondary and shadow rays, they face the incoming ray direction. This mode doesn't look so good for very wide hairs or dramatic zoom-ins because of the flat appearance. This mode works best with a proper hair shader (perhaps based on a Kay-Kajiya or Marschner specular model).\\n\\n- Thick: This mode resembles spaghetti. It has a circular cross section, and a normal vector that varies across the width of the hair. Thick hairs look great when zoomed in, and are specially useful for effects work, but their varying normals make them more difficult to antialias when they are small. You can use any shader with this rendering mode, including lambert, phong, etc.\\n\\n- Oriented: This mode is similar to the ribbons mode, but you can set the ribbon orientation for each knot with an \"ar_orientations\" vector attribute representing the direction of the normal of the ribbon. This mode can be useful to render grass strands for example." menu { "ribbon" "Ribbon" "thick" "Thick" "oriented" "Oriented " } range { 0 1 } parmtag { "spare_category" "Curves" } } } group { name "folder_points_2" label "Volumes" parm { name "ar_step_size" label "Volume Step Size" type float default { "0" } help "When ar_step_size is set to a value other than zero, then points rendered as spheres, particles and polymeshes will be rendered as volumes." range { 0 1 } } parm { name "ar_volume_padding" label "Volume Padding" type float default { "0" } help "When rendering particles or polymeshes as volumes (when ar_step_size is non-zero), ar_volume_padding will provide extra the volume padding specified for displacement requirements" disablewhen "{ ar_step_size == 0 }" range { 0 10 } } parm { name "label_volume" label "Label" type label nolabel default { "" } } parm { name "label_volume2" label "Label" type label nolabel default { "Points and polymeshes are rendered as volumes if Step Size > 0" } } } group { name "folder_points_3" label " VDB " parm { name "ar_vdb_file_enable" label "Export VDB File" type toggle nolabel joinnext default { "0" } help "Export the VDB primitives as a VDB file and reference the file in the Arnold volume." range { 0 1 } } parm { name "ar_vdb_file" label "Save to File" type file default { "$HIP/`pythonexprs(\"hou.pwd().path()[1:].replace('/', '_')\")`.$F4.vdb" } help "The OpenVDB file name that the VDB primitves will be written to, and that will be referenced by the Arnold volume instead of attaching the volume data." disablewhen "{ ar_vdb_file_enable == 0 }" range { 0 1 } parmtag { "filechooser_pattern" "*.vdb" } } parm { name "ar_grids" label "Export Grids" type string default { "*" } help "The VDB grids to export and make available in the volume shading context." menutoggle { [ "import htoa.properties" ] [ "return htoa.properties.vdbGridMenu()" ] language python } range { 0 1 } parmtag { "script_callback" "__import__('htoa').properties.vdbAutoStepSizeCallback()" } parmtag { "script_callback_language" "python" } } parm { name "ar_velocity_grids" label "Velocity Grids" type string default { "*" } help "Select 1 vector or 3 float grids representing velocity for motion blur." menutoggle { [ "import htoa.properties" ] [ "return htoa.properties.vdbGridMenu()" ] language python } range { 0 1 } } parm { name "ar_velocity_scale" label "Velocity Scale" type log default { "1" } help "Scale the velocities by this factor." disablewhen "{ ar_velocity_grids == \"\" }" range { 0.1 10 } } parm { name "ar_velocity_threshold" label "Velocity Threshold" type log default { "0.001" } help "Controls filtering of noisy velocities. The default value 0.001 should have little to no visual impact, setting it to zero disables filtering entirely." disablewhen "{ ar_velocity_grids == \"\" }" range { 0! 1! } } parm { name "ar_padding" label "Bounds Padding" type float default { "0" } help "Extra padding for the volume bounds" range { 0 10 } } parm { name "ar_step_size_type" label "Volume Step" type ordinal joinnext default { "0" } help "When set to auto, the step size is automatically determined by the volume plugin, yielding the minimum voxel size." menu { "auto" "Automatic " "custom" "Custom" } range { 0 1 } parmtag { "script_callback" "__import__('htoa').properties.vdbAutoStepSizeCallback()" } parmtag { "script_callback_language" "python" } } parm { name "ar_vdb_step_size" label " Step Size" type float default { "0.02" } help "The ray marching step size. When the step type is auto, this indicates the computed step size, the minimum voxel size." disablewhen "{ ar_step_size_type == auto }" range { 0! 10 } } parm { name "ar_step_scale" label "Step Scale" type log default { "1" } help "Multiply the step size by this factor, including when it's automatically detected." range { 0.1! 10 } } parm { name "ar_compress" label "Compress" type toggle invisible default { "1" } help "Optimize voxel storage to reduce memory usage." range { 0 1 } } } group { name "folder_points_4" label "Tessellation" parm { name "ar_tessellation_enable" label "Tessellate Primitives" type toggle default { "1" } help "Tessellate Houdini primitives such as NURBS, Bezier meshes, circles, tubes or spheres prior to sending to Arnold." disablewhen "{ ar_tessellation_use_rop == 1 }" range { 0 1 } parmtag { "spare_category" "Tessellation" } } parm { name "ar_tessellation_style" label "Tessellation Style" type string invisible default { "lod" } help "Specifies the conversion style for the geometry. The default is\"Level of Detail\". Can be one of the following:\\n- Level of Detail: Tessellate geometry using the level of detail settings.\\n- Divisions: Tessellate geometry based on the number of divisions settings." disablewhen "{ ar_tessellation_enable == 0 }" menu { "lod" "Level of Detail" "div" "Divisions" } range { 0 1 } parmtag { "spare_category" "Tessellation" } } parm { name "ar_tessellation_ulod" label "U Level of Detail" type float default { "1" } help "Specifies the level of detail for U subdivisions of the surface being converted. Applicable only when conversion method is set to Level of Detail. Defaults to 1.0." disablewhen "{ ar_tessellation_enable == 0 }" hidewhen "{ ar_tessellation_style != lod }" range { 0! 10 } parmtag { "spare_category" "Tessellation" } } parm { name "ar_tessellation_vlod" label "V Level of Detail" type float default { "1" } help "Specifies the level of detail for V subdivisions of the surface being converted. Applicable only when conversion method is set to Level of Detail. Defaults to 1.0." disablewhen "{ ar_tessellation_enable == 0 }" hidewhen "{ ar_tessellation_style != lod }" range { 0! 10 } parmtag { "spare_category" "Tessellation" } } parm { name "ar_tessellation_trimlod" label "Trim Level of Detail" type float default { "1" } help "Specifies the level of detail for trim curves of the surface being converted. Applicable only when conversion method is set to Level of Detail. Defaults to 1.0." disablewhen "{ ar_tessellation_enable == 0 }" hidewhen "{ ar_tessellation_style != lod }" range { 0! 10 } parmtag { "spare_category" "Tessellation" } } } group { name "folder_points_5" label "Procedurals" parm { name "ar_operator_graph_enable" label "Enable Operator Graph" type toggle nolabel joinnext default { "1" } help "Enables the operator graph on procedurals in this OBJ node." range { 0 1 } } parm { name "ar_operator_graph" label "Operator Graph" type oppath default { "" } help "Specify an operator ROP graph to connect to procedurals created by this OBJ node." disablewhen "{ ar_operator_graph_enable == 0 }" parmtag { "opfilter" "!!ROP!!" } parmtag { "oprelative" "." } } } } group { name "folder_subdivision_3" label "Attributes" parm { name "ar_toon_id" label "Toon ID Group" type string default { "" } help "Objects in the same toon ID group will be rendered with the same silhouette, if the user_id attribute is set on the toon shader" } parm { name "ar_attributes_detail" label "Detail Attributes" type string default { "*" } help "The list of details attributes to be exported as user data for Arnold. As user data is costly in memory, nothing is exported by default. If this field contains a wildcard character (*), all available attributes will be exported." menutoggle { [ "__import__('htoa').properties.detailAttributeMenu()" ] language python } range { 0 1 } parmtag { "spare_category" "Attributes" } } parm { name "ar_attributes_primitive" label "Primitive Attributes" type string default { "*" } help "The list of primitive attributes to be exported as user data for Arnold. As user data is costly in memory, nothing is exported by default. If this field contains a wildcard character (*), all available attributes will be exported." menutoggle { [ "__import__('htoa').properties.primitiveAttributeMenu()" ] language python } range { 0 1 } parmtag { "spare_category" "Attributes" } } parm { name "ar_attributes_point" label "Point Attributes" type string default { "*" } help "The list of point attributes to be exported as user data for Arnold. As user data is costly in memory, nothing is exported by default. If this field contains a wildcard character (*), all available attributes will be exported." menutoggle { [ "__import__('htoa').properties.pointAttributeMenu()" ] language python } range { 0 1 } parmtag { "spare_category" "Attributes" } } parm { name "ar_attributes_vertex" label "Vertex Attributes" type string default { "*" } help "The list of vertex attributes to be exported as user data for Arnold. As user data is costly in memory, nothing is exported by default. If this field contains a wildcard character (*), all available attributes will be exported." menutoggle { [ "__import__('htoa').properties.vertexAttributeMenu()" ] language python } range { 0 1 } parmtag { "spare_category" "Attributes" } } } group { name "folder_subdivision_4" label "Motion Blur" parm { name "ar_transform_type" label "Transform Type" type ordinal default { "2" } help "The type of motion for the transformation of the object, as a hint for the matrix interpolation for transformation motion blur." menu { "linear" "Linear" "rotate_about_origin" "Rotate About Origin" "rotate_about_center" "Rotate About Center" } range { 0 2 } parmtag { "spare_category" "Motion Blur" } } parm { name "ar_mb_xform_keys_override" label "Transform Keys Override" type toggle nolabel joinnext default { "0" } help "Override the ROP settings for Transform Keys." range { 0 1 } parmtag { "spare_category" "Motion Blur" } } parm { name "ar_mb_xform_keys" label "Transform Keys" type integer default { "2" } help "Number of motion keys for matrix transformation. Transformation motion blur is calculated based on a linear interpolation of an object transform matrix, between successive motion keys. Increasing this value will add extra steps, which can improve the blurred result, especially for rotating objects. The default is 2, which results in straight lines of blur between shutter start and shutter end." disablewhen "{ ar_mb_xform_keys_override == 0 }" range { 1! 20 } parmtag { "spare_category" "Motion Blur" } } parm { name "ar_mb_dform_keys_override" label "Deform Keys Override" type toggle nolabel joinnext default { "0" } help "Override the ROP settings for Transform Keys." range { 0 1 } parmtag { "spare_category" "Motion Blur" } } parm { name "ar_mb_dform_keys" label "Deform Keys" type integer default { "2" } help "Number of motion keys for object points. Just like with transformation motion keys, increasing this value allows curved motion paths to be rendered more accurately, at the expense of using more memory." disablewhen "{ ar_mb_dform_keys_override == 0 } { ar_mb_velocity_enable == 1 ar_mb_acceleration_enable != 1 }" range { 1! 20 } parmtag { "spare_category" "Motion Blur" } } parm { name "ar_mb_velocity_enable" label "Velocity Blur Enable" type toggle nolabel joinnext default { "0" } help "Deformation blur will be computed from the \"v\" point attribute." range { 0 1 } parmtag { "spare_category" "Motion Blur" } } parm { name "ar_mb_velocity_attribute" label "Velocity Blur" type string default { "v" } help "The velocity point attribute to use for velocity blur. The Houdini convention is 'v'." disablewhen "{ ar_mb_velocity_enable == 0 }" menureplace { [ "geometry = hou.pwd().renderNode().geometry()" ] [ "if not geometry:" ] [ " return []" ] [ "menu_items = []" ] [ "for attr in geometry.pointAttribs():" ] [ " if not attr.name() in ('P', 'Pw'):" ] [ " menu_items += [attr.name(), '%s\\t %s[%i]' % (attr.name(), attr.dataType().name().lower(), attr.size())]" ] [ "return menu_items" ] language python } range { 0 1 } } parm { name "ar_mb_acceleration_enable" label "Acceleration Blur Enable" type toggle nolabel joinnext default { "0" } disablewhen "{ ar_mb_velocity_enable == 0 }" range { 0 1 } } parm { name "ar_mb_acceleration_attribute" label "Acceleration Blur" type string default { "force" } help "The acceleration point attribute to use for acceleration blur. The Houdini convention is 'force' or 'accel'. If you use use 'force' ensure you divide by the mass." disablewhen "{ ar_mb_velocity_enable == 0 } { ar_mb_acceleration_enable == 0 }" menureplace { [ "geometry = hou.pwd().renderNode().geometry()" ] [ "if not geometry:" ] [ " return []" ] [ "menu_items = []" ] [ "for attr in geometry.pointAttribs():" ] [ " if not attr.name() in ('P', 'Pw'):" ] [ " menu_items += [attr.name(), '%s\\t %s[%i]' % (attr.name(), attr.dataType().name().lower(), attr.size())]" ] [ "return menu_items" ] language python } range { 0 1 } } } group { name "folder_subdivision_5" label "Visibility" parm { name "ar_visibility_camera" label "Visible to Camera Rays" type toggle default { "1" } help "Toggle object visibility for camera rays (i.e. primary or view rays)." range { 0 1 } parmtag { "spare_category" "Visibility" } } parm { name "ar_visibility_shadow" label "Visible to Shadow Rays" type toggle default { "1" } help "Toggle object visibility for shadow rays fired in the direct lighting calculations." range { 0 1 } parmtag { "spare_category" "Visibility" } } parm { name "ar_visibility_diffuse_transmit" label "Visible to Diffuse Transmission Rays" type toggle default { "1" } help "Toggle object visibility for indirect diffuse transmission rays." range { 0 1 } parmtag { "spare_category" "Visibility" } } parm { name "ar_visibility_specular_transmit" label "Visible to Specular Transmission Rays" type toggle default { "1" } help "Toggle object visibility for indirect specular transmission rays." range { 0 1 } parmtag { "spare_category" "Visibility" } } parm { name "ar_visibility_diffuse_reflect" label "Visible to Diffuse Reflection Rays" type toggle default { "1" } help "Toggle object visibility for indirect diffuse reflection rays." range { 0 1 } parmtag { "spare_category" "Visibility" } } parm { name "ar_visibility_specular_reflect" label "Visible to Specular Reflection Rays" type toggle default { "1" } help "Toggle object visibility for indirect specular reflection rays." range { 0 1 } parmtag { "spare_category" "Visibility" } } parm { name "ar_visibility_volume" label "Visible to Volume Scattering Rays" type toggle default { "1" } help "Toggle object visibility for indirect volume scattering rays." range { 0 1 } parmtag { "spare_category" "Visibility" } } parm { name "ar_receive_shadows" label "Receive Shadows" type toggle default { "1" } help "Enable/disable received shadows over the object." range { 0 1 } parmtag { "spare_category" "Visibility" } } parm { name "ar_self_shadows" label "Self Shadows" type toggle default { "1" } help "Enable/disable self-shadowing over the object." disablewhen "{ ar_receive_shadows == 0 }" range { 0 1 } parmtag { "spare_category" "Visibility" } } parm { name "ar_opaque" label "Opaque" type toggle default { "1" } help "By default, Arnold will assume that objects are opaque, which lets the renderer take certain shortcuts and optimizations for maximum ray tracing speed. When this option is unchecked, the object is assumed as \"possibly transparent\", and Arnold will perform extra computations to support transparency and transparent shadows, according to the shader's opacity settings." range { 0 1 } parmtag { "spare_category" "Visibility" } } parm { name "ar_matte" label "Matte" type toggle default { "0" } help "Output black and zero alpha for camera rays to create a holdout." range { 0 1 } parmtag { "spare_category" "Visibility" } } parm { name "ar_skip" label "Skip" type toggle default { "0" } help "Do not output this object regardless of it being forced or not." range { 0 1 } parmtag { "spare_category" "Visibility" } } parm { name "ar_use_light_group" label "Use Light Group" type toggle invisible nolabel joinnext default { "0" } range { 0 1 } } parm { name "ar_light_group" label "Light Group" type oplist invisible default { "" } disablewhen "{ ar_use_light_group == 0 }" range { 0 1 } parmtag { "opfilter" "!!OBJ/LIGHT!!" } parmtag { "oprelative" "/" } } parm { name "ar_use_shadow_group" label "Use Shadow Group" type toggle invisible nolabel joinnext default { "0" } range { 0 1 } } parm { name "ar_shadow_group" label "Shadow Group" type oplist invisible default { "" } disablewhen "{ ar_use_shadow_group == 0 }" range { 0 1 } parmtag { "opfilter" "!!OBJ/LIGHT!!" } parmtag { "oprelative" "/" } } parm { name "ar_trace_sets" label "Trace Sets" type string default { "" } menutoggle { [ "__import__('htoa.properties').properties.tracesetMenu()" ] language python } range { 0 1 } } parm { name "ar_sss_setname" label "SSS Set" type string default { "" } help "Use this parameter to tag multiple objects as belonging to the same SSS set so that illumination will blur across object boundaries. A common use case might be blurring between teeth and gum geometry. This feature is only available when using raytraced SSS." menureplace { [ "__import__('htoa.properties').properties.sssMenu()" ] language python } range { 0 1 } } } group { name "folder_subdivision_6" label "Normals" parm { name "ar_smoothing" label "Smoothing" type toggle default { "1" } help "Smooth/Flat normals." range { 0 1 } parmtag { "spare_category" "Render" } } parm { name "ar_invert_normals" label "Invert Normals" type toggle default { "0" } help "Invert normals" range { 0 1 } parmtag { "spare_category" "Render" } } parm { name "ar_sidedness_camera" label "Double-sided for Camera Rays" type toggle default { "1" } help "Toggle object double-sidedness for camera rays (i.e. primary or view rays)." range { 0 1 } parmtag { "spare_category" "Sidedness" } } parm { name "ar_sidedness_shadow" label "Double-sided for Shadow Rays" type toggle default { "1" } help "Toggle object double-sidedness for shadow rays fired in the direct lighting calculations." range { 0 1 } parmtag { "spare_category" "Sidedness" } } parm { name "ar_sidedness_diffuse_transmit" label "Double-sided for Diffuse Transmission Rays" type toggle default { "1" } help "Toggle object double-sidedness for indirect diffuse transmission rays." range { 0 1 } parmtag { "spare_category" "Sidedness" } } parm { name "ar_sidedness_specular_transmit" label "Double-sided for Specular Transmission Rays" type toggle default { "1" } help "Toggle object double-sidedness for indirect specular transmission rays." range { 0 1 } parmtag { "spare_category" "Sidedness" } } parm { name "ar_sidedness_diffuse_reflect" label "Double-sided for Diffuse Reflection Rays" type toggle default { "1" } help "Toggle object double-sidedness for indirect diffuse reflection rays." range { 0 1 } parmtag { "spare_category" "Sidedness" } } parm { name "ar_sidedness_specular_reflect" label "Double-sided for Specular Reflection Rays" type toggle default { "1" } help "Toggle object double-sidedness for indirect specular reflection rays." range { 0 1 } parmtag { "spare_category" "Sidedness" } } parm { name "ar_sidedness_volume" label "Double-sided for Volume Scattering Rays" type toggle default { "1" } help "Toggle object double-sidedness for indirect volume scattering rays." range { 0 1 } parmtag { "spare_category" "Sidedness" } } } } group { name "stdswitcher4_3" label "Misc" parm { name "use_dcolor" baseparm label "Set Wireframe Color" export none } parm { name "dcolor" baseparm label "Wireframe Color" export none } parm { name "picking" baseparm label "Viewport Selecting Enabled" export none } parm { name "pickscript" baseparm label "Select Script" export none } parm { name "caching" baseparm label "Cache Object Transform" export none } parm { name "vport_shadeopen" baseparm label "Shade Open Curves In Viewport" export none } parm { name "vport_displayassubdiv" baseparm label "Display as Subdivision in Viewport" invisible export none } parm { name "vport_onionskin" baseparm label "Onion Skinning" export none } } 0707070000010000000006660000000000000000010000001440237341500002400000001162obj/box_object1.chn{ channel ar_matte { lefttype = extend righttype = extend flags = 0 segment { options = { untie iv ov is os ia oa } length = 0 expr = ch(\"vm_matte\") } } channel ar_mb_velocity_enable { lefttype = extend righttype = extend flags = 0 segment { options = { untie iv ov is os ia oa } length = 0 expr = ch(\"geo_velocityblur\") } } channel ar_point_scale { lefttype = extend righttype = extend default = 1 flags = 0 segment { options = { untie iv ov is os ia oa } length = 0 expr = ch(\"vm_pointscale\") } } } 0707070000010000000006660000000000000000010000001440237341500002500000015753obj/box_object1.parm{ version 0.8 stdswitcher [ 0 locks=0 ] ( 0 0 0 ) xOrd [ 0 locks=0 ] ( "srt" ) rOrd [ 0 locks=0 ] ( "xyz" ) t [ 0 locks=0 ] ( -0.025437831878662109 0.074771881103515625 -0.035613059997558594 ) r [ 0 locks=0 ] ( 0 0 0 ) s [ 0 locks=0 ] ( 1 1 1 ) p [ 0 locks=0 ] ( 0 0 0 ) pr [ 0 locks=0 ] ( 0 0 0 ) scale [ 0 locks=0 ] ( 1 ) pre_xform [ 0 locks=0 ] ( 0 ) keeppos [ 0 locks=0 ] ( "off" ) childcomp [ 0 locks=0 ] ( "off" ) constraints_on [ 0 locks=0 ] ( "off" ) constraints_path [ 0 locks=0 ] ( "" ) lookatpath [ 0 locks=0 ] ( "" ) lookupobjpath [ 0 locks=0 ] ( "" ) lookup [ 0 locks=0 ] ( on ) pathobjpath [ 0 locks=0 ] ( "" ) roll [ 0 locks=0 ] ( 0 ) pos [ 0 locks=0 ] ( 0 ) uparmtype [ 0 locks=0 ] ( "arc" ) pathorient [ 0 locks=0 ] ( 1 ) up [ 0 locks=0 ] ( 0 1 0 ) bank [ 0 locks=0 ] ( 0 ) shop_materialpath [ 0 locks=0 ] ( /mat/arnold_materialbuilder1 ) shop_materialopts [ 0 locks=0 ] ( 0 ) tdisplay [ 0 locks=0 ] ( "off" ) display [ 0 locks=0 ] ( 1 ) use_dcolor [ 0 locks=0 ] ( "off" ) dcolor [ 0 locks=0 ] ( 1 1 1 ) picking [ 0 locks=0 ] ( "on" ) pickscript [ 0 locks=0 ] ( "" ) caching [ 0 locks=0 ] ( "on" ) vport_shadeopen [ 0 locks=0 ] ( "off" ) vport_displayassubdiv [ 0 locks=0 ] ( "off" ) vport_onionskin [ 0 locks=0 ] ( "off" ) stdswitcher4 [ 0 locks=0 ] ( 1 1 1 1 ) viewportlod [ 0 locks=0 ] ( "full" ) vm_rendervisibility [ 0 locks=0 ] ( * ) vm_rendersubd [ 0 locks=0 ] ( "off" ) vm_subdstyle [ 0 locks=0 ] ( mantra_catclark ) vm_subdgroup [ 0 locks=0 ] ( "" ) vm_osd_quality [ 0 locks=0 ] ( 1 ) vm_osd_vtxinterp [ 0 locks=0 ] ( 2 ) vm_osd_fvarinterp [ 0 locks=0 ] ( 4 ) folder0 [ 0 locks=0 ] ( 0 0 0 0 ) categories [ 0 locks=0 ] ( "" ) reflectmask [ 0 locks=0 ] ( * ) refractmask [ 0 locks=0 ] ( * ) lightmask [ 0 locks=0 ] ( * ) lightcategories [ 0 locks=0 ] ( * ) vm_lpetag [ 0 locks=0 ] ( "" ) vm_volumefilter [ 0 locks=0 ] ( box ) vm_volumefilterwidth [ 0 locks=0 ] ( 1 ) vm_matte [ 0 locks=0 ] ( "off" ) vm_rayshade [ 0 locks=0 ] ( "off" ) geo_velocityblur [ 0 locks=0 ] ( "off" ) geo_accelattribute [ 0 locks=0 ] ( accel ) vm_shadingquality [ 0 locks=0 ] ( 1 ) vm_flatness [ 0 locks=0 ] ( 0.050000000000000003 ) vm_raypredice [ 0 locks=0 ] ( 0 ) vm_curvesurface [ 0 locks=0 ] ( "off" ) vm_rmbackface [ 0 locks=0 ] ( "off" ) shop_geometrypath [ 0 locks=0 ] ( "" ) vm_forcegeometry [ 0 locks=0 ] ( "on" ) vm_rendersubdcurves [ 0 locks=0 ] ( "off" ) vm_renderpoints [ 0 locks=0 ] ( 2 ) vm_renderpointsas [ 0 locks=0 ] ( 0 ) vm_usenforpoints [ 0 locks=0 ] ( "off" ) vm_pointscale [ 0 locks=0 ] ( 1 ) vm_pscalediameter [ 0 locks=0 ] ( "off" ) vm_metavolume [ 0 locks=0 ] ( "off" ) vm_coving [ 0 locks=0 ] ( 1 ) vm_materialoverride [ 0 locks=0 ] ( compact ) vm_overridedetail [ 0 locks=0 ] ( "off" ) vm_procuseroottransform [ 0 locks=0 ] ( "on" ) shop_propertiespath [ 0 locks=0 ] ( "" ) ar_user_options [ 0 locks=0 ] ( "" ) ar_user_options_enable [ 0 locks=0 ] ( "off" ) folder_subdivision [ 0 locks=0 ] ( 0 0 0 0 0 0 0 ) ar_subdiv_type [ 0 locks=0 ] ( none ) ar_subdiv_iterations [ 0 locks=0 ] ( 1 ) ar_subdiv_adaptive_metric [ 0 locks=0 ] ( auto ) ar_subdiv_adaptive_error [ 0 locks=0 ] ( 0 ) ar_subdiv_adaptive_space [ 0 locks=0 ] ( raster ) ar_subdiv_uv_smoothing [ 0 locks=0 ] ( pin_corners ) ar_subdiv_smooth_derivs [ 0 locks=0 ] ( "off" ) ar_merge_vertex_indices [ 0 locks=0 ] ( "on" ) ar_subdiv_frustum_ignore [ 0 locks=0 ] ( "off" ) ar_disp_height [ 0 locks=0 ] ( 1 ) ar_disp_zero_value [ 0 locks=0 ] ( 0 ) ar_disp_padding [ 0 locks=0 ] ( 0 ) ar_disp_autobump [ 0 locks=0 ] ( "off" ) folder_autobump [ 0 locks=0 ] ( 0 ) ar_autobump_visibility_camera [ 0 locks=0 ] ( "on" ) ar_autobump_visibility_shadow [ 0 locks=0 ] ( "off" ) ar_autobump_visibility_diffuse_transmit [ 0 locks=0 ] ( "off" ) ar_autobump_visibility_specular_transmit [ 0 locks=0 ] ( "off" ) ar_autobump_visibility_diffuse_reflect [ 0 locks=0 ] ( "off" ) ar_autobump_visibility_specular_reflect [ 0 locks=0 ] ( "off" ) ar_autobump_visibility_volume [ 0 locks=0 ] ( "off" ) ar_min_pixel_width [ 0 locks=0 ] ( 0 ) ar_radius [ 0 locks=0 ] ( 0.050000000000000003 ) folder_points [ 0 locks=0 ] ( 0 0 0 0 0 0 ) ar_mode [ 0 locks=0 ] ( "sphere" ) ar_point_scale [ 0 locks=0 ] ( [ ar_point_scale 1 ] ) ar_aspect [ 0 locks=0 ] ( 1 ) ar_rotation [ 0 locks=0 ] ( 0 ) ar_curves_basis [ 0 locks=0 ] ( auto ) ar_curves_mode [ 0 locks=0 ] ( ribbon ) ar_step_size [ 0 locks=0 ] ( 0 ) ar_volume_padding [ 0 locks=0 ] ( 0 ) label_volume [ 0 locks=0 ] ( "" ) label_volume2 [ 0 locks=0 ] ( "Points and polymeshes are rendered as volumes if Step Size > 0" ) ar_vdb_file_enable [ 0 locks=0 ] ( "off" ) ar_vdb_file [ 0 locks=0 ] ( "$HIP/`pythonexprs(\"hou.pwd().path()[1:].replace('/', '_')\")`.$F4.vdb" ) ar_grids [ 0 locks=0 ] ( * ) ar_velocity_grids [ 0 locks=0 ] ( * ) ar_velocity_scale [ 0 locks=0 ] ( 1 ) ar_velocity_threshold [ 0 locks=0 ] ( 0.001 ) ar_padding [ 0 locks=0 ] ( 0 ) ar_step_size_type [ 0 locks=0 ] ( "auto" ) ar_vdb_step_size [ 0 locks=0 ] ( 0.02 ) ar_step_scale [ 0 locks=0 ] ( 1 ) ar_compress [ 0 locks=0 ] ( "on" ) ar_tessellation_enable [ 0 locks=0 ] ( "on" ) ar_tessellation_style [ 0 locks=0 ] ( lod ) ar_tessellation_ulod [ 0 locks=0 ] ( 1 ) ar_tessellation_vlod [ 0 locks=0 ] ( 1 ) ar_tessellation_trimlod [ 0 locks=0 ] ( 1 ) ar_operator_graph_enable [ 0 locks=0 ] ( "on" ) ar_operator_graph [ 0 locks=0 ] ( "" ) ar_toon_id [ 0 locks=0 ] ( "" ) ar_attributes_detail [ 0 locks=0 ] ( * ) ar_attributes_primitive [ 0 locks=0 ] ( * ) ar_attributes_point [ 0 locks=0 ] ( * ) ar_attributes_vertex [ 0 locks=0 ] ( * ) ar_transform_type [ 0 locks=0 ] ( "rotate_about_center" ) ar_mb_xform_keys_override [ 0 locks=0 ] ( "off" ) ar_mb_xform_keys [ 0 locks=0 ] ( 2 ) ar_mb_dform_keys_override [ 0 locks=0 ] ( "off" ) ar_mb_dform_keys [ 0 locks=0 ] ( 2 ) ar_mb_velocity_enable [ 0 locks=0 ] ( [ ar_mb_velocity_enable 0 ] ) ar_mb_velocity_attribute [ 0 locks=0 ] ( v ) ar_mb_acceleration_enable [ 0 locks=0 ] ( "off" ) ar_mb_acceleration_attribute [ 0 locks=0 ] ( force ) ar_visibility_camera [ 0 locks=0 ] ( "on" ) ar_visibility_shadow [ 0 locks=0 ] ( "on" ) ar_visibility_diffuse_transmit [ 0 locks=0 ] ( "on" ) ar_visibility_specular_transmit [ 0 locks=0 ] ( "on" ) ar_visibility_diffuse_reflect [ 0 locks=0 ] ( "on" ) ar_visibility_specular_reflect [ 0 locks=0 ] ( "on" ) ar_visibility_volume [ 0 locks=0 ] ( "on" ) ar_receive_shadows [ 0 locks=0 ] ( "on" ) ar_self_shadows [ 0 locks=0 ] ( "on" ) ar_opaque [ 0 locks=0 ] ( "on" ) ar_matte [ 0 locks=0 ] ( [ ar_matte 0 ] ) ar_skip [ 0 locks=0 ] ( "off" ) ar_use_light_group [ 0 locks=0 ] ( "off" ) ar_light_group [ 0 locks=0 ] ( "" ) ar_use_shadow_group [ 0 locks=0 ] ( "off" ) ar_shadow_group [ 0 locks=0 ] ( "" ) ar_trace_sets [ 0 locks=0 ] ( "" ) ar_sss_setname [ 0 locks=0 ] ( "" ) ar_smoothing [ 0 locks=0 ] ( "on" ) ar_invert_normals [ 0 locks=0 ] ( "off" ) ar_sidedness_camera [ 0 locks=0 ] ( "on" ) ar_sidedness_shadow [ 0 locks=0 ] ( "on" ) ar_sidedness_diffuse_transmit [ 0 locks=0 ] ( "on" ) ar_sidedness_specular_transmit [ 0 locks=0 ] ( "on" ) ar_sidedness_diffuse_reflect [ 0 locks=0 ] ( "on" ) ar_sidedness_specular_reflect [ 0 locks=0 ] ( "on" ) ar_sidedness_volume [ 0 locks=0 ] ( "on" ) } 0707070000010000000006660000000000000000010000001440237341500003100000000124obj/box_object1.userdata ___Version___19.5.493___toolcount___2 ___toolid___sop_box0707070000010000000006660000000000000000010000001440237341500003200000000032obj/box_object1/box1.inittype = box matchesdef = 1 0707070000010000000006660000000000000000010000001440237341500003100000000700obj/box_object1/box1.defsopflags sopflags = comment "" position 0 0 connectornextid 0 flags = lock off model off template off footprint off xray off bypass off display on render on highlight on unload off savedata off compress on colordefault on exposed on outputsNamed3 { } inputsNamed3 { } inputs { } stat { create 1678374390 modify 1678374424 author OEM_User@DESKTOP-FJNJNKH access 0777 } color UT_Color RGB 0.8 0.8 0.8 delscript "" exprlanguage hscript end 0707070000010000000006660000000000000000010000001440237341500003200000000715obj/box_object1/box1.parm{ version 0.8 type [ 0 locks=0 ] ( "polymesh" ) surftype [ 0 locks=0 ] ( "quads" ) consolidatepts [ 0 locks=0 ] ( "on" ) size [ 0 locks=0 ] ( 1 1 1 ) t [ 0 locks=0 ] ( 0 0 0 ) r [ 0 locks=0 ] ( 0 0 0 ) scale [ 0 locks=0 ] ( 1 ) divrate [ 0 locks=0 ] ( 2 2 2 ) orderrate [ 0 locks=0 ] ( 4 4 4 ) dodivs [ 0 locks=0 ] ( "off" ) divs [ 0 locks=0 ] ( 3 3 3 ) rebar [ 0 locks=0 ] ( "off" ) orientedbbox [ 0 locks=0 ] ( "off" ) vertexnormals [ 0 locks=0 ] ( "off" ) } 0707070000010000000006660000000000000000010000001440237341500003600000000124obj/box_object1/box1.userdata ___Version___19.5.493___toolcount___2 ___toolid___sop_box0707070000010000000006660000000000000000010000001440237341500002400000000002obj/box_object1.net1 0707070000010000000006660000000000000000010000001440237341500003000000000032obj/sphere_object1.inittype = geo matchesdef = 0 0707070000010000000006660000000000000000010000001440237341500002700000001040obj/sphere_object1.defobjflags objflags = origin off pretransform UT_DMatrix4 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 comment "" position -1.1296 1.22365 connectornextid 0 flags = lock off model off template off footprint off xray off bypass off display on render off highlight off unload off savedata off compress on colordefault on exposed on selectable on outputsNamed3 { } inputsNamed3 { } inputs { } stat { create 1678374392 modify 1678374653 author OEM_User@DESKTOP-FJNJNKH access 0777 } color UT_Color RGB 0.8 0.8 0.8 delscript "" exprlanguage hscript end 0707070000010000000006660000000000000000010000001440237341500004000000214214obj/sphere_object1.spareparmdef group { name "stdswitcher4" label "Transform" parm { name "xOrd" baseparm label "Transform Order" joinnext export none } parm { name "rOrd" baseparm label "Rotate Order" nolabel export none } parm { name "t" baseparm label "Translate" export all } parm { name "r" baseparm label "Rotate" export all } parm { name "s" baseparm label "Scale" export none } parm { name "p" baseparm label "Pivot Translate" export none } parm { name "pr" baseparm label "Pivot Rotate" export none } parm { name "scale" baseparm label "Uniform Scale" export none } parm { name "pre_xform" baseparm label "Modify Pre-Transform" export none } parm { name "keeppos" baseparm label "Keep Position When Parenting" export none } parm { name "childcomp" baseparm label "Child Compensation" export none } parm { name "constraints_on" baseparm label "Enable Constraints" export none } parm { name "constraints_path" baseparm label "Constraints" export none } parm { name "lookatpath" baseparm label "Look At" invisible export none } parm { name "lookupobjpath" baseparm label "Look Up Object" invisible export none } parm { name "lookup" baseparm label "Look At Up Vector" invisible export none } parm { name "pathobjpath" baseparm label "Path Object" invisible export none } parm { name "roll" baseparm label "Roll" invisible export none } parm { name "pos" baseparm label "Position" invisible export none } parm { name "uparmtype" baseparm label "Parameterization" invisible export none } parm { name "pathorient" baseparm label "Orient Along Path" invisible export none } parm { name "up" baseparm label "Orient Up Vector" invisible export none } parm { name "bank" baseparm label "Auto-Bank factor" invisible export none } } group { name "stdswitcher4_1" label "Render" parm { name "shop_materialpath" baseparm label "Material" export none } parm { name "shop_materialopts" baseparm label "Options" invisible export none } parm { name "tdisplay" baseparm label "Display" joinnext export none } parm { name "display" baseparm label "Display" export none } parm { name "viewportlod" label "Display As" type ordinal default { "full" } help "Choose how the object's geometry should be rendered in the viewport" menu { "full" "Full Geometry" "points" "Point Cloud" "box" "Bounding Box" "centroid" "Centroid" "hidden" "Hidden" "subd" "Subdivision Surface / Curves" } parmtag { "spare_category" "Render" } } parm { name "vm_rendervisibility" label "Render Visibility" type string default { "*" } menureplace { "*" "Visible to all" "primary" "Visible only to primary rays" "primary|shadow" "Visible only to primary and shadow rays" "-primary" "Invisible to primary rays (Phantom)" "-diffuse" "Invisible to diffuse rays" "-diffuse&-reflect&-refract" "Invisible to secondary rays" "" "Invisible (Unrenderable)" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "rendervisibility" } parmtag { "spare_category" "Render" } } parm { name "vm_rendersubd" label "Render Polygons As Subdivision (Mantra)" type toggle default { "0" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "rendersubd" } parmtag { "spare_category" "Geometry" } } parm { name "vm_subdstyle" label "Subdivision Style" type string default { "mantra_catclark" } hidewhen "{ vm_rendersubd == 0 }" menu { "mantra_catclark" "Mantra Catmull-Clark" "osd_catclark" "OpenSubdiv Catmull-Clark" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "subdstyle" } parmtag { "spare_category" "Geometry" } } parm { name "vm_subdgroup" label "Subdivision Group" type string default { "" } hidewhen "{ vm_rendersubd == 0 }" parmtag { "mantra_class" "object" } parmtag { "mantra_name" "subdgroup" } parmtag { "spare_category" "Geometry" } } parm { name "vm_osd_quality" label "Open Subdiv Quality" type float default { "1" } hidewhen "{ vm_rendersubd == 0 vm_subdstyle != osd_catclark }" range { 0 10 } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "osd_quality" } parmtag { "spare_category" "Geometry" } } parm { name "vm_osd_vtxinterp" label "OSD Vtx Interp" type integer default { "2" } hidewhen "{ vm_rendersubd == 0 vm_subdstyle != osd_catclark }" menu { "0" "No vertex interpolation" "1" "Edges only" "2" "Edges and Corners" } range { 0 10 } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "osd_vtxinterp" } parmtag { "spare_category" "Geometry" } } parm { name "vm_osd_fvarinterp" label "OSD FVar Interp" type integer default { "4" } hidewhen "{ vm_rendersubd == 0 vm_subdstyle != osd_catclark }" menu { "0" "Smooth everywhere" "1" "Sharpen corners only" "2" "Sharpen edges and corners" "3" "Sharpen edges and propagated corners" "4" "Sharpen all boundaries" "5" "Bilinear interpolation" } range { 0 10 } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "osd_fvarinterp" } parmtag { "spare_category" "Geometry" } } group { name "folder0" label "Shading" parm { name "categories" label "Categories" type string default { "" } help "A list of tags which can be used to select the object" parmtag { "spare_category" "Shading" } } parm { name "reflectmask" label "Reflection Mask" type oplist default { "*" } help "Objects that will be reflected on this object." parmtag { "opexpand" "1" } parmtag { "opfilter" "!!OBJ/GEOMETRY!!" } parmtag { "oprelative" "/obj" } parmtag { "spare_category" "Shading" } } parm { name "refractmask" label "Refraction Mask" type oplist default { "*" } help "Objects that will be refracted on this object." parmtag { "opexpand" "1" } parmtag { "opfilter" "!!OBJ/GEOMETRY!!" } parmtag { "oprelative" "/obj" } parmtag { "spare_category" "Shading" } } parm { name "lightmask" label "Light Mask" type oplist default { "*" } help "Lights that illuminate this object." parmtag { "opexpand" "1" } parmtag { "opfilter" "!!OBJ/LIGHT!!" } parmtag { "oprelative" "/obj" } parmtag { "spare_category" "Shading" } } parm { name "lightcategories" label "Light Selection" type string default { "*" } parmtag { "spare_category" "Shading" } } parm { name "vm_lpetag" label "LPE Tag" type string default { "" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "lpetag" } parmtag { "spare_category" "Shading" } } parm { name "vm_volumefilter" label "Volume Filter" type string default { "box" } menu { "box" "Box Filter" "gaussian" "Gaussian" "bartlett" "Bartlett (triangle)" "catrom" "Catmull-Rom" "hanning" "Hanning" "blackman" "Blackman" "sinc" "Sinc (sharpening)" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "filter" } parmtag { "spare_category" "Shading" } } parm { name "vm_volumefilterwidth" label "Volume Filter Width" type float default { "1" } range { 0.001 5 } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "filterwidth" } parmtag { "spare_category" "Shading" } } parm { name "vm_matte" label "Matte shading" type toggle default { "0" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "matte" } parmtag { "spare_category" "Shading" } } parm { name "vm_rayshade" label "Raytrace Shading" type toggle default { "0" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "rayshade" } parmtag { "spare_category" "Shading" } } } group { name "folder0_1" label "Sampling" parm { name "geo_velocityblur" label "Geometry Velocity Blur" type ordinal default { "off" } disablewhen "{ allowmotionblur == 0 }" menu { "off" "No Velocity Blur" "on" "Velocity Blur" "accelblur" "Acceleration Blur" } } parm { name "geo_accelattribute" label "Acceleration Attribute" type string default { "accel" } hidewhen "{ geo_velocityblur != accelblur }" parmtag { "spare_category" "Sampling" } } } group { name "folder0_2" label "Dicing" parm { name "vm_shadingquality" label "Shading Quality" type float default { "1" } range { 0 10 } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "shadingquality" } parmtag { "spare_category" "Dicing" } } parm { name "vm_flatness" label "Dicing Flatness" type float default { "0.05" } range { 0 1 } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "flatness" } parmtag { "spare_category" "Dicing" } } parm { name "vm_raypredice" label "Ray Predicing" type integer default { "0" } menu { "0" "Disable Predicing" "1" "Full Predicing" "2" "Precompute Bounds" } range { 0 10 } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "raypredice" } parmtag { "spare_category" "Dicing" } } parm { name "vm_curvesurface" label "Shade Curves As Surfaces" type toggle default { "0" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "curvesurface" } parmtag { "spare_category" "Dicing" } } } group { name "folder0_3" label "Geometry" parm { name "vm_rmbackface" label "Backface Removal" type toggle default { "0" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "rmbackface" } parmtag { "spare_category" "Geometry" } } parm { name "shop_geometrypath" label "Procedural Shader" type oppath default { "" } parmtag { "opfilter" "!!SHOP/GEOMETRY!!" } parmtag { "oprelative" "." } parmtag { "spare_category" "Geometry" } } parm { name "vm_forcegeometry" label "Force Procedural Geometry Output" type toggle default { "1" } parmtag { "spare_category" "Geometry" } } parm { name "vm_rendersubdcurves" label "Render Polygon Curves As Subdivision (Mantra)" type toggle default { "0" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "rendersubdcurves" } parmtag { "spare_category" "Geometry" } } parm { name "vm_renderpoints" label "Render As Points (Mantra)" type integer default { "2" } menu { "0" "No Point Rendering" "1" "Render Only Points" "2" "Render Unconnected Points" } range { 0 10 } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "renderpoints" } parmtag { "spare_category" "Geometry" } } parm { name "vm_renderpointsas" label "Render Points As (Mantra)" type integer default { "0" } disablewhen "{ vm_renderpoints == 0 }" menu { "0" "Spheres" "1" "Circles" } range { 0 10 } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "renderpointsas" } parmtag { "spare_category" "Geometry" } } parm { name "vm_usenforpoints" label "Use N For Point Rendering" type toggle default { "0" } disablewhen "{ vm_renderpoints == 0 }" parmtag { "mantra_class" "object" } parmtag { "mantra_name" "usenforpoints" } parmtag { "spare_category" "Geometry" } } parm { name "vm_pointscale" label "Point Scale" type float default { "1" } disablewhen "{ vm_renderpoints == 0 }" range { 0! 10 } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "pointscale" } parmtag { "spare_category" "Geometry" } } parm { name "vm_pscalediameter" label "Treat Point Scale as Diameter Instead of Radius" type toggle default { "0" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "pscalediameter" } parmtag { "spare_category" "Geometry" } } parm { name "vm_metavolume" label "Metaballs as Volume" type toggle default { "0" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "metavolume" } parmtag { "spare_category" "Geometry" } } parm { name "vm_coving" label "Coving" type integer default { "1" } menu { "0" "Disable Coving" "1" "Coving for displacement/sub-d" "2" "Coving for all primitives" } range { 0 10 } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "coving" } parmtag { "spare_category" "Geometry" } } parm { name "vm_materialoverride" label "Material Override" type string default { "compact" } menu { "none" "Disabled" "full" "Evaluate for Each Primitve/Point" "compact" "Evaluate Once" } parmtag { "spare_category" "Geometry" } } parm { name "vm_overridedetail" label "Ignore Geometry Attribute Shaders" type toggle default { "0" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "overridedetail" } parmtag { "spare_category" "Geometry" } } parm { name "vm_procuseroottransform" label "Proc Use Root Transform" type toggle default { "1" } parmtag { "mantra_class" "object" } parmtag { "mantra_name" "procuseroottransform" } parmtag { "spare_category" "Geometry" } } } } group { name "stdswitcher4_2" label "Arnold" parm { name "shop_propertiespath" label "Default Properties" type oppath default { "" } help "Specifies a Property SHOP that is used to resolve rendering parameter values. At render time, this SHOP (if given) is used to resolve rendering parameter values first, before looking for then on the objects being rendered." range { 0 1 } parmtag { "opfilter" "!!SHOP/PROPERTIES!!" } parmtag { "oprelative" "." } parmtag { "spare_category" "Shaders" } } parm { name "ar_user_options" label "User Options" type string joinnext default { "" } help "This string is passed to AiNodeSetAttributes() ont the Arnold node. It can contain any number of parameter/value pairs separated by whitespace (spaces, tabs, newlines) as found in .ass files." disablewhen "{ ar_user_options_enable == 0 }" } parm { name "ar_user_options_enable" label "Enable" type toggle default { "0" } help "Overrides the value of any parameter of the Arnold node." } group { name "folder_subdivision" label "Subdivision" parm { name "ar_subdiv_type" label "Type" type string default { "none" } help "Subdivision algorithm. None ignores any subdivision and renders the mesh as it is. Linear subdivision puts vertices in the middle of each face. The Catmull-Clark algorithm is used to create smooth surfaces by recursive subdivision surface modeling. The resulting surface will always consist of a mesh of quadrilateral faces." menu { "none" "None" "catclark" "Catmull-Clark" "linear" "Linear" } range { 0 1 } parmtag { "spare_category" "Subdivision" } } parm { name "ar_subdiv_iterations" label "Iterations" type integer default { "1" } help "The number of iterations / levels of subdivision. With Catmull-Clark subdivision, increasing the number of iterations produces a smoother mesh." disablewhen "{ ar_subdiv_type == none }" range { 1! 10 } parmtag { "spare_category" "Subdivision" } } parm { name "ar_subdiv_adaptive_metric" label "Adaptive Metric" type string joinnext default { "auto" } help "The adaptive subdivision criterion. Auto subdiv will choose between the EDGELENGTH mode and the FLATNESS depending on the displacement property of the polymesh. This means that if there is a displacement it will use the EDGELENGTH algorithm. If there is not displacement (or it is ignored in the global options) it will use FLATNESS." disablewhen "{ ar_subdiv_type == none }" menu { "auto" "Auto" "edge_length" "Edge Length" "flatness" "Flatness" } parmtag { "spare_category" "Subdivision" } } parm { name "ar_subdiv_adaptive_error" label " Error" type float default { "0" } help "The \"adaptive error\" refers to the acceptable tessellation error as seen from the camera. If there's no displacement, then the error represents the distance from the subdivided mesh to the \"true\" or \"limit\" surface -- sort of a \"flatness\" heuristic. The smaller the error, the closer to the limit surface a mesh will be and the less inter-frame popping when the subdivision level jumps. If displacement is enabled, then the error represents the final size of the subdivided quads. A value of 0 disables adaptive subdivision." disablewhen "{ ar_subdiv_type == none }" range { 0! 10 } parmtag { "spare_category" "Subdivision" } } parm { name "ar_subdiv_adaptive_space" label "Adaptive Space" type string default { "raster" } help "The space in which the adaptive metric is evaluated." disablewhen "{ ar_subdiv_type == none }" menu { "raster" "Raster" "object" "Object" } parmtag { "spare_category" "Subdivision" } } parm { name "ar_subdiv_uv_smoothing" label "UV Smoothing" type string joinnext default { "pin_corners" } help "UV smoothing algorithm." disablewhen "{ ar_subdiv_type == none }" menu { "pin_corners" "Pin Corners" "pin_borders" "Pin Borders" "linear" "Linear" "smooth" "Smooth" } range { 0 1 } parmtag { "spare_category" "Subdivision" } } parm { name "ar_subdiv_smooth_derivs" label "Smooth Derivatives" type toggle default { "0" } help "This option makes it possible to remove the faceted appearance from anisotropic speculars. The object must have a valid UV map for this option to work and only works if you apply at least one subdivision level to the geometry." disablewhen "{ ar_subdiv_type == none }" range { 0 1 } parmtag { "spare_category" "Subdivision" } } parm { name "ar_merge_vertex_indices" label "Merge Vertex Indices" type toggle default { "1" } help "Enable merging of the indices and data of coincident and identical vertex attribute values (UVs, normals, vertex user data). This allows the proper interpolation of vertex attributes when subdividing, and yields more compact render scenes in memory and on disk, at the cost of a slower export." range { 0 1 } parmtag { "spare_category" "Subdivision" } } parm { name "ar_subdiv_frustum_ignore" label "Ignore Frustum Culling" type toggle default { "0" } help "Subdivision surfaces outside the view or dicing camera frustum will not be subdivided. This can be turned on globally by enabling subdiv_frustum_culling on the ROP and can be turned off for specific meshes by setting subdiv_frustum_ignore true." disablewhen "{ ar_subdiv_type == none }" parmtag { "spare_category" "Subdivision" } } } group { name "folder_subdivision_1" label "Displacement" parm { name "ar_disp_height" label "Height" type float default { "1" } range { 0 10 } parmtag { "spare_category" "Displacement" } } parm { name "ar_disp_zero_value" label "Zero Value" type float default { "0" } range { 0 1 } parmtag { "spare_category" "Displacement" } } parm { name "ar_disp_padding" label "Bounds Padding" type float default { "0" } range { 0 10 } parmtag { "spare_category" "Displacement" } } parm { name "ar_disp_autobump" label "Autobump" type toggle default { "0" } range { 0 1 } parmtag { "spare_category" "Displacement" } } groupcollapsible { name "folder_autobump" label "Autobump Visibility" parm { name "ar_autobump_visibility_camera" label "Camera" type toggle default { "1" } help "Toggle autobump for camera rays (i.e. primary or view rays)." disablewhen "{ ar_disp_autobump == 0 }" range { 0 1 } parmtag { "spare_category" "Displacement" } } parm { name "ar_autobump_visibility_shadow" label "Shadow" type toggle default { "0" } help "Toggle autobump for shadow rays fired in the direct lighting calculations." disablewhen "{ ar_disp_autobump == 0 }" range { 0 1 } parmtag { "spare_category" "Displacement" } } parm { name "ar_autobump_visibility_diffuse_transmit" label "Diffuse Transmission" type toggle default { "0" } help "Toggle autobump for indirect diffuse transmission rays." disablewhen "{ ar_disp_autobump == 0 }" range { 0 1 } parmtag { "spare_category" "Displacement" } } parm { name "ar_autobump_visibility_specular_transmit" label "Specular Transmission" type toggle default { "0" } help "Toggle autobump for indirect specular transmission rays." disablewhen "{ ar_disp_autobump == 0 }" range { 0 1 } parmtag { "spare_category" "Displacement" } } parm { name "ar_autobump_visibility_diffuse_reflect" label "Diffuse Reflection" type toggle default { "0" } help "Toggle autobump for indirect diffuse reflection rays." disablewhen "{ ar_disp_autobump == 0 }" range { 0 1 } parmtag { "spare_category" "Displacement" } } parm { name "ar_autobump_visibility_specular_reflect" label "Specular Reflection" type toggle default { "0" } help "Toggle autobump for indirect specular reflection rays." disablewhen "{ ar_disp_autobump == 0 }" range { 0 1 } parmtag { "spare_category" "Displacement" } } parm { name "ar_autobump_visibility_volume" label "Volume Scattering" type toggle default { "0" } help "Toggle autobump for indirect volume scattering rays." disablewhen "{ ar_disp_autobump == 0 }" range { 0 1 } parmtag { "spare_category" "Displacement" } } } } group { name "folder_subdivision_2" label "Shapes" parm { name "ar_min_pixel_width" label "Minimum Pixel Width" type float default { "0" } help "If this value is non-zero, points or curves with a small on-screen width will be automatically enlarged so that they are at least the specified size in pixels. The enlargement fraction is then used in the hair shader to adjust the opacity so that the visible thickness of the hair remains the same. For a given number of AA samples, this makes it a lot easier to antialias fine hair, at the expense of render time (because of the additional transparency/depth complexity). Good values are in the range 0.2 to 0.7. Values closer to 0 are faster to render but need more AA samples. So if your scene already uses very high AA settings, you should use a low value like 0.1. For best results, you may need to increase the auto-transparency depth, and/or lower the auto-transparency threshold, but watch the effect on render times. Note that this parameter currently works with the ribbon mode only." range { 0 10 } parmtag { "spare_category" "Curves" } } parm { name "ar_radius" label "Default Radius" type float default { "0.05" } help "Sets the default rendered radius of points or thickness of curves. This property can be overridden per point with the \"ar_radius\", \"pscale\" or \"width\" (curves only) attributes." range { 0 10 } parmtag { "units" "m1" } } group { name "folder_points" label "Points" parm { name "ar_mode" label "Mode" type ordinal default { "sphere" } help "Rendering mode for points or particles. Can be spheres, or camera-facing disks or quads." menu { "disk" "Disk" "sphere" "Sphere" "quad" "Quad" } range { 0 1 } } parm { name "ar_point_scale" label "Point Scale" type float default { "1" } help "A global scale factor applied to points." range { 0! 10 } } parm { name "ar_aspect" label "Aspect" type log default { "1" } help "The aspect ratio for quads. This property can be overrriden per point by setting the \"ar_aspect\" or \"spritescale\" attributes on the geometry." disablewhen "{ ar_mode != quad }" range { 0.1 10 } } parm { name "ar_rotation" label "Rotation" type angle default { "0" } help "The rotation angle in degrees for quads. This property can be overrriden per point by setting the \"ar_rotation\" or the \"spriterot\" attributes on the geometry." disablewhen "{ ar_mode != quad }" range { -180 180 } } } group { name "folder_points_1" label "Curves" parm { name "ar_curves_basis" label "Basis" type string default { "auto" } help "The curves basis to interpret the knots of the input curves or open polygons. When set to \"Automatic\", the basis will attempt to match the closest equivalent in Arnold, ie. linear for open polygons, Bezier for Bezier curves and B-spline for NURBS." menu { "bezier" "Bezier" "b-spline" "B-Spline" "catmull-rom" "Catmull-Rom" "linear" "Linear" "auto" "Automatic" } range { 0 1 } parmtag { "spare_category" "Curves" } } parm { name "ar_curves_mode" label "Mode" type string default { "ribbon" } help "- Ribbon: This mode is recommended for fine geometry such as realistic hair, fur or fields of grass. These curves are rendered as camera-facing flat ribbons. For secondary and shadow rays, they face the incoming ray direction. This mode doesn't look so good for very wide hairs or dramatic zoom-ins because of the flat appearance. This mode works best with a proper hair shader (perhaps based on a Kay-Kajiya or Marschner specular model).\\n\\n- Thick: This mode resembles spaghetti. It has a circular cross section, and a normal vector that varies across the width of the hair. Thick hairs look great when zoomed in, and are specially useful for effects work, but their varying normals make them more difficult to antialias when they are small. You can use any shader with this rendering mode, including lambert, phong, etc.\\n\\n- Oriented: This mode is similar to the ribbons mode, but you can set the ribbon orientation for each knot with an \"ar_orientations\" vector attribute representing the direction of the normal of the ribbon. This mode can be useful to render grass strands for example." menu { "ribbon" "Ribbon" "thick" "Thick" "oriented" "Oriented " } range { 0 1 } parmtag { "spare_category" "Curves" } } } group { name "folder_points_2" label "Volumes" parm { name "ar_step_size" label "Volume Step Size" type float default { "0" } help "When ar_step_size is set to a value other than zero, then points rendered as spheres, particles and polymeshes will be rendered as volumes." range { 0 1 } } parm { name "ar_volume_padding" label "Volume Padding" type float default { "0" } help "When rendering particles or polymeshes as volumes (when ar_step_size is non-zero), ar_volume_padding will provide extra the volume padding specified for displacement requirements" disablewhen "{ ar_step_size == 0 }" range { 0 10 } } parm { name "label_volume" label "Label" type label nolabel default { "" } } parm { name "label_volume2" label "Label" type label nolabel default { "Points and polymeshes are rendered as volumes if Step Size > 0" } } } group { name "folder_points_3" label " VDB " parm { name "ar_vdb_file_enable" label "Export VDB File" type toggle nolabel joinnext default { "0" } help "Export the VDB primitives as a VDB file and reference the file in the Arnold volume." range { 0 1 } } parm { name "ar_vdb_file" label "Save to File" type file default { "$HIP/`pythonexprs(\"hou.pwd().path()[1:].replace('/', '_')\")`.$F4.vdb" } help "The OpenVDB file name that the VDB primitves will be written to, and that will be referenced by the Arnold volume instead of attaching the volume data." disablewhen "{ ar_vdb_file_enable == 0 }" range { 0 1 } parmtag { "filechooser_pattern" "*.vdb" } } parm { name "ar_grids" label "Export Grids" type string default { "*" } help "The VDB grids to export and make available in the volume shading context." menutoggle { [ "import htoa.properties" ] [ "return htoa.properties.vdbGridMenu()" ] language python } range { 0 1 } parmtag { "script_callback" "__import__('htoa').properties.vdbAutoStepSizeCallback()" } parmtag { "script_callback_language" "python" } } parm { name "ar_velocity_grids" label "Velocity Grids" type string default { "*" } help "Select 1 vector or 3 float grids representing velocity for motion blur." menutoggle { [ "import htoa.properties" ] [ "return htoa.properties.vdbGridMenu()" ] language python } range { 0 1 } } parm { name "ar_velocity_scale" label "Velocity Scale" type log default { "1" } help "Scale the velocities by this factor." disablewhen "{ ar_velocity_grids == \"\" }" range { 0.1 10 } } parm { name "ar_velocity_threshold" label "Velocity Threshold" type log default { "0.001" } help "Controls filtering of noisy velocities. The default value 0.001 should have little to no visual impact, setting it to zero disables filtering entirely." disablewhen "{ ar_velocity_grids == \"\" }" range { 0! 1! } } parm { name "ar_padding" label "Bounds Padding" type float default { "0" } help "Extra padding for the volume bounds" range { 0 10 } } parm { name "ar_step_size_type" label "Volume Step" type ordinal joinnext default { "0" } help "When set to auto, the step size is automatically determined by the volume plugin, yielding the minimum voxel size." menu { "auto" "Automatic " "custom" "Custom" } range { 0 1 } parmtag { "script_callback" "__import__('htoa').properties.vdbAutoStepSizeCallback()" } parmtag { "script_callback_language" "python" } } parm { name "ar_vdb_step_size" label " Step Size" type float default { "0.02" } help "The ray marching step size. When the step type is auto, this indicates the computed step size, the minimum voxel size." disablewhen "{ ar_step_size_type == auto }" range { 0! 10 } } parm { name "ar_step_scale" label "Step Scale" type log default { "1" } help "Multiply the step size by this factor, including when it's automatically detected." range { 0.1! 10 } } parm { name "ar_compress" label "Compress" type toggle invisible default { "1" } help "Optimize voxel storage to reduce memory usage." range { 0 1 } } } group { name "folder_points_4" label "Tessellation" parm { name "ar_tessellation_enable" label "Tessellate Primitives" type toggle default { "1" } help "Tessellate Houdini primitives such as NURBS, Bezier meshes, circles, tubes or spheres prior to sending to Arnold." disablewhen "{ ar_tessellation_use_rop == 1 }" range { 0 1 } parmtag { "spare_category" "Tessellation" } } parm { name "ar_tessellation_style" label "Tessellation Style" type string invisible default { "lod" } help "Specifies the conversion style for the geometry. The default is\"Level of Detail\". Can be one of the following:\\n- Level of Detail: Tessellate geometry using the level of detail settings.\\n- Divisions: Tessellate geometry based on the number of divisions settings." disablewhen "{ ar_tessellation_enable == 0 }" menu { "lod" "Level of Detail" "div" "Divisions" } range { 0 1 } parmtag { "spare_category" "Tessellation" } } parm { name "ar_tessellation_ulod" label "U Level of Detail" type float default { "1" } help "Specifies the level of detail for U subdivisions of the surface being converted. Applicable only when conversion method is set to Level of Detail. Defaults to 1.0." disablewhen "{ ar_tessellation_enable == 0 }" hidewhen "{ ar_tessellation_style != lod }" range { 0! 10 } parmtag { "spare_category" "Tessellation" } } parm { name "ar_tessellation_vlod" label "V Level of Detail" type float default { "1" } help "Specifies the level of detail for V subdivisions of the surface being converted. Applicable only when conversion method is set to Level of Detail. Defaults to 1.0." disablewhen "{ ar_tessellation_enable == 0 }" hidewhen "{ ar_tessellation_style != lod }" range { 0! 10 } parmtag { "spare_category" "Tessellation" } } parm { name "ar_tessellation_trimlod" label "Trim Level of Detail" type float default { "1" } help "Specifies the level of detail for trim curves of the surface being converted. Applicable only when conversion method is set to Level of Detail. Defaults to 1.0." disablewhen "{ ar_tessellation_enable == 0 }" hidewhen "{ ar_tessellation_style != lod }" range { 0! 10 } parmtag { "spare_category" "Tessellation" } } } group { name "folder_points_5" label "Procedurals" parm { name "ar_operator_graph_enable" label "Enable Operator Graph" type toggle nolabel joinnext default { "1" } help "Enables the operator graph on procedurals in this OBJ node." range { 0 1 } } parm { name "ar_operator_graph" label "Operator Graph" type oppath default { "" } help "Specify an operator ROP graph to connect to procedurals created by this OBJ node." disablewhen "{ ar_operator_graph_enable == 0 }" parmtag { "opfilter" "!!ROP!!" } parmtag { "oprelative" "." } } } } group { name "folder_subdivision_3" label "Attributes" parm { name "ar_toon_id" label "Toon ID Group" type string default { "" } help "Objects in the same toon ID group will be rendered with the same silhouette, if the user_id attribute is set on the toon shader" } parm { name "ar_attributes_detail" label "Detail Attributes" type string default { "*" } help "The list of details attributes to be exported as user data for Arnold. As user data is costly in memory, nothing is exported by default. If this field contains a wildcard character (*), all available attributes will be exported." menutoggle { [ "__import__('htoa').properties.detailAttributeMenu()" ] language python } range { 0 1 } parmtag { "spare_category" "Attributes" } } parm { name "ar_attributes_primitive" label "Primitive Attributes" type string default { "*" } help "The list of primitive attributes to be exported as user data for Arnold. As user data is costly in memory, nothing is exported by default. If this field contains a wildcard character (*), all available attributes will be exported." menutoggle { [ "__import__('htoa').properties.primitiveAttributeMenu()" ] language python } range { 0 1 } parmtag { "spare_category" "Attributes" } } parm { name "ar_attributes_point" label "Point Attributes" type string default { "*" } help "The list of point attributes to be exported as user data for Arnold. As user data is costly in memory, nothing is exported by default. If this field contains a wildcard character (*), all available attributes will be exported." menutoggle { [ "__import__('htoa').properties.pointAttributeMenu()" ] language python } range { 0 1 } parmtag { "spare_category" "Attributes" } } parm { name "ar_attributes_vertex" label "Vertex Attributes" type string default { "*" } help "The list of vertex attributes to be exported as user data for Arnold. As user data is costly in memory, nothing is exported by default. If this field contains a wildcard character (*), all available attributes will be exported." menutoggle { [ "__import__('htoa').properties.vertexAttributeMenu()" ] language python } range { 0 1 } parmtag { "spare_category" "Attributes" } } } group { name "folder_subdivision_4" label "Motion Blur" parm { name "ar_transform_type" label "Transform Type" type ordinal default { "2" } help "The type of motion for the transformation of the object, as a hint for the matrix interpolation for transformation motion blur." menu { "linear" "Linear" "rotate_about_origin" "Rotate About Origin" "rotate_about_center" "Rotate About Center" } range { 0 2 } parmtag { "spare_category" "Motion Blur" } } parm { name "ar_mb_xform_keys_override" label "Transform Keys Override" type toggle nolabel joinnext default { "0" } help "Override the ROP settings for Transform Keys." range { 0 1 } parmtag { "spare_category" "Motion Blur" } } parm { name "ar_mb_xform_keys" label "Transform Keys" type integer default { "2" } help "Number of motion keys for matrix transformation. Transformation motion blur is calculated based on a linear interpolation of an object transform matrix, between successive motion keys. Increasing this value will add extra steps, which can improve the blurred result, especially for rotating objects. The default is 2, which results in straight lines of blur between shutter start and shutter end." disablewhen "{ ar_mb_xform_keys_override == 0 }" range { 1! 20 } parmtag { "spare_category" "Motion Blur" } } parm { name "ar_mb_dform_keys_override" label "Deform Keys Override" type toggle nolabel joinnext default { "0" } help "Override the ROP settings for Transform Keys." range { 0 1 } parmtag { "spare_category" "Motion Blur" } } parm { name "ar_mb_dform_keys" label "Deform Keys" type integer default { "2" } help "Number of motion keys for object points. Just like with transformation motion keys, increasing this value allows curved motion paths to be rendered more accurately, at the expense of using more memory." disablewhen "{ ar_mb_dform_keys_override == 0 } { ar_mb_velocity_enable == 1 ar_mb_acceleration_enable != 1 }" range { 1! 20 } parmtag { "spare_category" "Motion Blur" } } parm { name "ar_mb_velocity_enable" label "Velocity Blur Enable" type toggle nolabel joinnext default { "0" } help "Deformation blur will be computed from the \"v\" point attribute." range { 0 1 } parmtag { "spare_category" "Motion Blur" } } parm { name "ar_mb_velocity_attribute" label "Velocity Blur" type string default { "v" } help "The velocity point attribute to use for velocity blur. The Houdini convention is 'v'." disablewhen "{ ar_mb_velocity_enable == 0 }" menureplace { [ "geometry = hou.pwd().renderNode().geometry()" ] [ "if not geometry:" ] [ " return []" ] [ "menu_items = []" ] [ "for attr in geometry.pointAttribs():" ] [ " if not attr.name() in ('P', 'Pw'):" ] [ " menu_items += [attr.name(), '%s\\t %s[%i]' % (attr.name(), attr.dataType().name().lower(), attr.size())]" ] [ "return menu_items" ] language python } range { 0 1 } } parm { name "ar_mb_acceleration_enable" label "Acceleration Blur Enable" type toggle nolabel joinnext default { "0" } disablewhen "{ ar_mb_velocity_enable == 0 }" range { 0 1 } } parm { name "ar_mb_acceleration_attribute" label "Acceleration Blur" type string default { "force" } help "The acceleration point attribute to use for acceleration blur. The Houdini convention is 'force' or 'accel'. If you use use 'force' ensure you divide by the mass." disablewhen "{ ar_mb_velocity_enable == 0 } { ar_mb_acceleration_enable == 0 }" menureplace { [ "geometry = hou.pwd().renderNode().geometry()" ] [ "if not geometry:" ] [ " return []" ] [ "menu_items = []" ] [ "for attr in geometry.pointAttribs():" ] [ " if not attr.name() in ('P', 'Pw'):" ] [ " menu_items += [attr.name(), '%s\\t %s[%i]' % (attr.name(), attr.dataType().name().lower(), attr.size())]" ] [ "return menu_items" ] language python } range { 0 1 } } } group { name "folder_subdivision_5" label "Visibility" parm { name "ar_visibility_camera" label "Visible to Camera Rays" type toggle default { "1" } help "Toggle object visibility for camera rays (i.e. primary or view rays)." range { 0 1 } parmtag { "spare_category" "Visibility" } } parm { name "ar_visibility_shadow" label "Visible to Shadow Rays" type toggle default { "1" } help "Toggle object visibility for shadow rays fired in the direct lighting calculations." range { 0 1 } parmtag { "spare_category" "Visibility" } } parm { name "ar_visibility_diffuse_transmit" label "Visible to Diffuse Transmission Rays" type toggle default { "1" } help "Toggle object visibility for indirect diffuse transmission rays." range { 0 1 } parmtag { "spare_category" "Visibility" } } parm { name "ar_visibility_specular_transmit" label "Visible to Specular Transmission Rays" type toggle default { "1" } help "Toggle object visibility for indirect specular transmission rays." range { 0 1 } parmtag { "spare_category" "Visibility" } } parm { name "ar_visibility_diffuse_reflect" label "Visible to Diffuse Reflection Rays" type toggle default { "1" } help "Toggle object visibility for indirect diffuse reflection rays." range { 0 1 } parmtag { "spare_category" "Visibility" } } parm { name "ar_visibility_specular_reflect" label "Visible to Specular Reflection Rays" type toggle default { "1" } help "Toggle object visibility for indirect specular reflection rays." range { 0 1 } parmtag { "spare_category" "Visibility" } } parm { name "ar_visibility_volume" label "Visible to Volume Scattering Rays" type toggle default { "1" } help "Toggle object visibility for indirect volume scattering rays." range { 0 1 } parmtag { "spare_category" "Visibility" } } parm { name "ar_receive_shadows" label "Receive Shadows" type toggle default { "1" } help "Enable/disable received shadows over the object." range { 0 1 } parmtag { "spare_category" "Visibility" } } parm { name "ar_self_shadows" label "Self Shadows" type toggle default { "1" } help "Enable/disable self-shadowing over the object." disablewhen "{ ar_receive_shadows == 0 }" range { 0 1 } parmtag { "spare_category" "Visibility" } } parm { name "ar_opaque" label "Opaque" type toggle default { "1" } help "By default, Arnold will assume that objects are opaque, which lets the renderer take certain shortcuts and optimizations for maximum ray tracing speed. When this option is unchecked, the object is assumed as \"possibly transparent\", and Arnold will perform extra computations to support transparency and transparent shadows, according to the shader's opacity settings." range { 0 1 } parmtag { "spare_category" "Visibility" } } parm { name "ar_matte" label "Matte" type toggle default { "0" } help "Output black and zero alpha for camera rays to create a holdout." range { 0 1 } parmtag { "spare_category" "Visibility" } } parm { name "ar_skip" label "Skip" type toggle default { "0" } help "Do not output this object regardless of it being forced or not." range { 0 1 } parmtag { "spare_category" "Visibility" } } parm { name "ar_use_light_group" label "Use Light Group" type toggle invisible nolabel joinnext default { "0" } range { 0 1 } } parm { name "ar_light_group" label "Light Group" type oplist invisible default { "" } disablewhen "{ ar_use_light_group == 0 }" range { 0 1 } parmtag { "opfilter" "!!OBJ/LIGHT!!" } parmtag { "oprelative" "/" } } parm { name "ar_use_shadow_group" label "Use Shadow Group" type toggle invisible nolabel joinnext default { "0" } range { 0 1 } } parm { name "ar_shadow_group" label "Shadow Group" type oplist invisible default { "" } disablewhen "{ ar_use_shadow_group == 0 }" range { 0 1 } parmtag { "opfilter" "!!OBJ/LIGHT!!" } parmtag { "oprelative" "/" } } parm { name "ar_trace_sets" label "Trace Sets" type string default { "" } menutoggle { [ "__import__('htoa.properties').properties.tracesetMenu()" ] language python } range { 0 1 } } parm { name "ar_sss_setname" label "SSS Set" type string default { "" } help "Use this parameter to tag multiple objects as belonging to the same SSS set so that illumination will blur across object boundaries. A common use case might be blurring between teeth and gum geometry. This feature is only available when using raytraced SSS." menureplace { [ "__import__('htoa.properties').properties.sssMenu()" ] language python } range { 0 1 } } } group { name "folder_subdivision_6" label "Normals" parm { name "ar_smoothing" label "Smoothing" type toggle default { "1" } help "Smooth/Flat normals." range { 0 1 } parmtag { "spare_category" "Render" } } parm { name "ar_invert_normals" label "Invert Normals" type toggle default { "0" } help "Invert normals" range { 0 1 } parmtag { "spare_category" "Render" } } parm { name "ar_sidedness_camera" label "Double-sided for Camera Rays" type toggle default { "1" } help "Toggle object double-sidedness for camera rays (i.e. primary or view rays)." range { 0 1 } parmtag { "spare_category" "Sidedness" } } parm { name "ar_sidedness_shadow" label "Double-sided for Shadow Rays" type toggle default { "1" } help "Toggle object double-sidedness for shadow rays fired in the direct lighting calculations." range { 0 1 } parmtag { "spare_category" "Sidedness" } } parm { name "ar_sidedness_diffuse_transmit" label "Double-sided for Diffuse Transmission Rays" type toggle default { "1" } help "Toggle object double-sidedness for indirect diffuse transmission rays." range { 0 1 } parmtag { "spare_category" "Sidedness" } } parm { name "ar_sidedness_specular_transmit" label "Double-sided for Specular Transmission Rays" type toggle default { "1" } help "Toggle object double-sidedness for indirect specular transmission rays." range { 0 1 } parmtag { "spare_category" "Sidedness" } } parm { name "ar_sidedness_diffuse_reflect" label "Double-sided for Diffuse Reflection Rays" type toggle default { "1" } help "Toggle object double-sidedness for indirect diffuse reflection rays." range { 0 1 } parmtag { "spare_category" "Sidedness" } } parm { name "ar_sidedness_specular_reflect" label "Double-sided for Specular Reflection Rays" type toggle default { "1" } help "Toggle object double-sidedness for indirect specular reflection rays." range { 0 1 } parmtag { "spare_category" "Sidedness" } } parm { name "ar_sidedness_volume" label "Double-sided for Volume Scattering Rays" type toggle default { "1" } help "Toggle object double-sidedness for indirect volume scattering rays." range { 0 1 } parmtag { "spare_category" "Sidedness" } } } } group { name "stdswitcher4_3" label "Misc" parm { name "use_dcolor" baseparm label "Set Wireframe Color" export none } parm { name "dcolor" baseparm label "Wireframe Color" export none } parm { name "picking" baseparm label "Viewport Selecting Enabled" export none } parm { name "pickscript" baseparm label "Select Script" export none } parm { name "caching" baseparm label "Cache Object Transform" export none } parm { name "vport_shadeopen" baseparm label "Shade Open Curves In Viewport" export none } parm { name "vport_displayassubdiv" baseparm label "Display as Subdivision in Viewport" invisible export none } parm { name "vport_onionskin" baseparm label "Onion Skinning" export none } } 0707070000010000000006660000000000000000010000001440237341500002700000001162obj/sphere_object1.chn{ channel ar_matte { lefttype = extend righttype = extend flags = 0 segment { options = { untie iv ov is os ia oa } length = 0 expr = ch(\"vm_matte\") } } channel ar_mb_velocity_enable { lefttype = extend righttype = extend flags = 0 segment { options = { untie iv ov is os ia oa } length = 0 expr = ch(\"geo_velocityblur\") } } channel ar_point_scale { lefttype = extend righttype = extend default = 1 flags = 0 segment { options = { untie iv ov is os ia oa } length = 0 expr = ch(\"vm_pointscale\") } } } 0707070000010000000006660000000000000000010000001440237341500003000000015752obj/sphere_object1.parm{ version 0.8 stdswitcher [ 0 locks=0 ] ( 0 0 0 ) xOrd [ 0 locks=0 ] ( "srt" ) rOrd [ 0 locks=0 ] ( "xyz" ) t [ 0 locks=0 ] ( -1.0073409080505371 0.67294692993164062 0.45788216590881348 ) r [ 0 locks=0 ] ( 0 0 0 ) s [ 0 locks=0 ] ( 1 1 1 ) p [ 0 locks=0 ] ( 0 0 0 ) pr [ 0 locks=0 ] ( 0 0 0 ) scale [ 0 locks=0 ] ( 1 ) pre_xform [ 0 locks=0 ] ( 0 ) keeppos [ 0 locks=0 ] ( "off" ) childcomp [ 0 locks=0 ] ( "off" ) constraints_on [ 0 locks=0 ] ( "off" ) constraints_path [ 0 locks=0 ] ( "" ) lookatpath [ 0 locks=0 ] ( "" ) lookupobjpath [ 0 locks=0 ] ( "" ) lookup [ 0 locks=0 ] ( on ) pathobjpath [ 0 locks=0 ] ( "" ) roll [ 0 locks=0 ] ( 0 ) pos [ 0 locks=0 ] ( 0 ) uparmtype [ 0 locks=0 ] ( "arc" ) pathorient [ 0 locks=0 ] ( 1 ) up [ 0 locks=0 ] ( 0 1 0 ) bank [ 0 locks=0 ] ( 0 ) shop_materialpath [ 0 locks=0 ] ( /mat/arnold_materialbuilder1 ) shop_materialopts [ 0 locks=0 ] ( 0 ) tdisplay [ 0 locks=0 ] ( "off" ) display [ 0 locks=0 ] ( 1 ) use_dcolor [ 0 locks=0 ] ( "off" ) dcolor [ 0 locks=0 ] ( 1 1 1 ) picking [ 0 locks=0 ] ( "on" ) pickscript [ 0 locks=0 ] ( "" ) caching [ 0 locks=0 ] ( "on" ) vport_shadeopen [ 0 locks=0 ] ( "off" ) vport_displayassubdiv [ 0 locks=0 ] ( "off" ) vport_onionskin [ 0 locks=0 ] ( "off" ) stdswitcher4 [ 0 locks=0 ] ( 2 2 2 2 ) viewportlod [ 0 locks=0 ] ( "full" ) vm_rendervisibility [ 0 locks=0 ] ( * ) vm_rendersubd [ 0 locks=0 ] ( "off" ) vm_subdstyle [ 0 locks=0 ] ( mantra_catclark ) vm_subdgroup [ 0 locks=0 ] ( "" ) vm_osd_quality [ 0 locks=0 ] ( 1 ) vm_osd_vtxinterp [ 0 locks=0 ] ( 2 ) vm_osd_fvarinterp [ 0 locks=0 ] ( 4 ) folder0 [ 0 locks=0 ] ( 0 0 0 0 ) categories [ 0 locks=0 ] ( "" ) reflectmask [ 0 locks=0 ] ( * ) refractmask [ 0 locks=0 ] ( * ) lightmask [ 0 locks=0 ] ( * ) lightcategories [ 0 locks=0 ] ( * ) vm_lpetag [ 0 locks=0 ] ( "" ) vm_volumefilter [ 0 locks=0 ] ( box ) vm_volumefilterwidth [ 0 locks=0 ] ( 1 ) vm_matte [ 0 locks=0 ] ( "off" ) vm_rayshade [ 0 locks=0 ] ( "off" ) geo_velocityblur [ 0 locks=0 ] ( "off" ) geo_accelattribute [ 0 locks=0 ] ( accel ) vm_shadingquality [ 0 locks=0 ] ( 1 ) vm_flatness [ 0 locks=0 ] ( 0.050000000000000003 ) vm_raypredice [ 0 locks=0 ] ( 0 ) vm_curvesurface [ 0 locks=0 ] ( "off" ) vm_rmbackface [ 0 locks=0 ] ( "off" ) shop_geometrypath [ 0 locks=0 ] ( "" ) vm_forcegeometry [ 0 locks=0 ] ( "on" ) vm_rendersubdcurves [ 0 locks=0 ] ( "off" ) vm_renderpoints [ 0 locks=0 ] ( 2 ) vm_renderpointsas [ 0 locks=0 ] ( 0 ) vm_usenforpoints [ 0 locks=0 ] ( "off" ) vm_pointscale [ 0 locks=0 ] ( 1 ) vm_pscalediameter [ 0 locks=0 ] ( "off" ) vm_metavolume [ 0 locks=0 ] ( "off" ) vm_coving [ 0 locks=0 ] ( 1 ) vm_materialoverride [ 0 locks=0 ] ( compact ) vm_overridedetail [ 0 locks=0 ] ( "off" ) vm_procuseroottransform [ 0 locks=0 ] ( "on" ) shop_propertiespath [ 0 locks=0 ] ( "" ) ar_user_options [ 0 locks=0 ] ( "" ) ar_user_options_enable [ 0 locks=0 ] ( "off" ) folder_subdivision [ 0 locks=0 ] ( 5 5 5 5 5 5 5 ) ar_subdiv_type [ 0 locks=0 ] ( none ) ar_subdiv_iterations [ 0 locks=0 ] ( 1 ) ar_subdiv_adaptive_metric [ 0 locks=0 ] ( auto ) ar_subdiv_adaptive_error [ 0 locks=0 ] ( 0 ) ar_subdiv_adaptive_space [ 0 locks=0 ] ( raster ) ar_subdiv_uv_smoothing [ 0 locks=0 ] ( pin_corners ) ar_subdiv_smooth_derivs [ 0 locks=0 ] ( "off" ) ar_merge_vertex_indices [ 0 locks=0 ] ( "on" ) ar_subdiv_frustum_ignore [ 0 locks=0 ] ( "off" ) ar_disp_height [ 0 locks=0 ] ( 1 ) ar_disp_zero_value [ 0 locks=0 ] ( 0 ) ar_disp_padding [ 0 locks=0 ] ( 0 ) ar_disp_autobump [ 0 locks=0 ] ( "off" ) folder_autobump [ 0 locks=0 ] ( 0 ) ar_autobump_visibility_camera [ 0 locks=0 ] ( "on" ) ar_autobump_visibility_shadow [ 0 locks=0 ] ( "off" ) ar_autobump_visibility_diffuse_transmit [ 0 locks=0 ] ( "off" ) ar_autobump_visibility_specular_transmit [ 0 locks=0 ] ( "off" ) ar_autobump_visibility_diffuse_reflect [ 0 locks=0 ] ( "off" ) ar_autobump_visibility_specular_reflect [ 0 locks=0 ] ( "off" ) ar_autobump_visibility_volume [ 0 locks=0 ] ( "off" ) ar_min_pixel_width [ 0 locks=0 ] ( 0 ) ar_radius [ 0 locks=0 ] ( 0.050000000000000003 ) folder_points [ 0 locks=0 ] ( 0 0 0 0 0 0 ) ar_mode [ 0 locks=0 ] ( "sphere" ) ar_point_scale [ 0 locks=0 ] ( [ ar_point_scale 1 ] ) ar_aspect [ 0 locks=0 ] ( 1 ) ar_rotation [ 0 locks=0 ] ( 0 ) ar_curves_basis [ 0 locks=0 ] ( auto ) ar_curves_mode [ 0 locks=0 ] ( ribbon ) ar_step_size [ 0 locks=0 ] ( 0 ) ar_volume_padding [ 0 locks=0 ] ( 0 ) label_volume [ 0 locks=0 ] ( "" ) label_volume2 [ 0 locks=0 ] ( "Points and polymeshes are rendered as volumes if Step Size > 0" ) ar_vdb_file_enable [ 0 locks=0 ] ( "off" ) ar_vdb_file [ 0 locks=0 ] ( "$HIP/`pythonexprs(\"hou.pwd().path()[1:].replace('/', '_')\")`.$F4.vdb" ) ar_grids [ 0 locks=0 ] ( * ) ar_velocity_grids [ 0 locks=0 ] ( * ) ar_velocity_scale [ 0 locks=0 ] ( 1 ) ar_velocity_threshold [ 0 locks=0 ] ( 0.001 ) ar_padding [ 0 locks=0 ] ( 0 ) ar_step_size_type [ 0 locks=0 ] ( "auto" ) ar_vdb_step_size [ 0 locks=0 ] ( 0.02 ) ar_step_scale [ 0 locks=0 ] ( 1 ) ar_compress [ 0 locks=0 ] ( "on" ) ar_tessellation_enable [ 0 locks=0 ] ( "on" ) ar_tessellation_style [ 0 locks=0 ] ( lod ) ar_tessellation_ulod [ 0 locks=0 ] ( 1 ) ar_tessellation_vlod [ 0 locks=0 ] ( 1 ) ar_tessellation_trimlod [ 0 locks=0 ] ( 1 ) ar_operator_graph_enable [ 0 locks=0 ] ( "on" ) ar_operator_graph [ 0 locks=0 ] ( "" ) ar_toon_id [ 0 locks=0 ] ( "" ) ar_attributes_detail [ 0 locks=0 ] ( * ) ar_attributes_primitive [ 0 locks=0 ] ( * ) ar_attributes_point [ 0 locks=0 ] ( * ) ar_attributes_vertex [ 0 locks=0 ] ( * ) ar_transform_type [ 0 locks=0 ] ( "rotate_about_center" ) ar_mb_xform_keys_override [ 0 locks=0 ] ( "off" ) ar_mb_xform_keys [ 0 locks=0 ] ( 2 ) ar_mb_dform_keys_override [ 0 locks=0 ] ( "off" ) ar_mb_dform_keys [ 0 locks=0 ] ( 2 ) ar_mb_velocity_enable [ 0 locks=0 ] ( [ ar_mb_velocity_enable 0 ] ) ar_mb_velocity_attribute [ 0 locks=0 ] ( v ) ar_mb_acceleration_enable [ 0 locks=0 ] ( "off" ) ar_mb_acceleration_attribute [ 0 locks=0 ] ( force ) ar_visibility_camera [ 0 locks=0 ] ( "on" ) ar_visibility_shadow [ 0 locks=0 ] ( "on" ) ar_visibility_diffuse_transmit [ 0 locks=0 ] ( "on" ) ar_visibility_specular_transmit [ 0 locks=0 ] ( "on" ) ar_visibility_diffuse_reflect [ 0 locks=0 ] ( "on" ) ar_visibility_specular_reflect [ 0 locks=0 ] ( "on" ) ar_visibility_volume [ 0 locks=0 ] ( "on" ) ar_receive_shadows [ 0 locks=0 ] ( "on" ) ar_self_shadows [ 0 locks=0 ] ( "on" ) ar_opaque [ 0 locks=0 ] ( "on" ) ar_matte [ 0 locks=0 ] ( [ ar_matte 0 ] ) ar_skip [ 0 locks=0 ] ( "off" ) ar_use_light_group [ 0 locks=0 ] ( "off" ) ar_light_group [ 0 locks=0 ] ( "" ) ar_use_shadow_group [ 0 locks=0 ] ( "off" ) ar_shadow_group [ 0 locks=0 ] ( "" ) ar_trace_sets [ 0 locks=0 ] ( sphere ) ar_sss_setname [ 0 locks=0 ] ( "" ) ar_smoothing [ 0 locks=0 ] ( "on" ) ar_invert_normals [ 0 locks=0 ] ( "off" ) ar_sidedness_camera [ 0 locks=0 ] ( "on" ) ar_sidedness_shadow [ 0 locks=0 ] ( "on" ) ar_sidedness_diffuse_transmit [ 0 locks=0 ] ( "on" ) ar_sidedness_specular_transmit [ 0 locks=0 ] ( "on" ) ar_sidedness_diffuse_reflect [ 0 locks=0 ] ( "on" ) ar_sidedness_specular_reflect [ 0 locks=0 ] ( "on" ) ar_sidedness_volume [ 0 locks=0 ] ( "on" ) } 0707070000010000000006660000000000000000010000001440237341500003400000000134obj/sphere_object1.userdata ___Version___19.5.493___toolcount___3 ___toolid___geometry_sphere0707070000010000000006660000000000000000010000001440237341500004000000000035obj/sphere_object1/sphere1.inittype = sphere matchesdef = 1 0707070000010000000006660000000000000000010000001440237341500003700000000700obj/sphere_object1/sphere1.defsopflags sopflags = comment "" position 0 0 connectornextid 0 flags = lock off model off template off footprint off xray off bypass off display on render on highlight on unload off savedata off compress on colordefault on exposed on outputsNamed3 { } inputsNamed3 { } inputs { } stat { create 1678374392 modify 1678374424 author OEM_User@DESKTOP-FJNJNKH access 0777 } color UT_Color RGB 0.8 0.8 0.8 delscript "" exprlanguage hscript end 0707070000010000000006660000000000000000010000001440237341500004000000000753obj/sphere_object1/sphere1.parm{ version 0.8 type [ 0 locks=0 ] ( "polymesh" ) surftype [ 0 locks=0 ] ( "quads" ) rad [ 0 locks=0 ] ( 0.5 0.5 0.5 ) t [ 0 locks=0 ] ( 0 0 0 ) r [ 0 locks=0 ] ( 0 0 0 ) scale [ 0 locks=0 ] ( 1 ) orient [ 0 locks=0 ] ( "y" ) freq [ 0 locks=0 ] ( 2 ) rows [ 0 locks=0 ] ( 13 ) cols [ 0 locks=0 ] ( 24 ) orderu [ 0 locks=0 ] ( 4 ) orderv [ 0 locks=0 ] ( 4 ) imperfect [ 0 locks=0 ] ( "on" ) upole [ 0 locks=0 ] ( "off" ) accurate [ 0 locks=0 ] ( "on" ) triangularpoles [ 0 locks=0 ] ( "on" ) } 0707070000010000000006660000000000000000010000001440237341500004400000000134obj/sphere_object1/sphere1.userdata ___Version___19.5.493___toolcount___3 ___toolid___geometry_sphere0707070000010000000006660000000000000000010000001440237341500002700000000002obj/sphere_object1.net1 0707070000010000000006660000000000000000010000001440237341500001200000000052obj.order3 grid_object1 box_object1 sphere_object1 0707070000010000000006660000000000000000010000001440237341500001000000000002obj.net1 0707070000010000000006660000000000000000010000001440237341500001000000000673out.defcomment "" position 0 1.5 connectornextid 0 flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on outputsNamed3 { } inputsNamed3 { } inputs { } stat { create 1581329963 modify 1678374620 author griggsl@MAD4H7J8D2.ads.autodesk.com access 0777 } color UT_Color RGB 0.8 0.8 0.8 delscript "" exprlanguage hscript end 0707070000010000000006660000000000000000010000001440237341500001100000000020out.parm{ version 0.8 } 0707070000010000000006660000000000000000010000001440237341500001500000000041out.userdata ___Version___19.5.4930707070000010000000006660000000000000000010000001440237341500002100000000035out/arnold1.inittype = arnold matchesdef = 0 0707070000010000000006660000000000000000010000001440237341500002000000000674out/arnold1.defcomment "" position -1.19083 0.333432 connectornextid 0 flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on outputsNamed3 { } inputsNamed3 { } inputs { } stat { create 1678374620 modify 1678374674 author OEM_User@DESKTOP-FJNJNKH access 0777 } color UT_Color RGB 0.8 0.8 0.8 delscript "" exprlanguage hscript end 0707070000010000000006660000000000000000010000001440237341500003100000440124out/arnold1.spareparmdef parm { name "execute" baseparm label "Render to Disk" joinnext export none } parm { name "renderdialog" baseparm label "Controls..." nolabel export none } parm { name "trange" baseparm label "Valid Frame Range" export none } parm { name "f" baseparm label "Start/End/Inc" export none } parm { name "take" baseparm label "Render with Take" export none } group { name "main6" label " Main " groupsimple { name "folder_camera2" label "Camera" parm { name "camera" baseparm label "Camera" export none } groupsimple { name "folder_subdivision2" label "Subdivision" parm { name "ar_subdiv_dicing_camera_enable" baseparm label "Use Alternate Dicing Camera" nolabel joinnext export none } parm { name "ar_subdiv_dicing_camera" baseparm label "Dicing Camera" export none } parm { name "ar_subdiv_frustum_culling" baseparm label "Enable" nolabel joinnext export none } parm { name "ar_subdiv_frustum_padding" baseparm label "Frustum Culling" export none } } } parm { name "target" baseparm label "Render Target" invisible export none } parm { name "sepparm" baseparm label "Separator" invisible export none } groupsimple { name "folder_objects2" label "Objects" parm { name "vobject" baseparm label "Candidate Objects" export none } parm { name "forceobject" baseparm label "Force Objects" export none } parm { name "excludeobject" baseparm label "Exclude Objects" export none } parm { name "phantom_objects" baseparm label "Forced Phantom" export none } parm { name "matte_objects" baseparm label "Forced Matte" export none } } groupsimple { name "folder_shaders2" label "Shaders" parm { name "ar_environment" baseparm label "Environment" export none } parm { name "ar_forced_materials" baseparm label "Forced Materials" export none } parm { name "ar_shader_override" baseparm label "Shader Override" export none } parm { name "ar_export_referenced_materials" baseparm label "Export Referenced Materials" export none } } parm { name "obj_light_sep" baseparm label "Separator" invisible export none } groupsimple { name "folder_lights2" label "Lights" parm { name "sololight" baseparm label "Solo Light" export none } parm { name "alights" baseparm label "Candidate Lights" export none } parm { name "forcelights" baseparm label "Force Lights" export none } parm { name "excludelights" baseparm label "Exclude Lights" export none } parm { name "soho_autoheadlight" baseparm label "Headlight Creation" invisible export none } parm { name "light_fog_sep" baseparm label "Separator" invisible export none } } parm { name "vfog" baseparm label "Visible Fog" invisible export none } parm { name "soho_viewport_menu" baseparm label "Show in Viewport Menu" export none } parm { name "soho_initsim" baseparm label "Initialize Simulation OPs" export none } parm { name "ar_render_selection_only" baseparm label "Render Selection Only" export none } parm { name "ar_render_selection_others" baseparm label "Render Others As" export none } } group { name "main6_1" label "Properties" parm { name "shop_propertiespath" baseparm label "Default Properties" export none } parm { name "ar_user_options" baseparm label "User Options" joinnext export none } parm { name "ar_user_options_enable" baseparm label "Enable" export none } group { name "folder0" label "Output" parm { name "ar_picture" label "Output Picture" type file default { "ip" } menureplace { [ "echo `pythonexprs(\"__import__('toolutils').parseDialogScriptMenu('FBrender')\")`" ] } parmtag { "filechooser_mode" "write" } parmtag { "spare_category" "Output" } } parm { name "vm_picture" label "Compat. Output Picture" type string invisible default { [ "chs(\"ar_picture\")" hscript-expr ] } range { 0 1 } parmtag { "spare_category" "Output" } } parm { name "override_camerares" label "Override Camera Resolution" type toggle default { "0" } parmtag { "spare_category" "Output" } } parm { name "res_fraction" label "Resolution Scale" type string default { "specific" } hidewhen "{ override_camerares == 0 }" menu { "0.1" "1/10 (One Tenth Resolution)" "0.2" "1/5 (One Fifth Resolution)" "0.25" "1/4 (Quarter Resolution)" "0.3333333" "1/3 (One Third Resolution)" "0.5" "1/2 (Half Resolution)" "0.6666666" "2/3 (Two Thirds Resolution)" "0.75" "3/4 (Three Quarter Resolution)" "specific" "User Specified Resolution" } parmtag { "spare_category" "Output" } } parm { name "res_override" label "Resolution" type intvector2 joinnext size 2 default { "640" "480" } hidewhen "{ override_camerares == 0 } { res_fraction != specific }" range { -1 1 } parmtag { "spare_category" "Output" } } parm { name "res_overrideMenu" label "Choose Resolution" type button nolabel default { "0" } hidewhen "{ override_camerares == 0 } { res_fraction != specific }" menumini { [ "echo `pythonexprs(\"__import__('toolutils').parseDialogScriptMenu('FBres')\")`" ] } parmtag { "script_callback" "opparm . res_override ( `arg(\"$script_value\", 0)` `arg(\"$script_value\", 1)` aspect_override ( `arg(\"$script_value\", 2)` )" } parmtag { "spare_category" "Output" } } parm { name "aspect_override" label "Pixel Aspect Ratio" type float default { "1" } hidewhen "{ override_camerares == 0 }" range { 0.05 2 } parmtag { "spare_category" "Output" } } parm { name "my_sep" label "Separator" type separator default { "" } hidewhen "{ override_camerares == 0 }" } parm { name "ar_overscan_enable" label "Overscan" type toggle default { "0" } help "Enable rendered image overscan." } parm { name "ar_denoise" label "Denoise with Optix" type toggle default { "0" } help "Enable optix denoising on beauty AOV. Not available when an imager graph is attached, instead add the optix imager in the graph." disablewhen "{ ar_imagers != \"\" }" hidewhen "{ ar_platform == darwin }" } parm { name "ar_output_variance" label "Output Variance AOV" type toggle default { "0" } help "Add an extra variance AOV to the beauty for arnold denoising. If the AOVs N, Z, diffuse_albedo then they will be used to enhance the denoising." disablewhen "{ ar_picture_format != exr }" } parm { name "ar_overscan" label "Overscan Margins" type intvector4 size 4 default { "0" "ch(\"ar_overscanx\")" "ch(\"ar_overscanx\")" "ch(\"ar_overscanx\")" } help "Extend the render region by those amounts in pixels. EXR output will fully respect the overscan region with differing data and display windows, but the other image formats will simply enlarge the final image resolution to incorporate overscan since they cannot accommodate data outside the display area of the image." hidewhen "{ ar_overscan_enable == 0 }" range { 0 100 } } parm { name "ar_overscan_label" label " " type label size 4 default { "Top" "Bottom" "Left" "Right" } hidewhen "{ ar_overscan_enable == 0 }" } parm { name "ar_overscan_separator" label "Separator" type separator default { "" } hidewhen "{ ar_overscan_enable == 0 }" } parm { name "ar_picture_format" label "Image Format" type string joinnext default { "exr" } help "Output image file format." menu { "exr" "OpenEXR" "deepexr" "Deep OpenEXR" "tiff" "TIFF" "png" "PNG" "jpeg" "JPEG" } parmtag { "spare_category" "Output" } } parm { name "ar_picture_tiling" label " Tiling" type integer default { "0" } help "Allows to save the image in scanline or tiled mode. It seems Scanline works better with composition packages like Nuke or Fusion." hidewhen "{ ar_picture_format != exr ar_picture_format != deepexr ar_picture_format != tiff }" menu { "0" "Scanline " "1" "Tiled" } range { 0 10 } parmtag { "spare_category" "Output" } } parm { name "ar_tiff_format" label "Pixel Format" type string joinnext default { "0" } help "TIFF bit depth." hidewhen "{ ar_picture_format != tiff }" menu { "int8" "Integer 8 bit " "int16" "Integer 16 bit" "int32" "Integer 32 bit" "float32" "Float 32 bit" } parmtag { "spare_category" "Output" } } parm { name "ar_tiff_compression" label " Compression" type string default { "lzw" } help "Specifies the compression mode of the TIFF file." hidewhen "{ ar_picture_format != tiff }" menu { "none" "None" "lzw" "LZW" "ccittrle" "CCITT RLE" "zip" "Zip" "packbits" "PackBits" } parmtag { "spare_category" "Output" } } parm { name "ar_tiff_color_family" label "Color Space" type string joinnext default { "All" } help "The output color family." hidewhen "{ ar_picture_format != tiff }" menu { [ "import htoa.ocio" ] [ "color_family_menu = htoa.ocio.colorFamilyMenu()" ] [ "color_space_menu = htoa.ocio.outputColorSpaceMenu(kwargs['node'].parm('ar_tiff_color_family').eval())" ] [ "if kwargs['node'].parm('ar_tiff_color_space').eval() not in color_space_menu:" ] [ " kwargs['node'].parm('ar_tiff_color_space').set('auto')" ] [ "return color_family_menu" ] language python } parmtag { "spare_category" "Output" } } parm { name "ar_tiff_color_space" label "Color Space" type string nolabel default { "auto" } help "The output color space." hidewhen "{ ar_picture_format != tiff }" menu { [ "import htoa.ocio" ] [ "family = kwargs['node'].parm('ar_tiff_color_family').eval()" ] [ "return htoa.ocio.outputColorSpaceMenu(family)" ] language python } parmtag { "spare_category" "Output" } } parm { name "ar_png_format" label "Pixel Format" type string default { "0" } help "PNG bit depth." hidewhen "{ ar_picture_format != png }" menu { "int8" "Integer 8 bit " "int16" "Integer 16 bit" } parmtag { "spare_category" "Output" } } parm { name "ar_png_color_family" label "Color Space" type string joinnext default { "All" } help "The output color family." hidewhen "{ ar_picture_format != png }" menu { [ "import htoa.ocio" ] [ "color_family_menu = htoa.ocio.colorFamilyMenu()" ] [ "color_space_menu = htoa.ocio.outputColorSpaceMenu(kwargs['node'].parm('ar_png_color_family').eval())" ] [ "if kwargs['node'].parm('ar_png_color_space').eval() not in color_space_menu:" ] [ " kwargs['node'].parm('ar_png_color_space').set('auto')" ] [ "return color_family_menu" ] language python } parmtag { "spare_category" "Output" } } parm { name "ar_png_color_space" label "Color Space" type string nolabel default { "auto" } help "The output color space." hidewhen "{ ar_picture_format != png }" menu { [ "import htoa.ocio" ] [ "family = kwargs['node'].parm('ar_png_color_family').eval()" ] [ "return htoa.ocio.outputColorSpaceMenu(family)" ] language python } parmtag { "spare_category" "Output" } } parm { name "ar_exr_compression" label "Compression" type string default { "zip" } help "Specifies the compression mode of the EXR file:\n\n- None: Disables all compression.\n\n- Run Length Encoding (RLE): This is a basic form of compression that is comparable to that used by standard Targa files.\n\n- Zip (per scanline): Zip style compression applied to individual scanlines.\n\n- Zip (16 scanline blocks): Zip style compression applied to blocks of 16 scanlines at time. This tends to be the most effective style of compression to use with rendered images that do not have film grain applied.\n\n- PIZ: This uses a new combined wavelet / Huffman compression. This form of compression is quite effective when dealing with grainy images, and will often surpass any of the other options under grainy conditions.\n\n- PXR24: This form of compression from Pixar converts data to 24 bit then uses Zip compression. It is lossless for half and 32bit integer data and slightly lossy for 32bit float data.\n\n- B44: This form of compression is lossy for half data and stores 32bit data uncompressed.\n\n- B44A: An extension to B44 where areas of flat color are further compressed. Regular B44 compresses uniformly regardless of image content.\n\n- DWAA: JPEG-like lossy compression format contributed by DreamWorks Animation. Compresses 32 scanlines together.\n\n- DWAB: Same as DWAA, but compresses blocks of 256 scanlines." hidewhen "{ ar_picture_format != exr }" menu { "none" "None " "rle" "Run Length Encoding (RLE)" "zips" "Zip (per scanline)" "zip" "Zip (16 scanline blocks)" "piz" "PIZ" "pxr24" "PXR24" "b44" "B44" "b44a" "B44A" "dwaa" "DWAA" "dwab" "DWAB" } parmtag { "spare_category" "Output" } } parm { name "ar_exr_color_family" label "Color Space" type string joinnext default { "All" } help "The output color family." hidewhen "{ ar_picture_format != exr }" menu { [ "import htoa.ocio" ] [ "color_family_menu = htoa.ocio.colorFamilyMenu(filter_linear=True)" ] [ "color_space_menu = htoa.ocio.outputColorSpaceMenu(kwargs['node'].parm('ar_exr_color_family').eval(), filter_linear=True)" ] [ "if kwargs['node'].parm('ar_exr_color_space').eval() not in color_space_menu:" ] [ " kwargs['node'].parm('ar_exr_color_space').set('auto')" ] [ "return color_family_menu" ] language python } parmtag { "spare_category" "Output" } } parm { name "ar_exr_color_space" label "Color Space" type string nolabel default { "auto" } help "The output color space." hidewhen "{ ar_picture_format != exr }" menu { [ "import htoa.ocio" ] [ "family = kwargs['node'].parm('ar_exr_color_family').eval()" ] [ "return htoa.ocio.outputColorSpaceMenu(family, filter_linear=True)" ] language python } parmtag { "spare_category" "Output" } } parm { name "ar_jpeg_color_family" label "Color Space" type string joinnext default { "All" } help "The output color family." hidewhen "{ ar_picture_format != jpeg }" menu { [ "import htoa.ocio" ] [ "color_family_menu = htoa.ocio.colorFamilyMenu()" ] [ "color_space_menu = htoa.ocio.outputColorSpaceMenu(kwargs['node'].parm('ar_jpeg_color_family').eval())" ] [ "if kwargs['node'].parm('ar_jpeg_color_space').eval() not in color_space_menu:" ] [ " kwargs['node'].parm('ar_jpeg_color_space').set('auto')" ] [ "return color_family_menu" ] language python } parmtag { "spare_category" "Output" } } parm { name "ar_jpeg_color_space" label "Color Space" type string nolabel default { "auto" } help "The output color space." hidewhen "{ ar_picture_format != jpeg }" menu { [ "import htoa.ocio" ] [ "family = kwargs['node'].parm('ar_jpeg_color_family').eval()" ] [ "return htoa.ocio.outputColorSpaceMenu(family)" ] language python } parmtag { "spare_category" "Output" } } parm { name "ar_jpeg_quality" label "JPEG Quality" type integer default { "100" } help "JPEG compression quality." hidewhen "{ ar_picture_format != jpeg }" range { 1! 100! } parmtag { "spare_category" "Output" } } parm { name "ar_exr_half_precision" label "Half Precision" type toggle default { "0" } help "Store pixels as half-floats instead of floats." hidewhen "{ ar_picture_format != exr }" parmtag { "spare_category" "Output" } } parm { name "ar_exr_multipart" label "Multipart" type toggle default { "0" } help "The ability to encode separate, but related, images in one file. This allows for access to individual parts without the need to read other parts in the file." hidewhen "{ ar_picture_format != exr }" parmtag { "spare_category" "Output" } } parm { name "ar_exr_preserve_layer_name" label "Preserve Layer Name" type toggle default { "0" } help "If checked, will store the AOV in a layer different with the name of the AOV, and not the RGB." hidewhen "{ ar_picture_format != exr }" parmtag { "spare_category" "Output" } } parm { name "ar_exr_autocrop" label "Autocrop" type toggle default { "0" } help "Automatically crop uniform borders." disablewhen "{ ar_picture_tiling != 0 }" hidewhen "{ ar_picture_format != exr }" parmtag { "spare_category" "Output" } } parm { name "ar_picture_output_padded" label "Pad Crop Region" type toggle default { "0" } help "Defines a padding around the crop region." hidewhen "{ ar_picture_format == exr } { ar_picture_format == deepexr }" parmtag { "spare_category" "Output" } } parm { name "ar_picture_dither" label "Dithering" type toggle default { "1" } help "Applies a small amount of noise to the final pixel values. This helps minimize banding artifacts apparent on 8-bit output image file formats such as TIFF8." hidewhen "{ ar_picture_format == exr } { ar_picture_format == deepexr }" parmtag { "spare_category" "Output" } } parm { name "ar_tiff_unpremult_alpha" label "Unpremultiply Alpha" type toggle default { "0" } help "Specifies whether the main RGB channel is premultiplied with the alpha channel (the default) or not. It only works with 8-bit output images." hidewhen "{ ar_picture_format != tiff }" parmtag { "spare_category" "Output" } } parm { name "ar_tiff_skip_alpha" label "Skip Alpha" type toggle default { "0" } help "Skip the alpha channel of RGBA outputs." hidewhen "{ ar_picture_format != tiff }" parmtag { "spare_category" "Output" } } parm { name "ar_deepexr_subpixel_merge" label "Merge Subpixel Samples" type toggle default { "1" } help "Nearby subpixel samples will be merged." hidewhen "{ ar_picture_format != deepexr }" parmtag { "spare_category" "Output" } } parm { name "ar_deepexr_beauty_tolerance" label "Beauty Tolerance" type log default { "0.01" } help "Beauty tolerance over which samples will not be merged together." disablewhen "{ ar_deepexr_subpixel_merge == 0 }" hidewhen "{ ar_picture_format != deepexr }" range { 0! 1 } parmtag { "spare_category" "Output" } } parm { name "ar_deepexr_alpha_tolerance" label "Alpha Tolerance" type log default { "0.01" } help "Alpha tolerance over which samples will not be merged together." disablewhen "{ ar_deepexr_subpixel_merge == 0 }" hidewhen "{ ar_picture_format != deepexr }" range { 0! 1 } parmtag { "spare_category" "Output" } } parm { name "ar_deepexr_depth_tolerance" label "Depth Tolerance" type log default { "0.01" } help "Depth tolerance over which samples will not be merged together." disablewhen "{ ar_deepexr_subpixel_merge == 0 }" hidewhen "{ ar_picture_format != deepexr }" range { 0! 10 } parmtag { "spare_category" "Output" } } parm { name "ar_deepexr_beauty_half_precision" label "Half Precision for Beauty" type toggle default { "0" } help "Store beauty layer as half-floats instead of floats." hidewhen "{ ar_picture_format != deepexr }" parmtag { "spare_category" "Output" } } parm { name "ar_deepexr_alpha_half_precision" label "Half Precision for Alpha" type toggle default { "0" } help "Store alpha layer as half-floats instead of floats." hidewhen "{ ar_picture_format != deepexr }" parmtag { "spare_category" "Output" } } parm { name "ar_deepexr_depth_half_precision" label "Half Precision for Depth" type toggle default { "0" } help "Store depth layer as half-floats instead of floats." hidewhen "{ ar_picture_format != deepexr }" parmtag { "spare_category" "Output" } } parm { name "ar_deepexr_use_RGB_opacity" label "RGB Opacity" type toggle default { "0" } help "Write out RGB opacity, rather than just alpha. Nuke can read these images but cannot display them." hidewhen "{ ar_picture_format != deepexr }" parmtag { "spare_category" "Output" } } parm { name "ar_deepexr_enable_filtering" label "Filter Beauty" type toggle default { "1" } help "If set to false disable any filtering operation on this layer's raw data -- useful for normals or ID layers." hidewhen "{ ar_picture_format != deepexr }" parmtag { "spare_category" "Output" } } parm { name "ar_picture_append" label "Append" type toggle default { "0" } help "Append to existing tiles when re-rendering the same image." disablewhen "{ ar_picture_tiling != 1 }" hidewhen "{ ar_picture_format != exr ar_picture_format != deepexr ar_picture_format != tiff }" parmtag { "spare_category" "Output" } } multiparm { name "ar_exr_metadata" label "Metadata" hidewhen "{ ar_picture_format != exr ar_picture_format != deepexr }" parmtag { "spare_category" "Output" } parm { name "ar_exr_metadata_key#" label "Key" type string joinnext default { "metadata#" } help "Metadata key name." range { 0 1 } } parm { name "ar_exr_metadata_type#" label " Type" type ordinal default { "4" } help "Metadata type." menu { "int" "Integer" "float" "Float" "point2" "Point2" "matrix" "Matrix" "string" "String" } range { 0 1 } } parm { name "ar_exr_metadata_int_value#" label "Value" type integer default { "0" } help "Metadata integer value." hidewhen "{ ar_exr_metadata_type# != int }" range { 0 10 } } parm { name "ar_exr_metadata_float_value#" label "Value" type float default { "0" } help "Metadata float value." hidewhen "{ ar_exr_metadata_type# != float }" range { 0 10 } } parm { name "ar_exr_metadata_point2_value#" label "Value" type vector2 size 2 default { "0" "0" } help "Metadata Point2 value." hidewhen "{ ar_exr_metadata_type# != point2 }" range { -1 1 } } parm { name "ar_exr_metadata_matrix_value#" label "Value" type float size 16 default { "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" "0" } help "Metadata matrix value." hidewhen "{ ar_exr_metadata_type# != matrix }" range { 0 10 } } parm { name "ar_exr_metadata_string_value#" label "Value" type string default { "" } help "Metadata string value." hidewhen "{ ar_exr_metadata_type# != string }" range { 0 1 } } } parm { name "ar_enable_aov_composition" label "Enable AOV Composition" type toggle invisible default { "1" } help "Globally control whether any capable AOVs will automatically compose through semi-opaque surfaces rendered using auto-transparency. AOVs which are composable (i.e., which have opacity-blending capability) are provided in the standard, lambert, and hair shaders." parmtag { "spare_category" "Output" } } parm { name "ar_multicam" label "Enable Multicam" type toggle invisible default { "1" } help "Helper flag for HtoA to determine if muticam is supported in the render context. IPR contexts disable multicam." parmtag { "spare_category" "Output" } } parm { name "ar_imagers" label "Imagers" type oppath default { "" } help "Select a driver output defining an imager graph to apply post process effects to the beauty pass." parmtag { "opfilter" "!!CUSTOM/VOP!!" } parmtag { "oprelative" "." } parmtag { "spare_category" "Output" } } parm { name "ar_aov_shaders" label "AOV Shaders" type oppath default { "" } help "AOV shader will be evaluated after the regular surface shader. With this it is possible to add shaders to set specific AOVs without modifying the original shader tree, such as the popular Cryptomatte automatic ID matte shader." parmtag { "opfilter" "!!CUSTOM/MATERIAL!!" } parmtag { "oprelative" "." } parmtag { "spare_category" "Output" } } multiparm { name "ar_aovs" label "AOVs" parmtag { "spare_category" "Output" } parm { name "ar_enable_aov#" label "Enable AOV #" type toggle nolabel joinnext default { "1" } parmtag { "spare_category" "Output" } } parm { name "ar_aov_label#" label "AOV #" type string default { "" } help "The AOV name" disablewhen "{ ar_enable_aov# == 0 }" menureplace { [ "import htoa.properties" ] [ "return htoa.properties.aovMenu()" ] language python } parmtag { "script_callback" "opparm . vm_vextype_plane$script_multiparm_index ( `ifs(index(\",Pz,Af,Render_Time,Op_Id,Prim_Id,level,specularlevel,diffuselevel,direct_samples,indirect_samples,\", \",$script_value,\")>=0, \"float\", \"vector\")` )" } parmtag { "spare_category" "Output" } } parm { name "ar_aov_exr_enable_layer_name#" label "Enable Layer Name #" type toggle nolabel joinnext default { "0" } disablewhen "{ ar_enable_aov# == 0 } { ar_aov_label# == \"\" } { ar_aov_separate# == 1 ar_aov_picture_format# != beauty ar_aov_picture_format# != exr ar_aov_picture_format# != deepexr } { ar_aov_separate# == 0 ar_picture_format == tiff } { ar_aov_separate# == 0 ar_picture_format == jpg } { ar_aov_separate# == 0 ar_picture_format == png } { ar_aov_separate# == 1 ar_aov_picture_format# == beauty ar_picture_format == tiff } { ar_aov_separate# == 1 ar_aov_picture_format# == beauty ar_picture_format == jpg } { ar_aov_separate# == 1 ar_aov_picture_format# == beauty ar_picture_format == png }" parmtag { "spare_category" "Output" } } parm { name "ar_aov_exr_layer_name#" label "Layer Name" type string default { "" } help "The EXR layer name. If this is the empty string then the ar_aov_label is used as the exr layer name as usual." disablewhen "{ ar_enable_aov# == 0 } { ar_aov_label# == \"\" } { ar_aov_exr_enable_layer_name# == 0 } { ar_aov_separate# == 1 ar_aov_picture_format# != beauty ar_aov_picture_format# != exr ar_aov_picture_format# != deepexr } { ar_aov_separate# == 0 ar_picture_format == tiff } { ar_aov_separate# == 0 ar_picture_format == jpg } { ar_aov_separate# == 0 ar_picture_format == png } { ar_aov_separate# == 1 ar_aov_picture_format# == beauty ar_picture_format == tiff } { ar_aov_separate# == 1 ar_aov_picture_format# == beauty ar_picture_format == jpg } { ar_aov_separate# == 1 ar_aov_picture_format# == beauty ar_picture_format == png }" parmtag { "spare_category" "Output" } } parm { name "ar_aov_lpe_enable#" label "Enable Light Path Expression" type toggle nolabel joinnext default { "0" } help "Enable a custom light path expression for this AOV." disablewhen "{ ar_enable_aov# == 0 } { ar_aov_label# == \"\" }" parmtag { "spare_category" "Output" } } parm { name "ar_aov_lpe#" label "Light Path Expr." type string default { "" } help "Custom light path expression for this AOV." disablewhen "{ ar_enable_aov# == 0 } { ar_aov_label# == \"\" } { ar_aov_lpe_enable# == 0 } { ar_aov_camera# == camera }" menutoggle { [ "import htoa.properties" ] [ "return htoa.properties.lpeMenu()" ] language python } parmtag { "script_callback" "kwargs['parm'].set(kwargs['script_value'].replace(' ', ''))" } parmtag { "script_callback_language" "python" } parmtag { "spare_category" "Output" } } parm { name "ar_aov_camera_enable#" label "Enable AOV Camera" type toggle nolabel joinnext default { "0" } help "Enable using a separable camera for this AOV." disablewhen "{ ar_enable_aov# == 0 } { ar_aov_label# == \"\" }" parmtag { "spare_category" "Output" } } parm { name "ar_aov_camera#" label "Camera" type oppath default { "" } help "The camera to use for this AOV. When the camera is different from the main camera, you need to specify a separate file to render the AOV to. Also, the AOV will be ignored in interactive rendering contexts." disablewhen "{ ar_enable_aov# == 0 } { ar_aov_label# == \"\" } { ar_aov_camera_enable# == 0 }" parmtag { "opfilter" "!!OBJ/CAMERA!!" } parmtag { "oprelative" "." } parmtag { "spare_category" "Output" } } parm { name "ar_aov_separate#" label "Output to Separate File" type toggle nolabel joinnext default { "0" } help "Save this deep raster plane to a different disk file than the main image." disablewhen "{ ar_enable_aov# == 0 } { ar_aov_label# == \"\" }" parmtag { "spare_category" "Output" } } parm { name "ar_aov_separate_file#" label "Separate File" type file default { "" } help "Save this deep raster plane to a different disk file than the main image.\nThis does *not* work when rendering to mplay." disablewhen "{ ar_enable_aov# == 0 } { ar_aov_label# == \"\" } { ar_aov_separate# == 0 } { ar_aov_camera# == camera }" menureplace { [ "echo `pythonexprs(\"__import__('toolutils').parseDialogScriptMenu('FBrender')\")`" ] } parmtag { "filechooser_mode" "write" } parmtag { "spare_category" "Output" } } parm { name "ar_aov_denoise_enable#" label "Denoise with Optix" type toggle default { "0" } help "Enable optix denoiser for this AOV. Not available when an imager graph is attached, instead add the optix imager in the graph." disablewhen "{ ar_imagers != \"\" } { ar_enable_aov# == 0 } { ar_aov_label# == \"\" }" hidewhen "{ ar_platform == darwin }" parmtag { "spare_category" "Output" } } parm { name "ar_aov_picture_format#" label "Image Format" type string joinnext default { "beauty" } help "AOV image file format." disablewhen "{ ar_enable_aov# == 0 } { ar_aov_label# == \"\" } { ar_aov_separate# == 0 }" menu { "beauty" "Same as Beauty " "exr" "OpenEXR" "deepexr" "Deep OpenEXR" "tiff" "TIFF" "png" "PNG" "jpeg" "JPEG" } parmtag { "spare_category" "Output" } } parm { name "ar_aov_type#" label " Type" type string default { "RGB" } help "The type associated with the AOV" disablewhen "{ ar_enable_aov# == 0 } { ar_aov_label# == \"\" }" menu { "RGB" "RGB" "RGBA" "RGBA" "BOOL" "Boolean" "INT" "Integer" "UINT" "Unsigned Integer" "FLOAT" "Float" "VECTOR" "Vector" "VECTOR2" "Vector 2D" "NODE" "Node Pointer" } parmtag { "spare_category" "Output" } } parm { name "ar_aov_exr_compression#" label "Compression" type string joinnext default { "beauty" } help "Specifies the compression mode of the EXR file:\n\n- None: Disables all compression.\n\n- Run Length Encoding (RLE): This is a basic form of compression that is comparable to that used by standard Targa files.\n\n- Zip (per scanline): Zip style compression applied to individual scanlines.\n\n- Zip (16 scanline blocks): Zip style compression applied to blocks of 16 scanlines at time. This tends to be the most effective style of compression to use with rendered images that do not have film grain applied.\n\n- PIZ: This uses a new combined wavelet / Huffman compression. This form of compression is quite effective when dealing with grainy images, and will often surpass any of the other options under grainy conditions.\n\n- PXR24: This form of compression from Pixar converts data to 24 bit then uses Zip compression. It is lossless for half and 32bit integer data and slightly lossy for 32bit float data.\n\n- B44: This form of compression is lossy for half data and stores 32bit data uncompressed.\n\n- B44A: An extension to B44 where areas of flat color are further compressed. Regular B44 compresses uniformly regardless of image content.\n\n- DWAA: JPEG-like lossy compression format contributed by DreamWorks Animation. Compresses 32 scanlines together.\n\n- DWAB: Same as DWAA, but compresses blocks of 256 scanlines." disablewhen "{ ar_enable_aov# == 0 } { ar_aov_label# == \"\" } { ar_aov_separate# == 0 } { ar_aov_separate# == 1 ar_aov_picture_format# != beauty ar_aov_picture_format# != exr } { ar_aov_separate# == 0 ar_picture_format == tiff } { ar_aov_separate# == 0 ar_picture_format == jpg } { ar_aov_separate# == 0 ar_picture_format == png } { ar_aov_separate# == 1 ar_aov_picture_format# == beauty ar_picture_format == tiff } { ar_aov_separate# == 1 ar_aov_picture_format# == beauty ar_picture_format == jpg } { ar_aov_separate# == 1 ar_aov_picture_format# == beauty ar_picture_format == png }" menu { "beauty" "Same as Beauty " "none" "None " "rle" "Run Length Encoding (RLE)" "zips" "Zip (per scanline)" "zip" "Zip (16 scanline blocks)" "piz" "PIZ" "pxr24" "PXR24" "b44" "B44" "b44a" "B44A" "dwaa" "DWAA" "dwab" "DWAB" } parmtag { "spare_category" "Output" } } parm { name "ar_aov_exr_precision#" label "Precision" type string default { "beauty" } help "EXR precision." disablewhen "{ ar_enable_aov# == 0 } { ar_aov_label# == \"\" } { ar_aov_separate# == 1 ar_aov_picture_format# != beauty ar_aov_picture_format# != exr ar_aov_picture_format# != deepexr } { ar_aov_separate# == 0 ar_picture_format == tiff } { ar_aov_separate# == 0 ar_picture_format == jpg } { ar_aov_separate# == 0 ar_picture_format == png } { ar_aov_separate# == 1 ar_aov_picture_format# == beauty ar_picture_format == tiff } { ar_aov_separate# == 1 ar_aov_picture_format# == beauty ar_picture_format == jpg } { ar_aov_separate# == 1 ar_aov_picture_format# == beauty ar_picture_format == png }" menu { "beauty" "Same as Beauty " "half" "Float 16 bit" "float" "Float 32 bit" } parmtag { "spare_category" "Output" } } parm { name "ar_aov_tiff_format#" label "Pixel Format" type string default { "beauty" } help "TIFF bit depth." disablewhen "{ ar_enable_aov# == 0 } { ar_aov_label# == \"\" } { ar_aov_separate# == 0 }" hidewhen "{ ar_aov_picture_format# != tiff }" menu { "beauty" "Same as Beauty " "int8" "Integer 8 bit " "int16" "Integer 16 bit" "int32" "Integer 32 bit" "float32" "Float 32 bit" } parmtag { "spare_category" "Output" } } parm { name "ar_aov_png_format#" label "Pixel Format" type string default { "beauty" } help "PNG bit depth." disablewhen "{ ar_enable_aov# == 0 } { ar_aov_label# == \"\" } { ar_aov_separate# == 0 }" hidewhen "{ ar_aov_picture_format# != png }" menu { "beauty" "Same as Beauty " "int8" "Integer 8 bit " "int16" "Integer 16 bit" } parmtag { "spare_category" "Output" } } parm { name "ar_aov_pixel_filter#" label "Pixel Filter" type string joinnext default { "beauty" } help "The filter type used for averaging individual subpixel samples into a final pixel color. The default gaussian-2.0 is an excellent filter, you will rarely need anything other than gaussian." disablewhen "{ ar_enable_aov# == 0 } { ar_aov_label# == \"\" } { ar_aov_separate# == 0 ar_picture_format == deepexr } { ar_aov_separate# == 1 ar_aov_picture_format# == deepexr ar_aov_deep_enable_filtering# == 0 } { ar_aov_separate# == 1 ar_aov_picture_format# == beauty ar_picture_format == deepexr ar_aov_deep_enable_filtering# == 0 }" menu { "beauty" "Same as Beauty " "blackman_harris_filter" "Blackman-Harris" "box_filter" "Box" "catrom_filter" "Catmull-Rom" "closest_filter" "Closest" "farthest_filter" "Farthest" "gaussian_filter" "Gaussian" "heatmap_filter" "Heatmap" "mitnet_filter" "Mitchell-Netravali" "sinc_filter" "Sinc" "triangle_filter" "Triangle" "variance_filter" "Variance" "contour_filter" "Contour" } parmtag { "spare_category" "Output" } } parm { name "ar_aov_deep_enable_filtering#" label "Filter Deep AOV" type toggle default { "1" } help "If set to false disable any filtering operation on this layer's raw data -- useful for normals or ID layers." disablewhen "{ ar_enable_aov# == 0 } { ar_aov_label# == \"\" } { ar_aov_separate# == 0 ar_picture_format != deepexr } { ar_aov_separate# == 1 ar_aov_picture_format# != deepexr ar_aov_picture_format# != beauty } { ar_aov_separate# == 1 ar_aov_picture_format# == beauty ar_picture_format != deepexr }" parmtag { "spare_category" "Output" } } parm { name "ar_aov_pixel_filter_variance_filter_weights#" label "Variance Filter Weights" type string default { "box" } help "TODO" disablewhen "{ ar_enable_aov# == 0 } { ar_aov_label# == \"\" } { ar_aov_separate# == 0 ar_picture_format == deepexr } { ar_aov_separate# == 1 ar_aov_picture_format# == deepexr ar_aov_deep_enable_filtering# == 0 } { ar_aov_separate# == 1 ar_aov_picture_format# == beauty ar_picture_format == deepexr ar_aov_deep_enable_filtering# == 0 }" hidewhen "{ ar_aov_pixel_filter# != variance_filter }" menu { "blackman_harris" "Blackman-Harris" "box" "Box" "catrom" "Catmull-Rom" "gaussian" "Gaussian" "mitnet" "Mitchell-Netravali" "sinc" "Sinc" "triangle" "Triangle" } parmtag { "spare_category" "Output" } } parm { name "ar_aov_pixel_filter_width#" label "Width" type float default { "2" } help "The width of the subpixel sample averaging filter, in pixels. For circularly symmetric filters, this is the diameter of the filter's support." disablewhen "{ ar_enable_aov# == 0 } { ar_aov_label# == \"\" } { ar_aov_separate# == 0 ar_picture_format == deepexr } { ar_aov_separate# == 1 ar_aov_picture_format# == deepexr ar_aov_deep_enable_filtering# == 0 } { ar_aov_separate# == 1 ar_aov_picture_format# == beauty ar_picture_format == deepexr ar_aov_deep_enable_filtering# == 0 }" hidewhen "{ ar_enable_aov# == 0 } { ar_aov_pixel_filter# == beauty } { ar_aov_pixel_filter# == blackman_harris_filter } { ar_aov_pixel_filter# == sinc_filter } { ar_aov_pixel_filter# == farthest_filter } { ar_aov_pixel_filter# == closest_filter } { ar_aov_pixel_filter# == box_filter } { ar_aov_pixel_filter# == catrom_filter } { ar_aov_pixel_filter# == heatmap_filter } { ar_aov_pixel_filter# == mitnet_filter }" range { 0! 6 } parmtag { "spare_category" "Output" } } parm { name "ar_aov_pixel_filter_width_blackman_harris#" label "Width" type float default { "3" } help "The width of the subpixel sample averaging filter, in pixels. For circularly symmetric filters, this is the diameter of the filter's support." disablewhen "{ ar_enable_aov# == 0 } { ar_aov_label# == \"\" } { ar_aov_separate# == 0 ar_picture_format == deepexr } { ar_aov_separate# == 1 ar_aov_picture_format# == deepexr ar_aov_deep_enable_filtering# == 0 } { ar_aov_separate# == 1 ar_aov_picture_format# == beauty ar_picture_format == deepexr ar_aov_deep_enable_filtering# == 0 }" hidewhen "{ ar_aov_pixel_filter# != blackman_harris_filter }" range { 0! 6 } parmtag { "spare_category" "Output" } } parm { name "ar_aov_pixel_filter_width_sinc#" label "Width" type float default { "6" } help "The width of the subpixel sample averaging filter, in pixels. For circularly symmetric filters, this is the diameter of the filter's support." disablewhen "{ ar_enable_aov# == 0 } { ar_aov_label# == \"\" } { ar_aov_separate# == 0 ar_picture_format == deepexr } { ar_aov_separate# == 1 ar_aov_picture_format# == deepexr ar_aov_deep_enable_filtering# == 0 } { ar_aov_separate# == 1 ar_aov_picture_format# == beauty ar_picture_format == deepexr ar_aov_deep_enable_filtering# == 0 }" hidewhen "{ ar_aov_pixel_filter# != sinc_filter }" range { 0! 10 } parmtag { "spare_category" "Output" } } parm { name "ar_aov_pixel_filter_farthest_domain#" label "Farthest Domain" type string default { "first_hit" } help "TODO" disablewhen "{ ar_enable_aov# == 0 } { ar_aov_label# == \"\" } { ar_aov_separate# == 0 ar_picture_format == deepexr } { ar_aov_separate# == 1 ar_aov_picture_format# == deepexr ar_aov_deep_enable_filtering# == 0 } { ar_aov_separate# == 1 ar_aov_picture_format# == beauty ar_picture_format == deepexr ar_aov_deep_enable_filtering# == 0 }" hidewhen "{ ar_aov_pixel_filter# != farthest_filter }" menu { "first_hit" "First Hit " "all_hits" "All Hits" } parmtag { "spare_category" "Output" } } parm { name "ar_aov_pixel_filter_variance_scalar_mode#" label "Variance Scalar Mode" type toggle default { "0" } help "TODO" disablewhen "{ ar_enable_aov# == 0 } { ar_aov_label# == \"\" } { ar_aov_separate# == 0 ar_picture_format == deepexr } { ar_aov_separate# == 1 ar_aov_picture_format# == deepexr ar_aov_deep_enable_filtering# == 0 } { ar_aov_separate# == 1 ar_aov_picture_format# == beauty ar_picture_format == deepexr ar_aov_deep_enable_filtering# == 0 }" hidewhen "{ ar_aov_pixel_filter# != variance_filter }" parmtag { "spare_category" "Output" } } parm { name "ar_aov_pixel_filter_heatmap_minimum#" label "Heatmap Minimum" type float default { "0" } help "TODO" disablewhen "{ ar_enable_aov# == 0 } { ar_aov_label# == \"\" } { ar_aov_separate# == 0 ar_picture_format == deepexr } { ar_aov_separate# == 1 ar_aov_picture_format# == deepexr ar_aov_deep_enable_filtering# == 0 } { ar_aov_separate# == 1 ar_aov_picture_format# == beauty ar_picture_format == deepexr ar_aov_deep_enable_filtering# == 0 }" hidewhen "{ ar_aov_pixel_filter# != heatmap_filter }" range { 0 1 } parmtag { "spare_category" "Output" } } parm { name "ar_aov_pixel_filter_heatmap_maximum#" label "Heatmap Maximum" type float default { "1" } help "TODO" disablewhen "{ ar_enable_aov# == 0 } { ar_aov_label# == \"\" } { ar_aov_separate# == 0 ar_picture_format == deepexr } { ar_aov_separate# == 1 ar_aov_picture_format# == deepexr ar_aov_deep_enable_filtering# == 0 } { ar_aov_separate# == 1 ar_aov_picture_format# == beauty ar_picture_format == deepexr ar_aov_deep_enable_filtering# == 0 }" hidewhen "{ ar_aov_pixel_filter# != heatmap_filter }" range { 0 1 } parmtag { "spare_category" "Output" } } parm { name "ar_aov_deep_merge_tolerance#" label "Deep AOV Tolerance" type log default { "0.01" } help "Tolerance over which the AOV samples will not be merged together." disablewhen "{ ar_enable_aov# == 0 } { ar_aov_label# == \"\" } { ar_deepexr_subpixel_merge == 0 } { ar_aov_separate# == 0 ar_picture_format != deepexr } { ar_aov_separate# == 1 ar_aov_picture_format# != deepexr ar_aov_picture_format# != beauty } { ar_aov_separate# == 1 ar_aov_picture_format# == beauty ar_picture_format != deepexr }" range { 0! 10 } parmtag { "spare_category" "Output" } } parm { name "ar_aov_deep_half_precision#" label "Half Precision for Deep AOV" type toggle default { "0" } help "Use 16-bit floats for this AOV filtering." disablewhen "{ ar_enable_aov# == 0 } { ar_aov_label# == \"\" } { ar_aov_separate# == 0 ar_picture_format != deepexr } { ar_aov_separate# == 1 ar_aov_picture_format# != deepexr ar_aov_picture_format# != beauty } { ar_aov_separate# == 1 ar_aov_picture_format# == beauty ar_picture_format != deepexr }" parmtag { "spare_category" "Output" } } } parm { name "ar_overridden" label "Overridden Parameters" type toggle invisible default { "0" } help "Parameters have been overridden by one of the configuration files in $HH/soho/overrides." range { 0 1 } parmtag { "spare_category" "Output" } } } group { name "folder0_1" label "Sampling" groupsimple { name "group_samples" label "Samples" parm { name "ar_AA_samples" label "Camera (AA)" type integer default { "3" } help "Controls the amount of rays per pixel that will be traced from the camera. The higher the number of samples, the better the anti-aliasing quality, and the longer the render times. The exact number of rays per pixel is the square of this value. For example, an AA Samples value of 3 means 3x3 = 9 pixel samples." range { 1 10 } parmtag { "spare_category" "Sampling" } } parm { name "ar_enable_adaptive_sampling" label "Adaptive Sampling" type toggle nolabel joinnext default { "0" } help "Enable adaptive AA samples based on the variance level, according to the minimum and maximum AA samples." parmtag { "spare_category" "Sampling" } } parm { name "ar_AA_samples_max" label "Max. Camera (AA)" type integer default { "20" } help "When adaptive sampling is enabled, this control the maximum amount of rays per pixel that will be traced from the camera. The exact number of rays per pixel is the square of this value. Note that setting this parameter to a value lower or equal to AA samples will disable adaptive sampling." disablewhen "{ ar_enable_adaptive_sampling == 0 }" range { 1 10 } parmtag { "spare_category" "Sampling" } } parm { name "ar_AA_samples_extra" label "Extra AA" type integer invisible default { [ "ch(\"ar_AA_samples_max\") - ch(\"ar_AA_samples\")" hscript-expr ] } help "Maximum extra AA levels. For UI logic purposes only." range { 0 10 } parmtag { "spare_category" "Sampling" } } parm { name "ar_AA_adaptive_threshold" label "Adaptive Threshold" type log default { "0.015" } help "The variance-based threshold. Adapative sampling will stop if the variance is below this level." disablewhen "{ ar_enable_adaptive_sampling == 0 } { ar_AA_samples_extra <= 0 }" range { 0.0001 1 } parmtag { "spare_category" "Sampling" } } parm { name "ar_GI_diffuse_samples" label "Diffuse" type integer default { "2" } help "The number of hemispherical rays fired for indirect diffuse GI shader evaluations. Increase this number to reduce the diffuse GI noise. The exact number of hemispherical rays is the square of this value. This is not supported for GPU renders." disablewhen "{ ar_render_device == GPU ar_platform != darwin }" range { 0! 10 } parmtag { "spare_category" "Sampling" } } parm { name "ar_GI_specular_samples" label "Specular" type integer default { "2" } help "The number of BRDF rays fired for indirect glossy specular shader evaluations. Increase this number to reduce the noise in soft/blurry reflections. The exact number of rays is the square of this value. This is not supported for GPU renders." disablewhen "{ ar_render_device == GPU ar_platform != darwin }" range { 0! 10 } parmtag { "spare_category" "Sampling" } } parm { name "ar_GI_transmission_samples" label "Transmission" type integer default { "2" } help "The number of samples used to simulate the microfacet-based glossy transmission evaluations. This is not supported for GPU renders." disablewhen "{ ar_render_device == GPU ar_platform != darwin }" range { 0! 10 } parmtag { "spare_category" "Sampling" } } parm { name "ar_GI_sss_samples" label "SSS" type integer default { "2" } help "The number of SSS lighting samples (direct and indirect) that will be taken to estimate lighting within a radius of the point being shaded. Higher values produce a cleaner solution, but will take longer to render. This is not supported for GPU renders." disablewhen "{ ar_render_device == GPU ar_platform != darwin }" range { 0! 10 } parmtag { "spare_category" "Sampling" } } parm { name "ar_GI_volume_samples" label "Volume Indirect" type integer default { "2" } help "The number of indirect diffuse samples for volumes. Higher values reduce the noise, but will take longer to render. This is not supported for GPU renders." disablewhen "{ ar_render_device == GPU ar_platform != darwin }" range { 0! 10 } parmtag { "spare_category" "Sampling" } } parm { name "ar_enable_progressive_render" label "Progressive Render" type toggle default { "0" } help "Enable progressive sampling." disablewhen "{ ar_render_device == GPU ar_platform != darwin }" parmtag { "spare_category" "Sampling" } } } groupsimple { name "group_pixelfilter" label "Pixel Filter" parm { name "ar_pixel_filter_type" label "Pixel Filter" type string default { "gaussian_filter" } help "The filter type used for averaging individual subpixel samples into a final pixel color. The default gaussian-2.0 is an excellent filter, you will rarely need anything other than gaussian." disablewhen "{ ar_picture_format == deepexr ar_deepexr_enable_filtering == 0 }" menu { "blackman_harris_filter" "Blackman-Harris" "box_filter" "Box" "catrom_filter" "Catmull-Rom" "closest_filter" "Closest" "farthest_filter" "Farthest" "gaussian_filter" "Gaussian" "heatmap_filter" "Heatmap" "mitnet_filter" "Mitchell-Netravali" "sinc_filter" "Sinc" "triangle_filter" "Triangle" "variance_filter" "Variance" "contour_filter" "Contour" } parmtag { "spare_category" "Sampling" } } parm { name "ar_pixel_filter_width" label "Filter Width" type float default { "2" } help "The width of the subpixel sample averaging filter, in pixels. For circularly symmetric filters, this is the diameter of the filter's support." disablewhen "{ ar_picture_format == deepexr ar_deepexr_enable_filtering == 0 }" hidewhen "{ ar_pixel_filter_type == blackman_harris_filter } { ar_pixel_filter_type == sinc_filter } { ar_pixel_filter_type == farthest_filter } { ar_pixel_filter_type == closest_filter } { ar_pixel_filter_type == box_filter } { ar_pixel_filter_type == catrom_filter } { ar_pixel_filter_type == heatmap_filter } { ar_pixel_filter_type == mitnet_filter }" range { 0! 6 } parmtag { "spare_category" "Sampling" } } parm { name "ar_pixel_filter_width_blackman_harris" label "Filter Width" type float default { "3" } help "The width of the subpixel sample averaging filter, in pixels. For circularly symmetric filters, this is the diameter of the filter's support." disablewhen "{ ar_picture_format == deepexr ar_deepexr_enable_filtering == 0 }" hidewhen "{ ar_pixel_filter_type != blackman_harris_filter }" range { 0! 6 } parmtag { "spare_category" "Sampling" } } parm { name "ar_pixel_filter_width_sinc" label "Filter Width" type float default { "6" } help "The width of the subpixel sample averaging filter, in pixels. For circularly symmetric filters, this is the diameter of the filter's support." disablewhen "{ ar_picture_format == deepexr ar_deepexr_enable_filtering == 0 }" hidewhen "{ ar_pixel_filter_type != sinc_filter }" range { 0! 10 } parmtag { "spare_category" "Sampling" } } parm { name "ar_pixel_filter_farthest_domain" label "Farthest Domain" type string default { "first_hit" } help "TODO" disablewhen "{ ar_picture_format == deepexr ar_deepexr_enable_filtering == 0 }" hidewhen "{ ar_pixel_filter_type != farthest_filter }" menu { "first_hit" "First Hit " "all_hits" "All Hits" } parmtag { "spare_category" "Sampling" } } parm { name "ar_pixel_filter_variance_scalar_mode" label "Variance Scalar Mode" type toggle default { "0" } help "TODO" disablewhen "{ ar_picture_format == deepexr ar_deepexr_enable_filtering == 0 }" hidewhen "{ ar_pixel_filter_type != variance_filter }" parmtag { "spare_category" "Sampling" } } parm { name "ar_pixel_filter_variance_filter_weights" label "Variance Filter Weights" type string default { "box" } help "TODO" disablewhen "{ ar_picture_format == deepexr ar_deepexr_enable_filtering == 0 }" hidewhen "{ ar_pixel_filter_type != variance_filter }" menu { "blackman_harris" "Blackman-Harris" "box" "Box" "catrom" "Catmull-Rom" "gaussian" "Gaussian" "mitnet" "Mitchell-Netravali" "sinc" "Sinc" "triangle" "Triangle" } parmtag { "spare_category" "Sampling" } } parm { name "ar_pixel_filter_heatmap_minimum" label "Heatmap Minimum" type float default { "0" } help "TODO" disablewhen "{ ar_picture_format == deepexr ar_deepexr_enable_filtering == 0 }" hidewhen "{ ar_pixel_filter_type != heatmap_filter }" range { 0 1 } parmtag { "spare_category" "Sampling" } } parm { name "ar_pixel_filter_heatmap_maximum" label "Heatmap Maximum" type float default { "1" } help "TODO" disablewhen "{ ar_picture_format == deepexr ar_deepexr_enable_filtering == 0 }" hidewhen "{ ar_pixel_filter_type != heatmap_filter }" range { 0 1 } parmtag { "spare_category" "Sampling" } } } groupsimple { name "group_clamping" label "Clamping" parm { name "ar_AA_sample_clamp_enable" label "Clamp Camera Samples" type toggle default { "0" } help "When enabled, pixel samples will be clamped to the specified maximum value. This can make it easier to anti-alias certain high-dynamic range effects such as bright motion blurred specular streaks (at the cost of reduced contrast)." parmtag { "spare_category" "Output" } } parm { name "ar_AA_sample_clamp_affects_aovs" label "Clamp Camera Samples in AOVs" type toggle default { "0" } help "When enabled, pixel samples will be clamped to the specified maximum value. This can make it easier to anti-alias certain high-dynamic range effects such as bright motion blurred specular streaks (at the cost of reduced contrast)." disablewhen "{ ar_AA_sample_clamp_enable != 1 }" parmtag { "spare_category" "Output" } } parm { name "ar_AA_sample_clamp" label "Camera Sample Clamp" type float default { "10" } help "Enabling this control, pixel samples will be clamped to the specified maximum value. This can make it easier to anti-alias certain high-dynamic range effects such as bright motion blurred specular streaks (at the cost of reduced contrast)." disablewhen "{ ar_AA_sample_clamp_enable == 0 }" range { 1e-05! 100 } parmtag { "spare_category" "Output" } } parm { name "ar_indirect_sample_clamp" label "Indirect Sample Clamp" type float default { "10" } help "Works similarly to AA_sample_clamp, but only affects indirect light, so that specular highlights from direct lighting are preserved. This makes it possible to clamp fireflies more aggressively without affecting the final render significantly. It is set to 10.0 by default. Lower values result in more aggressive noise reduction, possibly at the expense of dynamic range." range { 0! 20 } parmtag { "spare_category" "Output" } } } groupsimple { name "group_advanced" label "Advanced" parm { name "ar_lock_sampling_pattern" label "Lock Sampling Pattern" type toggle default { "0" } help "The noise pattern seed is set to the current frame number by default. If lock_sampling_patter parameter is enabled, this behaviour is disabled and the AA_seed parameter on the options node is set to 0 instead." parmtag { "spare_category" "Sampling" } } parm { name "ar_sss_use_autobump" label "Autobump for SSS" type toggle default { "0" } help "Take autobump into account for SSS calculations. This will result in more details in the SSS, at the cost of a slower render." parmtag { "spare_category" "Sampling" } } parm { name "ar_dielectric_priorities" label "Nested Dielectrics" type toggle default { "1" } help "Enable the priority system for nested dielectrics. Disable this checkbox for legacy dielectric calculations." parmtag { "spare_category" "Sampling" } } parm { name "ar_indirect_specular_blur" label "Indirect Specular Blur" type float default { "1" } help "Sets indirect specular blurring to reduce caustic noise. Setting to zero gives the most accurate but also noisy renders, while higher values blur caustics to reduce noise." range { 0! 10 } parmtag { "spare_category" "Sampling" } } } groupsimple { name "group_info" label "Estimated Rays / Pixel" parm { name "ar_info_samples_camera" label "Camera (AA) Rays" type string default { [ "__import__('htoa').properties.sampleInfoCamera()" python ] } disablewhen "{ 1 != 1 }" range { 0 1 } parmtag { "spare_category" "Sampling" } } parm { name "ar_info_samples_diffuse" label "Diffuse Rays" type string size 2 default { [ "__import__('htoa').properties.sampleInfoDiffuse()" python ] [ "__import__('htoa').properties.sampleInfoDiffuseDepth()" python ] } disablewhen "{ 1 != 1 }" range { 0 1 } parmtag { "spare_category" "Sampling" } } parm { name "ar_info_samples_specular" label "Specular Rays" type string size 2 default { [ "__import__('htoa').properties.sampleInfoSpecular()" python ] [ "__import__('htoa').properties.sampleInfoSpecularDepth()" python ] } disablewhen "{ 1 != 1 }" range { 0 1 } parmtag { "spare_category" "Sampling" } } parm { name "ar_info_samples_transmission" label "Transmission Rays" type string size 2 default { [ "__import__('htoa').properties.sampleInfoTransmission()" python ] [ "__import__('htoa').properties.sampleInfoTransmissionDepth()" python ] } disablewhen "{ 1 != 1 }" range { 0 1 } parmtag { "spare_category" "Sampling" } } parm { name "ar_info_samples_total" label "Total Rays (no lights)" type string size 2 default { [ "__import__('htoa').properties.sampleInfoTotal()" python ] [ "__import__('htoa').properties.sampleInfoTotalDepth()" python ] } disablewhen "{ 1 != 1 }" range { 0 1 } parmtag { "spare_category" "Sampling" } } } } group { name "folder0_2" label "Ray Depth" parm { name "ar_GI_total_depth" label "Total" type integer default { "10" } help "Specifies the total maximum recursion depth of any ray in the scene." range { 0! 16 } parmtag { "spare_category" "Ray Depth" } } parm { name "ar_GI_diffuse_depth" label "Diffuse" type integer default { "1" } help "The maximum number of times a diffuse ray can bounce." range { 0! 16 } parmtag { "spare_category" "Ray Depth" } } parm { name "ar_GI_specular_depth" label "Specular" type integer default { "1" } help "The maximum number of times a ray can be glossily reflected." range { 0! 16 } parmtag { "spare_category" "Ray Depth" } } parm { name "ar_GI_transmission_depth" label "Transmission" type integer default { "8" } help "The maximum number of times a ray can be refracted." range { 0! 16 } parmtag { "spare_category" "Ray Depth" } } parm { name "ar_GI_volume_depth" label "Volume" type integer default { "0" } help "The maximum number of times a ray can bounce for multiple scattering in a volume." range { 0! 16 } parmtag { "spare_category" "Ray Depth" } } parm { name "ar_auto_transparency_depth" label "Transparency" type integer default { "10" } help "The number of allowed transparency hits. With 0 objects will be treated as opaque." range { 0! 16 } parmtag { "spare_category" "Ray Depth" } } parm { name "ar_low_light_threshold" label "Low Light Threshold" type float default { "0.001" } help "Specify an illumination value below which Arnold will skip firing shadow rays to each light source, reducing rendering time." range { 0! 0.1 } parmtag { "spare_category" "Ray Depth" } } } group { name "folder0_3" label "Motion Blur" parm { name "ar_mb_xform_enable" label "Enable Transformation Blur" type toggle nolabel joinnext default { "0" } help "Enable motion blur." parmtag { "spare_category" "Motion Blur" } } parm { name "ar_mb_xform_keys" label "Transform Keys" type integer default { "2" } help "Number of motion keys for matrix transformation. Transformation motion blur is calculated based on a linear interpolation of an object transform matrix, between successive motion keys. Increasing this value will add extra steps, which can improve the blurred result specially for rotating objects. The default is 2, which results in straight lines of blur between shutter start and shutter end." disablewhen "{ ar_mb_xform_enable == 0 }" range { 1! 20 } parmtag { "spare_category" "Motion Blur" } } parm { name "ar_mb_dform_enable" label "Enable Deformation Blur" type toggle nolabel joinnext default { "0" } help "Motion blur will take into account geometry deformation. It should only be enabled when objects in the scene change shape quickly enough, since this option uses more memory and renders slower." parmtag { "spare_category" "Motion Blur" } } parm { name "ar_mb_dform_keys" label "Deform Keys" type integer default { "2" } help "Number of motion keys for object points. Just like with transformation motion keys, increasing this value allows curved motion paths to be rendered more accurately, at the expense of using more memory." disablewhen "{ ar_mb_dform_enable == 0 }" range { 1! 20 } parmtag { "spare_category" "Motion Blur" } } groupsimple { name "group_shutter" label "Camera Shutter" parm { name "ar_mb_shutter" label "Shutter Position" type string default { "center" } help "Decide where on the frame time the blur will be evaluated. The default is centered." disablewhen "{ ar_mb_xform_enable == 0 ar_mb_dform_enable == 0 }" menu { "start" "Start On Frame" "center" "Center On Frame" "end" "End On Frame" "custom" "Custom Shutter" } parmtag { "spare_category" "Motion Blur" } } parm { name "ar_mb_shutter_length" label "Shutter Length" type float default { "0.5" } disablewhen "{ ar_mb_xform_enable == 0 ar_mb_dform_enable == 0 }" hidewhen "{ ar_mb_shutter == custom }" range { 0 1 } parmtag { "spare_category" "Motion Blur" } } parm { name "ar_mb_shutter_range" label "Shutter Start/End" type vector2 size 2 default { "-0.25" "0.25" } disablewhen "{ ar_mb_xform_enable == 0 ar_mb_dform_enable == 0 }" hidewhen "{ ar_mb_shutter != custom }" range { -1 1 } parmtag { "spare_category" "Motion Blur" } } parm { name "ar_ignore_motion_blur" label "Instantaneous Shutter for Motion Vectors" type toggle default { "0" } help "Ignore motion blur effects in camera for generating motion vectors." range { 0 1 } } } } group { name "folder0_4" label "Textures" parm { name "ar_texture_max_sharpen" label "Sharpness" type float invisible default { "1.5" } help "Sharpens textures at the expense of increased file I/O. The theoretical optimum setting for sharpest results is to set this to AA_samples, but under most practical situations where texture I/O must be controlled, setting this to around 1.5 already gives sharp results at a moderate cost." range { 1 10 } parmtag { "spare_category" "Textures" } } parm { name "ar_texture_max_memory_MB" label "Cache Size (MB)" type float default { "4096" } help "Texture cache size in MB." disablewhen "{ ar_texture_caching_enable == 0 }" range { 0! 8192 } parmtag { "spare_category" "Textures" } } parm { name "ar_texture_max_open_files" label "Max. Open Textures" type integer default { "0" } help "The maximum number of files that the texture system keeps open at any given time to avoid excessive closing and re-opening of files when caching individual texture tiles. A value of 0 means the number is automatically computed by Arnold. Increasing this number may result in slightly better texture caching performance. On the other hand, if this value is higher than the maximum number of concurrently open files supported by the operating system (e.g. Linux vs Windows), some texture lookups may fail and return red." disablewhen "{ ar_texture_max_memory_MB == 0 }" range { 0! 4096 } parmtag { "spare_category" "Textures" } } parm { name "ar_texture_accept_untiled" label "Accept Untiled" type toggle default { "1" } help "High-resolution untiled texture maps are very inefficient to render, because they must be loaded entirely into memory as soon as the renderer needs to access a single texel. For that reason, you may want to use this flag to enforce that all your texture maps are already tiled in advance (perhaps by using a preprocessing tool like maketx). When this flag is enabled, any attempt at loading an untiled file will produce an error and abort the renderer." parmtag { "spare_category" "Textures" } } parm { name "ar_texture_autotile" label "Auto-tile" type integer default { "64" } help "This is the size of the tiles when using auto-tiling. Bigger values mean less frequent texture loads, but use more memory. Use existing Tiled files: If .tx file with the same name of the texture is found, the renderer will use it." disablewhen "{ ar_texture_accept_untiled == 0 }" range { 2! 512 } parmtag { "spare_category" "Textures" } } parm { name "ar_texture_accept_unmipped" label "Accept Unmipped" type toggle default { "1" } help "Unmipped texture maps are inefficient to render, because filtering to reduce aliasing has to be done on the fly. For that reason, you may want to use this flag to enforce that all your texture maps are already mipmapped in advance (perhaps by using a preprocessing tool like maketx). When this flag is enabled, any attempt at loading an unmipped file will produce an error and abort the renderer. By default this flag is enabled, because most of the popular image formats such as JPEG don't support tiling." parmtag { "spare_category" "Textures" } } parm { name "ar_texture_automip" label "Auto-mipmap" type toggle default { "1" } help "If a texture map file is not natively mipmapped (e.g. a JPEG file), enabling this option will trigger the automatic generation of a mipmap that will be stored in memory for the duration of the render. This mipmap generation increases render time, specially for scenes with many high resolution textures. This is in contrast to file formats that natively support mipmapping, such as TIFF and EXR, where the mipmap is generated only once (with a preprocessing tool like maketx). Use with care." disablewhen "{ ar_texture_accept_unmipped == 0 }" parmtag { "spare_category" "Textures" } } parm { name "ar_texture_auto_maketx" label "Auto-generate TX Textures" type toggle default { "1" } help "Automatically generate or update the .tx texture corresponding to the texture files. If an up to date version already exists, the generation will be skipped. The .tx textures will be linearized according to the colorspace selected on the image shader." parmtag { "spare_category" "Textures" } } parm { name "ar_texture_use_existing_tx" label "Use Existing TX Textures" type toggle default { "1" } help "If an untiled texture is requested (e.g. concrete.jpg) but a .tx file with the same filename is found (e.g. concrete.tx), the renderer will load the .tx file instead." parmtag { "spare_category" "Textures" } } } group { name "folder0_5" label "Device" parm { name "ar_platform" label "Platform" type string invisible default { [ "__import__('sys').platform" python ] } parmtag { "spare_category" "Device" } } groupsimple { name "group_render_device" label "Device" hidewhen "{ ar_platform == darwin }" parm { name "ar_render_device" label "Render Device" type string default { "CPU" } help "Specify the render devices." hidewhen "{ ar_platform == darwin }" menu { "CPU" "CPU" "GPU" "GPU" } parmtag { "spare_category" "Device" } } parm { name "ar_render_device_fallback" label "Device Fallback" type string default { "error" } help "Specify the render fallback device when no GPU is available." hidewhen "{ ar_platform == darwin }" menu { "error" "Error" "CPU" "CPU" } parmtag { "spare_category" "Device" } } groupsimple { name "group_auto_gpu" label "Automatic Device Selection" hidewhen "{ ar_platform == darwin }" parm { name "ar_gpu_default_names" label "Device Expression" type string default { "*" } help "Select GPU names with this filter. Note you cannot mix RTX and non-RTX graphics cards in the same render." hidewhen "{ ar_platform == darwin }" parmtag { "spare_category" "Device" } } parm { name "ar_gpu_default_min_memory_MB" label "Min. Memory (MB)" type integer default { "512" } help "Select GPU names with at least this amount of memory (MB)" hidewhen "{ ar_platform == darwin }" range { 0! 2048 } parmtag { "spare_category" "Device" } } } groupsimple { name "group_manual_gpu" label "Manual Device Selection" hidewhen "{ ar_platform == darwin }" parm { name "ar_manual_device_selection" label "Enable Manual Device Selection" type toggle default { "0" } help "Choose whether to select devices manually" hidewhen "{ ar_platform == darwin }" parmtag { "spare_category" "Device" } } parm { name "ar_device_selection" label "Device Selection" type string default { "" } help "GPU device selection. Note you cannot mix RTX and non-RTX graphics cards in the same render." disablewhen "{ ar_manual_device_selection == 0 } { ar_platform == darwin }" menutoggle { [ "import htoa.device" ] [ "return htoa.device.gpuDeviceMenu()" ] language python } parmtag { "spare_category" "Device" } } } groupsimple { name "group_gpu_settings" label "GPU Settings" hidewhen "{ ar_platform == darwin }" parm { name "ar_gpu_max_texture_resolution" label "Max. Texture Res." type integer default { "0" } help "This will limit the number of mipmap levels generated to be up to the specified resolution, unless the value is 0 in which case there is no maximum." disablewhen "{ ar_render_device == CPU }" hidewhen "{ ar_platform == darwin }" range { 0! 2048 } parmtag { "spare_category" "Device" } } } } groupsimple { name "group_cm" label "Color Management" parm { name "ar_color_space_singleton" label "Color Space ROP" type toggle default { "0" } help "Specify that this ROP should be used to define the color spaces for TX conversion." parmtag { "script_callback" "__import__('htoa.colorspace').colorspace.setColorSpaceRop(kwargs['node'], kwargs['parm'].eval())" } parmtag { "script_callback_language" "python" } parmtag { "spare_category" "Device" } } parm { name "ar_ocio_enabled" label "OCIO Enabled" type toggle invisible default { [ "bool(__import__('htoa.ocio').ocio.has_config)" python ] } help "If OCIO was enabled and successfully loaded this will be true." parmtag { "spare_category" "Device" } } parm { name "ar_color_family_narrow" label "LDR Color Space" type string joinnext default { [ "import htoa.ocio\nreturn htoa.ocio.default_sRGB_family" python ] } help "If it exists in the OCIO config, this should be set to the name of the `sRGB` color space. This is used internally for input and output color spaces in `auto` mode for low dynamic range images. If set by the user, this color space is also used as a reference to detect the rendering color space gamut and white point." menu { [ "import htoa.ocio" ] [ "color_family_menu = htoa.ocio.colorFamilyMenu(view_display=False, filter_non_linear=True)" ] [ "color_space_menu = htoa.ocio.narrowColorSpaceMenu(kwargs['node'].parm('ar_color_family_narrow').eval())" ] [ "if color_space_menu and kwargs['node'].parm('ar_color_space_narrow').eval() not in color_space_menu:" ] [ " kwargs['node'].parm('ar_color_space_narrow').set(color_space_menu[0])" ] [ "return color_family_menu" ] language python } parmtag { "spare_category" "Device" } } parm { name "ar_color_space_narrow" label "ar_color_space_narrow" type string nolabel default { [ "import htoa.ocio\nreturn htoa.ocio.default_sRGB" python ] } help "If it exists in the OCIO config, this should be set to the name of the `sRGB` color space. This is used internally for input and output color spaces in `auto` mode for low dynamic range images. If set by the user, this color space is also used as a reference to detect the rendering color space gamut and white point." menu { [ "import htoa.ocio" ] [ "family = kwargs['node'].parm('ar_color_family_narrow').eval()" ] [ "return htoa.ocio.narrowColorSpaceMenu(family)" ] language python } parmtag { "spare_category" "Device" } } parm { name "ar_color_family_linear" label "Rendering Color Space" type string joinnext default { [ "import htoa.ocio\nreturn htoa.ocio.default_linear_family" python ] } help "This is the default linear color space that Arnold will use as its rendering color space. Arnold's default color space is `sRGB Linear` but this can correspond to any linear color space if needed. If chromaticities for this linear color space can be guessed or are user specified certain spectral effects will take them into account, but not other adaptations for albedos, transparencies, etc are applied." menu { [ "import htoa.ocio" ] [ "color_family_menu = htoa.ocio.colorFamilyMenu(view_display=False, filter_linear=True)" ] [ "color_space_menu = htoa.ocio.renderColorSpaceMenu(kwargs['node'].parm('ar_color_family_linear').eval())" ] [ "if color_space_menu and kwargs['node'].parm('ar_color_space_linear').eval() not in color_space_menu:" ] [ " kwargs['node'].parm('ar_color_space_linear').set(color_space_menu[0])" ] [ "return color_family_menu" ] language python } parmtag { "spare_category" "Device" } } parm { name "ar_color_space_linear" label "ar_color_space_linear" type string nolabel default { [ "import htoa.ocio\nreturn htoa.ocio.default_linear" python ] } help "This is the default linear color space that Arnold will use as its rendering color space. Arnold's default color space is `sRGB Linear` but this can correspond to any linear color space if needed. If chromaticities for this linear color space can be guessed or are user specified certain spectral effects will take them into account, but not other adaptations for albedos, transparencies, etc are applied." menu { [ "import htoa.ocio" ] [ "family = kwargs['node'].parm('ar_color_family_linear').eval()" ] [ "return htoa.ocio.renderColorSpaceMenu(family)" ] language python } parmtag { "spare_category" "Device" } } parm { name "ar_linear_chromaticities" label "Custom Chromaticities" type toggle default { "0" } help "Specify render color space chromaticities. If they are not specified they will be gathered from the OCIO configuration." hidewhen "{ ar_ocio_enabled == 0 }" parmtag { "spare_category" "Device" } } parm { name "ar_chromaticity_red" label "Red Primary" type float size 2 default { "0.64" "0.33" } help "Chromaticity (x,y) of the red primary." hidewhen "{ ar_linear_chromaticities == 0 } { ar_ocio_enabled == 0 }" range { 0 10 } parmtag { "spare_category" "Device" } } parm { name "ar_chromaticity_green" label "Green Primary" type float size 2 default { "0.3" "0.6" } help "Chromaticity (x,y) of the green primary." hidewhen "{ ar_linear_chromaticities == 0 } { ar_ocio_enabled == 0 }" range { 0 10 } parmtag { "spare_category" "Device" } } parm { name "ar_chromaticity_blue" label "Blue Primary" type float size 2 default { "0.15" "0.06" } help "Chromaticity (x,y) of the blue primary." hidewhen "{ ar_linear_chromaticities == 0 } { ar_ocio_enabled == 0 }" range { 0 10 } parmtag { "spare_category" "Device" } } parm { name "ar_chromaticity_white" label "White Point" type float size 2 default { "0.3127" "0.329" } help "Chromaticity (x,y) of the white point." hidewhen "{ ar_linear_chromaticities == 0 } { ar_ocio_enabled == 0 }" range { 0 10 } parmtag { "spare_category" "Device" } } } } group { name "folder0_6" label "Baking" parm { name "ar_baking_enable" label "Enable Texture Baking" type toggle default { "0" } help "Enable texture baking. Not supported on GPU." disablewhen "{ ar_render_device == GPU }" parmtag { "spare_category" "Baking" } } parm { name "ar_baking_resolution" label "Resolution" type intlog default { "256" } help "Texture baking resolution, we are using square textures." disablewhen "{ ar_baking_enable == 0 } { ar_render_device == GPU ar_platform != darwin }" range { 1 1024 } parmtag { "spare_category" "Baking" } } parm { name "ar_baking_extend_edges" label "Extend Edges" type toggle default { "1" } help "Extend the edges" disablewhen "{ ar_baking_enable == 0 } { ar_render_device == GPU ar_platform != darwin }" parmtag { "spare_category" "Baking" } } parm { name "ar_baking_udims" label "Udims" type string joinnext default { "" } help "List of udim's UV pairs or udims. Example: 0:1 3:3 4:2 or 1011 1034 1025" disablewhen "{ ar_baking_enable == 0 } { ar_baking_udims_all == 1 } { ar_render_device == GPU ar_platform != darwin }" parmtag { "spare_category" "Baking" } } parm { name "ar_baking_udims_all" label "All" type toggle default { "0" } help "Bake all the udims" disablewhen "{ ar_baking_enable == 0 } { ar_render_device == GPU ar_platform != darwin }" parmtag { "spare_category" "Baking" } } parm { name "ar_baking_normal_offset" label "Surface Offset" type float default { "0.001" } help "Ray cast from the mesh with the given offset along the normal" disablewhen "{ ar_baking_enable == 0 } { ar_render_device == GPU ar_platform != darwin }" range { 0 10 } parmtag { "spare_category" "Baking" } } parm { name "ar_baking_uv_offset" label "UV Offset" type float size 2 default { "0" "0" } disablewhen "{ ar_baking_enable == 0 } { ar_render_device == GPU ar_platform != darwin }" range { 0 10 } parmtag { "spare_category" "Baking" } } parm { name "ar_baking_uv_scale" label "UV Scale" type float size 2 default { "1" "1" } disablewhen "{ ar_baking_enable == 0 } { ar_render_device == GPU ar_platform != darwin }" range { 0 10 } parmtag { "spare_category" "Baking" } } multiparm { name "ar_baking_meshes" label "Meshes" disablewhen "{ ar_baking_enable == 0 } { ar_render_device == GPU ar_platform != darwin }" parmtag { "spare_category" "Baking" } parm { name "ar_enable_mesh#" label "Enable Mesh #" type toggle nolabel joinnext default { "1" } disablewhen "{ ar_baking_enable == 0 } { ar_render_device == GPU ar_platform != darwin }" parmtag { "spare_category" "Baking" } } parm { name "ar_baking_mesh#" label "Mesh #" type oppath default { "" } disablewhen "{ ar_baking_enable == 0 } { ar_enable_mesh# == 0 } { ar_render_device == GPU ar_platform != darwin }" parmtag { "opfilter" "!!OBJ!!" } parmtag { "oprelative" "." } parmtag { "spare_category" "Baking" } } parm { name "ar_baking_uvset#" label "UV Set #" type string default { "" } disablewhen "{ ar_baking_enable == 0 } { ar_enable_mesh# == 0 } { ar_render_device == GPU ar_platform != darwin }" menureplace { [ "['', 'Default (uv)', 'uv2', 'UV Set 2', 'uv3', 'UV Set 3', 'uv4', 'UV Set 4', 'uv5', 'UV Set 5', 'uv6', 'UV Set 6', 'uv7', 'UV Set 7', 'uv8', 'UV Set 8' ]" ] language python } parmtag { "spare_category" "Baking" } } } } group { name "folder0_7" label "MaterialX" parm { name "ar_materialx_enable" label "Enable MaterialX Export" type toggle default { "0" } parmtag { "spare_category" "MaterialX" } } parm { name "ar_materialx_file" label "MaterialX File" type file default { "" } help "Specifies the output path for MaterialX ass files." disablewhen "{ ar_materialx_enable == 0 }" parmtag { "filechooser_mode" "write" } parmtag { "filechooser_pattern" "*.mtlx" } parmtag { "spare_category" "MaterialX" } } parm { name "ar_materialx_look" label "Look" type string default { "" } help "Output look name that will be created/appended" disablewhen "{ ar_materialx_enable == 0 }" menureplace { [ "__import__('htoa.operator').operator.lookMenu(kwargs['node'].parm('ar_materialx_file').eval())" ] language python } parmtag { "spare_category" "MaterialX" } } parm { name "ar_materialx_relative" label "Relative Assignment" type toggle default { "1" } help "If true, the assignments for nodes will be relative to their top-most parent node" disablewhen "{ ar_materialx_enable == 0 }" parmtag { "spare_category" "MaterialX" } } multiparm { name "ar_materialx_properties" label "Properties" disablewhen "{ ar_materialx_enable == 0 }" parmtag { "spare_category" "MaterialX" } parm { name "ar_materialx_property#" label "Property #" type string default { "" } help "A parameter to be added to the property assignments" disablewhen "{ ar_materialx_enable == 0 }" parmtag { "spare_category" "MaterialX" } } } } group { name "folder0_8" label "System" parm { name "ar_force_threads" label "Force Threads" type toggle nolabel joinnext default { "0" } help "Allow manual setting the number of render threads instead of using an optimal number based on the number of hardware processing cores." parmtag { "spare_category" "System" } } parm { name "ar_threads" label "Render Threads" type integer default { "0" } help "If ar_force_threads is enabled, this will let you manually set the number of rendering threads. The default of 0 will use all processing cores and negative values mean use all but that many cores. For example, threads=-2 means use all but 2 cores, while threads=2 means only use 2 cores. This is useful when you want to leave one or two cores for other tasks. This parameter is never written in an .ass file by design, and will only affect interactive or batch renders." disablewhen "{ ar_force_threads == 0 }" range { -255! 256! } parmtag { "spare_category" "System" } } parm { name "ar_thread_priority" label "Thread Priority" type string default { "lowest" } help "Specifies the thread priority for rendering (Windows only)." menu { "lowest" "Lowest" "low" "Low" "medium" "Medium" "high" "High" } parmtag { "spare_category" "System" } } parm { name "ar_bucket_scanning" label "Bucket Scanning" type string default { "spiral" } help "Specifies the spatial order in which the image buckets (i.e. threads) will be processed. By default, buckets start in the center of the image and proceed outwards in a spiral pattern." menu { "top" "Top" "left" "Left" "random" "Random" "spiral" "Spiral" "hilbert" "Hilbert" } parmtag { "spare_category" "System" } } parm { name "ar_bucket_size" label "Bucket Size" type integer default { "64" } help "The size of the image buckets. The default size is 64x64 pixels, which is a good compromise; bigger buckets use more memory, while smaller buckets may perform redundant computations and filtering and thus render slower but give initial faster feedback." range { 16! 256 } parmtag { "spare_category" "System" } } parm { name "ar_AA_initial" label "Progressive Min Samples" type integer default { "0" } help "If progressive passes are enabled with the Preview button, this is the initial AA samples setting used in the first progressive render pass." menu { "0" "8x8" "1" "4x4" "2" "2x2" "3" "1x1" } range { 0 10 } parmtag { "spare_category" "System" } } parm { name "ar_plugin_searchpath" label "Plugin Path" type directory default { "" } help "Specifies the directory where to search for Arnold plugins such as shaders, procedurals, volumes, etc." parmtag { "filechooser_mode" "read" } parmtag { "spare_category" "System" } } parm { name "ar_procedural_searchpath" label "Procedural Path" type directory default { "" } help "Specifies the directory where to search for procedural files." parmtag { "filechooser_mode" "read" } parmtag { "spare_category" "System" } } parm { name "ar_texture_searchpath" label "Texture Path" type directory default { "" } help "Specifies the directory where to search for Arnold texture maps and IES files. This works in conjunction with the \"Save Texture Paths\" option in the ASS tab." parmtag { "filechooser_mode" "read" } parmtag { "spare_category" "System" } } parm { name "ar_osl_includepath" label "OSL Include Path" type directory default { "" } help "Specifies additional include search paths to OSL when compiling shaders. This string can contain multiple search paths separated by a colon or semi-colon." parmtag { "filechooser_mode" "read" } parmtag { "spare_category" "System" } } parm { name "ar_mplay_label" label "MPlay Session" type string default { "" } help "When an MPlay render is triggered, it will only output to MPlay sessions with that label. If none exist, it will create an MPlay session with that label. This is incredibly useful for users with multiple workspaces, to avoid constantly hunt for an open MPlay window and move it to their active workspace." menureplace { [ "__import__('htoa').properties.mplayLabelMenu()" ] language python } parmtag { "spare_category" "System" } } parm { name "ar_create_intermediate_directories" label "Create Intermediate Directories" type toggle default { "1" } help "Create intermediate parent directories when rendering to image or ASS files." parmtag { "spare_category" "System" } } parm { name "ar_flush_sop_cache" label "Flush SOP Cache" type toggle default { "1" } help "Flush SOP cache after each frame to reclaim memory." parmtag { "spare_category" "System" } } parm { name "ar_pick_material" label "Pick Material in Render View" type toggle default { "1" } help "Generate the Op_Id AOV to enable material picking in the Render View with Ctrl+LMB. The ID built-in AOV will be repurposed for this and will not be available in the Render View context." parmtag { "spare_category" "System" } } parm { name "ar_inherit_properties" label "Inherit Properties" type toggle default { "0" } help "Enable properties inheritance for geometry at the expense of translation time." parmtag { "spare_category" "System" } } parm { name "ar_parallel_node_init" label "Parallel Node Initialization" type toggle default { "1" } help "Initialization and update of scene nodes can be multi-threaded. This can significantly lower the scene preparation time in complex scenes with many objects, shaders or lights." parmtag { "spare_category" "System" } } parm { name "ar_abort_on_error" label "Abort On Error" type toggle default { "1" } help "Aborts rendering as soon as an error is detected. This is the recommended setting. In general, you should not ignore important error messages, or you'll risk crashes, rendering artifacts and undefined behaviour." parmtag { "spare_category" "System" } } parm { name "ar_abort_on_license_fail" label "Abort On License Fail" type toggle default { "0" } help "Aborts rendering if when the render starts the license is not detected. If not set and no license is found, images will be watermarked." parmtag { "spare_category" "System" } } parm { name "ar_skip_license_check" label "Render with Watermarks (Skip License Check)" type toggle default { "0" } help "Do not try to check out a license and thus render with watermarks." parmtag { "spare_category" "System" } } } group { name "folder0_9" label "Diagnostics" parm { name "ar_log_file_enable" label "Log File" type toggle nolabel joinnext default { "0" } help "Log to file" parmtag { "spare_category" "Diagnostics" } } parm { name "ar_log_file" label "Log to File" type file default { "" } help "Specifies the output path for Arnold log files." disablewhen "{ ar_log_file_enable == 0 }" parmtag { "filechooser_mode" "write" } parmtag { "spare_category" "Diagnostics" } } parm { name "ar_log_verbosity" label "Log Verbosity" type string joinnext default { "warnings" } help "Specifies the verbosity level and whether log messages are sent to the console or written to a file." menu { "errors" "Errors" "warnings" "Warnings" "info" "Info" "debug" "Debug" } parmtag { "spare_category" "Diagnostics" } } parm { name "ar_log_max_warnings" label " Max. Warnings" type integer default { "5" } help "Limits the number of warning messages that are sent to the console." range { 0! 1000 } parmtag { "spare_category" "Diagnostics" } } parm { name "ar_log_console_enable" label "Log to Console" type toggle default { "1" } help "Log to console." parmtag { "spare_category" "Diagnostics" } } parm { name "ar_stats_file_enable" label "Stats File" type toggle nolabel joinnext default { "0" } help "Log stats to file" parmtag { "spare_category" "Diagnostics" } } parm { name "ar_stats_file" label "Stats File Path" type file default { "$HIP/arnold_stats.json" } help "Specifies the output path for the Arnold stats file." disablewhen "{ ar_stats_file_enable == 0 }" parmtag { "filechooser_mode" "write" } parmtag { "filechooser_pattern" "*.json" } parmtag { "spare_category" "Diagnostics" } } parm { name "ar_stats_mode" label "Stats Mode" type integer default { "1" } menu { "0" "Overwrite" "1" "Append" } range { 0 10 } parmtag { "spare_category" "Diagnostics" } } parm { name "ar_profile_file_enable" label "Profile" type toggle nolabel joinnext default { "0" } help "Log profile to file" parmtag { "spare_category" "Diagnostics" } } parm { name "ar_profile_file" label "Profile File Path" type file default { "$HIP/arnold_profile.json" } help "Specifies the output path for the Arnold profile file." disablewhen "{ ar_profile_file_enable == 0 }" parmtag { "filechooser_mode" "write" } parmtag { "filechooser_pattern" "*.json" } parmtag { "spare_category" "Diagnostics" } } parm { name "ar_texture_per_file_stats" label "Detailed Texture Statistics" type toggle default { "1" } help "Enable per file texture statistics." parmtag { "spare_category" "Diagnostics" } } parm { name "ar_log_plugins" label "Detailed Plugins Information" type toggle default { "0" } help "Show details about plugins loaded." parmtag { "spare_category" "Diagnostics" } } parm { name "my_sep_diagnostics1" label "Separator" type separator default { "" } } parm { name "ar_ignore_operators" label "Ignore Operators" type toggle default { "0" } help "Ignore operator graph." parmtag { "spare_category" "Diagnostics" } } parm { name "ar_ignore_textures" label "Ignore Textures" type toggle default { "0" } help "Ignore all textures when rendering." parmtag { "spare_category" "Diagnostics" } } parm { name "ar_ignore_shaders" label "Ignore Shaders" type toggle default { "0" } help "Ignore all shaders when rendering. By default Arnold will render with a simple \"N dot eye\" shader." parmtag { "spare_category" "Diagnostics" } } parm { name "ar_ignore_atmosphere" label "Ignore Atmosphere" type toggle default { "0" } help "Ignore all atmospheric shaders." parmtag { "spare_category" "Diagnostics" } } parm { name "ar_ignore_lights" label "Ignore Lights" type toggle default { "0" } help "Ignore all light sources." parmtag { "spare_category" "Diagnostics" } } parm { name "ar_ignore_shadows" label "Ignore Shadows" type toggle default { "0" } help "Ignore shadows from all light sources." parmtag { "spare_category" "Diagnostics" } } parm { name "ar_ignore_subdivision" label "Ignore Subdivision" type toggle default { "0" } help "No objects will be subdivided." parmtag { "spare_category" "Diagnostics" } } parm { name "ar_ignore_displacement" label "Ignore Displacement" type toggle default { "0" } help "Displacements will be ignored." parmtag { "spare_category" "Diagnostics" } } parm { name "ar_ignore_bump" label "Ignore Bump" type toggle default { "0" } help "Bump mapping will be ignored." parmtag { "spare_category" "Diagnostics" } } parm { name "ar_ignore_smoothing" label "Ignore Normal Smoothing" type toggle default { "0" } help "Polygon normals will not be smoothed, resulting in a faceted appearance." parmtag { "spare_category" "Diagnostics" } } parm { name "ar_ignore_dof" label "Ignore Depth of Field" type toggle default { "0" } help "Ignore depth of field effects." parmtag { "spare_category" "Diagnostics" } } parm { name "ar_ignore_sss" label "Ignore Sub-Surface Scattering" type toggle default { "0" } help "Ignore Subsurface Scattering calculations." parmtag { "spare_category" "Diagnostics" } } parm { name "ar_ignore_motion" label "Ignore Motion" type toggle default { "0" } help "Ignore all motion effects." parmtag { "spare_category" "Diagnostics" } } parm { name "ar_ignore_imagers" label "Ignore Imagers" type toggle default { "0" } help "Ignore imager graph." parmtag { "spare_category" "Diagnostics" } } parm { name "my_sep_diagnostics2" label "Separator" type separator default { "" } } parm { name "ar_error_color_bad_texture" label "Bad Texture Color" type color size 3 default { "1" "0" "0" } help "Color to use for bad textures." range { 0 1 } parmtag { "spare_category" "Diagnostics" } } parm { name "ar_error_color_bad_pixel" label "NaN Pixel Color" type color size 3 default { "0" "0" "1" } help "Color to use for bad pixels (NaNs)." range { 0 1 } parmtag { "spare_category" "Diagnostics" } } parm { name "ar_error_color_bad_shader" label "Bad Shader Color" type color size 3 default { "1" "0" "1" } help "Color to use for bad shaders." range { 0 1 } parmtag { "spare_category" "Diagnostics" } } } } group { name "main6_2" label "Archive" hidewhentab "{ ar_ass_export_authorized == 0 }" parm { name "ar_ass_export_enable" baseparm label "Export ASS File" nolabel joinnext export none } parm { name "ar_ass_file" baseparm label "Export ASS File" export none } parm { name "ar_node_prefix_enable" baseparm label "Enable Node Prefix" nolabel joinnext export none } parm { name "ar_node_prefix" baseparm label "Node Prefix" export none } parm { name "ar_node_suffix_enable" baseparm label "Enable Node Suffix" nolabel joinnext export none } parm { name "ar_node_suffix" baseparm label "Node Suffix" export none } parm { name "ar_ass_export_authorized" baseparm label "Authorize Exporting ASS Files" invisible export none } parm { name "ar_binary_ass" baseparm label "Binary Encoding" export none } parm { name "ar_ass_export_options" baseparm label "Export Options" export none } parm { name "ar_ass_export_color_managers" baseparm label "Export Color Managers" export none } parm { name "ar_ass_export_cameras" baseparm label "Export Cameras" export none } parm { name "ar_ass_export_lights" baseparm label "Export Lights" export none } parm { name "ar_ass_export_shapes" baseparm label "Export Shapes" export none } parm { name "ar_ass_export_shaders" baseparm label "Export Shaders" export none } parm { name "ar_ass_export_shader_assignments" baseparm label "Export Shader Assignments" export none } parm { name "ar_ass_export_operators" baseparm label "Export Operators" export none } parm { name "ar_ass_export_overrides" baseparm label "Export Overrides" export none } parm { name "ar_ass_export_drivers" baseparm label "Export Output Drivers" export none } parm { name "ar_ass_export_filters" baseparm label "Export Pixel Filters" export none } parm { name "ar_export_asstoc" baseparm label "Export .asstoc File" export none } parm { name "ar_prepend_htoa_paths" baseparm label "Prepend Plugin Paths" export none } parm { name "ar_ass_expand_procedurals" baseparm label "Expand Procedurals" export none } parm { name "ar_ass_absolute_texture_paths" baseparm label "Absolute Texture Paths" export none } parm { name "ar_ass_absolute_procedural_paths" baseparm label "Absolute Procedural Paths" export none } } group { name "main6_3" label "Scripts" parm { name "tprerender" baseparm label "tprerender" nolabel joinnext export none } parm { name "prerender" baseparm label "Pre-Render" joinnext export none } parm { name "lprerender" baseparm label "lprerender" nolabel export none } parm { name "tpreframe" baseparm label "tpreframe" nolabel joinnext export none } parm { name "preframe" baseparm label "Pre-Frame" joinnext export none } parm { name "lpreframe" baseparm label "lpreframe" nolabel export none } parm { name "tpostframe" baseparm label "tpostframe" nolabel joinnext export none } parm { name "postframe" baseparm label "Post-Frame" joinnext export none } parm { name "lpostframe" baseparm label "lpostframe" nolabel export none } parm { name "tpostrender" baseparm label "tpostrender" nolabel joinnext export none } parm { name "postrender" baseparm label "Post-Render" joinnext export none } parm { name "lpostrender" baseparm label "lpostrender" nolabel export none } } group { name "main6_4" label "SOHO" invisibletab parm { name "soho_program" baseparm label "SOHO Program" export none } parm { name "soho_outputmode" baseparm label "SOHO Output Mode" export none } parm { name "soho_pipecmd" baseparm label "Command" export none } parm { name "soho_diskfile" baseparm label "Script Disk File" export none } parm { name "soho_errormode" baseparm label "Error Mode" export none } parm { name "soho_shopstyle" baseparm label "SOHO SHOP Style" export none } parm { name "soho_precision" baseparm label "Float Precision" export none } parm { name "soho_indentstep" baseparm label "Indent Step" export none } parm { name "soho_almostzero" baseparm label "Almost Zero" export none } parm { name "soho_multiframe" baseparm label "Multi-frame mode" export none } parm { name "soho_safename" baseparm label "Safe Object names" export none } parm { name "soho_ipr_support" baseparm label "SOHO IPR Support" export none } parm { name "soho_foreground" baseparm label "Block Until Render Completes" export none } } parm { name "renderpreview" baseparm label "Render to MPlay" invisible joinnext export none } parm { name "executebackground" baseparm label "Render to Disk in Background" invisible export none } 0707070000010000000006660000000000000000010000001440237341500002000000012373out/arnold1.chn{ channel f1 { lefttype = extend righttype = extend default = 1 flags = 0 segment { length = 0 value = 1 1 expr = $FSTART } } channel f2 { lefttype = extend righttype = extend default = 240 flags = 0 segment { length = 0 value = 240 240 expr = $FEND } } channel ar_ass_export_authorized { lefttype = extend righttype = extend flags = 0 segment { length = 0 expr = __import__('htoa.utils').utils.allowSceneExport() language = python } } channel soho_outputmode { lefttype = extend righttype = extend flags = 0 segment { length = 0 expr = "if(ch(\"ar_ass_export_enable\"), 2, 0)" } } channel soho_pipecmd { lefttype = extend righttype = extend defaultString = \"\" flags = 0 segment { length = 0 expr = "import htoa.searchpath return htoa.searchpath.hick" language = python } } channel vm_picture { lefttype = extend righttype = extend defaultString = \"\" flags = 0 segment { length = 0 expr = chs(\"ar_picture\") } } channel ar_overscany { lefttype = extend righttype = extend flags = 0 segment { length = 0 expr = ch(\"ar_overscanx\") } } channel ar_overscanz { lefttype = extend righttype = extend flags = 0 segment { length = 0 expr = ch(\"ar_overscanx\") } } channel ar_overscanw { lefttype = extend righttype = extend flags = 0 segment { length = 0 expr = ch(\"ar_overscanx\") } } channel ar_AA_samples_extra { lefttype = extend righttype = extend flags = 0 segment { length = 0 expr = "ch(\"ar_AA_samples_max\") - ch(\"ar_AA_samples\")" } } channel ar_info_samples_camera { lefttype = extend righttype = extend defaultString = \"\" flags = 0 segment { length = 0 expr = __import__('htoa').properties.sampleInfoCamera() language = python } } channel ar_info_samples_diffuse1 { lefttype = extend righttype = extend defaultString = \"\" flags = 0 segment { length = 0 expr = __import__('htoa').properties.sampleInfoDiffuse() language = python } } channel ar_info_samples_diffuse2 { lefttype = extend righttype = extend defaultString = \"\" flags = 0 segment { length = 0 expr = __import__('htoa').properties.sampleInfoDiffuseDepth() language = python } } channel ar_info_samples_specular1 { lefttype = extend righttype = extend defaultString = \"\" flags = 0 segment { length = 0 expr = __import__('htoa').properties.sampleInfoSpecular() language = python } } channel ar_info_samples_specular2 { lefttype = extend righttype = extend defaultString = \"\" flags = 0 segment { length = 0 expr = __import__('htoa').properties.sampleInfoSpecularDepth() language = python } } channel ar_info_samples_transmission1 { lefttype = extend righttype = extend defaultString = \"\" flags = 0 segment { length = 0 expr = __import__('htoa').properties.sampleInfoTransmission() language = python } } channel ar_info_samples_transmission2 { lefttype = extend righttype = extend defaultString = \"\" flags = 0 segment { length = 0 expr = __import__('htoa').properties.sampleInfoTransmissionDepth() language = python } } channel ar_info_samples_total1 { lefttype = extend righttype = extend defaultString = \"\" flags = 0 segment { length = 0 expr = __import__('htoa').properties.sampleInfoTotal() language = python } } channel ar_info_samples_total2 { lefttype = extend righttype = extend defaultString = \"\" flags = 0 segment { length = 0 expr = __import__('htoa').properties.sampleInfoTotalDepth() language = python } } channel ar_platform { lefttype = extend righttype = extend defaultString = \"\" flags = 0 segment { length = 0 expr = __import__('sys').platform language = python } } channel ar_ocio_enabled { lefttype = extend righttype = extend flags = 0 segment { length = 0 expr = bool(__import__('htoa.ocio').ocio.has_config) language = python } } channel ar_color_family_narrow { lefttype = extend righttype = extend defaultString = \"\" flags = 0 segment { length = 0 expr = "import htoa.ocio return htoa.ocio.default_sRGB_family" language = python } } channel ar_color_space_narrow { lefttype = extend righttype = extend defaultString = \"\" flags = 0 segment { length = 0 expr = "import htoa.ocio return htoa.ocio.default_sRGB" language = python } } channel ar_color_family_linear { lefttype = extend righttype = extend defaultString = \"\" flags = 0 segment { length = 0 expr = "import htoa.ocio return htoa.ocio.default_linear_family" language = python } } channel ar_color_space_linear { lefttype = extend righttype = extend defaultString = \"\" flags = 0 segment { length = 0 expr = "import htoa.ocio return htoa.ocio.default_linear" language = python } } } 0707070000010000000006660000000000000000010000001440237341500002100000033750out/arnold1.parm{ version 0.8 execute [ 0 locks=0 ] ( 0 ) renderpreview [ 0 locks=0 ] ( 0 ) executebackground [ 0 locks=0 ] ( 0 ) renderdialog [ 0 locks=0 ] ( 0 ) trange [ 0 locks=0 ] ( "off" ) f [ 0 locks=0 ] ( [ f1 1 ] [ f2 240 ] 1 ) take [ 0 locks=0 ] ( _current_ ) main [ 0 locks=0 ] ( 0 0 0 0 0 ) folder_camera [ 0 locks=0 ] ( 0 ) camera [ 0 locks=0 ] ( /obj/cam1 ) folder_subdivision [ 0 locks=0 ] ( 0 ) ar_subdiv_dicing_camera_enable [ 0 locks=0 ] ( "off" ) ar_subdiv_dicing_camera [ 0 locks=0 ] ( "" ) ar_subdiv_frustum_culling [ 0 locks=0 ] ( "off" ) ar_subdiv_frustum_padding [ 0 locks=0 ] ( 0 ) target [ 0 locks=0 ] ( current ) sepparm [ 0 locks=0 ] ( ) folder_objects [ 0 locks=0 ] ( 0 ) vobject [ 0 locks=0 ] ( * ) forceobject [ 0 locks=0 ] ( "" ) excludeobject [ 0 locks=0 ] ( "" ) phantom_objects [ 0 locks=0 ] ( "" ) matte_objects [ 0 locks=0 ] ( "" ) folder_shaders [ 0 locks=0 ] ( 0 ) ar_environment [ 0 locks=0 ] ( "" ) ar_forced_materials [ 0 locks=0 ] ( "" ) ar_shader_override [ 0 locks=0 ] ( "" ) ar_export_referenced_materials [ 0 locks=0 ] ( "off" ) obj_light_sep [ 0 locks=0 ] ( ) folder_lights [ 0 locks=0 ] ( 0 ) sololight [ 0 locks=0 ] ( "" ) alights [ 0 locks=0 ] ( * ) forcelights [ 0 locks=0 ] ( "" ) excludelights [ 0 locks=0 ] ( "" ) soho_autoheadlight [ 0 locks=0 ] ( "off" ) light_fog_sep [ 0 locks=0 ] ( ) vfog [ 0 locks=0 ] ( * ) soho_viewport_menu [ 0 locks=0 ] ( "on" ) soho_initsim [ 0 locks=0 ] ( "off" ) ar_render_selection_only [ 0 locks=0 ] ( "off" ) ar_render_selection_others [ 0 locks=0 ] ( "invisible" ) shop_propertiespath [ 0 locks=0 ] ( "" ) ar_user_options [ 0 locks=0 ] ( "" ) ar_user_options_enable [ 0 locks=0 ] ( "off" ) ar_ass_export_enable [ 0 locks=0 ] ( "off" ) ar_ass_file [ 0 locks=0 ] ( $HIP/$HIPNAME:r.$F4.ass ) ar_node_prefix_enable [ 0 locks=0 ] ( "off" ) ar_node_prefix [ 0 locks=0 ] ( "" ) ar_node_suffix_enable [ 0 locks=0 ] ( "off" ) ar_node_suffix [ 0 locks=0 ] ( [$F] ) ar_ass_export_authorized [ 0 locks=0 ] ( [ ar_ass_export_authorized 0 ] ) ar_binary_ass [ 0 locks=0 ] ( "on" ) ar_ass_export_options [ 0 locks=0 ] ( "on" ) ar_ass_export_color_managers [ 0 locks=0 ] ( "on" ) ar_ass_export_cameras [ 0 locks=0 ] ( "on" ) ar_ass_export_lights [ 0 locks=0 ] ( "on" ) ar_ass_export_shapes [ 0 locks=0 ] ( "on" ) ar_ass_export_shaders [ 0 locks=0 ] ( "on" ) ar_ass_export_shader_assignments [ 0 locks=0 ] ( "on" ) ar_ass_export_operators [ 0 locks=0 ] ( "on" ) ar_ass_export_overrides [ 0 locks=0 ] ( "on" ) ar_ass_export_drivers [ 0 locks=0 ] ( "on" ) ar_ass_export_filters [ 0 locks=0 ] ( "on" ) ar_export_asstoc [ 0 locks=0 ] ( "off" ) ar_prepend_htoa_paths [ 0 locks=0 ] ( "on" ) ar_ass_expand_procedurals [ 0 locks=0 ] ( "off" ) ar_ass_absolute_texture_paths [ 0 locks=0 ] ( "on" ) ar_ass_absolute_procedural_paths [ 0 locks=0 ] ( "on" ) tprerender [ 0 locks=0 ] ( "on" ) prerender [ 0 locks=0 ] ( "" ) lprerender [ 0 locks=0 ] ( "hscript" ) tpreframe [ 0 locks=0 ] ( "on" ) preframe [ 0 locks=0 ] ( "" ) lpreframe [ 0 locks=0 ] ( "hscript" ) tpostframe [ 0 locks=0 ] ( "on" ) postframe [ 0 locks=0 ] ( "" ) lpostframe [ 0 locks=0 ] ( "hscript" ) tpostrender [ 0 locks=0 ] ( "on" ) postrender [ 0 locks=0 ] ( "" ) lpostrender [ 0 locks=0 ] ( "hscript" ) soho_program [ 0 locks=0 ] ( arnold.py ) soho_outputmode [ 0 locks=0 ] ( [ soho_outputmode 0 ] ) soho_pipecmd [ 0 locks=0 ] ( [ soho_pipecmd "import htoa.searchpath return htoa.searchpath.hick" ] ) soho_diskfile [ 0 locks=0 ] ( "" ) soho_errormode [ 0 locks=0 ] ( 1 ) soho_shopstyle [ 0 locks=0 ] ( Arnold ) soho_precision [ 0 locks=0 ] ( 12 ) soho_indentstep [ 0 locks=0 ] ( 2 ) soho_almostzero [ 0 locks=0 ] ( 0 ) soho_multiframe [ 0 locks=0 ] ( "off" ) soho_safename [ 0 locks=0 ] ( "off" ) soho_ipr_support [ 0 locks=0 ] ( "on" ) soho_foreground [ 0 locks=0 ] ( "off" ) main6 [ 0 locks=0 ] ( 0 0 0 0 0 ) folder_camera2 [ 0 locks=0 ] ( 0 ) folder_subdivision2 [ 0 locks=0 ] ( 0 ) folder_objects2 [ 0 locks=0 ] ( 0 ) folder_shaders2 [ 0 locks=0 ] ( 0 ) folder_lights2 [ 0 locks=0 ] ( 0 ) folder0 [ 0 locks=0 ] ( 0 0 0 0 0 0 0 0 0 0 ) ar_picture [ 0 locks=0 ] ( ip ) vm_picture [ 0 locks=0 ] ( [ vm_picture chs(\"ar_picture\") ] ) override_camerares [ 0 locks=0 ] ( "off" ) res_fraction [ 0 locks=0 ] ( specific ) res_override [ 0 locks=0 ] ( 640 480 ) res_overrideMenu [ 0 locks=0 ] ( 0 ) aspect_override [ 0 locks=0 ] ( 1 ) my_sep [ 0 locks=0 ] ( ) ar_overscan_enable [ 0 locks=0 ] ( "off" ) ar_denoise [ 0 locks=0 ] ( "off" ) ar_output_variance [ 0 locks=0 ] ( "off" ) ar_overscan [ 0 locks=0 ] ( 0 [ ar_overscany 0 ] [ ar_overscanz 0 ] [ ar_overscanw 0 ] ) ar_overscan_label [ 0 locks=0 ] ( Top Bottom Left Right ) ar_overscan_separator [ 0 locks=0 ] ( ) ar_picture_format [ 0 locks=0 ] ( exr ) ar_picture_tiling [ 0 locks=0 ] ( 0 ) ar_tiff_format [ 0 locks=0 ] ( 0 ) ar_tiff_compression [ 0 locks=0 ] ( lzw ) ar_tiff_color_family [ 0 locks=0 ] ( All ) ar_tiff_color_space [ 0 locks=0 ] ( auto ) ar_png_format [ 0 locks=0 ] ( 0 ) ar_png_color_family [ 0 locks=0 ] ( All ) ar_png_color_space [ 0 locks=0 ] ( auto ) ar_exr_compression [ 0 locks=0 ] ( zip ) ar_exr_color_family [ 0 locks=0 ] ( All ) ar_exr_color_space [ 0 locks=0 ] ( auto ) ar_jpeg_color_family [ 0 locks=0 ] ( All ) ar_jpeg_color_space [ 0 locks=0 ] ( auto ) ar_jpeg_quality [ 0 locks=0 ] ( 100 ) ar_exr_half_precision [ 0 locks=0 ] ( "off" ) ar_exr_multipart [ 0 locks=0 ] ( "off" ) ar_exr_preserve_layer_name [ 0 locks=0 ] ( "off" ) ar_exr_autocrop [ 0 locks=0 ] ( "off" ) ar_picture_output_padded [ 0 locks=0 ] ( "off" ) ar_picture_dither [ 0 locks=0 ] ( "on" ) ar_tiff_unpremult_alpha [ 0 locks=0 ] ( "off" ) ar_tiff_skip_alpha [ 0 locks=0 ] ( "off" ) ar_deepexr_subpixel_merge [ 0 locks=0 ] ( "on" ) ar_deepexr_beauty_tolerance [ 0 locks=0 ] ( 0.01 ) ar_deepexr_alpha_tolerance [ 0 locks=0 ] ( 0.01 ) ar_deepexr_depth_tolerance [ 0 locks=0 ] ( 0.01 ) ar_deepexr_beauty_half_precision [ 0 locks=0 ] ( "off" ) ar_deepexr_alpha_half_precision [ 0 locks=0 ] ( "off" ) ar_deepexr_depth_half_precision [ 0 locks=0 ] ( "off" ) ar_deepexr_use_RGB_opacity [ 0 locks=0 ] ( "off" ) ar_deepexr_enable_filtering [ 0 locks=0 ] ( "on" ) ar_picture_append [ 0 locks=0 ] ( "off" ) ar_exr_metadata [ 0 locks=0 ] ( 0 ) ar_enable_aov_composition [ 0 locks=0 ] ( "on" ) ar_multicam [ 0 locks=0 ] ( "on" ) ar_imagers [ 0 locks=0 ] ( "" ) ar_aov_shaders [ 0 locks=0 ] ( "" ) ar_aovs [ 0 locks=0 ] ( 0 ) ar_overridden [ 0 locks=0 ] ( "off" ) group_samples [ 0 locks=0 ] ( 0 ) ar_AA_samples [ 0 locks=0 ] ( 3 ) ar_enable_adaptive_sampling [ 0 locks=0 ] ( "off" ) ar_AA_samples_max [ 0 locks=0 ] ( 20 ) ar_AA_samples_extra [ 0 locks=0 ] ( [ ar_AA_samples_extra 0 ] ) ar_AA_adaptive_threshold [ 0 locks=0 ] ( 0.014999999999999999 ) ar_GI_diffuse_samples [ 0 locks=0 ] ( 2 ) ar_GI_specular_samples [ 0 locks=0 ] ( 2 ) ar_GI_transmission_samples [ 0 locks=0 ] ( 2 ) ar_GI_sss_samples [ 0 locks=0 ] ( 2 ) ar_GI_volume_samples [ 0 locks=0 ] ( 2 ) ar_enable_progressive_render [ 0 locks=0 ] ( "off" ) group_pixelfilter [ 0 locks=0 ] ( 0 ) ar_pixel_filter_type [ 0 locks=0 ] ( gaussian_filter ) ar_pixel_filter_width [ 0 locks=0 ] ( 2 ) ar_pixel_filter_width_blackman_harris [ 0 locks=0 ] ( 3 ) ar_pixel_filter_width_sinc [ 0 locks=0 ] ( 6 ) ar_pixel_filter_farthest_domain [ 0 locks=0 ] ( first_hit ) ar_pixel_filter_variance_scalar_mode [ 0 locks=0 ] ( "off" ) ar_pixel_filter_variance_filter_weights [ 0 locks=0 ] ( box ) ar_pixel_filter_heatmap_minimum [ 0 locks=0 ] ( 0 ) ar_pixel_filter_heatmap_maximum [ 0 locks=0 ] ( 1 ) group_clamping [ 0 locks=0 ] ( 0 ) ar_AA_sample_clamp_enable [ 0 locks=0 ] ( "off" ) ar_AA_sample_clamp_affects_aovs [ 0 locks=0 ] ( "off" ) ar_AA_sample_clamp [ 0 locks=0 ] ( 10 ) ar_indirect_sample_clamp [ 0 locks=0 ] ( 10 ) group_advanced [ 0 locks=0 ] ( 0 ) ar_lock_sampling_pattern [ 0 locks=0 ] ( "off" ) ar_sss_use_autobump [ 0 locks=0 ] ( "off" ) ar_dielectric_priorities [ 0 locks=0 ] ( "on" ) ar_indirect_specular_blur [ 0 locks=0 ] ( 1 ) group_info [ 0 locks=0 ] ( 0 ) ar_info_samples_camera [ 0 locks=0 ] ( [ ar_info_samples_camera __import__('htoa').properties.sampleInfoCamera() ] ) ar_info_samples_diffuse [ 0 locks=0 ] ( [ ar_info_samples_diffuse1 __import__('htoa').properties.sampleInfoDiffuse() ] [ ar_info_samples_diffuse2 __import__('htoa').properties.sampleInfoDiffuseDepth() ] ) ar_info_samples_specular [ 0 locks=0 ] ( [ ar_info_samples_specular1 __import__('htoa').properties.sampleInfoSpecular() ] [ ar_info_samples_specular2 __import__('htoa').properties.sampleInfoSpecularDepth() ] ) ar_info_samples_transmission [ 0 locks=0 ] ( [ ar_info_samples_transmission1 __import__('htoa').properties.sampleInfoTransmission() ] [ ar_info_samples_transmission2 __import__('htoa').properties.sampleInfoTransmissionDepth() ] ) ar_info_samples_total [ 0 locks=0 ] ( [ ar_info_samples_total1 __import__('htoa').properties.sampleInfoTotal() ] [ ar_info_samples_total2 __import__('htoa').properties.sampleInfoTotalDepth() ] ) ar_GI_total_depth [ 0 locks=0 ] ( 10 ) ar_GI_diffuse_depth [ 0 locks=0 ] ( 1 ) ar_GI_specular_depth [ 0 locks=0 ] ( 1 ) ar_GI_transmission_depth [ 0 locks=0 ] ( 8 ) ar_GI_volume_depth [ 0 locks=0 ] ( 0 ) ar_auto_transparency_depth [ 0 locks=0 ] ( 10 ) ar_low_light_threshold [ 0 locks=0 ] ( 0.001 ) ar_mb_xform_enable [ 0 locks=0 ] ( "off" ) ar_mb_xform_keys [ 0 locks=0 ] ( 2 ) ar_mb_dform_enable [ 0 locks=0 ] ( "off" ) ar_mb_dform_keys [ 0 locks=0 ] ( 2 ) group_shutter [ 0 locks=0 ] ( 0 ) ar_mb_shutter [ 0 locks=0 ] ( center ) ar_mb_shutter_length [ 0 locks=0 ] ( 0.5 ) ar_mb_shutter_range [ 0 locks=0 ] ( -0.25 0.25 ) ar_ignore_motion_blur [ 0 locks=0 ] ( "off" ) ar_texture_max_sharpen [ 0 locks=0 ] ( 1.5 ) ar_texture_max_memory_MB [ 0 locks=0 ] ( 4096 ) ar_texture_max_open_files [ 0 locks=0 ] ( 0 ) ar_texture_accept_untiled [ 0 locks=0 ] ( "on" ) ar_texture_autotile [ 0 locks=0 ] ( 64 ) ar_texture_accept_unmipped [ 0 locks=0 ] ( "on" ) ar_texture_automip [ 0 locks=0 ] ( "on" ) ar_texture_auto_maketx [ 0 locks=0 ] ( "on" ) ar_texture_use_existing_tx [ 0 locks=0 ] ( "on" ) ar_platform [ 0 locks=0 ] ( [ ar_platform __import__('sys').platform ] ) group_render_device [ 0 locks=0 ] ( 0 ) ar_render_device [ 0 locks=0 ] ( CPU ) ar_render_device_fallback [ 0 locks=0 ] ( error ) group_auto_gpu [ 0 locks=0 ] ( 0 ) ar_gpu_default_names [ 0 locks=0 ] ( * ) ar_gpu_default_min_memory_MB [ 0 locks=0 ] ( 512 ) group_manual_gpu [ 0 locks=0 ] ( 0 ) ar_manual_device_selection [ 0 locks=0 ] ( "off" ) ar_device_selection [ 0 locks=0 ] ( "" ) group_gpu_settings [ 0 locks=0 ] ( 0 ) ar_gpu_max_texture_resolution [ 0 locks=0 ] ( 0 ) group_cm [ 0 locks=0 ] ( 0 ) ar_color_space_singleton [ 0 locks=0 ] ( "off" ) ar_ocio_enabled [ 0 locks=0 ] ( [ ar_ocio_enabled 0 ] ) ar_color_family_narrow [ 0 locks=0 ] ( [ ar_color_family_narrow "import htoa.ocio return htoa.ocio.default_sRGB_family" ] ) ar_color_space_narrow [ 0 locks=0 ] ( [ ar_color_space_narrow "import htoa.ocio return htoa.ocio.default_sRGB" ] ) ar_color_family_linear [ 0 locks=0 ] ( [ ar_color_family_linear "import htoa.ocio return htoa.ocio.default_linear_family" ] ) ar_color_space_linear [ 0 locks=0 ] ( [ ar_color_space_linear "import htoa.ocio return htoa.ocio.default_linear" ] ) ar_linear_chromaticities [ 0 locks=0 ] ( "off" ) ar_chromaticity_red [ 0 locks=0 ] ( 0.64000000000000001 0.33000000000000002 ) ar_chromaticity_green [ 0 locks=0 ] ( 0.29999999999999999 0.59999999999999998 ) ar_chromaticity_blue [ 0 locks=0 ] ( 0.14999999999999999 0.059999999999999998 ) ar_chromaticity_white [ 0 locks=0 ] ( 0.31269999999999998 0.32900000000000001 ) ar_baking_enable [ 0 locks=0 ] ( "off" ) ar_baking_resolution [ 0 locks=0 ] ( 256 ) ar_baking_extend_edges [ 0 locks=0 ] ( "on" ) ar_baking_udims [ 0 locks=0 ] ( "" ) ar_baking_udims_all [ 0 locks=0 ] ( "off" ) ar_baking_normal_offset [ 0 locks=0 ] ( 0.001 ) ar_baking_uv_offset [ 0 locks=0 ] ( 0 0 ) ar_baking_uv_scale [ 0 locks=0 ] ( 1 1 ) ar_baking_meshes [ 0 locks=0 ] ( 0 ) ar_materialx_enable [ 0 locks=0 ] ( "off" ) ar_materialx_file [ 0 locks=0 ] ( "" ) ar_materialx_look [ 0 locks=0 ] ( "" ) ar_materialx_relative [ 0 locks=0 ] ( "on" ) ar_materialx_properties [ 0 locks=0 ] ( 0 ) ar_force_threads [ 0 locks=0 ] ( "off" ) ar_threads [ 0 locks=0 ] ( 0 ) ar_thread_priority [ 0 locks=0 ] ( lowest ) ar_bucket_scanning [ 0 locks=0 ] ( spiral ) ar_bucket_size [ 0 locks=0 ] ( 64 ) ar_AA_initial [ 0 locks=0 ] ( 0 ) ar_plugin_searchpath [ 0 locks=0 ] ( "" ) ar_procedural_searchpath [ 0 locks=0 ] ( "" ) ar_texture_searchpath [ 0 locks=0 ] ( "" ) ar_osl_includepath [ 0 locks=0 ] ( "" ) ar_mplay_label [ 0 locks=0 ] ( "" ) ar_create_intermediate_directories [ 0 locks=0 ] ( "on" ) ar_flush_sop_cache [ 0 locks=0 ] ( "on" ) ar_pick_material [ 0 locks=0 ] ( "on" ) ar_inherit_properties [ 0 locks=0 ] ( "off" ) ar_parallel_node_init [ 0 locks=0 ] ( "on" ) ar_abort_on_error [ 0 locks=0 ] ( "on" ) ar_abort_on_license_fail [ 0 locks=0 ] ( "off" ) ar_skip_license_check [ 0 locks=0 ] ( "off" ) ar_log_file_enable [ 0 locks=0 ] ( "off" ) ar_log_file [ 0 locks=0 ] ( "" ) ar_log_verbosity [ 0 locks=0 ] ( warnings ) ar_log_max_warnings [ 0 locks=0 ] ( 5 ) ar_log_console_enable [ 0 locks=0 ] ( "on" ) ar_stats_file_enable [ 0 locks=0 ] ( "off" ) ar_stats_file [ 0 locks=0 ] ( $HIP/arnold_stats.json ) ar_stats_mode [ 0 locks=0 ] ( 1 ) ar_profile_file_enable [ 0 locks=0 ] ( "off" ) ar_profile_file [ 0 locks=0 ] ( $HIP/arnold_profile.json ) ar_texture_per_file_stats [ 0 locks=0 ] ( "on" ) ar_log_plugins [ 0 locks=0 ] ( "off" ) my_sep_diagnostics1 [ 0 locks=0 ] ( ) ar_ignore_operators [ 0 locks=0 ] ( "off" ) ar_ignore_textures [ 0 locks=0 ] ( "off" ) ar_ignore_shaders [ 0 locks=0 ] ( "off" ) ar_ignore_atmosphere [ 0 locks=0 ] ( "off" ) ar_ignore_lights [ 0 locks=0 ] ( "off" ) ar_ignore_shadows [ 0 locks=0 ] ( "off" ) ar_ignore_subdivision [ 0 locks=0 ] ( "off" ) ar_ignore_displacement [ 0 locks=0 ] ( "off" ) ar_ignore_bump [ 0 locks=0 ] ( "off" ) ar_ignore_smoothing [ 0 locks=0 ] ( "off" ) ar_ignore_dof [ 0 locks=0 ] ( "off" ) ar_ignore_sss [ 0 locks=0 ] ( "off" ) ar_ignore_motion [ 0 locks=0 ] ( "off" ) ar_ignore_imagers [ 0 locks=0 ] ( "off" ) my_sep_diagnostics2 [ 0 locks=0 ] ( ) ar_error_color_bad_texture [ 0 locks=0 ] ( 1 0 0 ) ar_error_color_bad_pixel [ 0 locks=0 ] ( 0 0 1 ) ar_error_color_bad_shader [ 0 locks=0 ] ( 1 0 1 ) } 0707070000010000000006660000000000000000010000001440237341500002500000000031out/arnold1.userdata ___Version___0707070000010000000006660000000000000000010000001440237341500001000000000002out.net1 0707070000010000000006660000000000000000010000001440237341500000700000000674ch.defcomment "" position 0 0.75 connectornextid 0 flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on outputsNamed3 { } inputsNamed3 { } inputs { } stat { create 1581329963 modify 1678374424 author griggsl@MAD4H7J8D2.ads.autodesk.com access 0777 } color UT_Color RGB 0.8 0.8 0.8 delscript "" exprlanguage hscript end 0707070000010000000006660000000000000000010000001440237341500001000000000020ch.parm{ version 0.8 } 0707070000010000000006660000000000000000010000001440237341500001400000000041ch.userdata ___Version___19.5.4930707070000010000000006660000000000000000010000001440237341500000700000000002ch.net1 0707070000010000000006660000000000000000010000001440237341500001100000000674shop.defcomment "" position 0 2.25 connectornextid 0 flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on outputsNamed3 { } inputsNamed3 { } inputs { } stat { create 1581329963 modify 1678374424 author griggsl@MAD4H7J8D2.ads.autodesk.com access 0777 } color UT_Color RGB 0.8 0.8 0.8 delscript "" exprlanguage hscript end 0707070000010000000006660000000000000000010000001440237341500001200000000020shop.parm{ version 0.8 } 0707070000010000000006660000000000000000010000001440237341500001600000000041shop.userdata ___Version___19.5.4930707070000010000000006660000000000000000010000001440237341500001100000000002shop.net1 0707070000010000000006660000000000000000010000001440237341500001000000000671img.defcomment "" position 0 3 connectornextid 0 flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on outputsNamed3 { } inputsNamed3 { } inputs { } stat { create 1581329963 modify 1678374424 author griggsl@MAD4H7J8D2.ads.autodesk.com access 0777 } color UT_Color RGB 0.8 0.8 0.8 delscript "" exprlanguage hscript end 0707070000010000000006660000000000000000010000001440237341500001100000000020img.parm{ version 0.8 } 0707070000010000000006660000000000000000010000001440237341500001500000000041img.userdata ___Version___19.5.4930707070000010000000006660000000000000000010000001440237341500001000000000002img.net1 0707070000010000000006660000000000000000010000001440237341500001000000000002vex.net1 0707070000010000000006660000000000000000010000001440237341500004200000000051mat/arnold_materialbuilder1.order4 OUT_material flat1 ramp_rgb1 distance1 0707070000010000000006660000000000000000010000001440237341500004000000000002mat/arnold_materialbuilder1.net1 0707070000010000000006660000000000000000010000001440237341500001000000000002mat.net1 0707070000010000000006660000000000000000010000001440237341500001200000000705stage.defcomment "" position 0 4.5 connectornextid 0 flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on debug off outputsNamed3 { } inputsNamed3 { } inputs { } stat { create 1581329963 modify 1678374630 author griggsl@MAD4H7J8D2.ads.autodesk.com access 0777 } color UT_Color RGB 0.8 0.8 0.8 delscript "" exprlanguage hscript end 0707070000010000000006660000000000000000010000001440237341500001300000000340stage.parm{ version 0.8 pinnedprims [ 0 locks=0 ] ( "" ) resolvercontextassetpath [ 0 locks=0 ] ( "" ) insertionpointdescriptor [ 0 locks=0 ] ( "" ) rendergallerysource [ 0 locks=0 ] ( $HIP/galleries/$HIPNAME.$OS/rendergallery.db ) } 0707070000010000000006660000000000000000010000001440237341500001700000000041stage.userdata ___Version___19.5.4930707070000010000000006660000000000000000010000001440237341500002100000000305stage.datablocks__onload__.expansion expansion{ } __onload__.loadmasks loadmasksg{ "populateall":true, "populatepaths":[ ], "mutelayers":[ ], "loadall":true, "loadpaths":[ ] } 0707070000010000000006660000000000000000010000001440237341500001200000000002stage.net1 0707070000010000000006660000000000000000010000001440237341500001200000000674tasks.defcomment "" position 0 5.25 connectornextid 0 flags = lock off model off template off footprint off xray off bypass off display off render off highlight off unload off savedata off compress on colordefault on exposed on outputsNamed3 { } inputsNamed3 { } inputs { } stat { create 1581329964 modify 1678374424 author griggsl@MAD4H7J8D2.ads.autodesk.com access 0777 } color UT_Color RGB 0.8 0.8 0.8 delscript "" exprlanguage hscript end 0707070000010000000006660000000000000000010000001440237341500001300000000020tasks.parm{ version 0.8 } 0707070000010000000006660000000000000000010000001440237341500001700000000041tasks.userdata ___Version___19.5.4930707070000010000000006660000000000000000010000001440237341500001200000000002tasks.net1 0707070000010000000006660000000000000000010000001440237341500002600000000000.scenefilevisualizers0707070000010000000006660000000000000000010000001440237341500001500000030025.applicationnetworkeditor -p '{\n}\n'performance -c on -d on -f on -g off -j on -k on -m off -n on -o on -t off -v on -p on -y on -u on -e off -r absolute -R seconds -w tree panetab12 chopview -a 0 -c "" -k 1 -m 1 -b 1 -e 1 -f 0 -g 0 -H 1 -i 0 -j 1 -l 0 -n 1 -V 0 -y 0 -B 0 -s 0 -S 0.034375 -u 0 -v 0 -h -10 310 -r -1.5 1.5 lee2.panetab13 imgdispopt -m 256 -P on -M on -A on -j on -x off -g 2.2 -B 1 -v split -V 2 2 -d h -a off -i 2 -b 0 0 0 -o "" -h on -H on -c 0.8 0.8 0.8 -C 1 1 1 -S 0.8 0.8 0.8 -R 6 -F dc -D "" -I "" -f "" -s off -r 256 256 -p on -l on -t on imgview -z 1 -p (none) 0 -c 0 -l on -s off -i imgview6 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview6 1 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview6 2 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview6 3 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview6 4 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview6 5 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview6 6 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview6 7 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview6 8 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview6 9 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview6 10 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview6 11 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview6 12 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview6 13 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview6 14 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview6 15 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview6 16 imgviewtime -V on -L on -G on -H on -P off -r 24 -u fr -g 0 -f on -e on -b on -d imgview6 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview6 1 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview6 2 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview6 3 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview6 4 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview6 5 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview6 6 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview6 7 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview6 8 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview6 9 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview6 10 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview6 11 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview6 12 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview6 13 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview6 14 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview6 15 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview6 16 networkeditor -p '{\n}\n'performance -c on -d on -f on -g off -j on -k on -m off -n on -o on -t off -v on -p on -y on -u on -e off -r absolute -R seconds -w tree panetab12 chopview -a 0 -c "" -k 1 -m 1 -b 1 -e 1 -f 0 -g 0 -H 1 -i 0 -j 1 -l 0 -n 1 -V 0 -y 0 -B 0 -s 0 -S 0.034375 -u 0 -v 0 -h -10 310 -r -1.5 1.5 lee.panetab13 imgdispopt -m 256 -P on -M on -A on -j on -x off -g 2.2 -B 1 -v split -V 2 2 -d h -a off -i 2 -b 0 0 0 -o "" -h on -H on -c 0.8 0.8 0.8 -C 1 1 1 -S 0.8 0.8 0.8 -R 6 -F dc -D "" -I "" -f "" -s off -r 256 256 -p on -l on -t on imgview -z 1 -p (none) 0 -c 0 -l on -s off -i imgview6 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview6 1 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview6 2 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview6 3 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview6 4 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview6 5 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview6 6 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview6 7 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview6 8 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview6 9 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview6 10 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview6 11 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview6 12 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview6 13 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview6 14 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview6 15 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview6 16 imgviewtime -V on -L on -G on -H on -P off -r 24 -u fr -g 0 -f on -e on -b on -d imgview6 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview6 1 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview6 2 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview6 3 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview6 4 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview6 5 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview6 6 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview6 7 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview6 8 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview6 9 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview6 10 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview6 11 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview6 12 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview6 13 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview6 14 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview6 15 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview6 16 networkeditor -p '{\n}\n'performance -c on -d on -f on -g off -j on -k on -m off -n on -o on -t off -v on -p on -y on -u on -e off -r absolute -R seconds -w tree panetab12 chopview -a 0 -c "" -k 1 -m 1 -b 1 -e 1 -f 0 -g 0 -H 1 -i 0 -j 1 -l 0 -n 1 -V 0 -y 0 -B 0 -s 0 -S 0.034375 -u 0 -v 0 -h -10 310 -r -1.5 1.5 Build.panetab13 imgdispopt -m 256 -P on -M on -A on -j on -x off -g 2.2 -B 1 -v split -V 2 2 -d h -a off -i 2 -b 0 0 0 -o "" -h on -H on -c 0.8 0.8 0.8 -C 1 1 1 -S 0.8 0.8 0.8 -R 6 -F dc -D "" -I "" -f "" -s off -r 256 256 -p on -l on -t on imgview -z 1 -p (none) 0 -c 0 -l on -s off -i imgview2 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview2 1 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview2 2 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview2 3 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview2 4 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview2 5 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview2 6 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview2 7 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview2 8 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview2 9 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview2 10 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview2 11 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview2 12 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview2 13 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview2 14 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview2 15 imgview2d -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 2.2 -d "" -c -1 -t off -i on -X on imgview2 16 imgviewtime -V on -L on -G on -H on -P off -r 24 -u fr -g 0 -f on -e on -b on -d imgview2 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview2 1 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview2 2 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview2 3 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview2 4 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview2 5 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview2 6 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview2 7 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview2 8 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview2 9 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview2 10 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview2 11 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview2 12 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview2 13 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview2 14 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview2 15 imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview2 16 panepath -d lee2 -f -p panetab14 /mat/arnold_materialbuilder1/distance1 panepath -d lee2 -f -p panetab3 /mat/arnold_materialbuilder1/distance1 panepath -d lee2 -f -p panetab11 /mat/arnold_materialbuilder1/distance1 panepath -d lee2 -f -p panetab5 /mat/arnold_materialbuilder1/distance1 panepath -d lee2 -f -p panetab6 /mat/arnold_materialbuilder1/distance1 panepath -d lee2 -f -p panetab12 /obj/ panepath -d lee2 -f -p panetab7 /mat/arnold_materialbuilder1/distance1 panepath -d lee2 -f -p panetab8 /obj/ panepath -d lee2 -f -p panetab9 /mat/arnold_materialbuilder1/distance1 panepath -d lee2 -f -p panetab10 /obj/ desk set lee2 viewupdate -u always audiopanel -s p '' audiopanel -s r on audiopanel -s s 1 audiopanel -s f 45 audiopanel -t p stop audiopanel -t l off audiopanel -t r on audiopanel -o m off audiopanel -o t on audiopanel -o u on audiopanel -o l 1 audiopanel -o r 1 audiopanel -o d 0 audiopanel -r d 0.2 audiopanel -m 0 audiopanel -a '' audiopanel -f 1 audiopanel -O 0 colorsettings -D -A -g 2.2 -l "" -p -s -v -i -r -c -f compproject -r 1920 1080 -a 1 -d fp16 -p 0 1 -P full -f 0 -F 0 -l on omparm "Follow Path" followpath /obj/sphere_object1 "invisible(1)" omparm "Follow Path" followpath /obj/box_object1 "invisible(1)" omparm "Follow Path" followpath /obj/grid_object1 "invisible(1)" texcache -a off -r 2147483647 2147483647 -m 10000 -M 16362 shopvisible +I3D +VMantra +RIB 0707070000010000000006660000000000000000010000001440237341500000700000000060.takesHoudiniTakeFile 1.0 take name Main kids 0 e 0707070000010000000006660000000000000000010000001440237341500001000000000007.stylesNSJb{}0707070000010000000006660000000000000000010000001440237341500002000000000004.contextoptions[ ] 0707070000010000000006660000000000000000010000001440237341500000500000000024.cwdopcf / takeset Main 0707070000010000000006660000000000000000010000001440237341500001300000000000TRAILER!!!