0707070000010000000006660000000000000000010000001147726722100000700000000237.start fplayback -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(), " -> ")`'
0707070000010000000006660000000000000000010000001147726722100001300000001140.variables set -g ACTIVETAKE = 'Main'
set -g DRIVER = 'mantra1'
set -g DRIVERPATH = '/out/mantra1'
set -g E = '2.7182818284590452354'
set -g EYE = 'stereo'
set -g HIP = '/work/training_education_docs/Learn/lgt_2_lighting/lit_fog'
set -g HIPNAME = 'light_volume_effects.hip'
set -g JOB = '/Users/jeffwagner'
set -g PI = '3.1415926535897932384'
set -g POSE = '/Users/jeffwagner/Library/Preferences/houdini/11.0/poselib'
set -g _HIP_SAVEPLATFORM = 'darwin-x86_64-gcc4.2-MacOSX10.6'
set -g _HIP_SAVETIME = 'Mon Dec  6 18:15:29 2010'
set -g _HIP_SAVEVERSION = '11.0.556'
set -g _HIP_SHELFTOOLCOUNT = '4'
set -g status = '0'
0707070000010000000006660000000000000000010000001147726722100001100000000267.aliases 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'
0707070000010000000006660000000000000000010000001147726722100001400000000021.takeconfig takename -g take
0707070000010000000006660000000000000000010000001147726722100001500000000000.hou.session 0707070000010000000006660000000000000000010000001147726722100001000001003651.defotl INDX       !HIP Internal Operator Definitions   2   INDEX_SECTION      Ln   Object/hlight    Ln   
Driver/ifd    Ln   Vop/switchlightingbsdf  4  Ln   Vop/vectofloat    Ln   
Vop/albedo  f  Ln   	Vop/clamp  d  
Ln   
Vop/negate    Ln   Vop/mix    
Ln   Vop/volumevopglobal  U  Ln   Vop/surfacemodel <  Ln   Vop/conserveenergy   aLn   Vop/complement b  KLn   Vop/pow    Ln   Vop/volumevopoutput (F  	Ln   Vop/texture 1  Ln   Vop/dot ?  	9Ln   Vop/fit H  pLn   
Vop/shadow Z4  Ln   Vop/indirectlighting \  ]Ln   Vop/pbrdiffuse pM  
Ln   Vop/inttofloat {0  Ln   Vop/lighting }  Ln   Vop/frontface ~  DLn   Vop/uvcoords   2Ln   Vop/mulconst   Ln   Vop/physicalsss   k%Ln   Vop/computetan   'Ln   Vop/raybounce   Ln   Vop/normalize     	Ln   Vop/inttovec %	  Ln   Vop/isshadow (  Ln   Vop/pbrspecular *&  %Ln   Vop/hvectovec @K  Ln   
Vop/twoway C;  Ln   Vop/not O  eLn   Vop/exp R'  Ln   Vop/aanoise Y
  
Ln   Vop/alphamix c  GLn   Vop/ifconnected ~  Ln   Vop/surfacecolor   -Ln   Vop/luminance   Ln   Vop/directlighting   !Ln   
Vop/invert   ;Ln   Vop/fresnel   2Ln   Vop/isconnected 7  Ln   
Vop/length   FLn   Vop/degtorad    Ln   Vop/addconst   Ln   Vop/floattovec   Ln   1      hlight   Light   "oplib:/Object/hlight?Object/hlight   	OBJ_light           Object               subtype=light        L         ifd   Mantra   oplib:/Driver/ifd?Driver/ifd   
ROP_mantra           Driver   soho/dialogs   ROPsoho              'L         switchlightingbsdf   Switch Lighting BSDF   4oplib:/Vop/switchlightingbsdf?Vop/switchlightingbsdf   VOP_switchlightingbsdf           Vop   vop   VOPall       (surface photon displace light shadow fog       L         
vectofloat   Vector To Float   $oplib:/Vop/vectofloat?Vop/vectofloat   VOP_vectofloat           Vop   vop   VOPall       *       L         albedo   Albedo   oplib:/Vop/albedo?Vop/albedo   
VOP_albedo           Vop                       L         clamp   Clamp   oplib:/Vop/clamp?Vop/clamp   	VOP_clamp           Vop   vop   VOPall       *       L         negate   Negate   oplib:/Vop/negate?Vop/negate   
VOP_negate           Vop   vop   VOPall       *       L         mix   Mix   oplib:/Vop/mix?Vop/mix   VOP_mix           Vop   vop   VOPall       *       L         volumevopglobal   Volume VOP Global Parameters   .oplib:/Vop/volumevopglobal?Vop/volumevopglobal   VOP_volumevexglobal           Vop               *        L        surfacemodel   Surface Model   (oplib:/Vop/surfacemodel?Vop/surfacemodel   VOP_surfacemodel           Vop               (surface photon displace light shadow fog       [L        conserveenergy   Conserve Energy   ,oplib:/Vop/conserveenergy?Vop/conserveenergy   VOP_conserveenergy           Vop                       L        
complement   
Complement   $oplib:/Vop/complement?Vop/complement   VOP_complement           Vop   vop   VOPall       *       L         pow   Power   oplib:/Vop/pow?Vop/pow   VOP_pow           Vop   vop   VOPall       *       L         volumevopoutput   Volume VOP Output   .oplib:/Vop/volumevopoutput?Vop/volumevopoutput   VOP_volumevexoutput           Vop               *       L        texture   Texture   oplib:/Vop/texture?Vop/texture   VOP_texture           Vop   vop   VOPall       surface displace light shadow       L         dot   Dot Product   oplib:/Vop/dot?Vop/dot   VOP_dot           Vop   vop   VOPall       *       L         fit   	Fit Range   oplib:/Vop/fit?Vop/fit   VOP_fit           Vop   vop   VOPall       *       L         shadow   Shadow   oplib:/Vop/shadow?Vop/shadow   
VOP_shadow           Vop   vop   VOPall       surface fog       L         indirectlighting   Indirect Lighting   0oplib:/Vop/indirectlighting?Vop/indirectlighting   VOP_indirectlighting           Vop               (surface photon displace light shadow fog       L         
pbrdiffuse   Physically Based Diffuse   $oplib:/Vop/pbrdiffuse?Vop/pbrdiffuse   VOP_diffuse           Vop                       L         
inttofloat   Integer To Float   $oplib:/Vop/inttofloat?Vop/inttofloat   VOP_inttofloat           Vop   vop   VOPall               L         lighting   Lighting Model    oplib:/Vop/lighting?Vop/lighting   VOP_lighting           Vop   vop   VOPall       surface rsl_*       L         	frontface   
Front Face   "oplib:/Vop/frontface?Vop/frontface   VOP_frontface           Vop   vop   VOPall       %surface fog light shadow photon rsl_*       L         uvcoords   UVcoords    oplib:/Vop/uvcoords?Vop/uvcoords   VOP_uvcoords           Vop               displace shadow surface        L        mulconst   Multiply Constant    oplib:/Vop/mulconst?Vop/mulconst   VOP_mulconst           Vop   vop   VOPall       *       L         physicalsss   Physical SSS   &oplib:/Vop/physicalsss?Vop/physicalsss   VOP_physicalsss           Vop                        L         
computetan   Compute Tangents   $oplib:/Vop/computetan?Vop/computetan   VOP_computetan           Vop               !displace fog light shadow surface       L        	raybounce   Ray Bounce Level   "oplib:/Vop/raybounce?Vop/raybounce   VOP_raybounce           Vop   vop   VOPall       (surface photon displace light shadow fog        L         	normalize   	Normalize   "oplib:/Vop/normalize?Vop/normalize   VOP_normalize           Vop   vop   VOPall       *       L         inttovec   Integer To Vector    oplib:/Vop/inttovec?Vop/inttovec   VOP_inttovec           Vop   vop   VOPall               L         isshadow   Is Shadow Ray    oplib:/Vop/isshadow?Vop/isshadow   VOP_isshadow           Vop   vop   VOPall       surface fog        L         pbrspecular   Physically Based Specular   &oplib:/Vop/pbrspecular?Vop/pbrspecular   VOP_specular           Vop                       	L         	hvectovec   Vector4 To Vector   "oplib:/Vop/hvectovec?Vop/hvectovec   VOP_hvectovec           Vop   vop   VOPall               L         twoway   Two Way Switch   oplib:/Vop/twoway?Vop/twoway   
VOP_twoway           Vop   vop   VOPall       *       L         not   Not   oplib:/Vop/not?Vop/not   VOP_not           Vop   vop   VOPall       *       L         exp   Exponential   oplib:/Vop/exp?Vop/exp   VOP_exp           Vop   vop   VOPall       *       L         aanoise   Anti-Aliased Noise   oplib:/Vop/aanoise?Vop/aanoise   VOP_aanoise           Vop   vop   VOPall       *       L         alphamix   	Alpha Mix    oplib:/Vop/alphamix?Vop/alphamix   VOP_alphamix           Vop   subnet   SUBvop       surface fog rsl_surface       L        ifconnected   If Connected   &oplib:/Vop/ifconnected?Vop/ifconnected   VOP_ifconnected           Vop   vop   VOPall       *       L         surfacecolor   Surface Color   (oplib:/Vop/surfacecolor?Vop/surfacecolor   opdef:/Vop/surfacecolor?Icon           Vop               displace light shadow surface       L        	luminance   	Luminance   "oplib:/Vop/luminance?Vop/luminance   VOP_luminance           Vop   vop   VOPall       *       L         directlighting   Direct Lighting   ,oplib:/Vop/directlighting?Vop/directlighting   VOP_directlighting           Vop               (surface photon displace light shadow fog       L         invert   Invert   oplib:/Vop/invert?Vop/invert   
VOP_invert           Vop   vop   VOPall               L         fresnel   Fresnel   oplib:/Vop/fresnel?Vop/fresnel   VOP_fresnel           Vop   vop   VOPall       surface fog rsl_*       L         isconnected   Is Connected   &oplib:/Vop/isconnected?Vop/isconnected   VOP_isconnected           Vop   vop   VOPall       *       L         length   Length   oplib:/Vop/length?Vop/length   
VOP_length           Vop   vop   VOPall       *       L         degtorad   Degrees To Radians    oplib:/Vop/degtorad?Vop/degtorad   VOP_degtorad           Vop   vop   VOPall       *       L         addconst   Add Constant    oplib:/Vop/addconst?Vop/addconst   VOP_addconst           Vop   vop   VOPall       *       L         
floattovec   Float To Vector   $oplib:/Vop/floattovec?Vop/floattovec   VOP_floattovec           Vop   vop   VOPall       *       L   INDX              DialogScript      `L4   CreateScript  `  L4i   TypePropertiesOptions  |f   L4   Help  }R    L4   Contents.gz  }R  L4i   ExtraFileOptions  M   L4# Dialog script for hlight automatically generated 07/07/10 18:11:56

{
    name	hlight
    script	hlight
    label	Light

    help {
	""
    }
    bindhandle aperture light "Light" aperture ""
    bindhandle coneangle light "Light" coneangle ""
    bindhandle conedelta light "Light" conedelta ""
    bindhandle coneenable light "Light" coneonoff ""
    bindhandle far light "Light" far ""
    bindhandle focal light "Light" focal ""
    bindhandle focus light "Light" focus ""
    bindhandle light_conefov light "Light" light_conefov ""
    bindhandle l_lookatpath light "Light" lookat ""
    bindhandle near light "Light" near ""
    bindhandle orthowidth light "Light" orthowidth ""
    bindhandle projection light "Light" projection ""
    bindhandle px light "Light" px ""
    bindhandle py light "Light" py ""
    bindhandle pz light "Light" pz ""
    bindhandle l_xOrder light "Light" rst_order ""
    bindhandle l_rx light "Light" rx ""
    bindhandle l_ry light "Light" ry ""
    bindhandle l_rz light "Light" rz ""
    bindhandle sx light "Light" sx ""
    bindhandle sy light "Light" sy ""
    bindhandle sz light "Light" sz ""
    bindhandle l_tx light "Light" tx ""
    bindhandle l_ty light "Light" ty ""
    bindhandle l_tz light "Light" tz ""
    bindhandle resx light "Light" xres ""
    bindhandle l_rOrder light "Light" xyz_order ""
    bindhandle resy light "Light" yres ""

    inputlabel	1	parent
    inputlabel	2	parent
    inputlabel	3	parent
    inputlabel	4	parent

    group {
	name	"stdswitcher4"
	label	"stdswitcher4"
	invisibletab

    }

    group {
	name	"stdswitcher4_1"
	label	"stdswitcher4_1"
	invisibletab

    }

    group {
	name	"stdswitcher4_2"
	label	"stdswitcher4_2"
	invisibletab

    }

    parm {
	name	"keeppos"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"pre_xform"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"xOrd"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"rOrd"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"t"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"r"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"s"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"p"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"scale"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"lookatpath"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"lookup"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"pathobjpath"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"roll"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"pos"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"uparmtype"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"pathorient"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"up"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"bank"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"tdisplay"
	baseparm
	invisible
	joinnext
	export	none
    }
    parm {
	name	"display"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"dimmer"
	baseparm
	invisible
	export	all
    }
    parm {
	name	"picking"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"pickscript"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"caching"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"use_dcolor"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"dcolor"
	baseparm
	invisible
	export	none
    }
    group {
	name	"folder0"
	label	"Transform"

	parm {
	    name	"l_keeppos"
	    label	"Keep position when parenting"
	    type	toggle
	    joinnext
	    default	{ "off" }
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "autoscope" "0000000000000000" }
	}
	parm {
	    name	"l_pre_xform"
	    label	"Pre-transform"
	    type	button
	    default	{ "clean" }
	    menureplace	{
		"clean"	"Clean Transform"
		"cleantrans"	"Clean Translates"
		"cleanrot"	"Clean Rotates"
		"cleanscales"	"Clean Scales"
		"extract"	"Extract Pre-transform"
		"reset"	"Reset Pre-transform"
	    }
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "autoscope" "0000000000000000" }
	}
	parm {
	    name	"l_xOrd"
	    label	"Transform Order"
	    type	ordinal
	    joinnext
	    default	{ "srt" }
	    menu	{
		"srt"	"Scale Rot Trans"
		"str"	"Scale Trans Rot"
		"rst"	"Rot Scale Trans"
		"rts"	"Rot Trans Scale"
		"tsr"	"Trans Scale Rot"
		"trs"	"Trans Rot Scale"
	    }
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "autoscope" "0000000000000000" }
	}
	parm {
	    name	"l_rOrd"
	    label	"Rotate Order"
	    type	ordinal
	    nolabel
	    default	{ "xyz" }
	    menu	{
		"xyz"	"Rx Ry Rz"
		"xzy"	"Rx Rz Ry"
		"yxz"	"Ry Rx Rz"
		"yzx"	"Ry Rz Rx"
		"zxy"	"Rz Rx Ry"
		"zyx"	"Rz Ry Rx"
	    }
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "autoscope" "0000000000000000" }
	}
	parm {
	    name	"l_t"
	    label	"Translate"
	    type	vector
	    size	3
	    default	{ "0" "0" "0" }
	    disablewhen	"{ light_type == geo intothisobject == 1 }"
	    range	{ -1 1 }
	    export	none
	    parmtag	{ "autoscope" "1110000000000000" }
	}
	parm {
	    name	"l_r"
	    label	"Rotate"
	    type	vector
	    size	3
	    default	{ "0" "0" "0" }
	    disablewhen	"{ light_type == geo intothisobject == 1 }"
	    range	{ 0 360 }
	    export	none
	    parmtag	{ "autoscope" "1110000000000000" }
	}
	group {
	    name	"folder1_2"
	    label	"Viewing Options"

	    parm {
		name	"l_enabledisplay"
		label	"Display"
		type	toggle
		nolabel
		joinnext
		default	{ "off" }
		range	{ 0 1 }
		export	none
		parmtag	{ "autoscope" "0000000000000000" }
	    }
	    parm {
		name	"l_display"
		label	"Display"
		type	integer
		default	{ "1" }
		disablewhen	"{ l_enabledisplay == 0 }"
		range	{ 0! 1! }
		export	none
		parmtag	{ "autoscope" "0000000000000000" }
	    }
	    parm {
		name	"l_iconscale"
		label	"Icon Scale"
		type	float
		default	{ "1" }
		range	{ 0 10 }
		export	none
	    }
	    parm {
		name	"l_caching"
		label	"Cache Object Transform"
		type	toggle
		default	{ "off" }
		range	{ 0 1 }
		export	none
		parmtag	{ "autoscope" "0000000000000000" }
	    }
	    parm {
		name	"l_picking"
		label	"Viewport Selecting Enabled"
		type	toggle
		default	{ "on" }
		range	{ 0 1 }
		export	none
		parmtag	{ "autoscope" "0000000000000000" }
	    }
	    parm {
		name	"l_pickscript"
		label	"Select Script"
		type	file
		default	{ "" }
		disablewhen	"{ l_picking == 0 }"
		menureplace	{
		    [ "opmenu -l . pickscript" ]
		}
		range	{ 0 1 }
		export	none
		parmtag	{ "autoscope" "0000000000000000" }
	    }
	}

	group {
	    name	"folder1_2_1"
	    label	"Lookat Options"

	    parm {
		name	"l_lookatpath"
		label	"Look At"
		type	oppath
		default	{ "" }
		range	{ 0 1 }
		export	none
		parmtag	{ "oprelative" "." }
		parmtag	{ "opfilter" "!!OBJ!!" }
		parmtag	{ "autoscope" "0000000000000000" }
	    }
	    parm {
		name	"l_lookup"
		label	"Look At Up Vector"
		type	string
		default	{ "on" }
		disablewhen	"{ l_lookatpath == \"\" }"
		menu	{
		    "off"	"Don't use up vector"
		    "on"	"Use up vector"
		    "quat"	"Use quaternions"
		}
		range	{ 0 1 }
		export	none
		parmtag	{ "autoscope" "0000000000000000" }
	    }
	}

	group {
	    name	"folder1_2_2"
	    label	"Path Options"

	    parm {
		name	"l_pathobjpath"
		label	"Path Object"
		type	oppath
		default	{ "" }
		range	{ 0 1 }
		export	none
		parmtag	{ "oprelative" "." }
		parmtag	{ "opfilter" "!!SOP!!" }
		parmtag	{ "autoscope" "0000000000000000" }
	    }
	    parm {
		name	"l_pathroll"
		label	"Roll"
		type	angle
		default	{ "0" }
		disablewhen	"{ l_pathobjpath == \"\" }"
		range	{ -360 360 }
		export	none
		parmtag	{ "autoscope" "0000000000000000" }
	    }
	    parm {
		name	"l_pathpos"
		label	"Position"
		type	float
		default	{ "0" }
		disablewhen	"{ l_pathobjpath == \"\" }"
		range	{ 0! 10 }
		export	none
		parmtag	{ "autoscope" "0000000000000000" }
	    }
	    parm {
		name	"l_pathparmtype"
		label	"Parameterization"
		type	ordinal
		default	{ "arc" }
		disablewhen	"{ l_pathobjpath == \"\" }"
		menu	{
		    "uniform"	"Uniform"
		    "arc"	"Arc Length"
		}
		range	{ 0 1 }
		export	none
		parmtag	{ "autoscope" "0000000000000000" }
	    }
	    parm {
		name	"l_pathorient"
		label	"Orient Along Path"
		type	integer
		default	{ "1" }
		disablewhen	"{ l_pathobjpath == \"\" }"
		range	{ 0 1 }
		export	none
		parmtag	{ "autoscope" "0000000000000000" }
	    }
	    parm {
		name	"l_pathup"
		label	"Orient Up Vector"
		type	direction
		size	3
		default	{ "0" "1" "0" }
		disablewhen	"{ l_pathobjpath == \"\" }"
		range	{ 0 1 }
		export	none
		parmtag	{ "autoscope" "0000000000000000" }
	    }
	    parm {
		name	"l_pathbank"
		label	"Auto-Bank factor"
		type	float
		default	{ "1" }
		disablewhen	"{ l_pathobjpath == \"\" }"
		range	{ -1 1 }
		export	none
		parmtag	{ "autoscope" "0000000000000000" }
	    }
	}

    }

    group {
	name	"folder0_1"
	label	"Light"

	parm {
	    name	"light_type"
	    label	"Light Type"
	    type	ordinal
	    default	{ "0" }
	    disablewhen	"{ light_enable == 0 }"
	    menu	{
		"point"	"Point"
		"line"	"Line"
		"grid"	"Grid"
		"disk"	"Disk"
		"sphere"	"Sphere"
		"geo"	"Geometry"
		"distant"	"Distant"
		"sun"	"Sun"
		"env"	"Environment *"
	    }
	    range	{ 0 1 }
	    export	all
	}
	parm {
	    name	"light_color"
	    label	"Light Color"
	    type	color
	    size	3
	    default	{ "1" "1" "1" }
	    disablewhen	"{ light_enable == 0 }"
	    range	{ 0 1 }
	    export	all
	}
	parm {
	    name	"light_intensity"
	    label	"Light Intensity"
	    type	float
	    default	{ "1" }
	    disablewhen	"{ light_enable == 0 }"
	    range	{ 0 10 }
	    export	none
	    parmtag	{ "autoscope" "1000000000000000" }
	}
	parm {
	    name	"light_enable"
	    label	"Light Enabled"
	    type	toggle
	    default	{ "1" }
	    range	{ 0 1 }
	    export	all
	}
	parm {
	    name	"ogl_enablelight"
	    label	"Enable Light In Viewport"
	    type	toggle
	    default	{ "1" }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"light_contribdiff"
	    label	"Diffuse Contribution"
	    type	toggle
	    default	{ "1" }
	    disablewhen	"{ light_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"light_contribspec"
	    label	"Specular Contribution"
	    type	toggle
	    default	{ "1" }
	    disablewhen	"{ light_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"categories"
	    label	"Categories"
	    type	string
	    default	{ "" }
	    disablewhen	"{ light_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "spare_category" "Shading" }
	}
	parm {
	    name	"vm_samplingquality"
	    label	"Sampling Quality"
	    type	float
	    default	{ "1" }
	    disablewhen	"{ light_type == point } { light_type == distant }"
	    range	{ 0 10 }
	    export	none
	}
	parm {
	    name	"light_contribprimary"
	    label	"Render Light Geometry"
	    type	toggle
	    default	{ "0" }
	    disablewhen	"{ light_type == point } { light_type == distant }"
	    range	{ 0 1 }
	    export	none
	}
	group {
	    name	"atten_folder_1"
	    label	"Spot Light Options"

	    parm {
		name	"coneenable"
		label	"Enable Spot Light"
		type	toggle
		default	{ "0" }
		disablewhen	"{ light_enable == 0 } { light_type == distant } { light_type == sun }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"light_conefov"
		label	"Use cone angle for field of view"
		type	toggle
		default	{ "1" }
		disablewhen	"{ coneenable != 1 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"light_fov"
		label	"Projection Angle"
		type	float
		default	{ "45" }
		disablewhen	"{ light_conefov != 0 coneenable == 1 } { light_type == distant } { light_type == sun }"
		range	{ 0.05 90 }
		export	none
	    }
	    parm {
		name	"coneangle"
		label	"Cone Angle"
		type	angle
		default	{ "45" }
		disablewhen	"{ coneenable != 1 }"
		range	{ 0 180 }
		export	none
	    }
	    parm {
		name	"conedelta"
		label	"Cone Delta"
		type	angle
		default	{ "10" }
		disablewhen	"{ coneenable != 1 }"
		range	{ 0 180 }
		export	none
	    }
	    parm {
		name	"coneroll"
		label	"Cone Rolloff"
		type	float
		default	{ "1" }
		disablewhen	"{ coneenable != 1 }"
		range	{ 0.001 10 }
		export	none
	    }
	    parm {
		name	"sepparm2"
		label	"Separator"
		type	separator
		default	{ }
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"projmap"
		label	"Projection Map"
		type	image
		default	{ "" }
		disablewhen	"{ light_enable == 0 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"near"
		label	"Near Clipping"
		type	float
		default	{ "0.001" }
		disablewhen	"{ light_enable == 0 }"
		range	{ 0 10000 }
		export	none
		parmtag	{ "spare_category" "View" }
	    }
	    parm {
		name	"far"
		label	"Far Clipping"
		type	float
		default	{ "10000" }
		disablewhen	"{ light_enable == 0 }"
		range	{ 0 10000 }
		export	none
		parmtag	{ "spare_category" "View" }
	    }
	}

	group {
	    name	"atten_folder_1_1"
	    label	"Area Light Options"

	    parm {
		name	"areasize"
		label	"Area Size"
		type	float
		size	2
		default	{ "1" "1" }
		disablewhen	"{ light_type == point } { light_type == distant } { light_type == sun } { light_type == geo } { light_type == env }"
		range	{ 0 10 }
		export	none
	    }
	    parm {
		name	"normalizearea"
		label	"Normalize Light Intensity to Area"
		type	toggle
		default	{ "1" }
		disablewhen	"{ light_type == point } { light_type == distant } { light_type == sun }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"singlesided"
		label	"Single Sided"
		type	toggle
		default	{ "0" }
		disablewhen	"{ light_type == point } { light_type == distant } { light_type == sun }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"reverse"
		label	"Reverse Emission Direction"
		type	toggle
		default	{ "0" }
		disablewhen	"{ light_type == point } { light_type == distant } { light_type == sun } { singlesided == 0 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"areamap"
		label	"Environment Map"
		type	image
		default	{ "" }
		disablewhen	"{ light_enable == 0 } { light_type == point } { light_type == distant } { light_type == sun }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"areamapspace"
		label	"Environment Space"
		type	string
		default	{ "space:object" }
		disablewhen	"{ light_enable == 0 } { light_type == point } { light_type == distant } { light_type == sun }"
		menu	{
		    "space:current"	"Camera Space"
		    "space:world"	"World Space"
		    "space:object"	"Object Space"
		    ""	"Use Environment Null"
		}
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"areamapnull"
		label	"Environment Null"
		type	oppath
		default	{ "" }
		disablewhen	"{ light_enable == 0 } { light_type == point } { light_type == distant } { light_type == sun } { areamapspace != \"\" }"
		range	{ 0 1 }
		export	none
		parmtag	{ "oprelative" "." }
		parmtag	{ "opfilter" "!!OBJ/NULL!!" }
	    }
	    parm {
		name	"light_texture"
		label	"Texture Map"
		type	image
		default	{ "" }
		disablewhen	"{ light_enable == 0 } { light_type == point } { light_type == distant } { light_type == sun }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"edgeenable"
		label	"Enable Edge Falloff"
		type	toggle
		default	{ "0" }
		disablewhen	"{ light_type == point } { light_type == distant } { light_type == sun } { light_type == env }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"edgewidth"
		label	"Edge Width"
		type	float
		default	{ "0.1" }
		disablewhen	"{ edgeenable == 0 } { light_type == point } { light_type == distant } { light_type == sun } { light_type == env }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"edgerolloff"
		label	"Edge Rolloff"
		type	float
		default	{ "1" }
		disablewhen	"{ edgeenable == 0 } { light_type == point } { light_type == distant } { light_type == sun } { light_type == env }"
		range	{ 0.001 10 }
		export	none
	    }
	    parm {
		name	"areageometry"
		label	"Geometry Object"
		type	oppath
		default	{ "" }
		disablewhen	"{ light_type != geo }"
		range	{ 0 1 }
		export	none
		parmtag	{ "oprelative" "." }
	    }
	    parm {
		name	"intothisobject"
		label	"Transform Into This Object"
		type	toggle
		default	{ "0" }
		disablewhen	"{ light_type != geo }"
		range	{ 0 1 }
		export	none
	    }
	}

	group {
	    name	"atten_folder_1_2"
	    label	"Distant Light Options"

	    parm {
		name	"orthowidth"
		label	"Orthographic Width"
		type	float
		default	{ "2" }
		disablewhen	"{ light_type != distant light_type != sun }"
		range	{ 1 10 }
		export	none
	    }
	    parm {
		name	"vm_envangle"
		label	"Sun Angle"
		type	float
		default	{ "5" }
		disablewhen	"{ light_type != sun }"
		range	{ 0 90 }
		export	none
	    }
	}

	group {
	    name	"atten_folder_1_3"
	    label	"Attenuation Options"

	    parm {
		name	"atten_type"
		label	"Attenuation"
		type	ordinal
		default	{ "0" }
		disablewhen	"{ light_enable == 0 } { light_type == distant } { light_type == sun }"
		menu	{
		    "none"	"No Attenuation"
		    "half"	"Half Distance Attenuation"
		    "physical"	"Physically Correct"
		}
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"atten_dist"
		label	"Half Distance"
		type	float
		default	{ "10" }
		disablewhen	"{ light_enable == 0 } { atten_type != half } { light_type == distant } { light_type == sun }"
		range	{ 0 100 }
		export	none
	    }
	    parm {
		name	"atten_start"
		label	"Attenuation Start"
		type	float
		default	{ "0" }
		disablewhen	"{ light_enable == 0 } { light_type == distant } { light_type == sun } { atten_type == none }"
		range	{ 0 100 }
		export	none
	    }
	    parm {
		name	"activeradiusenable"
		label	"Use Seperate Active Radius"
		type	toggle
		nolabel
		joinnext
		default	{ "0" }
		disablewhen	"{ light_enable == 0 } { light_type == distant } { light_type == sun }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"activeradius"
		label	"Active Radius"
		type	float
		default	{ "100" }
		help	"Radius of effect for the light, if different from Attenuation End.  Objects farther than this distance will not receive illumination"
		disablewhen	"{ light_enable == 0 } { light_type == distant } { light_type == sun } { activeradiusenable == 0 }"
		range	{ 0 100 }
		export	none
		parmtag	{ "spare_category" "Light" }
	    }
	    parm {
		name	"attenrampenable"
		label	"Use Attenuation Ramp Multiplier"
		type	toggle
		default	{ "0" }
		disablewhen	"{ light_enable == 0 } { light_type == distant } { light_type == sun }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"atten_rampstart"
		label	"Ramp Start Distance"
		type	float
		default	{ "0" }
		disablewhen	"{ light_enable == 0 } { light_type == distant } { light_type == sun } { attenrampenable == 0 }"
		range	{ 0 100 }
		export	none
		parmtag	{ "spare_category" "Light" }
	    }
	    parm {
		name	"atten_rampend"
		label	"Ramp End Distance"
		type	float
		default	{ "100" }
		disablewhen	"{ light_enable == 0 } { light_type == distant } { light_type == sun } { attenrampenable == 0 }"
		range	{ 0 100 }
		export	none
		parmtag	{ "spare_category" "Light" }
	    }
	    parm {
		name	"attenramp"
		label	"Attenuation Ramp Multiplier"
		type	ramp_rgb
		default	{ "3" }
		disablewhen	"{ light_enable == 0 } { light_type == distant } { light_type == sun } { attenrampenable == 0 }"
		range	{ 1! 10 }
		export	none
		parmtag	{ "rampvalues_var" "atten_values" }
		parmtag	{ "rampkeys_var" "atten_keys" }
		parmtag	{ "rampbasis_var" "atten_basis" }
		parmtag	{ "rampcolordefault" "1pos ( 0 ) 1c ( 1 1 1 ) 1interp ( linear ) 2pos ( 0.899999976 ) 2c ( 1 1 1 ) 2interp ( linear ) 3pos ( 1 ) 3c ( 0 0 0 ) 3interp ( linear )" }
		parmtag	{ "rampshowcontrolsdefault" "0" }
	    }
	}

    }

    group {
	name	"folder0_2"
	label	"Shadow"

	parm {
	    name	"shadow_type"
	    label	"Shadow Type"
	    type	ordinal
	    default	{ "raytrace" }
	    menu	{
		"off"	"No Shadows"
		"raytrace"	"Ray-Traced Shadows"
		"depthmap"	"Depth Map Shadows"
	    }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"shadowmask"
	    label	"Shadow Mask"
	    type	oplist
	    default	{ "*" }
	    disablewhen	"{ shadow_type == off }"
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "oprelative" "/obj" }
	    parmtag	{ "opfilter" "!!OBJ/GEOMETRY!!" }
	}
	parm {
	    name	"shadow_intensity"
	    label	"Shadow Intensity"
	    type	float
	    default	{ "1" }
	    disablewhen	"{ shadow_type == off }"
	    range	{ 0 10 }
	    export	none
	}
	parm {
	    name	"shadow_transparent"
	    label	"Transparent Shadows"
	    type	toggle
	    default	{ "1" }
	    disablewhen	"{ shadow_type == off }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"sepparm"
	    label	"Separator"
	    type	separator
	    default	{ }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"shadow_bias"
	    label	"Shadow Bias"
	    type	float
	    default	{ "0.05" }
	    disablewhen	"{ shadow_type != depthmap }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"shadow_quality"
	    label	"Shadow Quality"
	    type	float
	    default	{ "1" }
	    disablewhen	"{ shadow_type != depthmap }"
	    range	{ 0.1 10 }
	    export	none
	}
	parm {
	    name	"shadow_softness"
	    label	"Shadow Softness"
	    type	float
	    default	{ "1" }
	    disablewhen	"{ shadow_type != depthmap }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"shadow_blur"
	    label	"Shadow Blur"
	    type	float
	    default	{ "0" }
	    disablewhen	"{ shadow_type != depthmap }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"render_shadowmap"
	    label	"Auto-generate Shadow Map"
	    type	toggle
	    default	{ "1" }
	    disablewhen	"{ shadow_type != depthmap }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"labelparm"
	    label	"Field Of View"
	    type	label
	    default	{ "See spot light options (in light tab) for view controls" }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"shadowmap_file"
	    label	"Shadow Map"
	    type	image
	    default	{ "temp:$OS.rat" }
	    disablewhen	"{ shadow_type != depthmap }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"res"
	    label	"Resolution"
	    type	intvector2
	    joinnext
	    size	2
	    default	{ "512" "512" }
	    disablewhen	"{ shadow_type != depthmap }"
	    range	{ -1 1 }
	    export	none
	    parmtag	{ "spare_category" "View" }
	}
	parm {
	    name	"shadowmap_resMenu"
	    label	"Choose Resolution"
	    type	button
	    nolabel
	    default	{ "0" }
	    disablewhen	"{ shadow_type != depthmap }"
	    menumini	{
		"128"	"Tiny (128x128)"
		"256"	"Small (256x256)"
		"512"	"Normal (512x512)"
		"1024"	"Large (1024x1024)"
		"4096"	"Huge (4096)"
	    }
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "spare_category" "View" }
	    parmtag	{ "script_callback" "opparm . res ( $script_value $script_value )" }
	}
	parm {
	    name	"shadowmap_samples"
	    label	"Pixel Samples"
	    type	intvector2
	    size	2
	    default	{ "1" "1" }
	    disablewhen	"{ shadow_type != depthmap } { shadow_transparent != 1 }"
	    range	{ 1 32 }
	    export	none
	}
	parm {
	    name	"shadowmotionblur"
	    label	"Depth Map Motion Blur"
	    type	toggle
	    default	{ "0" }
	    disablewhen	"{ shadow_type != depthmap }"
	    range	{ 0 1 }
	    export	none
	}
    }

    group {
	name	"folder0_3"
	label	"Material"

	parm {
	    name	"shop_materialpath"
	    label	"Material"
	    type	oppath
	    default	{ "" }
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "oprelative" "." }
	    parmtag	{ "opfilter" "!!SHOP!!" }
	}
    }

    parm {
	name	"focal"
	label	"Camera Focal Length"
	type	float
	invisible
	default	{ "lock(1)" }
	range	{ 0 10 }
	export	none
    }
    parm {
	name	"aperture"
	label	"Camera Aperture"
	type	float
	invisible
	default	{ "if(ch('coneenable')!=0 || ch('light_conefov') == 0, if(strcmp(chs('light_type'), 'distant') == 0 || strcmp(chs('light_type'), 'sun') == 0, 1, tan(ch('light_fov'))), tan(ch('conedelta')+ch('coneangle')))" }
	range	{ 0 10 }
	export	none
    }
    parm {
	name	"projection"
	label	"Camera Projection"
	type	ordinal
	invisible
	default	{ "if(strcmp(chs('light_type'), 'distant')==0 || strcmp(chs('light_type'), 'sun')==0, 1, 0)" }
	menu	{
	    "perspective"	"Perspective"
	    "ortho"	"Orthographic"
	}
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"focus"
	label	"Handle Focus"
	type	float
	invisible
	default	{ "10" }
	range	{ 0 10 }
	export	none
    }
    parm {
	name	"light_wrangler"
	label	"Light Wrangler"
	type	string
	invisible
	default	{ "HoudiniLight" }
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"clampprojmap"
	label	"Clamp Projected Map To Frustum"
	type	toggle
	invisible
	default	{ "0" }
	disablewhen	"{ projmap == \"\" }"
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"areafullsphere"
	label	"Use full sphere for environment"
	type	toggle
	invisible
	default	{ "0" }
	range	{ 0 1 }
	export	none
    }
}
# Automatically generated script: Wednesday July 07, 18:15 2010
\set noalias = 1
#
#  Creation script for hlight operator
#

if ( "$arg1" == "" ) then
    echo This script is intended as a creation script
    exit
endif

# Node $arg1 (Object/hlight)
opparm $arg1  attenramp ( 3 )
chblockbegin
chadd -t 0 0 $arg1 aperture
chkey -t 0 -v 0 -m 0 -a 0 -A 0 -T a  -F 'if(strcmp(chs(\'light_type\'), \'distant\') == 0 ||\n   strcmp(chs(\'light_type\'), \'sun\') == 0,\n   1,\n   if(ch(\'coneenable\')==0 || ch(\'light_conefov\')==0,\n       2*tan(0.5*ch(\'light_fov\')),\n       2*tan(0.5*ch(\'coneangle\')+ch(\'conedelta\'))))' $arg1/aperture
chadd -t 0 0 $arg1 keeppos
chkey -t 0 -v 0 -m 0 -a 0 -A 0 -T a  -F 'ch("./l_keeppos")' $arg1/keeppos
chadd -t 0 0 $arg1 pre_xform
chkey -t 0 -v 0 -m 0 -a 0 -A 0 -T a  -F 'ch("./l_pre_xform")' $arg1/pre_xform
chadd -t 0 0 $arg1 xOrd
chkey -t 0 -v 0 -m 0 -a 0 -A 0 -T a  -F 'ch("./l_xOrd")' $arg1/xOrd
chadd -t 0 0 $arg1 rOrd
chkey -t 0 -v 0 -m 0 -a 0 -A 0 -T a  -F 'ch("./l_rOrd")' $arg1/rOrd
chadd -t 0 0 $arg1 tx
chkey -t 0 -v 0 -m 0 -a 0 -A 0 -T a  -F 'ch("./l_tx")' $arg1/tx
chadd -t 0 0 $arg1 ty
chkey -t 0 -v 0 -m 0 -a 0 -A 0 -T a  -F 'ch("./l_ty")' $arg1/ty
chadd -t 0 0 $arg1 tz
chkey -t 0 -v 0 -m 0 -a 0 -A 0 -T a  -F 'ch("./l_tz")' $arg1/tz
chadd -t 0 0 $arg1 rx
chkey -t 0 -v 0 -m 0 -a 0 -A 0 -T a  -F 'ch("./l_rx")' $arg1/rx
chadd -t 0 0 $arg1 ry
chkey -t 0 -v 0 -m 0 -a 0 -A 0 -T a  -F 'ch("./l_ry")' $arg1/ry
chadd -t 0 0 $arg1 rz
chkey -t 0 -v 0 -m 0 -a 0 -A 0 -T a  -F 'ch("./l_rz")' $arg1/rz
chadd -t 0 0 $arg1 lookatpath
chkey -t 0 -v 0 -m 0 -a 0 -A 0 -T a  -F 'chsop("./l_lookatpath")' $arg1/lookatpath
chadd -t 0 0 $arg1 lookup
chkey -t 0 -v 0 -m 0 -a 0 -A 0 -T a  -F 'chs("./l_lookup")' $arg1/lookup
chadd -t 0 0 $arg1 pathobjpath
chkey -t 0 -v 0 -m 0 -a 0 -A 0 -T a  -F 'chsop("./l_pathobjpath")' $arg1/pathobjpath
chadd -t 0 0 $arg1 pos
chkey -t 0 -v 0 -m 0 -a 0 -A 0 -T a  -F 'ch("./l_pathpos")' $arg1/pos
chadd -t 0 0 $arg1 uparmtype
chkey -t 0 -v 1 -m 0 -a 0 -A 0 -T a  -F 'ch("./l_pathparmtype")' $arg1/uparmtype
chadd -t 0 0 $arg1 pathorient
chkey -t 0 -v 1 -m 0 -a 0 -A 0 -T a  -F 'ch("./l_pathorient")' $arg1/pathorient
chadd -t 0 0 $arg1 bank
chkey -t 0 -v 1 -m 0 -a 0 -A 0 -T a  -F 'ch("./l_pathbank")' $arg1/bank
chadd -t 0 0 $arg1 tdisplay
chkey -t 0 -v 0 -m 0 -a 0 -A 0 -T a  -F 'ch("./l_enabledisplay")' $arg1/tdisplay
chadd -t 0 0 $arg1 display
chkey -t 0 -v 1 -m 0 -a 0 -A 0 -T a  -F 'ch("./l_display")' $arg1/display
chadd -t 0 0 $arg1 picking
chkey -t 0 -v 1 -m 0 -a 0 -A 0 -T a  -F 'ch("./l_picking")' $arg1/picking
chadd -t 0 0 $arg1 pickscript
chkey -t 0 -v 0 -m 0 -a 0 -A 0 -T a  -F 'chs("./l_pickscript")' $arg1/pickscript
chadd -t 0 0 $arg1 caching
chkey -t 0 -v 0 -m 0 -a 0 -A 0 -T a  -F 'ch("./l_caching")' $arg1/caching
chadd -t 0 0 $arg1 sx
chkey -t 0 -v 1 -m 0 -a 0 -A 0 -T a  -F 'lock(1)' $arg1/sx
chadd -t 0 0 $arg1 sy
chkey -t 0 -v 1 -m 0 -a 0 -A 0 -T a  -F 'lock(1)' $arg1/sy
chadd -t 0 0 $arg1 sz
chkey -t 0 -v 1 -m 0 -a 0 -A 0 -T a  -F 'lock(1)' $arg1/sz
chadd -t 0 0 $arg1 px
chkey -t 0 -v 0 -m 0 -a 0 -A 0 -T a  -F 'lock(0)' $arg1/px
chadd -t 0 0 $arg1 py
chkey -t 0 -v 0 -m 0 -a 0 -A 0 -T a  -F 'lock(0)' $arg1/py
chadd -t 0 0 $arg1 pz
chkey -t 0 -v 0 -m 0 -a 0 -A 0 -T a  -F 'lock(0)' $arg1/pz
chadd -t 0 0 $arg1 scale
chkey -t 0 -v 1 -m 0 -a 0 -A 0 -T a  -F 'lock(1)' $arg1/scale
chadd -t 0 0 $arg1 dimmer
chkey -t 0 -v 0 -m 0 -a 0 -A 0 -T a  -F 'if(ch(\'./light_enable\'), ch("./light_intensity"), 0)' $arg1/dimmer
chadd -t 0 0 $arg1 roll
chkey -t 0 -v 0 -m 0 -a 0 -A 0 -T a  -F 'ch("./l_pathroll")' $arg1/roll
chadd -t 0 0 $arg1 upx
chkey -t 0 -v 0 -m 0 -a 0 -A 0 -T a  -F 'ch("./l_pathupx")' $arg1/upx
chadd -t 0 0 $arg1 upy
chkey -t 0 -v 0 -m 0 -a 0 -A 0 -T a  -F 'ch("./l_pathupy")' $arg1/upy
chadd -t 0 0 $arg1 upz
chkey -t 0 -v 0 -m 0 -a 0 -A 0 -T a  -F 'ch("./l_pathupz")' $arg1/upz
chadd -t 0 0 $arg1 focal
chkey -t 0 -v 0 -m 0 -a 0 -A 0 -T a  -F 'lock(1)' $arg1/focal
chadd -t 0 0 $arg1 projection
chkey -t 0 -v 0 -m 0 -a 0 -A 0 -T a  -F 'if(strcmp(chs(\'light_type\'), \'distant\')==0 || strcmp(chs(\'light_type\'), \'sun\')==0, 1, 0)' $arg1/projection
chblockend
opparm $arg1 stdswitcher ( 3 3 3 ) keeppos ( keeppos ) pre_xform ( pre_xform ) xOrd ( xOrd ) rOrd ( rOrd ) t ( tx ty tz ) r ( rx ry rz ) s ( sx sy sz ) p ( px py pz ) scale ( scale ) lookatpath ( lookatpath ) lookup ( lookup ) pathobjpath ( pathobjpath ) roll ( roll ) pos ( pos ) uparmtype ( uparmtype ) pathorient ( pathorient ) up ( upx upy upz ) bank ( bank ) tdisplay ( tdisplay ) display ( display ) dimmer ( dimmer ) picking ( picking ) pickscript ( pickscript ) caching ( caching ) use_dcolor ( on ) dcolor ( 1 1 1 ) stdswitcher4 ( 0 0 0 ) folder0 ( 1 1 1 1 ) l_keeppos ( off ) l_pre_xform ( clean ) l_xOrd ( srt ) l_rOrd ( xyz ) l_t ( 0 0 0 ) l_r ( 0 0 0 ) folder1_2 ( 0 0 0 ) l_enabledisplay ( off ) l_display ( 1 ) l_iconscale ( 1 ) l_caching ( off ) l_picking ( on ) l_pickscript ( "" ) l_lookatpath ( "" ) l_lookup ( on ) l_pathobjpath ( "" ) l_pathroll ( 0 ) l_pathpos ( 0 ) l_pathparmtype ( arc ) l_pathorient ( 1 ) l_pathup ( 0 1 0 ) l_pathbank ( 1 ) light_type ( point ) light_color ( 1 1 1 ) light_intensity ( 1 ) light_enable ( on ) ogl_enablelight ( on ) light_contribdiff ( on ) light_contribspec ( on ) categories ( "" ) vm_samplingquality ( 1 ) light_contribprimary ( off ) atten_folder_1 ( 0 0 0 0 ) coneenable ( off ) light_conefov ( on ) light_fov ( 45 ) coneangle ( 45 ) conedelta ( 10 ) coneroll ( 1 ) sepparm2 ( ) projmap ( "" ) near ( 0.00100000005 ) far ( 10000 ) areasize ( 1 1 ) normalizearea ( on ) singlesided ( off ) reverse ( off ) areamap ( "" ) areamapspace ( space:object ) areamapnull ( "" ) light_texture ( "" ) edgeenable ( off ) edgewidth ( 0.100000001 ) edgerolloff ( 1 ) areageometry ( "" ) intothisobject ( off ) orthowidth ( 2 ) vm_envangle ( 5 ) atten_type ( none ) atten_dist ( 10 ) atten_start ( 0 ) activeradiusenable ( off ) activeradius ( 100 ) attenrampenable ( off ) atten_rampstart ( 0 ) atten_rampend ( 100 ) attenramp ( 3 ) shadow_type ( raytrace ) shadowmask ( * ) shadow_intensity ( 1 ) shadow_transparent ( on ) sepparm ( ) shadow_bias ( 0.0500000007 ) shadow_quality ( 1 ) shadow_softness ( 1 ) shadow_blur ( 0 ) render_shadowmap ( on ) labelparm ( 'See spot light options (in light tab) for view controls' ) shadowmap_file ( 'temp:$OS.rat' ) res ( 512 512 ) shadowmap_resMenu ( 128 ) shadowmap_samples ( 1 1 ) shadowmotionblur ( off ) shop_materialpath ( "" ) focal ( focal ) aperture ( aperture ) projection ( projection ) focus ( 10 ) light_wrangler ( HoudiniLight ) clampprojmap ( on ) areafullsphere ( off ) attenramp1pos ( 0 ) attenramp1c ( 1 1 1 ) attenramp1interp ( linear ) attenramp2pos ( 0.899999976 ) attenramp2c ( 1 1 1 ) attenramp2interp ( linear ) attenramp3pos ( 1 ) attenramp3c ( 0 0 0 ) attenramp3interp ( linear )
chlock $arg1 -*
chautoscope $arg1 -* +tx +ty +tz +rx +ry +rz +sx +sy +sz +dimmer +l_tx +l_ty +l_tz +l_rx +l_ry +l_rz +light_intensity
opcolor -c 0.8 0.8 0.8 $arg1
opexprlanguage -s hscript $arg1
ParmsFromVfl := 1;
PrefixDroppedParmName := 1;
UseDSParms := 0;
ForbidOutsideParms := 1;
LockContents := 1;
SaveSpareParms := 0;
CheckExternal := 1;
GzipContents := 1;
MakeDefault := 1;
PrefixDroppedParmLabel := 1;
UnlockOnCreate := 0;
      =n8j:؇Ja/=4;EâzQl%-%9Tm?mMv$	R%yn<ι?Ax!|"yzY=?^3Uӧ"; .7v٢qwgURnr^3ɭ|ܶ
?W^&7]|8yYdN~}=]iU$Yy+o?'UrWy5UUtjgv}!n8o)TZ__X
~ɯt^&UoZ_\=E	8s4zoߜmeeܥJ޹AC9CTKj	ȦloߧeTp8"e]D8$<J=|gɦ'EgKx<sLǽ3ٌuZKp<70JX`CelԹOaJAD0!}^K~$"^,=0*);5!u;jZ]B
]z_8N~~T"?FCšrI.-J6е)B6q/7aSY~Mr=3CBxkMC"e]zPtTUZd8?(b3=e\-r\^iQSWT\ɞw,7
q;(
E{7Pm me0M7~ ^W5H`T{}pPe7-++bv۔;sK]+9>~ȁz.bg,Y?A矰)Q沆g|~|^wrjz09s7Wj^~]0Ys6bӊIrS\$󒁃S0ð^~\xnIƾG;LYʚRQ痉熁O q]_ 7a胩]]`t5k9
$8@3
GZ;so\1t}n^L)]Oݘ=?yz6ϯyU¥g&ix=~}aɳP~,_>H׈! )3nAgLj"bD(
ailpa` ;b=,:qKx<B[bJ#UvU1}U9M]9	1;٢-[L+7ⶨ{*QƧKbNf2$6ۚvxA+w4y{7a"G21(7=?a_7@9uaƨ-툓Q= ӣL"-l7ш;lƵ_[FtC J] fp,	f\`Wlq>w5
v+IGV#Aq_MGivOrߠ|ңh)XX{ʢBx`Kw#TbPibF`ŭ C<VB#j=i8)<ߚowsb~ }m<yncr0\y#u1n>;WZ=Ry^;zԚڵ;z'[r&6.n򵻜TK=9fw,1fDm+P,8<G#$!^s8@4)3
È:hAWcO'^;"s08MY9N~7Xޘk!EdP7,.m<&&كqm%lct~_of16)wb*DU#g?0TrȚ-ƭHV`CuȰqB6!Vơ:dqY`lCZ!EVơ:dq(AՎ	tL`Ȏ`#:;V0	tv`  &1Lc	@g0!} &qLT\ &qL
@g0Ύ+`W:;0	3+`W:;0	tF%W;0	tv\a  &qL
@g0aqL
@g0Ύ+`b+W:;0	tv\a  &qL, yRU㎎v~L(_jͲq>esVi߰ _*m͕XʜY;+@?+@C;h=Z1O]R,X ak:f^;
Dҹ,t?a FMCF{Ɩmkb~G8 =bP6c/T~aDޏy=ܗN'MWtY5j_&S~h,jlߕFKo^i}xW/T1zm?n܀dE|-	7"z]O<Psɮ١ wRĥA`KBD)wＱ6tKwAsQFujhtTSKuCGeZ"lL)y'ܳnE9B911Hƫ%c	 !6Y*lCanuq
n<b_ۛG\ߦE#w@^<0R0_eEH#T!lWr=I$=$71Er˻Ep8uЋ_Ut(9'П^MVQW#[ʝ\3ދ'Gc8]ɫj:D</:ȸfo!CޣT[ޥ?rC]we?NJ5dŎ1Kw䨁AyJcdْ]`PoBDz~X;-37I>p;O|lv<q5HiC=!st	a]8~Y#;7[Q۳+]ώa卵Q|@>ŧuM[F<*tw|Q#+"uPa=dfq-wʖߖ*uTN#C<6КZӓvv?'I}Rmk=I.pHAAcQy 9i wu(j%".BDwm56(kNk՘AتIu]CI` p~ uɊחhDpWn훔`7 fP@QONC56)nAMҪx G"Q`e8rAL<	cڡ[uqHؐt]?hZWSPuit@{p
i:ގ	A%/~%& Ƨ'VS'zɛm	k^@oVh]WʽYR^ۏ-KB|ǇZP`tEMG$쓁"GJ`\Y㲊%b"*V*.Viv$3e_/c@<5(keT=#s1z67Ǌ6?r;CVu0"pڪ˳0/[}z+aXI\n-p;8Ms|>%MabFjaE2r	/@~h~kI_ n=T4,+0h8h-r(>QEǠ"jD5[ހvER[ .wv93ǄDm/s ꂡ Ņ<|  `-Ǚ舼?f@"=kXhŕb V'do7KT96	+1s;}:jR7>{tP:CEd(HX7V1,ѫV#VcU$VF=sRQP}KV\
܃p<pӞY]@||Tny7y탼&>kFaQtRF47ZZ	Ѣm@!4IiͪHؙ\]txx7$!Хۓw)x̐VPzG]<A5y<L'URJD[iXN{'UI%4vRa:]TiXNK'UI%4s4j#Td(ҤPғHM6BHO"M6 =(4j#TT(ҤWɎ1B%XO%"MZ4`=(4ij#TT(Ҥ-P	SHL#TBT(Ҥ%3B%DO%"M:0=(4j#TBT(Ҥ뒫P	SH~K6B%TO%"M:-ژ-2bP	SHK6B%TO%"MZ+P=(4idMM%tTɫHAmNq@e)ѱAzU?V0(T*RDIm3IMjˆ韤e4O
-(֎#!]'m)'wb)kPvunէXiK5Y[ݘ:tÈ}}8]`4dcKA]m6aȿK0Bk{d>i>E'Q&-MP|q
vUԦy׍6K0,UdwbH[dLsk0S]`M;*r@',7x86W)xjZG)}#дNjR?/6ç"p4~NSjJYvn!+#̱ӦfOC!;1o2ÿ f      INDX              DialogScript      dLt	   CreateScript  d   Lt/*
 * Dialog script for the IFD soho output driver
 */

#define RENDERSCRIPT(TOKEN, LABEL)	\
	parm	{ \
	    name	t##TOKEN \
	    label	"" \
	    type	toggle \
	    default	{ 1 } \
	    nolabel \
	    joinnext \
	} \
	parm	{ \
	    name	TOKEN \
	    label	LABEL \
	    type	file \
	    joinnext \
	    default	{ "" } \
	    disablewhen	{ { t##TOKEN == 0 } } \
	    parmtag	{ filechooser_mode	"read" } \
	} \
	parm	{ \
	    name	l##TOKEN \
	    label	"" \
	    type	ordinal \
	    nolabel \
	    default { "0" } \
	    menu { \
		"hscript"	"Hscript" \
		"python"	"Python" \
	    } \
	    disablewhen	{ { t##TOKEN == 0 } } \
	}

{
    name	"ifd"
    label	"Mantra"

    //
    // Common rendering parameters for soho
    //
    group	{
	name	main
	label	"Main"

	parm {
	    name	soho_program
	    label	"soho Program"
	    type	file
	    parmtag	{ filechooser_mode	"read" }
	    default	{ "IFD.py" }
	    invisible
	}
	parm {
	    // When evaluating SHOPs, this parameter is used to build
	    // shader strings in the "correct" format.  For IFD, we want
	    // to set this to "VMantra" so that the correct clerk is
	    // invoked.  It's also used to determine overrides for
	    // viewport rendering (and the render state)
	    name	soho_shopstyle
	    label	"soho SHOP Style"
	    type	string
	    default	{ "VMantra" }
	    invisible
	}
	parm {
	    name	target
	    label	"Render Target"
	    type	string
	    default	{ "current" }
	    menu	{
		"current"	"Mantra Current"
		"mantra11.0"	"Mantra 11.0"
		"mantra10.0"	"Mantra 10.0"
		"mantra9.5"	"Mantra 9.5"
		"mantra9.1"	"Mantra 9.1"
		"mantra9.0"	"Mantra 9.0"
	    }
	}
	parm {
	    name	camera
	    label	"Camera"
	    type	oppath
	    opfilter	"obj/camera"
	    default	{ "/obj/cam1" }
	}
	parm {
	    name	soho_pipecmd
	    label	"Command"
	    type	string
	    default	{ "mantra" }
	    disablewhen	"{ soho_outputmode != 0 }"
	    menureplace {
		"mantra"			"No command line overrides"
		"mantra -j 1"			"Use one CPU"
		"mantra -H host1,host2"		"Network rendering"
		"mantra -V 1"			"Verbose output"
		"mantra -V 2"			"More verbose output"
		"mantra -V p1"			"Verbose output with VEX profiling"
		"mantra -o consolewait"		"Verbose to console (Windows only)"
		"mantra -P pythonfilter"	"Filter IFD using python"
	    }
	}
	parm {
	    name	soho_outputmode
	    label	"Save IFD File To Disk"
	    type	toggle
	    nolabel
	    joinnext
	    default	{ 0 }
	}
	parm {
	    name	soho_diskfile
	    label	"Disk File"
	    type	file
	    parmtag	{ filechooser_mode	"write" }
	    default	{ "$HIP/test.ifd" }
	    disablewhen	"{ soho_outputmode != 1 }"
	}
	parm {
	    name	soho_foreground
	    label	"Block Until Render Complete"
	    type	toggle
	    default	{ 0 }
	    disablewhen	"{ soho_outputmode != 0 }"
	}
	parm {
	    name	soho_initsim
	    label	"Initialize Simulation OPs"
	    type	toggle
	    default	{ 0 }
	}
	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."
	}
    }
    group  {
	name	objects
	label	"Objects"
	parm {
	    name	vobject
	    label	"Candidate Objects"
	    type	oplist
	    parmtag	{ opfilter	"!!OBJ/GEOMETRY!!" }
	    parmtag	{ oprelative	"/obj" }
	    default	{ "*" }
	    help	"Objects will not be output if their display flag is off"
	}
	parm {
	    name	forceobject
	    label	"Force Objects"
	    type	oplist
	    parmtag	{ opfilter	"!!OBJ/GEOMETRY!!" }
	    parmtag	{ oprelative	"/obj" }
	    default	{ "" }
	    help	"Objects will be output regardless of the state of their display flag"
	}
	parm {
	    name	matte_objects
	    label	"Forced Matte"
	    type	oplist
	    parmtag	{ opfilter	"!!OBJ/GEOMETRY!!" }
	    default	{ "" }
	    help	"Objects forced to be output as matte objects"
	}
	parm {
	    name	phantom_objects
	    label	"Forced Phantom"
	    type	oplist
	    parmtag	{ opfilter	"!!OBJ/GEOMETRY!!" }
	    default	{ "" }
	    help	"Objects forced to be output as phantom objects"
	}
	parm {
	    name	excludeobject
	    label	"Exclude Objects"
	    type	oplist
	    parmtag	{ opfilter	"!!OBJ/GEOMETRY!!" }
	    parmtag	{ oprelative	"/obj" }
	    default	{ "" }
	    help	"Objects which are not output"
	}
	parm {
	    name	"obj_light_sep"
	    label	"Separator"
	    type	separator
	}

	parm {
	    name	sololight
	    label	"Solo Light"
	    type	oplist
	    parmtag	{ opfilter	"!!OBJ/LIGHT!!" }
	    parmtag	{ oprelative	"/obj" }
	    default	{ "" }
	    help	"Solo Lights"
	}
	parm {
	    name	alights
	    label	"Candidate Lights"
	    type	oplist
	    parmtag	{ opfilter	"!!OBJ/LIGHT!!" }
	    parmtag	{ oprelative	"/obj" }
	    default	{ "*" }
	    help	"Lights will not be output if their dimmer channel is 0."
	    disablewhen	"{ sololight != \"\" }"
	}
	parm {
	    name	forcelights
	    label	"Force Lights"
	    type	oplist
	    parmtag	{ opfilter	"!!OBJ/LIGHT!!" }
	    parmtag	{ oprelative	"/obj" }
	    default	{ "" }
	    help	"Lights will be output regardless of the value of their dimmer channel"
	    disablewhen	"{ sololight != \"\" }"
	}
	parm {
	    name	excludelights
	    label	"Exclude Lights"
	    type	oplist
	    parmtag	{ opfilter	"!!OBJ/LIGHT!!" }
	    parmtag	{ oprelative	"/obj" }
	    default	{ "" }
	    help	"Lights will not be output under any circumstances."
	    disablewhen	"{ sololight != \"\" }"
	}
	parm {
	    name	soho_autoheadlight
	    label	"Headlight Creation"
	    type	toggle
	    default	{ 1 }
	    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 != \"\" }"
	}

	parm {
	    name	"light_fog_sep"
	    label	"Separator"
	    type	separator
	}
	parm {
	    name	vfog
	    label	"Visible Fog"
	    type	oplist
	    parmtag	{ opfilter	"!!OBJ/FOG!!" }
	    parmtag	{ oprelative	"/obj" }
	    default	{ "*" }
	    help	"Objects will not be output if their display flag is off"
	}
    }
    group {
	name	properties
	label	"Properties"
	parm {
	    name	shop_propertiespath
	    label	"Default Properties"
	    type	oppath
	    parmtag	{ opfilter	"!!SHOP/PROPERTIES!!" }
	}
    }
    group {
	name	scripts
	label	"Scripts"

	RENDERSCRIPT(prerender,		"Pre-Render Script")
	RENDERSCRIPT(preframe,		"Pre-Frame Script")
	RENDERSCRIPT(postframe,		"Post-Frame Script")
	RENDERSCRIPT(postrender,	"Post-Render Script")
    }
}
# Default script run when a geometry object is created
# $arg1 is the name of the object to create

\set noalias = 1
if ( "$arg1" != "" ) then
    # Add default properties
    opproperty -f -F Properties $arg1 mantra11.0 default_output
endif
INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"switchlightingbsdf"
    script	"switchlightingbsdf"
    label	"Switch Lighting BSDF"


    code {
	"$f = switch($direct, $indirect);"
    }

    output	bsdf	f	"Switch BSDF"

    input	bsdf	direct		"Direct Lighting BSDF"
    input	bsdf	indirect	"Indirect Lighting BSDF"
}
INDX              DialogScript      ZLt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"vectofloat"
    script	"vectofloat"
    label	"vectofloat"

    outercode {
	INCLUDE_VOPLIB
    }

    code {
	"vop_vectofloat($vec, $fval1, $fval2, $fval3);"
    }

    input	vector	vec	"Input Vector"
    output	float	fval1	"Component 1"
    output	float	fval2	"Component 2"
    output	float	fval3	"Component 3"

    VOP_VEC_PARM(vec, "Input Vector",   0, 0, 0)
    VOP_VEC_PARM(vec_p, "Input Point",  0, 0, 0)
    VOP_VEC_PARM(vec_n, "Input Normal", 0, 0, 0)
    VOP_VEC_PARM(vec_c, "Input Color",  0, 0, 0)

    VOP_VEC_PARM(vec_uv, "Uniform Vector", 0, 0, 0)
    VOP_VEC_PARM(vec_up, "Uniform Point",  0, 0, 0)
    VOP_VEC_PARM(vec_un, "Uniform Normal", 0, 0, 0)
    VOP_VEC_PARM(vec_uc, "Uniform Color",  0, 0, 0)

    signature	"3D Vector Values"	default	{ vector float float float }
    signature	"3D Point Values"	p	{ point float float float }
    signature	"3D Normal Values"	n	{ normal float float float }
    signature	"3D Color Values"	c	{ color float float float }

    signature	"3D Uniform Vector"	uv	{ uvector ufloat ufloat ufloat }
    signature	"3D Uniform Point"	up	{ upoint ufloat ufloat ufloat }
    signature	"3D Uniform Normal"	un	{ unormal ufloat ufloat ufloat }
    signature	"3D Uniform Color"	uc	{ ucolor ufloat ufloat ufloat }
}
INDX              DialogScript      !KPE   CreateScript  !  SKP   Contents  t   WKP   TypePropertiesOptions     KPE   Help      KPE   Tools.shelf    oKPE   ExtraFileOptions  &   KPE# Dialog script for albedo automatically generated 01/15/10 11:35:17

{
    name	albedo
    script	albedo
    label	Albedo

    code {
	"$albedo = albedo($f);"
    }

    input	bsdf	f	BSDF
    output	vector	albedo	Albedo
    signature	"Default Inputs"	default	{ }

    help {
	""
    }

}
\set noalias = 1
#
#  Creation script for albedo operator
#

if ( "$arg1" == "" ) then
    echo This script is intended as a creation script
    exit
endif

# Node $arg1
opcf $arg1

# Node output1
opadd -n suboutput suboutput1
oplocate -x 5.0 -y 1.0 suboutput1

# Node input1
opadd -n subinput subinput1
oplocate -y 1.0 subinput1

opcf ..
0707070000010000000006660000000000000000010000001132411441300001300000000000TRAILER!!! ParmsFromVfl := 0;
PrefixDroppedParmName := 1;
UseDSParms := 1;
ForbidOutsideParms := 1;
LockContents := 1;
SaveSpareParms := 0;
CheckExternal := 1;
GzipContents := 1;
MakeDefault := 1;
PrefixDroppedParmLabel := 1;
UnlockOnCreate := 0;
<?xml version="1.0" encoding="UTF-8"?>
<shelfDocument>
  <!-- This file contains definitions of shelves, toolbars, and tools.
 It should not be hand-edited when it is being used by the application.
 Note, that two definitions of the same element are not allowed in
 a single file. -->

  <tool name="$HDA_TABLE_$HDA_NAME" label="$HDA_LABEL" icon="VOP_albedo">
    <toolMenuContext name="viewer">
      <contextNetType>VOP</contextNetType>
    </toolMenuContext>
    <toolMenuContext name="pop_viewer">
      <contextNetType>VOP</contextNetType>
    </toolMenuContext>
    <toolMenuContext name="network">
      <contextOpType>$HDA_TABLE/$HDA_NAME</contextOpType>
    </toolMenuContext>
    <toolSubmenu>Digital Assets</toolSubmenu>
    <script scriptType="python"><![CDATA[import voptoolutils

voptoolutils.genericTool(kwargs, '$HDA_NAME')]]></script>
  </tool>
</shelfDocument>
    INDX              DialogScript      
hLt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"clamp"
    script	"clamp"
    label	"clamp"


    code {
	"$clamp = clamp($val, $min, $max);"
    }

    input	float	val	"Input Value"
    input	float	min	"Minimum Value"
    input	float	max	"Maximum Value"
    output	float	clamp	"Clamped Value"

    signature	"1D Float Values"	default	{ }
    signature	"1D Integer Values"	i  { int int int int }
    signature	"3D Vector Values"	v  { vector vector vector vector }
    signature	"3D Point Values"	p  { point point point point }
    signature	"3D Normal Values"	n  { normal normal normal normal }
    signature	"3D Color Values"	c  { color color color color }
    signature	"1D Uniform Float"	uf { ufloat ufloat ufloat ufloat }
    signature	"3D Uniform Vector"	uv { uvector uvector uvector uvector }
    signature	"3D Uniform Point"	up { upoint upoint upoint upoint }
    signature	"3D Uniform Normal"	un { unormal unormal unormal unormal }
    signature	"3D Uniform Color"	uc { ucolor ucolor ucolor ucolor }
    signature	"4D Values"		v4 { vector4 vector4 vector4 vector4 }

    group {
	name 	"gs"
	label	"Scalar Defaults"

	VOP_FLT_PARM(min, "1D Float Min", 0)
	VOP_FLT_PARM(max, "1D Float Max", 1)
	VOP_INT_PARM(min_i, "1D Integer Min", 0)
	VOP_INT_PARM(max_i, "1D Integer Max", 1)
    }

    group {
	name 	"gv"
	label	"Vector Defaults"

	VOP_VEC_PARM(min_v, "3D Vector Min", 0, 0, 0)
	VOP_VEC_PARM(max_v, "3D Vector Max", 1, 1, 1)
	VOP_VEC_PARM(min_p, "3D Point Min", 0, 0, 0)
	VOP_VEC_PARM(max_p, "3D Point Max", 1, 1, 1)
	VOP_VEC_PARM(min_n, "3D Normal Min", 0, 0, 0)
	VOP_VEC_PARM(max_n, "3D Normal Max", 1, 1, 1)
	VOP_CLR_PARM(min_c, "3D Color Min", 0, 0, 0)
	VOP_CLR_PARM(max_c, "3D Color Max", 1, 1, 1)
	VOP_CLR4_PARM(min_v4, "4D Color Min", 0, 0, 0, 0)
	VOP_CLR4_PARM(max_v4, "4D Color Max", 1, 1, 1, 1)
    }

    group {
	name 	"gu"
	label	"Uniform Defaults"
	VOP_FLT_PARM(min_uf, "1D Float Min", 0)
	VOP_FLT_PARM(max_uf, "1D Float Max", 1)
	VOP_VEC_PARM(min_uv, "3D Vector Min", 0, 0, 0)
	VOP_VEC_PARM(max_uv, "3D Vector Max", 1, 1, 1)
	VOP_VEC_PARM(min_up, "3D Point Min", 0, 0, 0)
	VOP_VEC_PARM(max_up, "3D Point Max", 1, 1, 1)
	VOP_VEC_PARM(min_un, "3D Normal Min", 0, 0, 0)
	VOP_VEC_PARM(max_un, "3D Normal Max", 1, 1, 1)
	VOP_CLR_PARM(min_uc, "3D Color Min", 0, 0, 0)
	VOP_CLR_PARM(max_uc, "3D Color Max", 1, 1, 1)
    }
}
INDX              DialogScript      qLt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

{
    name	"negate"
    script	"negate"
    label	"negate"


    code {
	"$negated = -$val;"
    }

    input	int	val		"Input Value"
    output	int	negated		"Negated Value"
    signature	"1D Integer Values"	default	{ }
    signature	"1D Float Values"	f	{ float float }
    signature	"3D Vector Values"	v	{ vector vector }
    signature	"3D Point Values"	p	{ point point }
    signature	"3D Normal Values"	n	{ normal normal }
    signature	"3D Color Values"	c	{ color color }
    signature	"4D Values"		v4	{ vector4 vector4 }

    signature	"1D Uniform Float"	uf	{ ufloat ufloat }
    signature	"3D Uniform Vector"	uv	{ uvector uvector }
    signature	"3D Uniform Point"	up	{ upoint upoint }
    signature	"3D Uniform Normal"	un	{ unormal unormal }
    signature	"3D Uniform Color"	uc	{ ucolor ucolor }
}

INDX              DialogScript      
Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"mix"
    script	"mix"
    label	"mix"


    code {
	"#ifdef __vex"
	"  $blend = lerp($input1, $input2, $bias);"
	"#else"
	"  $blend = mix($input1, $input2, $bias);"
	"#endif"
    }

    input	float	input1	"Input 1"
    input	float	input2	"Input 2"
    input	float	bias	"Interpolation Bias"
    output	float	blend	"Interpolated Value"

    signature	"1D Values"	    default { }
    signature	"3D Vector Values"	 v  { vector vector float vector }
    signature	"3D Point Values"	 p  { point point float point }
    signature	"3D Normal Values"	 n  { normal normal float normal }
    signature	"3D Color Values"	 c  { color color float color }
    signature	"4D Values"	 	v4  { vector4 vector4 float vector4 }
    signature	"BSDF Values"		 b  { bsdf bsdf float bsdf }
    signature	"1D Uniform Float"	uf  { ufloat ufloat ufloat ufloat }
    signature	"3D Uniform Vector"	uv  { uvector uvector ufloat uvector }
    signature	"3D Uniform Point"	up  { upoint upoint ufloat upoint }
    signature	"3D Uniform Normal"	un  { unormal unormal ufloat unormal }
    signature	"3D Uniform Color"	uc  { ucolor ucolor ufloat ucolor }

    VOP_FLT_PARM_R(bias, "Bias", .5, 0, 1)
    group {
	name 	"gf"
	label	"1D Defaults"

	VOP_FLT_PARM(input1,	"Input 1", 0)
	VOP_FLT_PARM(input2,	"Input 2", 1)
    }
    group {
	name 	"gv"
	label	"3D Defaults"

	VOP_VEC_PARM(input1_v,	"Input 1", 0, 0, 0)
	VOP_VEC_PARM(input2_v,	"Input 2", 1, 1, 1)
	VOP_VEC_PARM(input1_p,	"Input 1", 0, 0, 0)
	VOP_VEC_PARM(input2_p,	"Input 2", 1, 1, 1)
	VOP_VEC_PARM(input1_n,	"Input 1", 0, 0, 0)
	VOP_VEC_PARM(input2_n,	"Input 2", 1, 1, 1)
	VOP_CLR_PARM(input1_c,	"Input 1", 0, 0, 0)
	VOP_CLR_PARM(input2_c,	"Input 2", 1, 1, 1)
    }
    group {
	name 	"gv4"
	label	"4D Defaults"

	VOP_VEC4_PARM(input1_v4,	"Input 1", 0, 0, 0, 0)
	VOP_VEC4_PARM(input2_v4,	"Input 2", 1, 1, 1, 1)
    }
    group {
	name 	"gv"
	label	"Uniform Defaults"

	VOP_FLT_PARM(input1_uf,	"Input 1", 0)
	VOP_FLT_PARM(input2_uf,	"Input 2", 1)
	VOP_VEC_PARM(input1_uv,	"Input 1", 0, 0, 0)
	VOP_VEC_PARM(input2_uv,	"Input 2", 1, 1, 1)
	VOP_VEC_PARM(input1_up,	"Input 1", 0, 0, 0)
	VOP_VEC_PARM(input2_up,	"Input 2", 1, 1, 1)
	VOP_VEC_PARM(input1_un,	"Input 1", 0, 0, 0)
	VOP_VEC_PARM(input2_un,	"Input 2", 1, 1, 1)
	VOP_CLR_PARM(input1_uc,	"Input 1", 0, 0, 0)
	VOP_CLR_PARM(input2_uc,	"Input 2", 1, 1, 1)
    }
}

INDX              DialogScript       I   CreateScript     5I   TypePropertiesOptions  (   I   Help      I   Contents.gz    I   ExtraFileOptions  '   I# Dialog script for volumevopglobal automatically generated 03/13/09 14:37:04

{
    name	volumevopglobal
    script	volumevexglobal
    label	"Volume VOP Global Parameters"

    signature	"Default Inputs"	default	{ }

    help {
	""
    }

}
# Automatically generated script: Friday March 13, 14:37
\set noalias = 1
#
#  Creation script for volumevopglobal operator
#

if ( "$arg1" == "" ) then
    echo This script is intended as a creation script
    exit
endif

# Node $arg1 (Vop/volumevopglobal)
opspareds "" $arg1
opexprlanguage -s hscript $arg1
ParmsFromVfl := 0;
PrefixDroppedParmName := 1;
UseDSParms := 1;
ForbidOutsideParms := 1;
LockContents := 1;
SaveSpareParms := 1;
CheckExternal := 1;
GzipContents := 1;
MakeDefault := 1;
PrefixDroppedParmLabel := 1;
UnlockOnCreate := 0;
      ][oHvd{GDOCwǖYū&tq6ܞlCK,E
"=Ǽ yL<9UJuݖ%9T,~|UoAZcYKBebG& 8q;;0N7CltF(	?|R,QIyWX+!+Hn҂/OLi!addr1Fqg:k({W/f_z_?:Hy]jptG\ߝ?Ppӹ.NPZ?t[Vwg.o~Usp ܐ|V)t7z:ǵϗG^=e?yRhnI'o˽w:ֆLޏЫ|R?{M(R{$AZS*ݧ'N4iVͪ{3ҰyY]Ed+N:f}UaZR[UU~٢=;.\\>w=ϟtbiDw?{'_+ppѳ_{o_~G;Tx?Eә%BM"jzz>V{ᠷXQꉧ<a65NfnO$5C?QY~bs~Pz~H%1ժ'ߐYTjضzN']2Dk/N(Eam!Oݡw{Ueg kԌc[ESvVV~wUħ0)/+%d@ݭ cV}x꟨?+X4M .hv[{R/W-ThJPyޢ8tt^Qx|?&Y8+G}5_3>~]p"8j
FSZ嚼f&0+_V/ | FZeM+Ǿ4"빭nJ,ͺ+ZaB#ӬRIfY_4T֏%O0$=f}N]#@ =|ΝFnr1sC_z]o*hV4^hopypЂ?38faL$FZqt0DYƉ i<z.X=3o!/ݭܟB'EZ**꛹͇!cV0NW]"uֆ0`r3n0)2,JUPk[U@xurLȨ{mOȶ9\9;n)]?'vf,:Lv6lʏ&ns664r#w"o5\ G\y6Y޾xWǀ7{p-\$η*}jGG0HW@jjzMQA$B[|%\W%C8iZGH\uckٶ=9U,ST\U(ԭjXvֈYͷGj֣CitnʑznP؇\	k0̽|)@rqh/k3[XYJ-#`IP y^%"&yZ7&Q,{ *IFSE4RN({OL~Pot(:1*<Ϭh(?.BGXuq%;JՐ%G(($zmW%YGǇYJȂ33(,>^wd/m^Y.VBqZ)'R7rOԇt}E:Sʪ^HD?'3W>(1pܓ9K8RR~&3\FQ/_9snԍҨx$,I^xe5ɗ%}osB@9&m dn[3,
҉wMAtڞI|M#	ԋAݺf L;K:h2!LO@TgM2pIH8A4F:.o2ģFQ -B89qLzV<!A! bH7t~vOg^^w>mCb?kV@*/>
e	f9uoC?P@3ObLMmPg0Bɢ/Z)x>,pq=4+WWn22EIFx,G#zcDlMCzװa@SS
R!
Vŀv^(6}T;fJ_F3 ÆHsaBA:}s $:?+ L )A_#xYak}\wqu}}4}l(!]G̛A8iBhuVպVBP #fXb&3]b&3Cb&3Sb&3Kb&3[b&3Gb&L [cd3ΊA쇅9	:*YLLe	!JS	r:"!5dyiDqa+CHHe	E"!5H$EJ-PqDBj(9`Y	<"!5Eʐ#RCrDBj(CHHe	)Ȑ#RCrDBj(CHH|%A.CHHe	9"!5!G$2䈄Pd	9"!5!G$2䈄P:֑ ǐ!G$2䈄Pʐ#RCrDB:!G$2䈄Pʐ#RCrDBj('Kcʐ#RCrDBj(CHHe	d@ʐ#RCrDBj(CHHe	?.-עi͛KNvii)MBr(mٚe7)R)`n2 'rk?+N`jyxh,UG~s YǰtANP ~RDe:!
Cu@ƞ@z3"8E-ٲ"M?NVM'Q@1KHMB?<c$o%Yt=TX	N#?Y.|ǇS/+KS/%q2?$ng	(=Vf<o$!]$${8DDq񬋮

eu4;lZ-,4蚵LakAxJÆR/EȒkw~ܞ*\?
t	U?7{ˣH+}	5&ov!T1Tvf~{6.g+jHa:">G=G3ubao,y#Y taԤQmE t.ot-zKM k;d?Oх0ŒbI[Foe&0͸C#$F>ǍJr|~$>[>ollͯKY.g+["^LLtBmYLGMbB&)p%u)._TR}K-կWfՓLWu=`MlkzdޤoK<ey
IaC/n[joPWQxױR"MԾvRҨ]poB+ZrŋzO1;EKި}WQIKv[jo7f yx;zkn^oԆ7@Xe{^S-޲{}rbvlo;FiTwʎ+}Ii[voٽe:i3,vwLܴI0MfK5޲{-ע={j.$;odeê5/0uSes|VrXEQW-Ϸ<yc|@1pǵc,YUS$yar:75LD2o0wݑ2
Hܖg }d(}ɲ78݄nhLpO뛛p	--D
]L5j]*\Ț;>0xIAEQ>)jBXw閅7$F/8ZR6)qn䦌p-J@0.=ZCL9XeK!+&c1d"VbLfnf6jp<ɝ<K\zO5X.02P{yWpW1C
%^Թ<j^SEmm͢~,$\`;iMA0z^*xQW3Io"Z`X]g\r}-ׯW:׿&/
g\פk=6ڙ<C󍺋hHy LP|QUK-Z<g;L`~u;=э&	,k*)e|H6gPff9!&m1CQ@)K:	AR`7r,(:wt8٤sL)/YpaqZ#XMǆNnFx,KNremoe6ݘzzgSg.;R^fIp6Cwߗ)"tjnIɀ#qdVc6u]aF Hn
7Kip-;7@!g;}f&o}xm:UAEl3ōw#Ƃ],dQ6e]F2*>`E>bqt8M9M1J
> hS	&?es$anD Ǳ{GO5UOXީ"fR9~#fO%p?}ǲV޷rY1d}o8qu5dx2wx9ys9Ʃ;MgCE|x4רUk8g4KFsٙxS@!禣FO%?|9!D6tcCќ$15jR޶ԛס^8NN3sY]d]P4C#zO3* lSz:[$|ʚD>a0>w[ݵ҈E]Rvm]zfąBz&O_}%GGt RG]۔AU]`,0sGONAbB_i0٩@I ;Țf
ŉMt_'V|7;2ͷJD;)7G7Ƚ]-D2ȇd➓-i$fm8Tu9~?1Π"%h ߠHwAYL+J79N 4dm"lw9c>%c
701^ĴG.du$"
"@B/C Bj"݀LWi6vYݲ)ju
.
^Ԯ5Wy/gQon}ɦJ'Wc܂
*誎TOјnH>{\      INDX              DialogScript      fLO   CreateScript  f  #LO   TypePropertiesOptions  g<   LO   Help  h(    LO   Tools.shelf  h(  jLO   Contents.gz  k  XLO   ExtraFileOptions     LO# Dialog script for surfacemodel automatically generated 10/22/10 17:25:35

{
    name	surfacemodel
    script	surfacemodel
    label	"Surface Model"

    input	vector	P	Position
    input	vector	N	"Surface Normal"
    input	vector	I	"Direction from Eye to Surface"
    input	vector	uv	"UV Coordinate"
    input	vector	utan	"U Tangent"
    input	vector	vtan	"V Tangent"
    input	float	fresnel	Fresnel
    input	int	facefwd	"Ensure Faces Point Forward"
    input	int	conserveenergy	"Conserve Energy"
    input	int	fres_enable	"Fresnel Blending"
    input	string	fres_style	"Fresnel Style"
    input	float	ior_in	"Inside IOR"
    input	float	ior_out	"Outside IOR"
    input	string	tan_style	"Tangent Style"
    input	int	maxdist_enable	maxdist_enable
    input	float	maxdist	"Max Ray Distance"
    input	int	diff_enable	"Enable Diffuse"
    input	float	diff_int	"Diffuse Intensity"
    input	float	diff_min	"Diffuse Minimum"
    input	color	diff_clr	"Diffuse Color"
    input	float	diff_rough	"Oren-Nayar Roughness"
    input	int	sss_enable	"Enable Subsurface Scattering"
    input	float	sss_int	"Subsurface Intensity"
    input	vector	sss_clr	"Subsurface Color"
    input	float	sss_min	"Subsurface Minimum"
    input	float	sss_atten	"Attenuation Density"
    input	color	sss_attenclr	"Attenuation Color"
    input	float	sss_phase	"Scattering Phase"
    input	int	sss_1enable	"Enable Single Scattering"
    input	float	sss_1intensity	"Single Intensity"
    input	int	sss_1quality	"Single Quality"
    input	int	sss_2enable	"Enable Multiple Scattering"
    input	int	sss_pcmode	"Point Cloud Mode"
    input	string	sss_pcname	"Point Cloud"
    input	float	sss_2intensity	"Multi Intensity"
    input	float	sss_2quality	"Multi Quality"
    input	int	refl_enable	"Enable Reflection Layer 1"
    input	int	refl_lights	"Reflect Lights"
    input	string	spec_model	"Specular Model"
    input	float	spec_int	"Specular Intensity"
    input	float	spec_min	"Specular Minimum"
    input	vector	spec_clr	"Specular Color"
    input	float	spec_angle	"Specular Angle"
    input	float	spec_aniso	"Specular Anisotropy"
    input	int	refl_objs	"Reflect Objects"
    input	float	refl_qual	"Reflection Quality"
    input	int	refl_sep	"Separate Object Reflection Parameters"
    input	float	refl_int	"Reflection Intensity"
    input	vector	refl_clr	"Reflection Color"
    input	float	refl_angle	"Reflection Angle"
    input	int	refl_enable2	"Enable Reflection Layer 2"
    input	int	refl_lights2	"Reflect Lights"
    input	string	spec_model2	"Specular Model"
    input	float	spec_int2	"Specular Intensity"
    input	float	spec_min2	"Specular Minimum"
    input	vector	spec_clr2	"Specular Color"
    input	float	spec_angle2	"Specular Angle"
    input	float	spec_aniso2	"Specular Anisotropy"
    input	int	refl_objs2	"Reflect Objects"
    input	float	refl_qual2	"Reflection Quality"
    input	int	refl_sep2	"Separate Object Reflection Parameters"
    input	float	refl_int2	"Reflection Intensity"
    input	vector	refl_clr2	"Reflection Color"
    input	float	refl_angle2	"Reflection Angle"
    input	int	refr_enable	"Enable Refractions"
    input	int	refr_lights	"Refract Lights"
    input	string	refr_model	"Refraction Model"
    input	float	refr_int	"Refraction Intensity"
    input	float	refr_min	"Refraction Minimum"
    input	vector	refr_clr	"Refraction Color"
    input	float	refr_angle	"Refraction Angle"
    input	float	refr_aniso	"Refraction Anisotropy"
    input	int	refr_objs	"Refract Objects"
    input	float	refr_qual	"Refraction Quality"
    input	int	atten_enable	"Enable Attenuation"
    input	float	atten_den	"Attenuation Density"
    input	vector	atten_clr	"Attenuation Color"
    input	int	emit_enable	"Enable Emission"
    input	float	emit_int	"Emission Intensity"
    input	vector	emit_clr	"Emission Color"
    input	float	opac_int	"Opacity Scale"
    input	vector	opac_clr	Opacity
    input	int	fake_enable	"Enable Fake Caustics"
    input	float	fake_min	"Min Shadow Intensity"
    input	float	fake_max	"Max Shadow Intensity"
    input	int	opac_falloff	"Enable Opacity Falloff"
    input	float	opac_para	"Parallel Opacity"
    input	float	opac_perp	"Perp Opacity"
    input	float	opac_rolloff	"Opacity Rolloff"
    input	int	emit_illum	"Emission Illuminates Objects"
    input	int	refr_thin	"Thin Film Refraction"
    output	vector	Cf	Cf
    output	vector	Of	Of
    output	bsdf	F	F
    inputflags	P	0
    inputflags	N	0
    inputflags	I	0
    inputflags	uv	0
    inputflags	utan	0
    inputflags	vtan	0
    inputflags	fresnel	0
    inputflags	facefwd	1
    inputflags	conserveenergy	1
    inputflags	fres_enable	1
    inputflags	fres_style	1
    inputflags	ior_in	1
    inputflags	ior_out	1
    inputflags	tan_style	1
    inputflags	maxdist_enable	1
    inputflags	maxdist	1
    inputflags	diff_enable	1
    inputflags	diff_int	0
    inputflags	diff_min	1
    inputflags	diff_clr	0
    inputflags	diff_rough	1
    inputflags	sss_enable	1
    inputflags	sss_int	0
    inputflags	sss_clr	0
    inputflags	sss_min	1
    inputflags	sss_atten	1
    inputflags	sss_attenclr	1
    inputflags	sss_phase	1
    inputflags	sss_1enable	1
    inputflags	sss_1intensity	1
    inputflags	sss_1quality	1
    inputflags	sss_2enable	1
    inputflags	sss_pcmode	1
    inputflags	sss_pcname	1
    inputflags	sss_2intensity	1
    inputflags	sss_2quality	1
    inputflags	refl_enable	1
    inputflags	refl_lights	1
    inputflags	spec_model	1
    inputflags	spec_int	0
    inputflags	spec_min	1
    inputflags	spec_clr	0
    inputflags	spec_angle	1
    inputflags	spec_aniso	1
    inputflags	refl_objs	1
    inputflags	refl_qual	1
    inputflags	refl_sep	1
    inputflags	refl_int	1
    inputflags	refl_clr	1
    inputflags	refl_angle	1
    inputflags	refl_enable2	1
    inputflags	refl_lights2	1
    inputflags	spec_model2	1
    inputflags	spec_int2	1
    inputflags	spec_min2	1
    inputflags	spec_clr2	1
    inputflags	spec_angle2	1
    inputflags	spec_aniso2	1
    inputflags	refl_objs2	1
    inputflags	refl_qual2	1
    inputflags	refl_sep2	1
    inputflags	refl_int2	1
    inputflags	refl_clr2	1
    inputflags	refl_angle2	1
    inputflags	refr_enable	1
    inputflags	refr_lights	1
    inputflags	refr_model	1
    inputflags	refr_int	0
    inputflags	refr_min	1
    inputflags	refr_clr	0
    inputflags	refr_angle	1
    inputflags	refr_aniso	1
    inputflags	refr_objs	1
    inputflags	refr_qual	1
    inputflags	atten_enable	1
    inputflags	atten_den	1
    inputflags	atten_clr	1
    inputflags	emit_enable	1
    inputflags	emit_int	0
    inputflags	emit_clr	0
    inputflags	opac_int	0
    inputflags	opac_clr	0
    inputflags	fake_enable	1
    inputflags	fake_min	1
    inputflags	fake_max	1
    inputflags	opac_falloff	1
    inputflags	opac_para	1
    inputflags	opac_perp	1
    inputflags	opac_rolloff	1
    inputflags	emit_illum	1
    inputflags	refr_thin	1
    signature	"Default Inputs"	default	{ vector vector vector vector vector vector float int int int string float float string int float int float float color float int float vector float float color float int float int int int string float float int int string float float vector float float int float int float vector float int int string float float vector float float int float int float vector float int int string float float vector float float int float int float vector int float vector float vector int float float int float float float int int vector vector bsdf }

    outputoverrides	default
    {
	___begin	auto
			(0,0,0)
	___begin	auto
			(0,0,0)
	___begin	auto
			(0)
    }

    help {
	""
    }

    parm {
	name	"facefwd"
	label	"Ensure Faces Point Forward"
	type	toggle
	default	{ "1" }
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"conserveenergy"
	label	"Conserve Energy"
	type	toggle
	default	{ "1" }
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"fres_enable"
	label	"Fresnel Blending"
	type	toggle
	default	{ "0" }
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"fres_style"
	label	"Fresnel Style"
	type	string
	default	{ "physical" }
	disablewhen	"{ fres_enable == 0 }"
	menu	{
	    "physical"	"Physically Based"
	    "input"	"Use Connected 'fresnel'"
	}
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"ior_in"
	label	"Inside IOR"
	type	float
	default	{ "1.2" }
	range	{ 1 3 }
	export	none
    }
    parm {
	name	"ior_out"
	label	"Outside IOR"
	type	float
	default	{ "1" }
	range	{ 1 3 }
	export	none
    }
    parm {
	name	"tan_style"
	label	"Tangent Style"
	type	string
	default	{ "geo" }
	menu	{
	    "geo"	"Use Geometric Tangents"
	    "world"	"Intrinsic World Space"
	    "object"	"Intrinsic Object Space"
	    "uv"	"Compute From UV"
	    "inputs"	"Use Connected 'utan', 'vtan'"
	}
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"maxdist_enable"
	label	"maxdist_enable"
	type	toggle
	nolabel
	joinnext
	default	{ "0" }
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"maxdist"
	label	"Max Ray Distance"
	type	float
	default	{ "10" }
	disablewhen	"{ maxdist_enable == 0 }"
	range	{ 0 100 }
	export	none
    }
    group {
	name	"diffuse_folder"
	label	"Diffuse"

	parm {
	    name	"diff_enable"
	    label	"Enable Diffuse"
	    type	toggle
	    default	{ "1" }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"diff_int"
	    label	"Diffuse Intensity"
	    type	float
	    default	{ "0.5" }
	    disablewhen	"{ diff_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"diff_min"
	    label	"Diffuse Minimum"
	    type	float
	    default	{ "0" }
	    disablewhen	"{ diff_enable == 0 } { fres_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"diff_clr"
	    label	"Diffuse Color"
	    type	color
	    size	3
	    default	{ "1" "1" "1" }
	    disablewhen	"{ diff_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"diff_rough"
	    label	"Oren-Nayar Roughness"
	    type	float
	    default	{ "0" }
	    disablewhen	"{ diff_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
    }

    group {
	name	"diffuse_folder_1"
	label	"Subsurface"

	parm {
	    name	"sss_enable"
	    label	"Enable Subsurface Scattering"
	    type	toggle
	    default	{ "0" }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"sss_int"
	    label	"Subsurface Intensity"
	    type	float
	    default	{ "0.5" }
	    disablewhen	"{ sss_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"sss_clr"
	    label	"Subsurface Color"
	    type	color
	    size	3
	    default	{ "1" "1" "1" }
	    disablewhen	"{ sss_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"sss_min"
	    label	"Subsurface Minimum"
	    type	float
	    default	{ "0" }
	    disablewhen	"{ sss_enable == 0 } { fres_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"sss_atten"
	    label	"Attenuation Density"
	    type	float
	    default	{ "10" }
	    help	"This parameter controls how fast light is attenuated.  Higher densities correspond to faster attenuation."
	    disablewhen	"{ sss_enable == 0 }"
	    range	{ 0! 1 }
	    export	none
	}
	parm {
	    name	"sss_attenclr"
	    label	"Attenuation Color"
	    type	color
	    size	3
	    default	{ "1" "1" "1" }
	    help	"This parameter specifies the color that the light will tend towards as it is attenuated.  This color will typically dominate areas of the surface that are in shadow."
	    disablewhen	"{ sss_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"sss_phase"
	    label	"Scattering Phase"
	    type	float
	    default	{ "0" }
	    help	"This parameter controls the nature of the scattering (forward, backward, isotropic, etc.).  The phase must lie in the range [-1, 1], with -1 indicating full backward scattering, 0 indicating isotropic scattering, and 1 indicating full forward scattering."
	    disablewhen	"{ sss_enable == 0 }"
	    range	{ -1! 1! }
	    export	none
	}
	parm {
	    name	"sss_1enable"
	    label	"Enable Single Scattering"
	    type	toggle
	    default	{ "1" }
	    disablewhen	"{ sss_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"sss_1intensity"
	    label	"Single Intensity"
	    type	float
	    default	{ "1" }
	    help	"This parameter controls the intensity of single scattering."
	    disablewhen	"{ sss_enable == 0 } { sss_1enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"sss_1quality"
	    label	"Single Quality"
	    type	integer
	    default	{ "1" }
	    help	"This parameter controls the quality of single scattering.  Higher values will increase quality and render times."
	    disablewhen	"{ sss_enable == 0 } { sss_1enable == 0 }"
	    range	{ 1! 10 }
	    export	none
	}
	parm {
	    name	"sss_2enable"
	    label	"Enable Multiple Scattering"
	    type	toggle
	    default	{ "1" }
	    disablewhen	"{ sss_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"sss_pcmode"
	    label	"Point Cloud Mode"
	    type	ordinal
	    default	{ "0" }
	    help	"This option controls how the shader generates a point cloud.  The simplest option is to select \"Generate At Render Time\".  This will create a new point cloud for every render.  To reduce computation time, you can first use \"Write To File\" mode and then re-use the point cloud using \"Read From File\" mode on subsequent renders.  This is also the recommended approach when rendering animations because the shader will smoothly interpolate the point cloud across frames.  The exception to this is when the model's topology changes (two joined polygons are separated, for example).  In this case, a new point cloud must be generated.  Note that in \"Write To File\" mode, the file will be overwritten if it already exists.  Cancelling a render before it completes in \"Write To File\" mode may result in an unusable point cloud file."
	    disablewhen	"{ sss_enable == 0 } { sss_2enable == 0 }"
	    menu	{
		"0"	"Generate At Render Time"
		"1"	"Read From File"
		"2"	"Write To File"
	    }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"sss_pcname"
	    label	"Point Cloud"
	    type	file
	    default	{ "default.pc" }
	    help	"This parameter holds the path to the point cloud file that will be written to in \"Write To File\" mode or read from in \"Read From File\" mode."
	    disablewhen	"{ sss_enable == 0 } { sss_2enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"sss_2intensity"
	    label	"Multi Intensity"
	    type	float
	    default	{ "1" }
	    help	"This parameter controls the intensity of multiple scattering."
	    disablewhen	"{ sss_enable == 0 } { sss_2enable == 0 }"
	    range	{ 0! 1 }
	    export	none
	}
	parm {
	    name	"sss_2quality"
	    label	"Multi Quality"
	    type	float
	    default	{ "1" }
	    help	"This parameter controls the quality of multiple scattering.  Higher values will increase quality and render times."
	    disablewhen	"{ sss_enable == 0 } { sss_2enable == 0 }"
	    range	{ 0.01 10 }
	    export	none
	}
    }

    group {
	name	"diffuse_folder_2"
	label	"Reflect"

	group {
	    name	"folder0"
	    label	"Layer 1"

	    parm {
		name	"refl_enable"
		label	"Enable Reflection Layer 1"
		type	toggle
		default	{ "1" }
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"refl_lights"
		label	"Reflect Lights"
		type	toggle
		default	{ "1" }
		disablewhen	"{ refl_enable == 0 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"spec_model"
		label	"Specular Model"
		type	string
		default	{ "0" }
		disablewhen	"{ refl_enable == 0 } { refl_lights == 0 refl_objs == 0 }"
		menu	{
		    "phong"	"Phong"
		    "blinn"	"Blinn"
		    "cone"	"Cone"
		}
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"spec_int"
		label	"Specular Intensity"
		type	float
		default	{ "0.1" }
		disablewhen	"{ refl_enable == 0 } { refl_lights == 0 refl_objs == 0 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"spec_min"
		label	"Specular Minimum"
		type	float
		default	{ "0" }
		disablewhen	"{ refl_enable == 0 } { refl_lights == 0 refl_objs == 0 } { fres_enable == 0 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"spec_clr"
		label	"Specular Color"
		type	color
		size	3
		default	{ "1" "1" "1" }
		disablewhen	"{ refl_enable == 0 } { refl_lights == 0 refl_objs == 0 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"spec_angle"
		label	"Specular Angle"
		type	float
		default	{ "10" }
		disablewhen	"{ refl_enable == 0 } { refl_lights == 0 refl_objs == 0 }"
		range	{ 0 90 }
		export	none
	    }
	    parm {
		name	"spec_aniso"
		label	"Specular Anisotropy"
		type	float
		default	{ "0" }
		disablewhen	"{ refl_enable == 0 } { refl_lights == 0 refl_objs == 0 } { spec_angle == 0 }"
		range	{ -1 1 }
		export	none
	    }
	    parm {
		name	"refl_objs"
		label	"Reflect Objects"
		type	toggle
		default	{ "1" }
		disablewhen	"{ refl_enable == 0 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"refl_qual"
		label	"Reflection Quality"
		type	float
		default	{ "1" }
		disablewhen	"{ refl_enable == 0 } { refl_objs == 0 }"
		range	{ 0.1 10 }
		export	none
	    }
	    parm {
		name	"refl_sep"
		label	"Separate Object Reflection Parameters"
		type	toggle
		default	{ "0" }
		disablewhen	"{ refl_enable == 0 } { refl_objs == 0 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"refl_int"
		label	"Reflection Intensity"
		type	float
		default	{ "0.1" }
		disablewhen	"{ refl_enable == 0 } { refl_objs == 0 } { refl_sep == 0 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"refl_clr"
		label	"Reflection Color"
		type	color
		size	3
		default	{ "1" "1" "1" }
		disablewhen	"{ refl_enable == 0 } { refl_objs == 0 } { refl_sep == 0 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"refl_angle"
		label	"Reflection Angle"
		type	float
		default	{ "0" }
		disablewhen	"{ refl_enable == 0 } { refl_objs == 0 } { refl_sep == 0 }"
		range	{ 0 90 }
		export	none
	    }
	}

	group {
	    name	"folder0_1"
	    label	"Layer 2"

	    parm {
		name	"refl_enable2"
		label	"Enable Reflection Layer 2"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"refl_lights2"
		label	"Reflect Lights"
		type	toggle
		default	{ "1" }
		disablewhen	"{ refl_enable2 == 0 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"spec_model2"
		label	"Specular Model"
		type	string
		default	{ "0" }
		disablewhen	"{ refl_enable2 == 0 } { refl_lights2 == 0 refl_objs2 == 0 }"
		menu	{
		    "phong"	"Phong"
		    "blinn"	"Blinn"
		    "cone"	"Cone"
		}
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"spec_int2"
		label	"Specular Intensity"
		type	float
		default	{ "0.1" }
		disablewhen	"{ refl_enable2 == 0 } { refl_lights2 == 0 refl_objs2 == 0 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"spec_min2"
		label	"Specular Minimum"
		type	float
		default	{ "0" }
		disablewhen	"{ refl_enable2 == 0 } { refl_lights2 == 0 refl_objs2 == 0 } { fres_enable == 0 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"spec_clr2"
		label	"Specular Color"
		type	color
		size	3
		default	{ "1" "1" "1" }
		disablewhen	"{ refl_enable2 == 0 } { refl_lights2 == 0 refl_objs2 == 0 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"spec_angle2"
		label	"Specular Angle"
		type	float
		default	{ "10" }
		disablewhen	"{ refl_enable2 == 0 } { refl_lights2 == 0 refl_objs2 == 0 }"
		range	{ 0 90 }
		export	none
	    }
	    parm {
		name	"spec_aniso2"
		label	"Specular Anisotropy"
		type	float
		default	{ "0" }
		disablewhen	"{ refl_enable2 == 0 } { refl_lights2 == 0 refl_objs2 == 0 } { spec_angle2 == 0 }"
		range	{ -1 1 }
		export	none
	    }
	    parm {
		name	"refl_objs2"
		label	"Reflect Objects"
		type	toggle
		default	{ "1" }
		disablewhen	"{ refl_enable2 == 0 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"refl_qual2"
		label	"Reflection Quality"
		type	float
		default	{ "1" }
		disablewhen	"{ refl_enable2 == 0 } { refl_objs2 == 0 }"
		range	{ 0.1 10 }
		export	none
	    }
	    parm {
		name	"refl_sep2"
		label	"Separate Object Reflection Parameters"
		type	toggle
		default	{ "0" }
		disablewhen	"{ refl_enable2 == 0 } { refl_objs2 == 0 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"refl_int2"
		label	"Reflection Intensity"
		type	float
		default	{ "0.1" }
		disablewhen	"{ refl_enable2 == 0 } { refl_objs2 == 0 } { refl_sep2 == 0 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"refl_clr2"
		label	"Reflection Color"
		type	color
		size	3
		default	{ "1" "1" "1" }
		disablewhen	"{ refl_enable2 == 0 } { refl_objs2 == 0 } { refl_sep2 == 0 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"refl_angle2"
		label	"Reflection Angle"
		type	float
		default	{ "0" }
		disablewhen	"{ refl_enable2 == 0 } { refl_objs2 == 0 } { refl_sep2 == 0 }"
		range	{ 0 90 }
		export	none
	    }
	}

    }

    group {
	name	"diffuse_folder_3"
	label	"Refract"

	parm {
	    name	"refr_enable"
	    label	"Enable Refractions"
	    type	toggle
	    default	{ "0" }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"refr_lights"
	    label	"Refract Lights"
	    type	toggle
	    default	{ "1" }
	    disablewhen	"{ refr_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"refr_model"
	    label	"Refraction Model"
	    type	string
	    default	{ "phong" }
	    disablewhen	"{ refr_enable == 0 } { refr_lights == 0 refr_objs == 0 }"
	    menu	{
		"phong"	"Phong"
		"cone"	"Cone"
		"diffuse"	"Translucency"
	    }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"refr_int"
	    label	"Refraction Intensity"
	    type	float
	    default	{ "1" }
	    disablewhen	"{ refr_enable == 0 } { refr_lights == 0 refr_objs == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"refr_min"
	    label	"Refraction Minimum"
	    type	float
	    default	{ "0" }
	    disablewhen	"{ refr_enable == 0 } { refr_lights == 0 refr_objs == 0 } { fres_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"refr_clr"
	    label	"Refraction Color"
	    type	color
	    size	3
	    default	{ "1" "1" "1" }
	    disablewhen	"{ refr_enable == 0 } { refr_lights == 0 refr_objs == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"refr_angle"
	    label	"Refraction Angle"
	    type	float
	    default	{ "0" }
	    disablewhen	"{ refr_enable == 0 } { refr_lights == 0 refr_objs == 0 } { refr_model == diffuse }"
	    range	{ 0 90 }
	    export	none
	}
	parm {
	    name	"refr_aniso"
	    label	"Refraction Anisotropy"
	    type	float
	    default	{ "0" }
	    disablewhen	"{ refr_enable == 0 } { refr_lights == 0 refr_objs == 0 } { refr_model == diffuse } { refr_angle == 0 }"
	    range	{ -1 1 }
	    export	none
	}
	parm {
	    name	"refr_objs"
	    label	"Refract Objects"
	    type	toggle
	    default	{ "1" }
	    disablewhen	"{ refr_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"refr_qual"
	    label	"Refraction Quality"
	    type	float
	    default	{ "1" }
	    disablewhen	"{ refr_enable == 0 } { refr_objs == 0 }"
	    range	{ 0.1 10 }
	    export	none
	}
	parm {
	    name	"atten_enable"
	    label	"Enable Attenuation"
	    type	toggle
	    default	{ "0" }
	    disablewhen	"{ refr_enable == 0 } { refr_objs == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"atten_den"
	    label	"Attenuation Density"
	    type	float
	    default	{ "0.5" }
	    disablewhen	"{ refr_enable == 0 } { refr_objs == 0 } { atten_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"atten_clr"
	    label	"Attenuation Color"
	    type	color
	    size	3
	    default	{ "1" "1" "1" }
	    disablewhen	"{ refr_enable == 0 } { refr_objs == 0 } { atten_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"refr_thin"
	    label	"Thin Film Refraction"
	    type	toggle
	    default	{ "0" }
	    disablewhen	"{ refr_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
    }

    group {
	name	"diffuse_folder_4"
	label	"Emission"

	parm {
	    name	"emit_enable"
	    label	"Enable Emission"
	    type	toggle
	    default	{ "0" }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"emit_int"
	    label	"Emission Intensity"
	    type	float
	    default	{ "1" }
	    disablewhen	"{ emit_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"emit_clr"
	    label	"Emission Color"
	    type	color
	    size	3
	    default	{ "1" "1" "1" }
	    disablewhen	"{ emit_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"emit_illum"
	    label	"Emission Illuminates Objects"
	    type	toggle
	    default	{ "1" }
	    disablewhen	"{ emit_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
    }

    group {
	name	"diffuse_folder_5"
	label	"Opacity"

	parm {
	    name	"opac_int"
	    label	"Opacity Scale"
	    type	float
	    default	{ "1" }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"opac_clr"
	    label	"Opacity"
	    type	color
	    size	3
	    default	{ "1" "1" "1" }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"fake_enable"
	    label	"Enable Fake Caustics"
	    type	toggle
	    default	{ "1" }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"fake_min"
	    label	"Min Shadow Intensity"
	    type	float
	    default	{ "0" }
	    disablewhen	"{ fake_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"fake_max"
	    label	"Max Shadow Intensity"
	    type	float
	    default	{ "1" }
	    disablewhen	"{ fake_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"opac_falloff"
	    label	"Enable Opacity Falloff"
	    type	toggle
	    default	{ "0" }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"opac_para"
	    label	"Parallel Opacity"
	    type	float
	    default	{ "0" }
	    disablewhen	"{ opac_falloff == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"opac_perp"
	    label	"Perp Opacity"
	    type	float
	    default	{ "1" }
	    disablewhen	"{ opac_falloff == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"opac_rolloff"
	    label	"Opacity Rolloff"
	    type	float
	    default	{ "1" }
	    disablewhen	"{ opac_falloff == 0 }"
	    range	{ 0 10 }
	    export	none
	}
    }

}
# Automatically generated script: Friday October 22, 17:25 2010
\set noalias = 1
#
#  Creation script for surfacemodel operator
#

if ( "$arg1" == "" ) then
    echo This script is intended as a creation script
    exit
endif

# Node $arg1 (Vop/surfacemodel)
opexprlanguage -s hscript $arg1
ParmsFromVfl := 0;
PrefixDroppedParmName := 1;
UseDSParms := 1;
ForbidOutsideParms := 1;
LockContents := 1;
SaveSpareParms := 0;
CheckExternal := 1;
GzipContents := 1;
MakeDefault := 1;
PrefixDroppedParmLabel := 1;
UnlockOnCreate := 0;
<?xml version="1.0" encoding="UTF-8"?>
<shelfDocument>
  <!-- This file contains definitions of shelves, toolbars, and tools.
 It should not be hand-edited when it is being used by the application.
 Note, that two definitions of the same element are not allowed in
 a single file. -->

  <tool name="$HDA_TABLE_$HDA_NAME" label="$HDA_LABEL" icon="VOP_lighting">
    <toolMenuContext name="viewer">
      <contextNetType>VOP</contextNetType>
    </toolMenuContext>
    <toolMenuContext name="pop_viewer">
      <contextNetType>VOP</contextNetType>
    </toolMenuContext>
    <toolMenuContext name="network">
      <contextOpType>$HDA_TABLE/$HDA_NAME</contextOpType>
    </toolMenuContext>
    <toolSubmenu>Shading</toolSubmenu>
    <script scriptType="python"><![CDATA[import voptoolutils

voptoolutils.genericTool(kwargs, '$HDA_NAME')]]></script>
  </tool>
</shelfDocument>
      [cKr ƫyHi$Y^y}.;Sy}uպ]{GXa,!uհa~hׇ?c6ac.a;IV]U[$33OT)ſ$I?Q҈'@~̲(HϞڃQ:|=I;z9fw${sgGwٙwNz9dκah:<{>p~mIOo/T=sG|ufB-؆Ygu/8UK_NN{$c˰۟@Wix|5b5#=βźΫ^]+w,X3B5譈bz(f~w4/8os~յWgt:Mi{xjly69˲a69~w,Ś!5ڃI[KYe-;s&A.^p{[wM9)XQ]!Cue;ʺ<2q{zEUXxvIZlx1j1NEy=E_ nwgY/?
/?iу{i/>{W</EkLT~W!χerqYXaZ /قZnV*7%h.6V*߯T~XļJ{G*dJo*_ `U*-E$,U*ѿKLkʷ_eJ/G@{@R%\:S?6J+jKlo_J[)V*oU*D*]}qT+?fyRo)sq%T1wti7/Xyl
_ܱR ߋ|RzWkV{|:+ӿ/'Ge:m8 M=h*Tɴ-(gP
N,{lB(OH
ַȊV|ȸW0N.'Dw|3(tF 1:5oU_˩|%i
Țty]|y4.I%'-0Kܛ_YkX'6R`y4n9='hux	4>A}T=<!Q d+7JEV[d|k|AƽrѯinKܻ*?x#k-qe{,/\[UaӬl=c&v(uOhbwEzv(CI>8MW~Mc\˼[2b@o`2 ӿoL'3iәVoUL*-_λOOl,qY"%Ӳ,AN"UUp4OFYG..ũT*^"SNsx{GTJqէhv<`)ޣ"iWXI\Iuܹ0	˿$	.H.qE9.!W_wJUtW'T~+n>;ff=Y9ѐ{V滅^^ץ=Hd[fظ@/I K(;.V"Gwd>f7-B(|mkMʯRt<|'M9ŉ/o.>&n_J'6^7M}O<6_Y_Є<da$a_b˃__${/"K*rmԍfܓVLJWώyƼĄsuFQa:dŷ|}=G/|g/~j<^>Mߴ'ǓxaΛ߅L̽ްS.te$y)"t)HhHPPB`T'{3CoMNyP?;zw~W](M:w0dIO1
]FUn^(%un5ӄ7[POjHZN]ME;#7[ڭ
=-Sb\?XjMRնbXw+aoZq{1&n24'cJV7n2Ȭ< xVzK _A)P<!D%#_|5s()̆I)wj"i,,Eg<lOg]!kÚIkSR2|T̃g4}?Lu<5*XŘѿO^^+BmA`?Lu<atIi	3V=D8	^eU &_5HX#zZuC2~&.(BVrƖd8V*CsFW`ؗ.-Btd8ֵ/CvFױ`KjA񓗇Ͽ|6RڮW#ĵ];dɫ֎䫌<DUkf3 tT&<l3vbۇgr;PX?/QxzK;tގ^l uI%2.J$Jd4H^ԧ%P9z8-b1՜-~eoΖ2(8[g ̉˯??_ox4Spxel{6tA5ǨF$C#'w'w#nܐ4QVSZ,k؞MYIjgX?yUCsbg~N	a6W;P(5bNyadvxרnwzr{p[HM7ꬲd9xTDdu/{;L7' OO xc0ژYMq?
U_ǃNk{'cՂ֏b7cqIvf|2l{U7#FYv_>:vߝ
rFmM\cκRE#@Qo&U}sSqv3ZXe*;RI»|XG_6y[;E^9JׁPXzJIPҁ$Y&1ޚ[m!n߻^ާMr=lI`{*{`7m}tE[=
Iۇ-B*;, +*&Y1ZX>2Hhp{}0Fq^(ߦT]s75a3vǙբOA>KXY·ݭZ;MjL5:eHWz+d>.#6p6ۦ%h_~`t}W¿]iw*-561
}?Ey1OBz'lebC8>0ReM/o3#ŋN|#dXMޠʧd֪B^	x?Aw' l:|QC xru!keNU5"җ`*Y}hZ8edgp*l%HL
j"s65Υ34:)d-XK=㩂>=rkUx~Q(>ddT샩̈́;ϋ&H)GqXVZn|	&a'gvN)Zh{unUG.P`KcQ
pVʰ%'KDVC"B=gX-n$iuJ@ҙ i"H=/;>ifc\EwfRTd1r^o<c.2ȷMɸFtqtxMy&uVak6m8(yWn@}ۦ*ds΋RpU:SHWo<r!9>roL$m5x=ZVWhJ;HM#j	BwGxu+>`/o(//Hr)˷R^Z^J+7Pq2/Z7KK^کKGB*Q2<ml9i ,"@ 
 ]35U&c;5EHp63WGiZ%骈bUY|Τ	]޿Q++1FwcnheyVVIVVh[Xkj:*-QVϞʝño[|cT~4v<wk	z)EP`6)빇8bsZ:i/nvʔTw:éTnuk#̈́mQ%t]B(@A]vjzWb('3INjnb5xniX[!fcO{kzB&K1S0062!Ӳp>A:vh)QȔʜS@OE-ZN
(;ޝ;% <ta6&Y~mo3q-%<؅dϧzD(Kz/T/߻\]P3~(Q3qf8G b,N̄MB_zO@#XcѤ;NLJ(t6L!+{XivKX,FcB]9$My\GP&댲^飛4@X`|(OD
U`s\Medm~+}X]<~VTjmsx͟y۔kd&h
KC
`)۰2.2n]ڔ#l#| yi*nt1Mi-}HɪPaDCuKWP!g,>|	Iro'.`Evꑇd*HMuȗ}Gy?f:sG\F'zPdkUP1\(kUάs(8U}sYK4Ԉ&^QJԭRcM#<̈c刚Al̸v 3vD'!*dJN־_3j&O.MrNnCb[@P ys)zcvn(R0r={fSS\A{0lɱFSyA9@&E]3,jсYAp>v>]'/FUkOF(Vhwܶ~+ DÊsX~@p|UѬQT*l`#3;_N4K. &f$<ODLѬ7rWeȧ	3l0'!,SR>,p=	/gS/P&XT#fqB-m$ޱvEg*2~V^4wzTOzmH#D嫩9Grr-D;'ۃ:2}@(پЖ!0lS}/kP5R=L)-^hɢΐY7Kcj-POYsnas.fo3./bb[8tz{߱rwl6¡Vhf6봇xcy?ˆx%QtMRgCeid4ʡ3y6 ׏oN4EU+FFE
hԪjܯqUo9sO۪剬jrZ_t4}z
:8LGBTC?xC꒦P;g|+H;^8{t0zUqc&39찀ڇ 3mrߴ'z?tۀAS0b9;jմl`5F3aLKFd4ȽoSweuf]X< ԧM@"$dy7Z+cZ+JHf8ϣ7V'	A| "@>Jwcv ?*CmDUX>~;JR:~7B:%~>Q=4zfCXJlzBb(3
YQ3JCc64Q+ED9mȊyȶ?;RR蕦2\HRu_/yף JjoK-(kH/$*`)t1D;OMJm)yiNY+Rٲ;*Y簂D)+ϔ
V#P%xSA5-6t b뀡@^^M$V0;(^o:6"{MC^o6$J)4jzH1]J,c˦2On	K]x0)fZ"31+j8:.5&$bؖF|5+AC4:krh(iNdZ[wGRwEЗnKt\r@.JgV@ǎ"p̠C22&|V
UCQt(	fdbȎ'b^"dTYVm38\wc,0H2Ԑģ1,cvL蓵?C=4@!8ΈM$7-Q8ߝ)NsWO;:#Jr!*]oyxkAy?JKEV_I:>s'\B!*{WhECiˋ>}jp=}[iQ'ho I{ 3N߆~nu9M1L$tCsi¹v_BkTf<TfQ$c?]R=@ȎQ+b7!)~O+I`PICsQ?\ʩ/`Q#nWO9h0ã!R\CƧT	Lɘ¯,;互yaY
0y9zv_,\{jFoY8Y&a~3 020NQW\TSB|jDLџ`HK"A3Swbi$w̳N	a^{'Ng ȗ F'KY>#Jl|d'%'^Q`i8GNGMCgL/ ,{a0eY<S5L`O
y(w\9ŐV5G²4>V폅s	ۣ|`GY5VyL-|8=g} t	(fK+E#(hEVLnVHdYvV"?ă8xn;S	)=2\%kA}hO!}iyks"8<DΧD/-7P>0JAύ`) ύBӖE)BSdA0G`Blrd麌 " E[,;Q~*
4#v$z/.VT+G4uP0{#4r=ː`َ޻ь\j^~2
#q1U(pO](v~"kwEhh$ | 1g
)w鮅ohDOl'CRPO'ӓ@<uݙ HRVNFǢ+vM\/rtgH8@cޟֈ3Y\C[]BE% ?+b`Z(RԀ#Ou?Ot*2ЙJGO(mr}hC\pF5-v
,Z(e,Ci+Hon;_>}7<oOOmR(ֽXsrc[7@J*ǐbF
ȢaNͶrV~8u^avugu1;^Z./(jGe> ,+@G[391K(O1lI?7]֒s+NIxf` biQq 'fSH"րe}r&BHQh#JAmlGN0;f0z)3Ayryg<A4E0jUq(d.J+QE~Ylqvh.Nu`Dwv2CLѼSl$gEzTTIljDE8IoYs7NJ bG76_t~B2oD	
u8;=RfqoRqGCU'U<a"ϲ<ICA\ql?T#	kpWc_P1#Z@~YtJ@pQA",@FPN2*.zﱄ6O*1YykeBPx:=p%KDJ*5Zʹُ2SOw\zQ=C8]l[dV&򸸄""ҿ$OvNôd#Cj<Rf<o.~^t:g2]CWL@!
s.5BpdqVjxEr1N 'YQUaQs'VB@C)EO#,qOs^ENj;ƻFYC!w|7)\7[,*0cߦϹN_4)5߸G*hwT
cV#Ʋ2\ʻږV!//<^<|RP7ֶ	G:yD9nOO@~gYa{ReCR#.Hqnb*]kX9FՒ<}O*o@ϻDSS0Eܸ7w9ŭ闻0]Q*xG]6Q

9nTl<QGIJ"sG4=cXd,L9N.XA^Rŉ-B7KL
ʖS=m^nլ"Zŧc ELn<Ya<m)\Chuz!3"HV_K-^wVV[+PiNK2.t?MBH.c}{y)2|w-YqTn\jV/Ùd"EύUJXEni텭FytHV [ay.7~ 6a8sL}QX1O2<Ջb4f'aޝ?z.#3ʓ.cN^9µ	.d75ę).c^s#nc1,}֞uk/EMp{<'O`e [?'?xGp|wx,{Spپuhs/)M"o*BELv&Y)-6$٤5뻡~H{.`c`IJ&[~,Y"w񺢅?Mʁ~BG{Gw]f!zo]8!_4CיǙTsRυnj/7;>{ǹjxyB:WgfϠ㼶͌yB\.cXnY`M-1F),j䢐:߃C"o<s!-	v.&Nn<$Gf [d`].:2"C	4c6ήmc10e6f iF&:xA"3i#8>JҔljV[-r6E8\Ʉ VItv>j[H;o5.f7\8	li7FE\\ 0<|gd-?[pUoEa޼eo[8w_x"jUHߦD/#<~g8N^WFO$J=<>}ZG)酊OH>@=_YY{ng>Cj_uK,˄bt$hA}M]6SOKRQ2Jy*SB=9;egTy,-F*{eA6D:+F𹚲cT$4OMZ2%k%hUηm?|XarryX==붰wS<}B O#/vKڥO1gGa%#M3nB	CX!x!>FKo;+D-vDTdj_cի̅[U$W%C!9QnYeIo݋ds4sXXr_>ΌM]&nNTX>q:*MttԂLC!E7=Z"vw2xكz3mlPI]}oo£{sxuhÌSME|y&Vp,%'`(S2NaX$R$=Œ?bxvMVf`G5c-1;Afo:֕Z&oo&;63t!vP|=9v Tueve&.76rʒ0DJWN,noSM~-
0EP>S摇|X}zcֶ@dMBGVgbXtۣJe>p@bYwKA*vR6XvhP݊C5,EܠeA?môKOYi]>-,Y5؍@#7eaD^j}e՝JdnX+Pc1cK~Z.^fhhYʮȞ2@7?DA:` z#ЌHĻ0C`yu#vohdbT1aKUe%ROC9/cE=qKuNaOl;`h~;jq4rMn3΍Գbh=s{}gd@|퍴Ih6TJ2C!Ui$lZV|}fQy'zO0e{oNr$Uoջʭ:}+L efx}	Ka3oaaepbm8kMףyQբvw؈/ȘoX U%T'A0'sF(7⣜9i,-dE³1?sFAgCʎ'vXܝs|V]$X=Iσ+:;sJa1|no,pAA;YCv_>C)xQ	6r#UµYΌWOX|H"Alh%ŀ<q#8Y/>"	=a,<$UQc1I9<O|@(~?qKc%шB/{ŧ~Z1"S|,vq7hJ@HTr#(ě!4E~sG4&u)IÒ0DrKϵc5h`W.zopH݇-qa5U4(Wg#=J&1~C˼MQdC9	xvFJmbG0>ҝRCz8^}]??KaM2wN:	w8PPDE-G="Y%- p|1^pds Π}:B!#I2"gN}/׮{h&P~8qj}'٬UgmoXE~X׾Sjo77za#{?{Su7+uȮ#0x4՞osxӑB)?ZC>-W\/~ݤJ7:/~rN,,wyQaOmnryu>bs+Wt뢮bisݑ0̽P@$LbqI=>Nt%j$l9<-h%1M-?f̅lӃo~2w#^LOڧX*2z剂lZ.J#1@Mg_?vڭ־~jg1/?(<eb`sZߍoxM;10dIoi>tTU
wh{Uc.l˯7;TYmvܾԞrFcg+VUv~Rҷr_bF=݌ vIv78xdb:yQfԤX#=U`b%wo b5:Kɥ}jmԁYva	o(kHJS]aO찪VUU|h]2rvwBK_b3Vgj IZY,/\ai9ZI"^Ϸm 2=0ǣ72,糌Pf
vv|!e6W>PQCS'\Jꗉ`C"rUEGxXˇ<GXD;sDBs6%OP}P:ʭ.ˮi¢^]RR1KXTT*F픮b-_V$mfKLly-1q3Y)ypXޡg9ؘsMx}ږ_[IvbiE۷__̠ͦhwiO+VPRhʧ/]J{puGXwX3AR~Id~߾ճ?%ؤ(lтf9 1`vh;B4=IG'L7aȠ>'* J*ZNaیDu2b9_{ n2s?_s?B矙8/s6Zwpݨy79]N盜s?>p,Ri~}Jn:g9,N^R<G?%}x"G-s!Um ֞-^%ťng09iCԐxZlx;t_!GCdFw_~/~_"?iwGoLBM#>g=wo]{~WQZqHN^C;6*UYDY'#nea&$G~~eH,^.Fr(E$@Or_/I+@, Qdy{?	 Qc"Ί,(✕Aą&	)G
LX9\qCȋƥEDʴ"x"OG%@&$K7p^y.<O)G{Hፔ$4@5`]N2U-y-ªH	r<Q"?-?z<\Z~c"yJ2tt +K$SϸjCۇM{mΌ*çiW@zĚX}Z^>r->ɬiF=X".%F٩DcZ":3b3L荖v8Ú,͓	_kP;i0Ơ-4aj~<"8wWʂ頼goTRQhڜAP/1?či]Y/(Ԏ zr6A^2]i6;(ݲa`0GRWhV]|btv&̮wЖ`;dg/2}!u3yy\اwĜoԹe
k㲓|'Z:$̝D~WcGVڏ?yvpnPaQlkϞ|Ը&(`i%q$#lz<xW
x=_rb*s{ ^UfwdτZV\D>x.\^F* ,L+Vʃg)c3RF3r)gIQWZ,&Sȼ{G9852}ڣ\-AQ.(]P{JY?}=>}o>{X{r\ה	ZcLe Gbnz9{mn"*˙r0 rm6vU5}5߲n^(_7X!- &gRHZNqՇB x9ѾBU,id]6#aT&܈/5X>x=ד$o- D-@P-#攈jq$ ։BM)
eV/5^&;$vVLj[#E"FV˔Oi-}〈S* zF<y0=ƵF(Ghtq>[I6Y#*OQ<Qީ[͜,10XAo%X> ,ϝWdC^=ٓ^=aOp}z_6=XrzP!{	危{=3{yT{ ao^OG1'5`y^rd^Tuwl/ʽ, + 	;[l8m89zSu<o	쿲"7Sudle	fKB"ye=p8".mO)>Ƭ\ݬi}eԗ*c6	71af+ [)?rJ;VHՃ(CqlQA2r!+e{Zi#n$͉@[ 	aؗA8bCXGe[u}D4<DQh|њ9=0z؟Vs_xbi{9r\=8]؂$h=* j[c=zD)HEzGik᫠AǼzD0 ߦUiF~F7Svt_ލyN-CqLo85t׼}u6iMa@ tiNnv*$`
׀-[T~oI-e[[7WאטMה7xyko-
Z[xkY[BZ[B>BZ[yk![[zE"Z[xko-cyk1[[yk1o-żbZ[Kxk	o-%%	o-3RZ[Kyk)o-孥-m&xkMNfMnMZ5ykMZS6>&-!lg!f6Cp~]֊Z֞L1Ad 9u`>XAHZW/	w*Timd>kaM}y'4}XE}aHΤTԇhxl@V ӂfDuo.܊0wRUo6%ߝ`ߪil!ҙԚ2;	5(tA=h4UZ5K<kvَll3utGFܵ|}zITj'+ݪ'a3ql&Xo?]iv3sLvZoa+	Dl?0m8zaxvZ0	[<|n]nm?MŶ:niݏ(6C:y}X ?vIN300 u[(8ͭ:o5sATԎipæi?.wI@negGPPX)4#ZT8ۙYOEh&atmlC#IK nixl4V$q~]C9ȁqo0(%0
/sڧLRf7nu&,ybG<zYq5)챤ý}/*} :2u]Q7,8efcQEɿhx?n,WwDkTW岉E@-]Yy
	֙E~m-Pz#Ƚpvtҧ?BJD%WV/#೺Z-АMv|nXT$\슍nù94yS(l|:&Qn~l$ABuGFMO:[ԣD2;jbV!a=CĐ){rQrB"O/{==#Pq+]S׊WwTvL4${T<*dOb돗)YWʆz7Aoyz \]VY⦯_NY.8Z7=ֲ%:)RW-EezMz&zkC mP4HQԢPۯSWJ6|U{ڥX1p.Xa	RmFV[
6I#wlƁדFܼ!FnBu`ث)k!X|Xk]2D\`&#7H4ik}i`Ac=>a.tDa4zA;.W/ǪzKkfx}(t_jغĐ5K%\7`jQ UQ[-8EbXq/+irôԺzECV렬Y24,%+JUK$ƑiOAs^g"QD0ګ8BG`!1Io*N;[R$<p=sΆlw3{HNF&Qb(IpC!Fa$XFF"Mȼ{=tSl{!!]CV]oeKAFF%~h/dN1
ov`)
K;UХ3I >X.A*]U5̲ȱ]E {S'/ΦEF\4qlI[4# ߡhC&blN-y8,y:,y9,y;,y8,y:,ytY 9a-Љ(L]b$.de@2	alЅ2LB[&t- ǖI(ޅ9L[&t2.̱e@2	slЅ9L[&ta- 0ǖIslЅ9L[&tnP	]c$.̱e@2	slЅ9L[&]c$.̱e@2	sl)80'ra- 0ǖI ]c$.̱e@2[&ta- 0ǖI ]c$.̱e@`؅9L[&ta- 0ǖI2	slЅ9L[&ta-
^P-r`2Ҕ-AQoi@uM&%k>rN^*tDeQrD\e^U]Z4~M?MnuIlDo2a!vS7+*.	p%;v
|!)$^"=eE(cwm?"1GltW[!D~;Vp nn5[Vp nn5[Vp nn57VkGz0Ui=jly'/y}H8cypd=}2c}B處za7n{`=k#űᕊ+MfeP`aţ.(ΪV7-ye͆Br"#5eIXL"1ҌtIa.y>+?U+HM`֛7 rrl)g.f@w5	q E9ZI֊ͺ9$s=aQleEPi7N5cmjsnzq}֞J[ii/hE<>rR
R
TF.鏿6"Fk,)<xa=JÍxI+R"q_X:[79-bhCb_o5ZqGVu
sJpȱ]q";Nk4J\j	.j_M<7NV}] NgVJ~7hp
>4Hn縠|'X׃mjogX?z8^^wBgI`!ۥf4+Ko%]ZDy`$Ї?)TMiTTh\>Rg#~IVpCDT	yf!&H!zPӬk[MDᥚ$¶hyAp~\FHH(Lzm1&&M[߫cAb(pم+@}M	'^ΡѾwL6=Hvg*hlОvF;bf= l'QN%>=*)$R
^ZʃR9kINLo4\7 FlFOy%d4<.Y|V!@oGF˃UJjb ?avtm7R5d>Q>#KzneNԒpHIӡ~Bh|_Ў/K쳪DbipTz^WsT$^r^=9{;WSuYz-B'(Z7uEo̧tt=gZJ"R챝AtR۶8jCD<mtsvJ6/kۤac'\(<@zЈ-a%XhIxu}Z&V-P[$AQkCf~o4M+hJ.Oѵ=,N Q0vΝ
H'a]6n,nʭ.Պ4s{q#	6π0EL^AJ!86<N{oYXsi6 dOR`T|x❥ŻV8i\,)ޥxt-ɵFmmqӟڊXcGf
%(Nқk֊R?^ORj5k+c-:^P́H8&~M?#F֞Xa=HFF=l6йй-~]+r)5H;';#7N9VDQX0QnM9t"{Dkҋ9Ɇ2/\*M(,.a윌\fA#=!
yp['pzY4xڝܓl;ֽWp$	Tck;1H7AnNf
,c8tOXޝ'{?ݗ~z3mKm[?LQu=mވءiC!zb3K4GI6ksFOV%zduۯ7[qPjj2X퇈5_׭k>%!3C_J؆ժf
Q݄kFIsi{P	y=!nZ{p;*
Ȼݨ'@U7媦ds(u})+5J)YopP 1B	Gb
2[m;~mLnZ(,<;'nˆ!j3vQGqz)검(gӵ&,[ͅ[ez@Ɣ_FlXczwXJo[w6J`kyyAkk\~p~c߼_ ܼ_6: 7:s讄K'Dы"W_l*2\=rz+l$+z-Z¤
qtFq-WMW1?V:Fnz~7T7ʬӌ!I2px,q*|eF)iݱ"G'_HcVb0_*`xrw,"V[xz9rqx qiĀq!s0{S_aBJ̷xUʹ^ib-tGnO:}3{4LY><m#m\Yˎ*X:X/^a{E/u^؟8dsݢ*^`?zagE/UQ	5\_JqzdyŲ [c7/{0L=K(|RqRd.8d'QKѓʞ'u
UsΊ¾,VeΊ Aϼjj$qEP/RUj6kz6N-%W۳.G6Xr-rtj6Е2/W+J6?v^;R_G%"KD*p65(0Vp]KvUTy?z`, 8!SEi_+<]}d(PVo~=e=ߺofx2:ӭh2!*I!c[	QIh1`0o}gi1Hy4^TؿqqR.g]&3}YC[$$NW_rkiҸPڢ3x^s=gڢ;&c'R/qYoMlMEb^iIf%W8]xPgV	HXs)sjhҺUOXO#@@
X6%EGE'Q
U`
ռdJh9&7Fx#?!0>ŧn,ˆ/jX^@ƘN|0d;-X,_3|	"GgAԊ@$Z t3(?̎a8(M^M%1ѼXdM7<`ۗ29I[!iDFpS%Ċ{^n+WlU!:_L.:!W/}UUaS՟UOF")W5sϫk1쀔M	f*H	O͵QhRo$tHB&athF-DWʑO ͒kFp/R;3[0]CP'V
I3n!)XV	8n.zcCoeyȴ9UCER<@yyh6bY'lYǺw=JY'GQܐRTa';*C؁ #JZv#lv6UvFر_NiмN
;a!3'I;Fو;qg#lĝZVqǿ$NY0m$X%K3Y5G*nSnės;gtIэu6F:j'hT;|NbIo=V|{,朲=;ag#lsՅ1PN;}xz:F,/,$<asr6BF9!9GѱF.cZ&[c\s)'sΰp}\DjHJn$䳑|6F.O|Qɧ~|3%{-acs@zOxg#lx>ngCKrV_3+AoL\fyELmW\HL|1]w6Fو;qg]=6{RRKU;}8_Oni=MZ75
=؟̸/aGEU>yu4̘d}t#bas"32wG/_[`Ә$q_.+{aFO[76xI"=aVp[ed9ՅOi~uwe|G(]ʱ3p e53-k?0e<OԾ!zד`oChw|s m	W88GYߌ2@_ӼO7~mfAo%'ʛ/$D--ҺUXOfۏ"r-	T&[gO$^TWfGib!m}K_:MQX:Eҩazg^xՠJz]ԠPj̫A/p͛TW뙙^C;w1%.Z1P똻$Ecϵ
]_O׼	BN)JGoސkй5pv	6f.[u,_r,;HXM[U$a=hE$jݘM_G|c_{b_~):"A2wqZXBˆ[ӄ𧻓X%f=ػFtSbde,_VȥFJ)PZ$UG,aW"XO*`=M_@é}D?HDApeW$+Ls:e+9zB5rքâ}|j}bbe#ƌ&n@Zv)ʯG[X~oq-)&K+}.*IC[1_(b,jC0p,yr0K@fCfCfCfC̒`-%,wõޖLD.Te@2	]lЅ0LB[&t!- ƖI ]c$[&ta- :s2	slЅ9L[&ta- 0ǖI ]c$L߅9L[&ta- :7(.̱e@2	slЅ9L[&ta-.̱e@2	slЅ9Ln0ǖI ]c$.̱e@2	slDsa- 0ǖI ]c$.̱e@2	S0v`N[&ta- 0ǖI ]c$ҿslЅ9L[&ta- 0ǖyaSt+R<$ufS4.A]?q5rhBTfeb*u߾,0qz_mԓ0Z_rSx.*"VU[K,D\[S0)x'bJR6Ƶb>x%O|$6 =Oi%ģ;;#Js?#@vt[>007Zb*L^@3"F$õ4ࠤuvPo6w;!/	w,SR[h5*$kh\v!5م8,Id>걡4(Pdiꪭ#aԴ~(mPn}b
4[Q
[gGilCUG>dpx9cР9^n^\6ZDXVXwAkuQ6/n'5wĺ}4#ؾB^k(^*hB7N68j]W]f-BerJB	7K(N,	?ļg>lx2:ӭh2Y-p>
{>ǞBπ9䇿U=Hw ѰKzQa.UŗJ5-`uqf֨GVF׆-tl>.e^bilMjA ^o^*㻻W*99HɎ1A=H)i&`X% l%a3%xQbq:'昼9&c})22]amIQFWVXb؏]$lF3vy_g FWgϣ/rGjC0;y+A66վ f+!.{/Zmu/w-w-V޵¼kD6〔T〤byXr@b:LxHL@DzHnkw_pڶlMr$l<{;{aHU·Zϋ.]~Woơ5o	^6tgkmҊFx+>o!|2!d՝dA#2o|ew%6n|_bƗ%v n|_bƗ%v n|_b%8KLϪ;Ւ_oDIh?l݈S\*M5a	5b@ӤN%֌ǃQg0w#ĜI*~~+	J(Mo]yoF?@1k+L?
iCQf״E-m&E6horۼ}#6h+\G>; g2\Œo ϯVp}}ߧ&36iu&4DZǩc]2 i`ֺ䠯09<n7QB'ņWxif;S5!rjWgjFY'qi$
)MTқ+ju([Cܢ`{);TFa_\=	4SHJCB-+U%ʹiz
܂ GuoPQqشQ~OV$/I3nI]a8:$RXۃ{j]6Zm[ĩ\aT Yoi`$Z78$r4?֕K,@b%j,v557@KT!2Ƚh]r-IP[jo)ּh(rоǄ=f|=foi_uZ	S#7A=ofqI`gIZE`/q8ZXy:jwPN~b6j<Hmc1Rۈ+#(.MBo	> ,~%56J>d^݂Src{6rF==CIQeɇg%яc]#[i>!&'&?T	aJk"hSLh
<\ǂk(O+R"%z%Y
אVBnX rV~*OH=}w%HWin|"y/)^MVԼWAsa( bQ6|7[_XNڞ;GDrڊ?@Ⱥxjz46W|  AÞŏ~vk=]K`{TL(JDxʴ6ihIutUo^Q;&}ְFC;w;\~w[/>zxg]vQO`|2BF#ZfԂЌ	LɶYe4XIpaCxAX{[ڕu?Z7ή%a`GpzeDZyeڻ-k1U%v.T}:l~P('i죲'7Fy;_yko-[xko-Z[yk0BZ[yk!o-E	+[xko-EbZ[yk bZ[Kxk	o-%[Kxk	o-᭥RZ[Kyk֚&o[k֚&o[k
[kZ `+
/߱A&4JF[غG&{PD:GPgvE-Hqu%nDIw n; 7Q(Mt&Jp% DIw n; ?LN LKn^=pG&-|ܷQOIf^/rYK(Ʒ;^dNfFbȆQG|ufºCsGl٬8=D\){aS.B0f{(*-^q	,䰷Y5/[$ߢ%%mi}	s59
@5S/bc0ΜUXeƸZ>mHZ	**ƪ,2Fq^F0*y?,+MxxC2NemP*eZcKeJ_ekȧ=oxOJ2߮)R[K'ͰxB{PP:DJb4염7}SM
Q,'kC0a{:;QK6hzvFр.PPgXC`0(k(5ZJzμJg.M^W٢"0P۟jsPBcJu\|kֆzp7ŌwF3(2n_z	(7"pF5nlA7e;\}TIk U^vK9z;8H<BySF͎ #|Y$'iؘU#S^vbפ
X:vWۥaoWg{`~vb3R~}yɨ;LfGdoXd2p>!{>u
=@Wy#݁G.E[!_{KX}X+k[4nuѼWWJn3R]%)ֈǰrKh{$?^Iuet2Vr/<ۦ2[S/WuG)펕Y#2x7
f1d3F;6,JKT%C%7ջr.]٦ja2slL.K&;Yqp n5gYqp n5gYqp n57YA'gWzE\KfS4.AE]ڃNXVʁISw*J	7k)/WuC=DΞ+X(J+!^(n;`mbw4~F OoAm;"^m[pXjD&kҪ<"m9u?SbMpC+Qb\zeyJ~6XmO/X%ofF\nIJ?UhrV~#x;Èb3U>MTOb$NiKi,Lu.+B-8
"vD{6uW8}yV$EJ`>,f>.`ovN&X~$*9m[ GT4]_XȦzt(5䃅lICSP6J("
d/UsWQ YH+HiƵ0>|i_g-(b8:
{QǀSGkqFR͈Pr2XGMn( OuB_u<1W5i(pO[DfrU<'SQoےB
F_H3~2?O
) EP$x,""I&^4R(aqcy5{SM3Ob$c%~iDTlzL spL\,@'V&	e	~0**?ޟ{[MS*tk(0RT*`c("jtB @0
@C D0
@C D0
@C D0
@C D0
@C DjP	ș4B Z=Z \U,oZz`%S
4<T07\L ~!8>"R?i¦pR*JVrB *ǄW1SywV (aQ&Qƪ@O	
Q	ɖwJ.(~U{q gy*@&E7dqyiHzzykp^ysy/{iVSꦺ>(M/<J.<r)]NZxf%qKX<vq{}5!;I]-+qwMSYTq".?-};dNY{*8;TyޙߎHYvSivR.ĭD!߸!>ӘyI`"}`Xkp]5^Z0r0`Ub&~:`'	U!;%XƯ59G=gNn47tJ(KH ʁ@aqĒ<fZC\b\p_JefbnRJ[U[ȩtuML<@pEH3l2)cvD.]pH_8ojA%<}+y!C^+y^E]oVf?O_Iߥ瑟E9?n-w6n?4.Ak/iy},ICFH=CR~PPPPP(e?v:!:=V6wFۄVΫ%mz ~:ܬޝBOӻ<!];Op^?nVOby:`]<fppzz״8OlOtYkCOp7h0PP '4v[]w\(tCjp;/Ү;/h:	]@i
40Bz땫PPYp${B+n=HFuo#q;A2Ү;E2i:	 i"
"5Hzzp${BSn=HFڵ؋d(8=.$#^$CA}H1!cڪg?(LyMoFk1?ɟK"lSIU+$ZO
'v~,Zu$A#	"qrD\viڢ=/lh3?<H&U-wjkڐ	UeE&KCJk`HbT(I68p!t%'bt5K7#ҝ2Q0<}]ѻ=D%J(9x-W0E+J,[Q/F"_} "-O45ii|JK㓍\Z3q\NrirWǪD:gҙq,<3iR>HqI=}=/`.4e>~g©4Na<
Z.DYxg!h{CZז]GψP	KYٲm8i5dt@c>>T1t	y"om V^[f^}ʘOVe-Z/./^Sp>uJKEjA_@5_0P@5@ TD0P@5@ TD0P@5@j0h({ޣ"M΁M	ՉMyYqNL&b)mGEƨ/ÍeGBNsu`蘘mTPϙ G4ߡ1R=TT,"Fo|^ LYSg&///C/i.\	*2MV:n[,vR^.\sFHpJΙ&afxR1c~gedk9yeh#XUU;COMﰖ-qbQh#GE /<*%vz,imĽk|O޼12'x8nMW5Zz9n)ۛg#bK$sNo4.ɹI턌^ÁGFfkc(94SalaG^i' SR^{dW2R)U< ?<>Rv#z(eyi{(#y<JseG㤬89R:^
l"Qxh-cFߗݗim 9|RpOxv"4HN5h5J<`SETM-ߴЬNISmtWGKS@ f
NSȤs^M!'V2,c|>+El]2hP߿.[7VYS
n[{BLlA.9(s`HGB鐮l(bs(ϭf/zK*f'	F%1,cId-6[y]HעOH8^f ,&[s{`׺o`CֺXakA.-M MY@8Ȣо-u6Ok(/fp#ဋSܔiDE6Uߖ]	O8S!I`TeW9y@IG	šk g Ci$bYD2n~S
ZmܜP:<)q){oZw?hωt~}xX8	H43(Eq#G\m vDEVOJыQrxJ`;殐o49cϏX`,$D/);ɿKhMN_\(ivH֌[֌mqp8	eg7lBqiByĉ	]H۸z=3s5N,XI[R̘TB99MoN3g@TDyBLEE)D7l{/Vz2Ob.fz5	utMڠVq/ȦrG҄DD$>1iS4M
hFǦҳTq)hS[KI#M"$JlzT[:m[cKKmK4N?bO[idG)L[ҔMeǿޖ~F%$4g9ѷQIUI
VI\?Uw-V/v_	<$ςwn
<_g$G'kg)JQG-_>&g\%U"	/A$UƇO:f5<Ta}]n-eݿRʫd,7oOŦM E5%֤ne%eO2\pL5+7^VѣU>OHA-{x)[r*2(87T#<8X5ybB;X`+8X
%;Xi\C[0oC7+n.;(PNe*<	] 6a,4'f,5sC$R13nK|4D1Zrkius\l;"jg7?y3TAmRfc1׋?ACt=u'Y@թ{z[^B꾱EigMFlT%|eX)i>q	 zum4^>D*99887qaǔ#b!	;jԂ B0U ,PjԂ@ZSQbJ5jALmF-)ԨiԨ1́ jd͡@ZQb5jALsF-iԨ1́ 9P6@ZQb5jAtB4a5jALsF-iԨ1́ 9P4j>9P4jԂ@ZQ9	9P4jԂ@ZQb5jQb5jALsF-iԨ1́ #1́ 9P4jԂ@4jԂ@ZQb5jALsA!e^7@VSY$05X\SKG.7~Ĝx!TcKsȇb") TT)6^Nztx\:Y2tet_Iv0k[ѬˬbiUe}6irk:gɏ$dT6M3v	hO
C
hi6hUMvE,p9YC>qqPYUQfyRvV߳g1;g4"s[3fm)0=e[gnpS:a]C;s;tjaФУ1ϲyqNEP$ɍvwI=ɒRO"<xRLQKJ{,6=XJwXA'E(ޝ!Mr@O=!*Oln3+(gl9>W:|\}Y&HQ&KG5OwrY"aDgMX54Hu4Y=<3&n}8Sڥu@=zh圧>$XM<RŲEz,w_.i_y]Q.[E1eڗ`$N# 51Tc-]|m<N9ޝvM_nׇ|17ˎP$Ǡw}
B#FH&L$:[1tΉ([2?ߑŷ2{|G:B!^#8ckDoxүwl<#X20,~wD|GD0wD|GD0wD|GkzA|G{<NK #|w%;^;ߑ^ S;]-z#Po\C8#HcwTwѻEi;㷩3;ҋ;w|Ǔ~|Gz|Gqcwkӻ/H1PM<;sk&< M#X~$*|Ndp(G:x]
d<z-RQ>r9qxcK8Ml(b
	51u#6S/皝^"},;m@Qե@Qlg)#	X.,(~@QDEED0P@QDEED0P@QDEEkzAE{<(NKV "@Q%];E] ES(r
IQt]hS"iSQ,Ѧz.\vfڔc\Ѧ2B'7HRI6U.iXϧd"}x+P8תQ/XjP1\zF	(Iq/I$b2dђH_֨Z_-Z,ub)(0ˣHWr_IűNS7mQFz`!N#vx!(.IS@e<yx~rv/i=AԬ wE-0RD	.e>~gy	Z{)n+zAaOi(TKFP/ܩK{E<JX7Iκ0Zsfo%mi;|$FacŔg>O|"qˠ/?KpfD۪8a鴠6y$EY}G;3`gYj%0a5geCK=ନj!6
@]6pOg[k*RⷵgB8׵w(	JΑ9a㝗@@(	+m9HٕfS`|QJ?8|n{^
zǠ͕:zl>z[5NAHk{|1;βTl)ր
>ڳذڌ(LQD\T2`Bs6:Tkoǭw(Aꨴ2LAO5 LhB>C4.NۢW1V f3[br=҈	MU8/Ѩ_i0V HdiXY9J0ӂa~04N RjN,:G2iR@d*qU IDr؉`\κCRPRc7hTn,.A;rhb1h@ ҈rOQmijޗ)X!C5!V֫͟jUsKLY̚Ȁ3:mq;65DxhU4:ˍ31֫v+̞6uVe٤_~foBvdv{T(S)AVx}.}xCqy0HsLM}e@cH,ߙ V̀^[>6aN:Y>r|*an$RfLˍ6%f. b>˧S>q\gջԻzpL:aBȹgvNlYH꾇߼|Z>'=Z^v_wl-FnQ`Z|l[<I?ovhfB䥲]v
[3)g>4g6Nz3ߪL:PkԒ)X"Y[&D'~$z7[cfh=K97"'az=oeZ<3ҵ?υԗmFF>I嘛j%P2lpiVmMIsmtOf_mW~o>E:MK
j<>-w_H+-_nׇbZ`3w}m#j]0S1X5ɬjۥVG_vT;ydiݩ7f9uT=һ6G,ΪC꒙ê(fr@(}@<h.ʙW%Ut[;&{_Ƶ_;Irlk\y	]c*Y3>[ZB,M#\ϪuuuִfPDNtk$7V5?!/ZV/CY;6Jm2A<I&V (Ç-x>     INDX              DialogScript      KP   CreateScript    #K_   TypePropertiesOptions  2   KP   Help      KP   Tools.shelf    wKP   Contents.gz    
K_   ExtraFileOptions     KP# Dialog script for conserveenergy automatically generated 01/15/10 17:01:52

{
    name	conserveenergy
    script	conserveenergy
    label	"Conserve Energy"

    code {
	""
    }

    input	bsdf	f	BSDF
    signature	"Default Inputs"	default	{ }

    help {
	""
    }

}
# Automatically generated script: Tuesday January 26, 20:40
\set noalias = 1
#
#  Creation script for conserveenergy operator
#

if ( "$arg1" == "" ) then
    echo This script is intended as a creation script
    exit
endif

# Node $arg1 (Vop/conserveenergy)
opexprlanguage -s hscript $arg1
ParmsFromVfl := 0;
PrefixDroppedParmName := 1;
UseDSParms := 1;
ForbidOutsideParms := 1;
LockContents := 1;
SaveSpareParms := 0;
CheckExternal := 1;
GzipContents := 1;
MakeDefault := 1;
PrefixDroppedParmLabel := 1;
UnlockOnCreate := 0;
<?xml version="1.0" encoding="UTF-8"?>
<shelfDocument>
  <!-- This file contains definitions of shelves, toolbars, and tools.
 It should not be hand-edited when it is being used by the application.
 Note, that two definitions of the same element are not allowed in
 a single file. -->

  <tool name="$HDA_TABLE_$HDA_NAME" label="$HDA_LABEL" icon="VOP_conserveenergy">
    <toolMenuContext name="viewer">
      <contextNetType>VOP</contextNetType>
    </toolMenuContext>
    <toolMenuContext name="pop_viewer">
      <contextNetType>VOP</contextNetType>
    </toolMenuContext>
    <toolMenuContext name="network">
      <contextOpType>$HDA_TABLE/$HDA_NAME</contextOpType>
    </toolMenuContext>
    <toolSubmenu>Digital Assets</toolSubmenu>
    <script scriptType="python"><![CDATA[import voptoolutils

voptoolutils.genericTool(kwargs, '$HDA_NAME')]]></script>
  </tool>
</shelfDocument>
      [r-0cMQ@,.u[h|FRt&p P>E yδS wdl
C`Y,gX?y՗p?%Ji87vxaxzeWl,<')l&b8q0H0P58SUynkkۤ:tdE	'g?>=8|Y۳?A3x)0|6?I_D>_^^৥J{GMfχMh\-?`b>x9|{Gˣ~ؼyurSiHOy87<WF[
?ok5uy~$pdz~s9:><:>?}t'rG\'!AF/ݔ8,X'|L}9YĞK j8)Nr0&g@d.gQpNL+\r\0&3FAIANr犰Iy@N򔱜fYα$M<%1\aOy%_s:[9âU}݈)B},ɰWBu^~*OdyE,n>O.![y@ٺp/9vNiOhۢA<Jip?%Ya	7aSVxpUÕueH+0F0WހזyeVf	0N<7tS4Lܼ@afn~[*e7*bJ)t6K^?z[v:Ȭ|6q:9++V,k}O,γu9ȷ0yv09=~t|Ν;pXa(jU2e1K]E=qiߧJf6J,G+8JJ[>NeɓȹA)IK_K-U?)nVCmY8T~;N0ww $j>jJh(&/U1 ƊNvڙ%A6ZqkhKts;2 aBӕ)獋|mb`p_٨-zpApݚDl/3^0>LT=A_b*Q9|@kª8nyIM`%YC䐑6	6T-@40#z-ģEU<$ gW)+?8[,Ch0/SPK<-T2̽`7w=KYY m	@AѢMy(/OcADq'
zrH<(Kд:Y=@2+<FJVr-.uLumЛe{Wn<SF΋r꺺0kumu:*-ފ:[P"0=5G>*gx*iږe|R5CX%>Q*IUqtH1%mԡ7,XJqCs>Pi(ֶ$*Y-|g+\EVt,Km50*6Cle+D4Ԡ:
Z0UJ5l*ȚAC Uv9-K!kB"mk,7UvTӑ]n:~5soꖈ"XFƞy&Ǚ[pöiwXK'%b E{%:z'6"
jh jZdh,\P%d;a3LM]d(˚+q}H9@)8͐u3aM`fIhl	MqPB`Hh$4i#	Me[ "Q*RL*"2@$"(DL2"2ш@$d#(Ĉ)G"QD #Q!SDL9"2@$ʔ#(SDL9"2@eH)G"QDi(ǔ)G"QDrD eH)G"Qy_DrD eH)G"Q:(ǒ)G"QDrD eH)GODrD eH)G"QDX[DrD eH)G_DrD eH)G"QxUz
FgSE_`1kNglE-Pptù+u[YG1푩Rں!Ś5)_UQ9m~F]$&X k&ƱN%ݗb
|]<nҎ^H3#:d::j-{ޠrkG'e1,pۛ`ht%kY}Ճt(3Rr;k{wnFNY<]0Pezى(W`	"YGԢo|ƕ/c__ǵ+-TxUOpߎ/tTݱZ@J"֞wCBKA#{xjOjtBk¢xϻS(KtsC#FQ\>e{F[")15˸	{(V6wRs7ތ8d+jTdT_Nk|*FrgcrPߵMZ"&/z!PY޻ѿz/MfxH?      INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"complement"
    script	"complement"
    label	"complement"

    code {
	"$complem = -$val;"
	"$complem += 1;"
    }

    input	float	val	"Input Value"
    output	float	complem	"Complement: 1 - Input Value"

    signature	"1D Float Values"		default	{ }
    signature	"1D Integer Values"	i	{ int int }
    signature	"3D Vector Values"	v	{ vector vector }
    signature	"3D Point Values"	p	{ point point }
    signature	"3D Normal Values"	n	{ normal normal }
    signature	"3D Color Values"	c	{ color color }
    signature	"4D Values"		v4	{ vector4 vector4 }

    signature	"3D Uniform Float"	uf	{ ufloat ufloat }
    signature	"3D Uniform Vector"	uv	{ uvector uvector }
    signature	"3D Uniform Point"	up	{ upoint upoint }
    signature	"3D Uniform Normal"	un	{ unormal unormal }
    signature	"3D Uniform Color"	uc	{ ucolor ucolor }

    group {
	name 	"gv"
	label	"Defaults"
	VOP_FLT_PARM(val,   "1D Float Input", 1)
	VOP_INT_PARM(val_i, "1D Integer Input", 1)
	VOP_VEC_PARM(val_v, "3D Vector", 1, 1, 1)
	VOP_VEC_PARM(val_p, "3D Point", 1, 1, 1)
	VOP_VEC_PARM(val_n, "3D Normal", 1, 1, 1)
	VOP_CLR_PARM(val_c, "3D Color", 1, 1, 1)
	VOP_VEC4_PARM(val_v4,"4D Vector", 1, 1, 1, 1)
    }
    group {
	name 	"gu"
	label	"Uniform Defaults"
	VOP_FLT_PARM(val_uf, "1D Float", 1)
	VOP_VEC_PARM(val_uv, "3D Vector", 1, 1, 1)
	VOP_VEC_PARM(val_up, "3D Point", 1, 1, 1)
	VOP_VEC_PARM(val_un, "3D Normal", 1, 1, 1)
	VOP_CLR_PARM(val_uc, "3D Color", 1, 1, 1)
    }
}
INDX              DialogScript      mLt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"pow"
    script	"pow"
    label	"pow"

    outercode {
	INCLUDE_VOPLIB
    }

    code {
	"$pow = vop_pow($val, $exp);"
    }

    input	float	val	"Input Value"
    input	float	exp	"Exponent"
    output	float	pow	"Output Value"

    signature	"1D Float Values"		default	{ }
    signature	"3D Vector Values"	v	{ vector float vector }
    signature	"3D Point Values"	p	{ point float point }
    signature	"3D Normal Values"	n	{ normal float normal }
    signature	"3D Color Values"	c	{ color float color }
    signature	"4D Values"		v4	{ vector4 float vector4 }

    signature	"3D Uniform Float"	uf	{ ufloat ufloat ufloat }
    signature	"3D Uniform Vector"	uv	{ uvector ufloat uvector }
    signature	"3D Uniform Point"	up	{ upoint ufloat upoint }
    signature	"3D Uniform Normal"	un	{ unormal ufloat unormal }
    signature	"3D Uniform Color"	uc	{ ucolor ufloat ucolor }

    group {
	name 	"gv"
	label	"Defaults"
	VOP_FLT_PARM(val,   "1D Float Input", 1)
	VOP_VEC_PARM(val_v, "3D Vector", 1, 1, 1)
	VOP_VEC_PARM(val_p, "3D Point", 1, 1, 1)
	VOP_VEC_PARM(val_n, "3D Normal", 1, 1, 1)
	VOP_CLR_PARM(val_c, "3D Color", 1, 1, 1)
	VOP_VEC4_PARM(val_v4,"4D Vector", 1, 1, 1, 1)
    }
    group {
	name 	"gu"
	label	"Uniform Defaults"
	VOP_FLT_PARM(val_uf, "1D Float", 1)
	VOP_VEC_PARM(val_uv, "3D Vector", 1, 1, 1)
	VOP_VEC_PARM(val_up, "3D Point", 1, 1, 1)
	VOP_VEC_PARM(val_un, "3D Normal", 1, 1, 1)
	VOP_CLR_PARM(val_uc, "3D Color", 1, 1, 1)
    }
    parm {
	name	exp
	label	"Exponent"
	type	float
	size	1
	default	{ 1.0 }
    }
}

INDX              DialogScript      I   CreateScript    5I   TypePropertiesOptions     I   Help      I   Contents.gz    KI   ExtraFileOptions     I# Dialog script for volumevopoutput automatically generated 03/13/09 14:37:19

{
    name	volumevopoutput
    script	volumevexoutput
    label	"Volume VOP Output"

    input	float	density	"Combined Value"
    signature	"Default Inputs"	default	{ }

    help {
	""
    }

    parm {
	name	"sum"
	label	"sum"
	type	float
	invisible
	default	{ "0" }
	range	{ 0 10 }
	export	none
    }
}
# Automatically generated script: Friday March 13, 14:37
\set noalias = 1
#
#  Creation script for volumevopoutput operator
#

if ( "$arg1" == "" ) then
    echo This script is intended as a creation script
    exit
endif

# Node $arg1 (Vop/volumevopoutput)
opspareds "" $arg1
opexprlanguage -s hscript $arg1
ParmsFromVfl := 0;
PrefixDroppedParmName := 1;
UseDSParms := 1;
ForbidOutsideParms := 1;
LockContents := 1;
SaveSpareParms := 1;
CheckExternal := 1;
GzipContents := 1;
MakeDefault := 1;
PrefixDroppedParmLabel := 1;
UnlockOnCreate := 0;
      n6}=b˾(un!%*D9u>zǎF:gΰ$P~|$sT}ߏ8M~p.Ľ7bnKNQU_nto٪ܗѩ3oEWDvă'GJfk{}4Fj 7ZaN6̭teo*3/JMJ(^o=&&:LCv+T!ZLnf[ثJg&l'dxnZq,IRЬBLZTBY-R9RA7tGә@uV[0Y%(XAܢ,C^C^֛n߫Lo6lf6yiB 0q-Ï.oeVFCr)щ{JB(=\FeY-hh0%qʶbkiB*W;jS#pzUׯҟ$vQrN*o.fW_N*Legh;4ѱYݫ_]~s꺄12W7Qȱh;u6JҴz,֢bʲ1nkn{ULei,;%CBZ)Q`vjnNTOh|%10-2>gUwVTʹҙ{a3vo880>A7N\2];ArZͦSǮVv0"U\D;<j`L=1+1OpHY09A00RVfW?xwm$gW;Re'	ˍEzwj3 u~\c>u@?Qť>X.GLe:ab˺?=p&4kY["Fh36BЬmVp=n	,()>
%Bh䀡D4rP"9h(6FJϑChȡD4#ȑChȡD4rP"9r(9FJć>G%#ȑChd(#ȑChȡD4rP"9r(9>G%#ȑChȡD4#ȑChȡD4rP"9r(~9FJD#G%#ȑChd791G%#ȑChȡDsP"9r(9FJD#G%^~r
o1(̇(aBNA\??$/LI8>xB(oa>Y蜽qN9ֳJUYo~;g5       INDX              DialogScript      mLt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"texture"
    script	"texture"
    label	"texture"


    code {
	"if ($map != \"\") {"
	"    float $myS = $isconnected_s ? $s : s;"
	"    float $myT = $isconnected_t ? $t : t;"
	"    int $fptex = $isconnected_ptexface ? $ptexface : getprimid();"
	"    if ($isconnected_ds != 0 && $isconnected_dt != 0)"
	"    {"
	"        float $tds = $ds*0.5, $tdt = $dt*0.5;"
	"        $color = texture($map,"
	"                     $myS - $tds, $myT - $tdt,"
	"                     $myS + $tds, $myT - $tdt,"
	"                     $myS + $tds, $myT + $tdt,"
	"                     $myS - $tds, $myT + $tdt,"
	"                    \"wrap\", $wrap, \"filter\", $filter,"
	"                    \"width\", $width, \"border\", $border,"
	"                    \"extrapolate\", $extrapol, \"lerp\", $interp,"
	"                    \"channel\", $channel, \"face\", $fptex,"
	"                    \"pixelblur\", $pixelblur);"
	"    }"
	"    else"
	"        $color = texture($map, $myS, $myT, \"wrap\", $wrap,"
	"                    \"filter\", $filter, \"width\", $width,"
	"                    \"border\", $border, \"extrapolate\", $extrapol,"
	"                    \"channel\", $channel, \"face\", $fptex,"
	"                    \"lerp\", $interp, \"pixelblur\", $pixelblur);"
	"} else {"
	"   $color = $defclr;"
	"}"
    }

    input	string	map		"Texture Map"
    input	float	s		"S Coordinate"
    input	float	t		"T Coordinate"
    input	float	ds		"S Derivative"
    input	float	dt		"T Derivative"
    input	string	wrap		"Wrap"
    // The parameters for map and wrap need to occur before the filter
    // macros are invoked (so that the parameters match the input
    // order)
    parm {
        name    map
        label   "Texture Map"
        type    image
        default { "Mandril.pic" }
    }
    parm {
	name	wrap
	label	"Wrap"
	type	string
	menu	{
	    "repeat"	"Repeat"
	    "streak"	"Streak"
	    "decal"	"Decal"
	}
	default	{ "repeat" }
    }
    VOP_FULL_FILTER_INPUT(filter,	"Filter Type")
    VOP_FLT_INPUT_R(	width,		"Filter Width",	1, 1, 10)
    input	vector4	border		"Border Color"
    input	int	extrapol	"Extrapolate Derivatives"
    input	int	interp		"Interpolate MIP Levels"
    input	vector4	defclr		"Default Color"
    output	vector	color		"Texture Map Color"

    parm {
        name    border
        label   "Border Color"
        type    color4
	size	4
        default { 0.0 0.0 0.0 1.0 }
    }
    parm {
        name    extrapol
        label   "Extrapolate Derivatives"
        type    toggle
	size	1
        default { 1 }
    }
    parm {
        name    interp
        label   "Interpolate MIP Levels"
        type    toggle
	size	1
        default { 0 }
    }
    VOP_CLR4_PARM("defclr", "Default Color", 0, 0, 0, 0)
    VOP_FLT_INPUT_R(	pixelblur,		"Blur Pixels",	0, 0, 10)
    VOP_STR_INPUT(channel,  "Texture Channel", "")
    VOP_INT_INPUT(ptexface, "PTexture Face", 0)

    signature	"RGB Values"	default { }
    signature	"RGBA Values"	v4	{ string float float float float string string float vector4 int int vector4 float string int  vector4 }
}

INDX              DialogScript      	Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"dot"
    script	"dot"
    label	"dot"

    outercode {
	INCLUDE_VOPLIB
    }

    code {
	"$dotprod = vop_dot($vec1, $vec2);"
    }

    input	vector	vec1	"Vector 1"
    input	vector	vec2	"Vector 2"
    output	float	dotprod	"Dot Product"

    group {
	name 	"gv"
	label	"Defaults"

	VOP_VEC_PARM(vec1, "Vector 1", 1, 0, 0)
	VOP_VEC_PARM(vec2, "Vector 2", 0, 1, 0)
	VOP_CLR_PARM(vec1_c, "Color 1", 1, 0, 0)
	VOP_CLR_PARM(vec2_c, "Color 2", 0, 1, 0)
    }
    group {
	name 	"gu"
	label	"Uniform Defaults"

	VOP_VEC_PARM(vec1_uv, "Vector 1", 1, 0, 0)
	VOP_VEC_PARM(vec2_uv, "Vector 2", 0, 1, 0)
	VOP_CLR_PARM(vec1_uc, "Color 1", 1, 0, 0)
	VOP_CLR_PARM(vec2_uc, "Color 2", 0, 1, 0)
    }

    signature	"3D Vector Values"	default	{ }
    signature	"3D Vector/Point"	vp	{ vector point float }
    signature	"3D Vector/Normal"	vn	{ vector normal float }
    signature	"3D Point/Vector"	pv	{ point vector float }
    signature	"3D Point/Point"	pp	{ point point float }
    signature	"3D Point/Normal"	pn	{ point normal float }
    signature	"3D Normal/Vector"	nv	{ normal vector float }
    signature	"3D Normal/Point"	np	{ normal point float }
    signature	"3D Normal/Normal"	nn	{ normal normal float }
    signature	"3D Color Values"	c	{ color color float }

    signature	"3D Uniform Vector"	   uv	{ uvector uvector ufloat }
    signature	"3D Uniform Vector/Point"  vp	{ uvector upoint ufloat }
    signature	"3D Uniform Vector/Normal" vn	{ uvector unormal ufloat }
    signature	"3D Uniform Point/Vector"  pv	{ upoint uvector ufloat }
    signature	"3D Uniform Point/Point"   pp	{ upoint upoint ufloat }
    signature	"3D Uniform Point/Normal"  pn	{ upoint unormal ufloat }
    signature	"3D Uniform Normal/Vector" nv	{ unormal uvector ufloat }
    signature	"3D Uniform Normal/Point"  np	{ unormal upoint ufloat }
    signature	"3D Uniform Normal/Normal" nn	{ unormal unormal ufloat }
    signature	"3D Uniform Color"	uc	{ ucolor ucolor ufloat }
}
INDX              DialogScript      DLt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"fit"
    script	"fit"
    label	"fit"

    outercode {
	INCLUDE_VOPLIB
    }

    code {
	"$shift = vop_fit($val, $srcmin, $srcmax, $destmin, $destmax);"
    }

    input	float	val	"Input Value"
    input	float	srcmin	"Minimum Value In Source Range"
    input	float	srcmax	"Maximum Value In Source Range"
    input	float	destmin	"Minimum Value In Destination Range"
    input	float	destmax	"Maximum Value In Destination Range"
    output	float	shift	"Shifted Value"

    signature	"1D Values" default { }
    signature	"3D Values" v	 { vector vector vector vector vector vector }
    signature	"4D Values" v4	 { vector4 vector4 vector4 vector4 vector4 vector4 }
    signature	"1D Float Values"		default	{ }
    signature	"3D Vector Values"	v	{ vector vector vector vector vector vector }
    signature	"3D Point Values"	p	{ point point point point point point }
    signature	"3D Normal Values"	n	{ normal normal normal normal normal normal }
    signature	"3D Color Values"	c	{ color color color color color color }
    signature	"4D Values"		v4	{ vector4 vector4 vector4 vector4 vector4 vector4 }

    signature	"3D Uniform Float"	uf	{ ufloat ufloat ufloat ufloat ufloat ufloat }
    signature	"3D Uniform Vector"	uv	{ uvector uvector uvector uvector uvector uvector }
    signature	"3D Uniform Point"	up	{ upoint upoint upoint upoint upoint upoint }
    signature	"3D Uniform Normal"	un	{ unormal unormal unormal unormal unormal unormal }
    signature	"3D Uniform Color"	uc	{ ucolor ucolor ucolor ucolor ucolor ucolor }

    group {
	name	"gs"
	label	"1D Defaults"

	VOP_FLT_PARM(srcmin,	"1D Src Min", 0)
	VOP_FLT_PARM(srcmax,	"1D Src Max", 1)
	VOP_FLT_PARM(destmin,	"1D Dest Min", 0)
	VOP_FLT_PARM(destmax,	"1D Dest Max", 1)
    }
    group {
	name	"gv"
	label	"3D Defaults"

	VOP_VEC_PARM(srcmin_v,	"3D Vector Src Min", 0, 0, 0)
	VOP_VEC_PARM(srcmax_v,	"3D Vector Src Max", 1, 1, 1)
	VOP_VEC_PARM(destmin_v,	"3D Vector Dest Min", 0, 0, 0)
	VOP_VEC_PARM(destmax_v,	"3D Vector Dest Max", 1, 1, 1)

	VOP_VEC_PARM(srcmin_p,	"3D Point Src Min", 0, 0, 0)
	VOP_VEC_PARM(srcmax_p,	"3D Point Src Max", 1, 1, 1)
	VOP_VEC_PARM(destmin_p,	"3D Point Dest Min", 0, 0, 0)
	VOP_VEC_PARM(destmax_p,	"3D Point Dest Max", 1, 1, 1)

	VOP_VEC_PARM(srcmin_n,	"3D Normal Src Min", 0, 0, 0)
	VOP_VEC_PARM(srcmax_n,	"3D Normal Src Max", 1, 1, 1)
	VOP_VEC_PARM(destmin_n,	"3D Normal Dest Min", 0, 0, 0)
	VOP_VEC_PARM(destmax_n,	"3D Normal Dest Max", 1, 1, 1)

	VOP_CLR_PARM(srcmin_c,	"3D Color Src Min", 0, 0, 0)
	VOP_CLR_PARM(srcmax_c,	"3D Color Src Max", 1, 1, 1)
	VOP_CLR_PARM(destmin_c,	"3D Color Dest Min", 0, 0, 0)
	VOP_CLR_PARM(destmax_c,	"3D Color Dest Max", 1, 1, 1)
    }

    group {
	name	"gv4"
	label	"4D Defaults"

	VOP_VEC4_PARM(srcmin_v4, "4D Src Min", 0, 0, 0, 0)
	VOP_VEC4_PARM(srcmax_v4, "4D Src Max", 1, 1, 1, 1)
	VOP_VEC4_PARM(destmin_v4, "4D Dest Min", 0, 0, 0, 0)
	VOP_VEC4_PARM(destmax_v4, "4D Dest Max", 1, 1, 1, 1)
    }
    group {
	name	"gu"
	label	"Uniform Defaults"

	VOP_FLT_PARM(srcmin_uf,	"1D Src Min", 0)
	VOP_FLT_PARM(srcmax_uf,	"1D Src Max", 1)
	VOP_FLT_PARM(destmin_uf, "1D Dest Min", 0)
	VOP_FLT_PARM(destmax_uf, "1D Dest Max", 1)

	VOP_VEC_PARM(srcmin_uv,	"3D Vector Src Min", 0, 0, 0)
	VOP_VEC_PARM(srcmax_uv,	"3D Vector Src Max", 1, 1, 1)
	VOP_VEC_PARM(destmin_uv, "3D Vector Dest Min", 0, 0, 0)
	VOP_VEC_PARM(destmax_uv, "3D Vector Dest Max", 1, 1, 1)

	VOP_VEC_PARM(srcmin_up,	"3D Point Src Min", 0, 0, 0)
	VOP_VEC_PARM(srcmax_up,	"3D Point Src Max", 1, 1, 1)
	VOP_VEC_PARM(destmin_up, "3D Point Dest Min", 0, 0, 0)
	VOP_VEC_PARM(destmax_up, "3D Point Dest Max", 1, 1, 1)

	VOP_VEC_PARM(srcmin_un,	"3D Normal Src Min", 0, 0, 0)
	VOP_VEC_PARM(srcmax_un,	"3D Normal Src Max", 1, 1, 1)
	VOP_VEC_PARM(destmin_un, "3D Normal Dest Min", 0, 0, 0)
	VOP_VEC_PARM(destmax_un, "3D Normal Dest Max", 1, 1, 1)

	VOP_CLR_PARM(srcmin_uc,	"3D Color Src Min", 0, 0, 0)
	VOP_CLR_PARM(srcmax_uc,	"3D Color Src Max", 1, 1, 1)
	VOP_CLR_PARM(destmin_uc, "3D Color Dest Min", 0, 0, 0)
	VOP_CLR_PARM(destmax_uc, "3D Color Dest Max", 1, 1, 1)
    }

}

INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

{
    name	"shadow"
    script	"shadow"
    label	"shadow"


    code {
	"$color = $lightcolor;"
	"shadow($color);"
    }

    input	vector	lightcolor	"Light Color"
    output	vector	color		"Light Color After Shadowing"

    parm {
	name	lightcolor
	label	"Light Color"
	type	float
	size	3
	default	{ 0.0 0.0 0.0 }
    }
}

INDX              DialogScript      L   CreateScript    -L   TypePropertiesOptions  8   L   Help  $    L   Tools.shelf  $  yL   ExtraFileOptions     L# Dialog script for indirectlighting automatically generated 10/14/10 20:30:17

{
    name	indirectlighting
    script	indirectlighting
    label	"Indirect Lighting"

    outercode {
	"#ifndef VOP_EXPORT_DEFINES"
	"#define VOP_EXPORT_DEFINES"
	""
	"#include \"pbrexports.h\""
	"#include \"pbrpathtrace.h\""
	"#include \"math.h\""
	""
	"#endif"
    }

    code {
	"pbr_trace("
	"        $clr,"
	"        $nsam,"
	""
	"        $isconnected_SID ? $SID : SID,"
	"        $isconnected_P ? $P : P,"
	"        $F,"
	"        $isconnected_I ? $I : I,"
	"        N,"
	"        $isconnected_Time ? $Time : Time,"
	""
	"        $samplingquality,"
	"        $raystyle,"
	"        $doscope ? $scope : \"scope:default\","
	"        $domaxdist ? $maxdist : -1.0,"
	"        $doatten,"
	"        $adensity,"
	"        $acolor);"
    }

    input	bsdf	F	BSDF
    input	vector	P	Position
    input	vector	I	Direction
    input	int	SID	"Sample ID"
    input	float	Time	Time
    input	string	raystyle	"Ray Style"
    input	float	samplingquality	"Sampling Quality"
    input	int	doscope	doscope
    input	string	scope	Scope
    input	int	domaxdist	domaxdist
    input	float	maxdist	"Max Distance"
    input	int	doatten	doatten
    input	float	adensity	"Attenuation Density"
    input	vector	acolor	"Attenuation Color"
    output	vector	clr	Color
    output	float	nsam	"Sample Count"
    inputflags	F	0
    inputflags	P	0
    inputflags	I	0
    inputflags	SID	0
    inputflags	Time	0
    inputflags	raystyle	0
    inputflags	samplingquality	0
    inputflags	doscope	0
    inputflags	scope	0
    inputflags	domaxdist	0
    inputflags	maxdist	0
    inputflags	doatten	0
    inputflags	adensity	0
    inputflags	acolor	0
    signature	"Default Inputs"	default	{ bsdf vector vector int float string float int string int float int float vector vector float }

    outputoverrides	default
    {
	___begin	auto
			(0,0,0)
	___begin	auto
			(0)
    }

    help {
	""
    }

    parm {
	name	"raystyle"
	label	"Ray Style"
	type	string
	default	{ "reflect" }
	menu	{
	    "reflect"	"Reflect"
	    "refract"	"Refract"
	    "diffuse"	"Diffuse"
	}
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"samplingquality"
	label	"Sampling Quality"
	type	float
	default	{ "1" }
	range	{ 0 10 }
	export	none
    }
    parm {
	name	"doscope"
	label	"doscope"
	type	toggle
	nolabel
	joinnext
	default	{ "0" }
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"scope"
	label	"Scope"
	type	oplist
	default	{ "*" }
	disablewhen	"{ doscope == 0 }"
	range	{ 0 1 }
	export	none
	parmtag	{ "oprelative" "/" }
	parmtag	{ "opfilter" "!!OBJ/GEOMETRY!!" }
    }
    parm {
	name	"domaxdist"
	label	"domaxdist"
	type	toggle
	nolabel
	joinnext
	default	{ "0" }
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"maxdist"
	label	"Max Ray Distance"
	type	float
	default	{ "10" }
	disablewhen	"{ domaxdist == 0 }"
	range	{ 0 100 }
	export	none
    }
    parm {
	name	"doatten"
	label	"doatten"
	type	toggle
	nolabel
	joinnext
	default	{ "0" }
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"adensity"
	label	"Attenuation Density"
	type	float
	default	{ "0.5" }
	disablewhen	"{ doatten == 0 }"
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"acolor"
	label	"Attenuation Color"
	type	color
	size	3
	default	{ "1" "1" "1" }
	disablewhen	"{ doatten == 0 }"
	range	{ 0 1 }
	export	none
    }
}
# Automatically generated script: Thursday October 14, 20:30 2010
\set noalias = 1
#
#  Creation script for indirectlighting operator
#

if ( "$arg1" == "" ) then
    echo This script is intended as a creation script
    exit
endif

# Node $arg1 (Vop/indirectlighting)
opexprlanguage -s hscript $arg1
ParmsFromVfl := 0;
PrefixDroppedParmName := 1;
UseDSParms := 1;
ForbidOutsideParms := 1;
LockContents := 1;
SaveSpareParms := 0;
CheckExternal := 1;
GzipContents := 1;
MakeDefault := 1;
PrefixDroppedParmLabel := 1;
UnlockOnCreate := 0;
<?xml version="1.0" encoding="UTF-8"?>
<shelfDocument>
  <!-- This file contains definitions of shelves, toolbars, and tools.
 It should not be hand-edited when it is being used by the application.
 Note, that two definitions of the same element are not allowed in
 a single file. -->

  <tool name="$HDA_TABLE_$HDA_NAME" label="$HDA_LABEL" icon="VOP_indirectlighting">
    <toolMenuContext name="viewer">
      <contextNetType>VOP</contextNetType>
    </toolMenuContext>
    <toolMenuContext name="pop_viewer">
      <contextNetType>VOP</contextNetType>
    </toolMenuContext>
    <toolMenuContext name="network">
      <contextOpType>$HDA_TABLE/$HDA_NAME</contextOpType>
    </toolMenuContext>
    <toolSubmenu>Digital Assets</toolSubmenu>
    <script scriptType="python"><![CDATA[import voptoolutils

voptoolutils.genericTool(kwargs, '$HDA_NAME')]]></script>
  </tool>
</shelfDocument>
    INDX              DialogScript      L@e   CreateScript    L@e   TypePropertiesOptions     L@e   Help      L@e   Tools.shelf    sL@e   ExtraFileOptions  
#   L@e# Dialog script for pbrdiffuse automatically generated 07/16/10 16:43:17

{
    name	pbrdiffuse
    script	pbrdiffuse
    label	"Physically Based Diffuse"

    outercode {
	""
    }

    code {
	"vector $tnN = $isconnected_nN ? $nN : normalize(N);"
	""
	"if ($drough > 0)"
	"{"
	"    $f = 2.0*diffuse($tnN, $drough, \"label\", $label);"
	"}"
	"else"
	"{"
	"    $f = 2.0*diffuse($tnN, \"label\", $label);"
	"}"
    }

    input	string	model	"Diffuse Model"
    input	string	label	"Component Label"
    input	vector	nN	Normal
    input	float	drough	"Diffuse Roughness"
    output	bsdf	f	BSDF
    inputflags	model	0
    inputflags	label	0
    inputflags	nN	0
    inputflags	drough	0
    signature	"Default Inputs"	default	{ string string vector float bsdf }

    outputoverrides	default
    {
	___begin	auto
			(0)
    }

    help {
	""
    }

    parm {
	name	"label"
	label	"Component Label"
	type	string
	default	{ "" }
	menureplace	{
	    "diffuse"	"Diffuse"
	    "specular"	"Specular"
	    "reflect"	"Reflect"
	    "refract"	"Refract"
	}
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"drough"
	label	"Diffuse Roughness"
	type	float
	default	{ "0" }
	range	{ 0 1 }
	export	none
    }
}
# Automatically generated script: Friday July 16, 16:43 2010
\set noalias = 1
#
#  Creation script for pbrdiffuse operator
#

if ( "$arg1" == "" ) then
    echo This script is intended as a creation script
    exit
endif

# Node $arg1 (Vop/pbrdiffuse)
opexprlanguage -s hscript $arg1
ParmsFromVfl := 0;
PrefixDroppedParmName := 1;
UseDSParms := 1;
ForbidOutsideParms := 1;
LockContents := 1;
SaveSpareParms := 0;
CheckExternal := 1;
GzipContents := 1;
MakeDefault := 1;
PrefixDroppedParmLabel := 1;
UnlockOnCreate := 0;
<?xml version="1.0" encoding="UTF-8"?>
<shelfDocument>
  <!-- This file contains definitions of shelves, toolbars, and tools.
 It should not be hand-edited when it is being used by the application.
 Note, that two definitions of the same element are not allowed in
 a single file. -->

  <tool name="$HDA_TABLE_$HDA_NAME" label="$HDA_LABEL" icon="VOP_pbrdiffuse">
    <toolMenuContext name="viewer">
      <contextNetType>VOP</contextNetType>
    </toolMenuContext>
    <toolMenuContext name="pop_viewer">
      <contextNetType>VOP</contextNetType>
    </toolMenuContext>
    <toolMenuContext name="network">
      <contextOpType>$HDA_TABLE/$HDA_NAME</contextOpType>
    </toolMenuContext>
    <toolSubmenu>Digital Assets</toolSubmenu>
    <script scriptType="python"><![CDATA[import voptoolutils

voptoolutils.genericTool(kwargs, '$HDA_NAME')]]></script>
  </tool>
</shelfDocument>
    INDX              DialogScript      YLt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

{
    name	"inttofloat"
    script	"inttofloat"
    label	"inttofloat"


    code {
	"$fval = $ival;"
    }

    input	int	ival	"Integer Value"
    output	float	fval	"Float Output"

    parm {
	name	ival
	label	"Integer Input"
	type	int
	size	1
	default	{ 0 }
    }
}

INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"lighting"
    script	"lighting"
    label	"lighting"


    outercode {
	INCLUDE_VOPLIB
    }

    code {
	"VOPvector $ii = ($isconnected_nI != 0) ? $nI : normalize(I);"
	"VOPnormal $nf = ($isconnected_nN != 0) ? $nN : normalize(N);"
	""
        "if ($facefwd) $nf = vop_frontface($nf, $ii);"
	""
	"$clr = vop_lighting($lmodel, $nf, $ii, $uv, $amb, $diff, $spec,"
	"                    $urough, $vrough, $tstyle);"
	VOP_ASSIGN_BSDF(
	    "$f = vop_lighting_bsdf($lmodel, $nf, $ii, $uv, $amb, $diff, $spec, $urough, $vrough, $tstyle);"
	)
    }

    output	color	clr	"Color"
    output	bsdf	f	"BSDF"

    VOP_LMODEL_INPUT(	lmodel,	"Lighting Model")

    input normal    nN		"Normal Vector"
    input vector    nI		"Incident Vector"

    VOP_CLR_INPUT  (amb,	"Ambient Color",	.5, .5, .5)
    VOP_CLR_INPUT  (diff,	"Diffuse Color",	.5, .5, .5)
    VOP_CLR_INPUT  (spec,	"Specular Color",	.5, .5, .5)
    VOP_FLT_INPUT_R(urough,	"U Roughness",		.05, 0, 1)
    VOP_FLT_INPUT_R(vrough,	"V Roughness",		.05, 0, 1)
    VOP_TOGGLE_INPUT(facefwd,	"Ensure Faces Point Forward", 1)

    input vector    uv		"UV Coordinate"
    input int	    tstyle	"Tangent Style"
    parm {
	name	tstyle
	label	"Tangent Style"
	type	int
	menu	{
		0		"Intrinsic World Space"
		1		"Intrinsic Object Space"
		2		"Compute from UV"
	}
	default { 0 }
    }
}
INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"frontface"
    script	"frontface"
    label	"frontface"

    outercode {
	INCLUDE_VOPLIB
    }

    code {
	"VOPvector $myI = $isconnected_I != 0 ? $I : I;"
	"VOPnormal $myN = $isconnected_N != 0 ? $N : N;"
	"$frontN = vop_frontface($myN, $myI);"
	"if ($normalize)"
	"    $frontN = normalize($frontN);"
    }

    input	vector	I	"Incident Vector"
    input	normal	N	"Surface Normal"
    output	normal	frontN	"Front-Facing Surface Normal"

    signature "Varying Normal"	default { }
    signature "Uniform Normal"	un	{ uvector unormal unormal }	

    parm {
        name    normalize
        label   "Normalize Output Vector"
        type    toggle
        default { 1 }
    }
}

INDX              DialogScript       G;   CreateScript     )G;   TypePropertiesOptions     G;   Help      G;   Tools.shelf    G;   Contents.gz    G;   ExtraFileOptions  W   G;# Dialog script for uvcoords automatically generated 10/05/07 13:36:11

{
    name	uvcoords
    script	uvcoords
    label	UVcoords

    signature	"Default Inputs"	default	{ }

    help {
	""
    }

}
# Automatically generated script: Friday October 05, 13:36
\set noalias = 1
#
#  Creation script for uvcoords operator
#

if ( "$arg1" == "" ) then
    echo This script is intended as a creation script
    exit
endif

# Node $arg1 (Vop/uvcoords)
opspareds "" $arg1
opexprlanguage -s hscript $arg1
ParmsFromVfl := 1;
PrefixDroppedParmName := 0;
UseDSParms := 1;
ForbidOutsideParms := 1;
LockContents := 1;
CheckExternal := 1;
GzipContents := 1;
MakeDefault := 1;
PrefixDroppedParmLabel := 0;
UnlockOnCreate := 1;
<?xml version="1.0" encoding="UTF-8"?>
<shelfDocument>
  <!-- This file contains definitions of shelves, toolbars, and tools.
 It should not be hand-edited when it is being used by the application.
 Note, that two definitions of the same element are not allowed in
 a single file. -->

  <tool name="uvcoords" label="UVcoords" icon="VOP_uvcoords">
    <toolSubmenu>ShadingUV</toolSubmenu>
    <script scriptType="python"><![CDATA[]]></script>
  </tool>
</shelfDocument>
      []o6k+<mDQ0`Omڗaْ!Qnӡ?ayױd[7C0N$ιȋ~DQ~OXroJ>+ؖ㶂uVդvRl뉞Bwtm(](+K]Yunpqb,D$NXtf5]n9Kn\-Ѹ3-Krh}=nݯT]$DW9g|7ĦXjZ2
w`ܫJ??5*`X'ڨ|3r6-X5vq8Q6\7=!R(H|(Çe1rgS6Wem˲ɋTxsng'ׁi*_!TU5|S{xJw땪4|VGv!
2l-;1
P:ƉΆBa((z"(qtG\diP9 +?ZW=?5(9_{_W]]ZUZ\tݳ&-z)z&31'LW1ص\MbƘ*a9HW'[N.w8EbT`F}_Fb=?|`(l<VFjH3U?gyM"j
@)m$?e,w{f4ˏ.c@0KxYĶKp^TWkS8>Tx]pe~4$P5jꖕ
Wp{Y6]?
c#0lM4ltdej͔jkSvX)Gx|,Hwm|PjM8q^	FAEt9b$#:C~xW-)!]<1nCc"Ei[o6=3qagNnj狁I_8k~x">؅<)wF񣅇Ҿ%{Iv)F^8RSB}(=!SaUBGҷ76o#SFIv3-IAq<1xOj!#EEak` J
<{G1S%^88
8/2	"/Z୴wfj=$=xazFA>u[,eW1a-~0[VjYzK#0KYZbF`04~n(6DF'PÆHEN.DN0DN2DN4DN6DN8~CHCHCHCHCHCHCHCHCHC9P 9P 9P 9P 9P 9P 9P 9P 9P 9P ^9P 9P 9P 9P QN)))))1CHCHCHCHCHdcF9!
D"
D"
D"
S"S"S"S"Srtݿ{*X|˶W#F]0q__*D$]{C"X)9Zrݓ1(uWڇ(YݛgV-8(ڌo{穸wիW qԑ6      INDX              DialogScript      xLt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

{
    name	"mulconst"
    script	"mulconst"
    label	"mulconst"


    code {
	"$scaled = $val * $mulconst;"
    }

    input	float	val		"Input Value"
    output	float	scaled		"Input Value * Constant"
    signature	"1D Float Values"	default	{ }
    signature	"1D Integer Values"	i	{ int int }
    signature	"3D Vector Values"	v	{ vector vector }
    signature	"3D Point Values"	p	{ point point }
    signature	"3D Normal Values"	n	{ normal normal }
    signature	"3D Color Values"	c	{ color color }
    signature	"3D BSDF Values"	b	{ bsdf bsdf }
    signature	"4D Values"		v4	{ vector4 vector4 }
    signature	"3x3 Matrix "		m3	{ matrix3 matrix3 }
    signature	"4x4 Matrix "		m4	{ matrix matrix }

    signature	"1D Uniform Float"	uf	{ ufloat ufloat }
    signature	"3D Uniform Vector"	uv	{ uvector uvector }
    signature	"3D Uniform Point"	up	{ upoint upoint }
    signature	"3D Uniform Normal"	un	{ unormal unormal }
    signature	"3D Uniform Color"	uc	{ ucolor ucolor }

    parm {
	name	mulconst
	label	"Multiplier"
	type	float
	size	1
	default	{ 1.0 }
    }
}

INDX              DialogScript      JL?X   CreateScript  J   L?X   TypePropertiesOptions  K   L?X   Help  L    L?X   Tools.shelf  L  tL?X   PythonModule  P  L?X   ExtraFileOptions  i   zL?X# Dialog script for physicalsss automatically generated 07/15/10 14:51:20

{
    name	physicalsss
    script	physicalsss
    label	"Physical SSS"

    outercode {
	"#include <voptype.h>"
	"#include <voplib.h>"
	"#include <math.h>"
	"#include <physicalsss.h>"
    }

    code {
	"VOPvector $_p  = ($isconnected_p != 0)      ? $p            : P;"
	"VOPvector $bp  = ($isconnected_blurp != 0)  ? $blurp        : getblurP(0);"
	"VOPnormal $_n  = ($isconnected_n != 0)      ? $n            : normalize(N);"
	"VOPfloat  $eta = max(0.0, $oior / $iior);"
	"VOPvector $_t  = ($isconnected_t != 0)      ? normalize($t) : normalize(refract(normalize(I), $_n, $eta));"
	""
	"VOPfloat  $_g       = clamp($g, -0.99, 0.99);"
	"VOPvector $_absrp   = 1.0;"
	"VOPvector $scatr    = 0.0;"
	"VOPfloat  $_kt      = 0.0;"
	""
	"if ($isconnected_kt != 0)"
	"{"
	"    $_kt = $kt;"
	"    $kr = 1.0 - $_kt;"
	"}"
	"else"
	"    fresnel(-$_t, -$_n, 1.0 / $eta, $kr, $_kt);"
	""
	"$clr = 0;"
	"$opacity = 1;"
	"$singleclr = 0;"
	"$multiclr = 0;"
	"$multiloclclr = 0;"
	"$multiglobclr = 0;"
	""
	"if ($mode == 1) // physical mode"
	"{"
	"    $scatr = $redscatr / ((1.0 - $_g) * $scatrscale);"
	"    $_absrp = $absrp / $scatrscale;"
	"}"
	"else // artist mode"
	"{"
	"    VOPvector $_redscatr, $redext, $redalbedo, $rd;"
	""
	"    // Compute the diffuse reflectance (diffuseclr is a reflectivity)."
	"    $rd = $diffuseclr * $diffuseclr;"
	"    $rd = clamp($rd, { 0.0, 0.0, 0.0 }, { 1.0, 1.0, 1.0 });"
	""
	"    // Compute the reduced albedo."
	"    $redalbedo = vop_sss_reduced_albedo($rd, $eta, 1e-9);"
	"    $redalbedo = clamp($redalbedo, { 0.0, 0.0, 0.0 }, { 0.99999999, 0.99999999, 0.99999999 });"
	""
	"    // Compute the absorption and scattering coefficients."
	"    $redext = luminance($attenclr);"
	"    $redext *= $redext * max(0.0, $attendensity);"
	"    $redext /= max($attenclr, { 1e-16, 1e-16, 1e-16 });"
	"    $_redscatr = $redalbedo * $redext;"
	"    $_absrp = $redext - $_redscatr;"
	"    $scatr = $_redscatr * (1.0 / (1.0 - $_g));"
	"}"
	""
	"if (isshadowray())"
	"    $opacity = vop_sss_opacity($_p, $_n, normalize(I), $_absrp, $scatr);"
	"else"
	"{"
	"    if ($singlesss)"
	"    {"
	"        $singleclr = vop_sss_single("
	"            $_p, $_n, $_t, $_absrp, $scatr, $_g, $eta, $optsingle, $nsingle);"
	"        $singleclr *= $_kt;"
	"    }"
	""
	"    if ($multimodel != 0)"
	"    {"
	"        $multiclr = vop_sss_multi("
	"            $bp, $_n, $_absrp, $scatr, $_g, $eta, $multimodel, $loclradscale, $loclquality,"
	"            $globquality, $optmulti, $pcmode, $pcname, $pcsavepos, $pcsaveirrad,"
	"            $pcautosize, $pcautofactor, $pcsize, 0.1, $pcfilter, $pcfiltersize,"
	"            $multiloclclr, $multiglobclr);"
	"        $multiclr *= $_kt;"
	"    }"
	""
	"    $clr = $singleclr + $multiclr;"
	"}"
    }

    input	vector	p	Position
    input	vector	blurp	"Blur Position"
    input	normal	n	Normal
    input	vector	t	Transmitted
    input	float	kt	"Fresnel Transmission"
    input	int	mode	"Parameter Mode"
    input	color	diffuseclr	"Diffuse Color"
    input	float	attendensity	"Attenuation Density"
    input	color	attenclr	"Attenuation Color"
    input	vector	absrp	"Absorption Coefficient"
    input	vector	redscatr	"Reduced Scattering Coefficient"
    input	float	scatrscale	"Scattering Scale"
    input	float	g	"Scattering Phase"
    input	float	iior	"Inside IOR"
    input	float	oior	"Outside IOR"
    input	int	singlesss	"Single Scattering"
    input	int	optsingle	"Optimize Single Scattering For Secondary Rays"
    input	int	nsingle	"Single Scattering Samples"
    input	int	multimodel	"Multiple Scattering Model"
    input	int	optmulti	"Optimize Multiple Scattering For Secondary Rays"
    input	float	loclradscale	"Local Radius Scale"
    input	float	loclquality	"Local Light Quality"
    input	float	globquality	"Global Light Quality"
    input	int	pcmode	"Point Cloud Mode"
    input	string	pcname	"Point Cloud"
    input	int	pcsavepos	"Cache Positions/Normals/Areas"
    input	int	pcsaveirrad	"Cache Irradiance"
    input	int	pcautosize	"Auto Point Cloud Size"
    input	float	pcautofactor	"Auto Size Factor"
    input	int	pcsize	"Point Cloud Size"
    input	int	pcfilter	"Filter Multiple Scattering"
    input	int	pcfiltersize	"Filter Samples"
    output	color	clr	Color
    output	color	opacity	Opacity
    output	color	singleclr	"Single Scattering Color"
    output	color	multiclr	"Multiple Scattering Color"
    output	color	multiloclclr	"Multiple Scattering Color (Local)"
    output	color	multiglobclr	"Multiple Scattering Color (Global)"
    output	float	kr	"Fresnel Reflectance"
    inputflags	p	0
    inputflags	blurp	0
    inputflags	n	0
    inputflags	t	0
    inputflags	kt	0
    inputflags	mode	1
    inputflags	diffuseclr	0
    inputflags	attendensity	0
    inputflags	attenclr	0
    inputflags	absrp	1
    inputflags	redscatr	1
    inputflags	scatrscale	1
    inputflags	g	0
    inputflags	iior	0
    inputflags	oior	0
    inputflags	singlesss	0
    inputflags	optsingle	1
    inputflags	nsingle	1
    inputflags	multimodel	0
    inputflags	optmulti	1
    inputflags	loclradscale	1
    inputflags	loclquality	1
    inputflags	globquality	1
    inputflags	pcmode	1
    inputflags	pcname	1
    inputflags	pcsavepos	1
    inputflags	pcsaveirrad	1
    inputflags	pcautosize	1
    inputflags	pcautofactor	1
    inputflags	pcsize	1
    inputflags	pcfilter	1
    inputflags	pcfiltersize	1
    signature	"Default Inputs"	default	{ vector vector normal vector float int color float color vector vector float float float float int int int int int float float float int string int int int float int int int color color color color color color float }

    outputoverrides	default
    {
	___begin	auto
			(0,0,0)
	___begin	auto
			(0,0,0)
	___begin	auto
			(0,0,0)
	___begin	auto
			(0,0,0)
	___begin	auto
			(0,0,0)
	___begin	auto
			(0,0,0)
	___begin	auto
			(0)
    }

    help {
	""
    }

    parm {
	name	"mode"
	label	"Parameter Mode"
	type	ordinal
	default	{ "0" }
	help	"Sub-surface scattering properties can be given in \"Artist\" or \"Physical\" mode.  This chooser selects which of the two parameterizations to use."
	menu	{
	    "0"	"Artist"
	    "1"	"Physical"
	}
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"diffuseclr"
	label	"Diffuse Color"
	type	color
	size	3
	default	{ "0.9" "0.9" "0.9" }
	help	"The amount of light that is reflected for each color component.  This color will tend to dominate areas of the surface that are lit."
	disablewhen	"{ mode != 0 }"
	range	{ 0! 1! }
	export	none
	parmtag	{ "script_callback_language" "python" }
	parmtag	{ "script_callback" "kwargs['node'].hdaModule().updatePhysical(kwargs['node'])" }
	parmtag	{ "export_disable" "1" }
    }
    parm {
	name	"attendensity"
	label	"Attenuation Density"
	type	float
	default	{ "1" }
	help	"Controls how fast light is attenuated.  Higher densities correspond to faster attenuation."
	disablewhen	"{ mode != 0 }"
	range	{ 0! 10 }
	export	none
	parmtag	{ "script_callback_language" "python" }
	parmtag	{ "script_callback" "kwargs['node'].hdaModule().updatePhysical(kwargs['node'])" }
    }
    parm {
	name	"attenclr"
	label	"Attenuation Color"
	type	color
	size	3
	default	{ "1" "1" "1" }
	help	"Color that the light will tend towards as it is attenuated.  This color will typically dominate areas of the surface that are in shadow."
	disablewhen	"{ mode != 0 }"
	range	{ 0! 1! }
	export	none
	parmtag	{ "script_callback_language" "python" }
	parmtag	{ "script_callback" "kwargs['node'].hdaModule().updatePhysical(kwargs['node'])" }
    }
    parm {
	name	"absrp"
	label	"Absorption Coefficient (RGB)"
	type	vector
	size	3
	default	{ "0.0131039" "0.0131039" "0.0131039" }
	help	"Probability per unit distance that an absorption event will occur.  Since the probability is per unit distance, it may range from 0 to infinity."
	disablewhen	"{ mode != 1 }"
	range	{ 0! 1 }
	export	none
	parmtag	{ "script_callback_language" "python" }
	parmtag	{ "script_callback" "kwargs['node'].hdaModule().updateArtist(kwargs['node'])" }
    }
    parm {
	name	"redscatr"
	label	"Reduced Scattering Coefficient (RGB)"
	type	vector
	size	3
	default	{ "25.4246" "25.4246" "25.4246" }
	help	"Probability per unit distance that a scattering event will occur, assuming isotropic scattering.  Since the probability is per unit distance, the value may range from 0 to infinity."
	disablewhen	"{ mode != 1 }"
	range	{ 0! 1 }
	export	none
	parmtag	{ "script_callback_language" "python" }
	parmtag	{ "script_callback" "kwargs['node'].hdaModule().updateArtist(kwargs['node'])" }
    }
    parm {
	name	"scatrscale"
	label	"Scattering Scale"
	type	float
	default	{ "1" }
	help	"This parameter adjusts the scale of the scattering/absorption events.  Values less than 1 will cause the scattering to become more localized and the surface to look more opaque, while values greater than 1 will cause the scattering to become less localized and the surface to look more transparent."
	disablewhen	"{ mode != 1 }"
	range	{ 0! 1 }
	export	none
	parmtag	{ "script_callback_language" "python" }
	parmtag	{ "script_callback" "kwargs['node'].hdaModule().updateArtist(kwargs['node'])" }
    }
    parm {
	name	"g"
	label	"Scattering Phase"
	type	float
	default	{ "0" }
	help	"Phase function parameter that controls the nature of the scattering (forward, backward, isotropic, etc.).  The parameter must lie in the range [-1, 1], with -1 indicating full backward scattering, 0 indicating isotropic scattering, and 1 indicating full forward scattering."
	range	{ -1! 1! }
	export	none
    }
    parm {
	name	"iior"
	label	"Inside IOR"
	type	float
	default	{ "1.3" }
	help	"The absolute index of refraction of the surface medium."
	range	{ 0! 10 }
	export	none
    }
    parm {
	name	"oior"
	label	"Outside IOR"
	type	float
	default	{ "1" }
	help	"Absolute index of refraction of the medium outside of the surface."
	range	{ 0! 10 }
	export	none
    }
    group {
	name	"single_multi"
	label	"Single Scattering"

	parm {
	    name	"singlesss"
	    label	"Enable Single Scattering"
	    type	toggle
	    default	{ "1" }
	    help	"Enable/disable contribution from light that scatters exactly once in the surface.  Certain types of surfaces (such as skin) gain little contribution from single scattering and so disabling this option will reduce computation time with little impact on accuracy."
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"optsingle"
	    label	"Optimize Secondary Rays"
	    type	toggle
	    default	{ "0" }
	    help	"When enabled, single scattering is computed using a BRDF approximation for secondary rays.  Enabling this option reduces computation time at the expense of accuracy."
	    disablewhen	"{ singlesss == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"nsingle"
	    label	"Samples"
	    type	integer
	    default	{ "1" }
	    help	"Quality control for single scattering.  Increase the sample count to reduce noise at the expense of computation time."
	    disablewhen	"{ singlesss == 0 }"
	    range	{ 0! 10 }
	    export	none
	}
    }

    group {
	name	"single_multi_1"
	label	"Multiple Scattering"

	parm {
	    name	"multimodel"
	    label	"Model"
	    type	ordinal
	    default	{ "3" }
	    help	"Control the way in which multiple scattering is calculated.  The \"Local BRDF\" option is the fastest yet least accurate model.  It produces a sharper looking surface than the other models, but may be useful for look development.  It avoids the need for a point cloud and is best suited for highly dense surfaces.  The \"Global Point Cloud\" option is the slowest yet most accurate model.  It takes into account light arriving at all different parts of the surface when shading.  This model is more subject to low frequency noise (blotches) than the other models and requires higher density point clouds.  The \"Local And Global\" option is usually the best choice for final renders.  It strikes the best balance between speed and accuracy.  It requires lower density point clouds than the \"Global Point Cloud\" model and reduces low frequency noise."
	    menu	{
		"0"	"None"
		"1"	"Local BRDF"
		"2"	"Global Point Cloud"
		"3"	"Local And Global"
	    }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"optmulti"
	    label	"Optimize Secondary Rays"
	    type	toggle
	    default	{ "0" }
	    help	"When enabled, multiple scattering is computed using a BRDF approximation for secondary rays.  Enabling this option reduces computation time at the expense of accuracy."
	    disablewhen	"{ multimodel == 0 } { multimodel == 1 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"loclradscale"
	    label	"Local Radius Scale"
	    type	float
	    default	{ "1" }
	    help	"Controls the contribution from the local BRDF in the \"Local And Global\" model.  Smaller values will reduce the area of local integration, which will reduce sharpness and possibly introduce low frequency noise.  Higher values will increase sharpness and reduce low frequency noise."
	    disablewhen	"{ multimodel != 3 }"
	    range	{ 0! 2 }
	    export	none
	}
	parm {
	    name	"loclquality"
	    label	"Local Light Quality"
	    type	float
	    default	{ "0.1" }
	    help	"Controls the quality of area light sampling for the local BRDF term."
	    disablewhen	"{ multimodel == 0 } { multimodel == 2 }"
	    range	{ 0! 1 }
	    export	none
	}
	parm {
	    name	"globquality"
	    label	"Global Light Quality"
	    type	float
	    default	{ "1" }
	    help	"Controls the quality of area light sampling for the global point cloud term."
	    disablewhen	"{ multimodel == 0 } { multimodel == 1 }"
	    range	{ 0! 10 }
	    export	none
	}
	parm {
	    name	"pcmode"
	    label	"Point Cloud Mode"
	    type	ordinal
	    default	{ "0" }
	    help	"Controls how the shader generates a point cloud.  The simplest option is to select \"Generate At Render Time\".  This will create a new point cloud for every render.  To reduce computation time, you can first use \"Write To File\" mode and then re-use the point cloud using \"Read From File\" mode on subsequent renders.  This is also the recommended approach when rendering animations because the shader will smoothly interpolate the point cloud across frames.  The exception to this is when the model's topology changes (two joined polygons are separated, for example).  In this case, a new point cloud must be generated.  Note that in \"Write To File\" mode, the file will be overwritten if it already exists.  Cancelling a render before it completes in \"Write To File\" mode may result in an unusable point cloud file."
	    disablewhen	"{ multimodel == 0 } { multimodel == 1 }"
	    menu	{
		"0"	"Generate At Render Time"
		"1"	"Read From File"
		"2"	"Write To File"
	    }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"pcname"
	    label	"Point Cloud"
	    type	file
	    default	{ "$HIP/${HIPNAME}_${OS}.pc" }
	    help	"Path to the point cloud file that will be written to in \"Write To File\" mode or read from in \"Read From File\" mode."
	    disablewhen	"{ multimodel == 0 } { multimodel == 1 } { pcmode == 0 }"
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "script_callback_language" "python" }
	    parmtag	{ "script_callback" "kwargs['node'].hdaModule().checkFileName(kwargs['node'])" }
	}
	parm {
	    name	"pcsavepos"
	    label	"Cache Positions/Normals/Areas"
	    type	toggle
	    default	{ "0" }
	    help	"Causes point positions, normals, and areas to be written to the point cloud.  Doing this may improve performance when reading point clouds with many points; however, the positions, normals, and areas are stored in camera space and are only valid with static geometry and a static camera.  If either the geometry or camera is transformed, the point cloud will be invalid and you will need to generate a new one.  This feature is also useful for visualizing the distribution of points over the surface."
	    disablewhen	"{ multimodel == 0 } { multimodel == 1 } { pcmode != 2 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"pcsaveirrad"
	    label	"Cache Irradiance"
	    type	toggle
	    default	{ "0" }
	    help	"Causes irradiance (light information) to be written to the point cloud.  This will improve performance when reading point clouds with many points; however, irradiance caching should only be used with static scenes.  If the camera, lights, or any objects are transformed, the point cloud becomes invalid and you will need to create a new one."
	    disablewhen	"{ multimodel == 0 } { multimodel == 1 } { pcmode != 2 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"pcautosize"
	    label	"Auto Point Cloud Size"
	    type	toggle
	    default	{ "1" }
	    help	"When this option is enabled, the shader will automatically compute the number of points to use in the point cloud, based on the scattering properties of the surface.  You may acheive faster renders or increased accuracy by disabling this option and manually entering a point cloud size."
	    disablewhen	"{ multimodel == 0 } { multimodel == 1 } { pcmode == 1 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"pcautofactor"
	    label	"Auto Size Factor"
	    type	float
	    default	{ "1" }
	    help	"When \"Auto Point Cloud Size\" is enabled, the point cloud size is scaled by this factor."
	    disablewhen	"{ multimodel == 0 } { multimodel == 1 } { pcmode == 1 } { pcautosize == 0 }"
	    range	{ 0! 2 }
	    export	none
	}
	parm {
	    name	"pcsize"
	    label	"Point Cloud Size"
	    type	integer
	    default	{ "10000" }
	    help	"Number of points to generate in the point cloud.  Higher point counts will increase quality at the expense of computation time."
	    disablewhen	"{ multimodel == 0 } { multimodel == 1 } { pcmode == 1 } { pcautosize == 1 }"
	    range	{ 0! 1e+06 }
	    export	none
	}
	parm {
	    name	"pcfilter"
	    label	"Filter Multiple Scattering"
	    type	toggle
	    default	{ "1" }
	    help	"Enabling this option reduces computation time, at the expense of accuracy, by caching results of the multiple scattering calculation on the point cloud's points.  These cached values are then filtered over the surface.  When this option is enabled, the \"Multiple Scattering Color (Global)\" output of this VOP must be exported via a Parameter VOP.  To do this, create a Parameter VOP, set its \"Parameter Type\" to \"Color\", set its \"Parameter Name\" to \"multiglobclr\", set \"Export\" to \"Always\", and connect its input to this VOPs \"Multiple Scattering Color (Global)\" output."
	    disablewhen	"{ multimodel == 0 } { multimodel == 1 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"pcfiltersize"
	    label	"Filter Samples"
	    type	integer
	    default	{ "50" }
	    help	"Number of point cloud points to filter (see \"Filter Multiple Scattering\").  Increasing the point count will produce a more blurry result, while decreasing the point count will produce a more blotchy result."
	    disablewhen	"{ multimodel == 0 } { multimodel == 1 } { pcfilter == 0 }"
	    range	{ 0! 100 }
	    export	none
	}
    }

}
# Automatically generated script: Thursday July 15, 14:51 2010
\set noalias = 1
#
#  Creation script for physicalsss operator
#

if ( "$arg1" == "" ) then
    echo This script is intended as a creation script
    exit
endif

# Node $arg1 (Vop/physicalsss)
opexprlanguage -s hscript $arg1
ParmsFromVfl := 0;
PrefixDroppedParmName := 1;
UseDSParms := 1;
ForbidOutsideParms := 1;
LockContents := 1;
SaveSpareParms := 0;
CheckExternal := 1;
GzipContents := 1;
MakeDefault := 1;
PrefixDroppedParmLabel := 1;
UnlockOnCreate := 0;
<?xml version="1.0" encoding="UTF-8"?>
<shelfDocument>
  <!-- This file contains definitions of shelves, toolbars, and tools.
 It should not be hand-edited when it is being used by the application.
 Note, that two definitions of the same element are not allowed in
 a single file. -->

  <tool name="$HDA_TABLE_$HDA_NAME" label="$HDA_LABEL" icon="VOP_physicalsss">
    <toolMenuContext name="viewer">
      <contextNetType>VOP</contextNetType>
    </toolMenuContext>
    <toolMenuContext name="pop_viewer">
      <contextNetType>VOP</contextNetType>
    </toolMenuContext>
    <toolMenuContext name="network">
      <contextOpType>$HDA_TABLE/$HDA_NAME</contextOpType>
    </toolMenuContext>
    <toolSubmenu>Digital Assets</toolSubmenu>
    <script scriptType="python"><![CDATA[import voptoolutils

voptoolutils.genericTool(kwargs, '$HDA_NAME')]]></script>
  </tool>
</shelfDocument>
import math

def checkFileName(node):
    pcmode = node.parm("pcmode").evalAsString()
    pcname = node.parm("pcname").evalAsString()
    if (pcmode == "1" or pcmode == "2") and pcname == "":
        hou.ui.displayMessage("A point cloud file must be supplied.", buttons=("Ok", "Cancel"))
        node.parm("pcname").revertToDefaults()

# This should match the implementation in VEX's physicalsss.h
def getDiffuseFresnelRatio(eta):
    fdr = max(1e-6, min(1.0 - 1e-6, getDiffuseFresnelReflectance(eta)))
    return (1.0 + fdr) / (1.0 - fdr)

# This should match the implementation in VEX's physicalsss.h
def getDiffuseFresnelReflectance(eta):
    if eta < 1.0:
        fdr = -0.43999
        fdr += 0.7099 / eta
        fdr -= 0.3319 / (eta * eta)
        fdr += 0.0636 / (eta * eta * eta)
    else:
        fdr = -1.4399 / (eta * eta)
        fdr += 0.7099 / eta
        fdr += 0.6681
        fdr += 0.0636 * eta
    return max(0.0, min(1.0, fdr))

# This should match the implementation in VEX's physicalsss.h
def getReducedAlbedo(rd, eta, threshold):
    x1 = hou.Vector3()
    x2 = hou.Vector3()
    x3 = hou.Vector3()
    f1 = hou.Vector3()
    f2 = hou.Vector3()

    fdr_ratio = getDiffuseFresnelRatio(1.0 / eta)

    for i in range(3):
        x1[i] = 0.0
        x2[i] = 1.0

    for i in range(3):
        f1[i] = integrateRdBrdf(x1[i], fdr_ratio) - rd[i]
        f2[i] = integrateRdBrdf(x2[i], fdr_ratio) - rd[i]
        niterations = 0

        while niterations < 30 and (f2[i] > threshold or f2[i] < -threshold):
            x3[i] = x2[i] - f2[i] * ((x2[i] - x1[i]) / (f2[i] - f1[i]))
            x1[i] = x2[i]
            x2[i] = max(0.0, min(1.0, x3[i]))
            f1[i] = f2[i]
            f2[i] = integrateRdBrdf(x2[i], fdr_ratio) - rd[i]
            niterations += 1

    return x2

# This should match the implementation in VEX's physicalsss.h
def integrateRdBrdf(redalbedo, a):
    b = math.sqrt(3.0 * (1.0 - redalbedo))
    return (redalbedo / 2.0) * (1.0 + math.exp(-(4.0 / 3.0) * a * b)) * math.exp(-b)

# This should match the VEX implementation.
def luminance(color):
    return 0.299 * color[0] + 0.587 * color[1] + 0.114 * color[2]

def normalize(x):
    return x * (1.0 / x.length())

def updateArtist(node):
    # Read the "Physical" mode parameters.
    absrp = hou.Vector3 (
        node.parm("absrpx").evalAsFloat(),
        node.parm("absrpy").evalAsFloat(),
        node.parm("absrpz").evalAsFloat()
        )
    redscatr = hou.Vector3 (
        node.parm("redscatrx").evalAsFloat(),
        node.parm("redscatry").evalAsFloat(),
        node.parm("redscatrz").evalAsFloat()
        )
    scatrscale = node.parm("scatrscale").evalAsFloat()
    iior = node.parm("iior").evalAsFloat()
    oior = node.parm("oior").evalAsFloat()

    # Scale the absorption and reduced scattering
    absrp *= 1.0 / max(1e-16, scatrscale)
    redscatr *= 1.0 / max(1e-16, scatrscale)

    # Compute the attenuation color.
    lum = hou.Vector3()
    lum[0] = luminance(hou.Vector3(1.0, 0.0, 0.0))
    lum[1] = luminance(hou.Vector3(0.0, 1.0, 0.0))
    lum[2] = luminance(hou.Vector3(0.0, 0.0, 1.0))

    redext = redscatr + absrp
    denominator = 1.0
    for i in range(3):
        denominator *= lum[i] * redext[(i + 1) % 3] * redext[(i + 2) % 3]
    denominator *= denominator

    attenclr = hou.Vector3()
    for i in range(3):
        attenclr[i] = redext[(i + 1) % 3] * redext[(i + 2) % 3]
        attenclr[i] *= attenclr[i] * redext[i]
        attenclr[i] = max(1e-16, attenclr[i])

    attenclr *= 1.0 / max(1e-16, denominator)
    attenclr = normalize(attenclr)

    # Compute the attenuation density.
    attendensity = redext.length()
    attendensity *= attenclr[0] * attenclr[1] * attenclr[2]

    denominator = 0.0
    for i in range(3):
        factor = attenclr[(i + 1) % 3] * attenclr[(i + 2) % 3]
        factor *= factor
        denominator += factor
    denominator = math.sqrt(denominator)
    denominator *= luminance(attenclr) * luminance(attenclr)
    attendensity /= max(1e-16, denominator)

    # Compute the diffuse reflectance (rd).
    fdr_ratio = getDiffuseFresnelRatio(iior / oior)
    rd = hou.Vector3()
    for i in range(3):
        if redext[i] == 0.0:
            redalbedo = 0.0
        else:
            redalbedo = redscatr[i] / redext[i]
        redalbedo = min(1.0 - 1e-6, redalbedo)
        rd[i] = integrateRdBrdf(redalbedo, fdr_ratio)

    # Compute the diffuse reflectivity.
    diffuseclr = hou.Vector3()
    for i in range(3):
        diffuseclr[i] = math.sqrt(rd[i])

    # Update the "Artist" mode parameters.
    node.parm("diffuseclrr").set(diffuseclr[0])
    node.parm("diffuseclrg").set(diffuseclr[1])
    node.parm("diffuseclrb").set(diffuseclr[2])
    node.parm("attendensity").set(attendensity)
    node.parm("attenclrr").set(attenclr[0])
    node.parm("attenclrg").set(attenclr[1])
    node.parm("attenclrb").set(attenclr[2])

def updatePhysical(node):
    # Read the "Artist" mode parameter values.
    diffuseclr = hou.Vector3 (
        node.parm("diffuseclrr").evalAsFloat(),
        node.parm("diffuseclrg").evalAsFloat(),
        node.parm("diffuseclrb").evalAsFloat()
        )
    attendensity = node.parm("attendensity").evalAsFloat()
    attenclr = hou.Vector3 (
        node.parm("attenclrr").evalAsFloat(),
        node.parm("attenclrg").evalAsFloat(),
        node.parm("attenclrb").evalAsFloat()
        )
    iior = node.parm("iior").evalAsFloat()
    oior = node.parm("oior").evalAsFloat()

    # Compute the reduced albedo.
    rd = hou.Vector3()
    for i in range(3):
        rd[i] = diffuseclr[i] * diffuseclr[i]
        rd[i] = max(0.0, min(1.0, rd[i]))

    redalbedo = getReducedAlbedo(rd, oior / iior, 1e-9)
    for i in range(3):
        redalbedo[i] = max(0.0, min(0.99999999, redalbedo[i]))

    # Compute the reduced extinction.
    numerator = luminance(attenclr)
    numerator *= numerator * max(0.0, attendensity)
    redext = hou.Vector3(numerator, numerator, numerator)
    for i in range(3):
        redext[i] /= max(1e-16, attenclr[i])

    # Compute the absorption and reduced scattering coefficients for "Physical" mode.
    redscatr = hou.Vector3()
    for i in range(3):
        redscatr[i] = redalbedo[i] * redext[i]
    absrp = redext - redscatr

    # Update the "Phyiscal" mode parameters.
    node.parm("absrpx").set(absrp[0])
    node.parm("absrpy").set(absrp[1])
    node.parm("absrpz").set(absrp[2])
    node.parm("redscatrx").set(redscatr[0])
    node.parm("redscatry").set(redscatr[1])
    node.parm("redscatrz").set(redscatr[2])
    node.parm("scatrscale").set(1.0)    PythonModule/IsExpr        PythonModule/IsPython       PythonModule/IsScript       PythonModule/Source     INDX              DialogScript      KN=   CreateScript    KNE   TypePropertiesOptions     KN=   Help      KN=   Tools.shelf    nKN=   Contents.gz  `  KNE   ExtraFileOptions  L   KN=# Dialog script for computetan automatically generated 01/13/10 16:40:28

{
    name	computetan
    script	computetan
    label	"Compute Tangents"

    outercode {
	"#include \"voplib.h\""
    }

    input	string	tstyle	"Tangent Style"
    input	vector	uv	Parameter
    input	vector	N	"Surface Normal"
    input	vector	utan	"U Tangent"
    input	vector	vtan	"V Tangent"
    signature	"Default Inputs"	default	{ }

    help {
	""
    }

    parm {
	name	"tstyle"
	label	"Tangent Style"
	type	string
	default	{ "geo" }
	menu	{
	    "geo"	"Use Geometric Tangents"
	    "world"	"Intrinsic World Space"
	    "object"	"Intrinsic Object Space"
	    "uv"	"Compute From UV"
	    "inputs"	"Use Connected utan, vtan"
	}
	range	{ 0 1 }
	export	none
    }
}
# Automatically generated script: Wednesday January 13, 17:15
\set noalias = 1
#
#  Creation script for computetan operator
#

if ( "$arg1" == "" ) then
    echo This script is intended as a creation script
    exit
endif

# Node $arg1 (Vop/computetan)
opexprlanguage -s hscript $arg1
ParmsFromVfl := 0;
PrefixDroppedParmName := 1;
UseDSParms := 1;
ForbidOutsideParms := 1;
LockContents := 1;
SaveSpareParms := 0;
CheckExternal := 1;
GzipContents := 1;
MakeDefault := 1;
PrefixDroppedParmLabel := 1;
UnlockOnCreate := 0;
<?xml version="1.0" encoding="UTF-8"?>
<shelfDocument>
  <!-- This file contains definitions of shelves, toolbars, and tools.
 It should not be hand-edited when it is being used by the application.
 Note, that two definitions of the same element are not allowed in
 a single file. -->

  <tool name="$HDA_TABLE_$HDA_NAME" label="$HDA_LABEL" icon="VOP_computetan">
    <toolMenuContext name="viewer">
      <contextNetType>VOP</contextNetType>
    </toolMenuContext>
    <toolMenuContext name="pop_viewer">
      <contextNetType>VOP</contextNetType>
    </toolMenuContext>
    <toolMenuContext name="network">
      <contextOpType>$HDA_TABLE/$HDA_NAME</contextOpType>
    </toolMenuContext>
    <toolSubmenu>ShadingUV</toolSubmenu>
    <script scriptType="python"><![CDATA[import voptoolutils

voptoolutils.genericTool(kwargs, '$HDA_NAME')]]></script>
  </tool>
</shelfDocument>
      ]n^iݤ(P؁BqHr4M\Eƒ!+n]Dd\bO_}=3;yekmז$ȝ3ߜ|g.go^Oz3O*4L2l[FLnvx,gǨ4Xxi4vgl"X;?g;
vf4X; ^D;G56¥~rH)PEq5K˙;z+~~_AONU:/V#B}G`+>g~*|>|9+}]SUC3di5(/"7RٝOXPwzi/RH_
^+3YOU?οw>O'?z ZNcXgN2_*	/Yo*0bOTfc"3`LٶơGK/fAf^4]؉=s=EDpE!.?}4KBh6; 2$]7fvXN0`PBOa==e-F<"Ϳ_9tc7f@3ن28m"X8g. t[%}ɶ޲XEgsKV9ۂȿTT	{*E<Jx 	T$Z)5oŗ~;wDDza72C`^E"dH"q
}'NḂ"E~z<c^d:? ϋ# D*zi BBSȵ
^ǁJ\p%(0`]Ƚ`QSTqk+/ո6Џf^^+.K{ߛC=*g9H.YMD&i֯h"զNDS'}4Z'ՓW4*ADz&PkDG6A6y$+}\iWs}1>G]6K^u$pUÖ 2ob`"=@Sb(QH
 }V) U
"Zy&VKIy)ocRD·ʊ楩$A	˕=ITWݧcØ(~AegZ_E=cuN憨Fd8ɜv%MuY6t&更6[_w0[bչz-8L)>Qa> <ƽ-6VQ &*s4/cYkHLsP^tW :&I셞;&+^uXs*3j	lr-jdqrWU1<rRlŜq9@4"dd^m:+k{"坊Z񮛲Q,>У\|/	-`E 7#pmC=t`D^,33Cv;:"7+sA"Ȃ-.v<b9 iy9\9Q$o*8t̮w~&>3y9kwĎ"K||%"x6y*GKw%RH<dA~ŗX0:.|0Ȃ0(7L&K0'*dte*1i\|(өȫn6hPKONT?2]ԧ'D@'ι.T j뺬0z;Qr*=43mH>Ph94ȾD
!\`j҆>ݤYt'gDa"3ދ4Rdn :+ ї:[Th@}Lh
3`S͆hQ$%G[hQND&`6OgȦ8GڭI+2/dS#wB"2""@=}8$r( pC	p9Pr( pC	p
HS	%b&@9P)`B		%b&@9P)`B		%b& L(s0RH1J L(s0RH1J L(s0PH1J L(s0RH1J L(s0RH19 L(s0RH1J L(`Έb&@9P)`B		2b&@9P)`B		%b&Ǳ}][%#C7ckܞc5lq6oCw4^-]BŇy8cbӆ0.0lʹ935 SYqZhYܴvð7ʫQFq(,1$:#bL觌qK"y#fhcԭa`<&QKQ9存yRiF-k|ͷ忳9.č!vč)6*jU#unNڌgƘ1`NRőriNTN @ޖrf[0_qcOУ.!^pS>}£K9t	w#|9+XSxbKpqx}vo7&#xv nM<xG o7&&^ϢgzWYl xQSTAӚj TA΋zR"f]RG#Kԛ\K,u\,Ro{-uCR"fPK5qHsRG,u\,Rov/ԑ'KKjvB䱅|nR\*hɚ(I@iruQLAb\m-n%RAb\m-n%RAc\m-n+&RAc\m-n̱]%W
:,K9jr%k
:,K9~r%
:,K9r%
:,K9r%
:,Yb%c|H[rÒ	Tiɘ,W7i\ݭ-oW79o=ajc7&7hF~"y9wN}L}{81N}u,yȖ5#U#zQm{բW6Zusc.s,u
ёZɼ	+or
NX`QW-lTU}T$ot#fYqʹMx:F6<5gF q5d-z$rHB+eTؠh0ik^Z0K{5ek1Onlm6msۦQ:B΍UxK#L3|9q(2nEEѫV>j2QAmz@(0Ֆiّ520܄G'&fo}Hb 񠥃%"iY{];Z5ćo|bu5iݛa3O]T&A6RI2zVeS2;}V%nU#m*sVސUo-8P5,n_E>P#icw{C<l.jd=|Xn ,y~_Ak~*e/d-,K[V1v˺5_UdT!0AA>]{{a
3ϖz|\=;^z'^ܮWhnܻv,E99~pݻw{1zs      INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

{
    name	"raybounce"
    script	"raybounce"
    label	"raybounce"


    code {
	"$raylevel = getraylevel();"
    }

    output	int	raylevel	"Ray Bounce Level"
}

INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"normalize"
    script	"normalize"
    label	"normalize"


    code {
	"$nvec = normalize($vec);"
    }

    input	normal	vec	"Input Vector"
    output	normal	nvec	"Normalized Vector"

    signature	"Normal Values"		default { }
    signature	"Point Values"		p  { point point }
    signature	"Vector Values"		v  { vector vector }
    signature	"Uniform Normal"	un { unormal unormal }
    signature	"Uniform Point"		up { upoint upoint }
    signature	"Uniform Vector"	uv { uvector uvector }

    group {
	name	"g0"
	label	"Defaults"
	VOP_VEC_PARM(vec,   "Input Normal",	1, 0, 0)
	VOP_VEC_PARM(vec_p, "Input Point",	1, 0, 0)
	VOP_VEC_PARM(vec_v, "Input Vector",	1, 0, 0)
    }
    group {
	name	"g1"
	label	"Uniform Defaults"
	VOP_VEC_PARM(vec_un, "Uniform Normal",	1, 0, 0)
	VOP_VEC_PARM(vec_up, "Uniform Point",	1, 0, 0)
	VOP_VEC_PARM(vec_uv, "Uniform Vector",	1, 0, 0)
    }
}
INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"inttovec"
    script	"inttovec"
    label	"inttovec"

    outercode {
	INCLUDE_VOPLIB
    }

    code {
	"$vec = set((float) $int1, (float) $int2, (float) $int3);"
    }

    output	vector	vec	"Output Vector"

    VOP_INT_INPUT_R(int1, "Component 1", 0, 0, 1)
    VOP_INT_INPUT_R(int2, "Component 2", 0, 0, 1)
    VOP_INT_INPUT_R(int3, "Component 3", 0, 0, 1)
}
INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

{
    name	"isshadow"
    script	"isshadow"
    label	"isshadow"


    code {
	"$isshadow = isshadowray();"
    }

    output	int	isshadow	"Is Shadow Ray"
}

INDX              DialogScript      L@   CreateScript    L@   TypePropertiesOptions     L@   Help      L@   Tools.shelf    tL@   ExtraFileOptions  e   L@# Dialog script for pbrspecular automatically generated 07/16/10 16:41:50

{
    name	pbrspecular
    script	pbrspecular
    label	"Physically Based Specular"

    outercode {
	"#include \"voplib.h\""
	""
	"// To avoid numerical issues due to division by 0"
	"#define SPEC_MIN_WIDTH 1e-3"
	""
	"// To avoid numerical issues due taking logarithms of a value close to 0."
	"// We'll blend with an exponent of 1 when the cosine is less than this"
	"// value."
	"#define SPEC_MIN_COSINE2 0.1"
	""
	"// Convert a highlight angle to an exponent to be passed to the phonglobe()"
	"// operation."
	"float"
	"pbrspecular_toexponent(float width)"
	"{"
	"    float       costheta2;"
	"    float       costheta2_clamped;"
	"    float       exponent;"
	""
	"    costheta2 = max(width, SPEC_MIN_WIDTH);"
	"    costheta2 = 1-costheta2*costheta2;"
	"    costheta2_clamped = max(costheta2, SPEC_MIN_COSINE2);"
	""
	"    exponent = -2*log(2)/log(costheta2_clamped) + 1;"
	"    if (costheta2 < 0.1)"
	"    {"
	"        exponent = lerp(1.0, exponent, costheta2 / SPEC_MIN_COSINE2);"
	"    }"
	""
	"    return exponent;"
	"}"
    }

    code {
	"vector $tnN = $isconnected_nN ? $nN : normalize(N);"
	"vector $tnI = $isconnected_nI ? $nI : normalize(I);"
	"vector $tnR = $isconnected_nR ? $nR : reflect($tnI, $tnN);"
	""
	"float $width = sin(radians($angle));"
	""
	"if ($width > SPEC_MIN_WIDTH)"
	"{"
	"    float       $uexp, $vexp;"
	""
	"    $uexp = $vexp = pbrspecular_toexponent($width);"
	"    if ($model != \"cone\" && abs((float)$aniso) > SPEC_MIN_WIDTH)"
	"    {"
	"        vector  $tanu, $tanv;"
	""
	"        if (!$isconnected_utan)"
	"            $tanu = dPds;"
	"        else"
	"            $tanu = $utan;"
	"        if (!$isconnected_vtan)"
	"            $tanv = dPdt;"
	"        else"
	"            $tanv = $vtan;"
	"        if ($aniso < 0)"
	"            $uexp *= pbrspecular_toexponent(1+$aniso);"
	"        else"
	"            $vexp *= pbrspecular_toexponent(1-$aniso);"
	"        if ($model == \"blinn\")"
	"            $f = ashikhmin($tnN, $uexp, $vexp, $tanu, $tanv, \"label\", $label);"
	"        else"
	"            $f = phonglobe($tnN, $tnR, $uexp, $vexp, $tanu, $tanv, \"label\", $label);"
	"    }"
	"    else"
	"    {"
	"        if ($model == \"cone\")"
	"            $f = cone($tnN, $tnR, radians($angle), \"label\", $label);"
	"        else if ($model == \"blinn\")"
	"            $f = blinn($tnN, $uexp, \"label\", $label);"
	"        else"
	"            $f = phonglobe($tnN, $tnR, $uexp, \"label\", $label);"
	"    }"
	"    $f *= 1.0 / luminance(albedo($f));"
	"}"
	"else"
	"{"
	"    $f = specular($tnR, \"label\", $label);"
	"}"
    }

    input	string	model	"Specular Model"
    input	string	label	"Component Label"
    input	vector	nR	Direction
    input	vector	nN	Normal
    input	vector	nI	"Incident Direction"
    input	float	angle	"Highlight Angle"
    input	float	aniso	"Anisotropic Bias"
    input	vector	utan	"U Tangent"
    input	vector	vtan	"V Tangent"
    output	bsdf	f	BSDF
    inputflags	model	0
    inputflags	label	0
    inputflags	nR	0
    inputflags	nN	0
    inputflags	nI	0
    inputflags	angle	0
    inputflags	aniso	0
    inputflags	utan	0
    inputflags	vtan	0
    signature	"Default Inputs"	default	{ string string vector vector vector float float vector vector bsdf }

    outputoverrides	default
    {
	___begin	auto
			(0)
    }

    help {
	""
    }

    parm {
	name	"model"
	label	"Specular Model"
	type	ordinal
	default	{ "0" }
	menu	{
	    "phong"	"Phong"
	    "blinn"	"Blinn"
	    "cone"	"Cone"
	}
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"label"
	label	"Component Label"
	type	string
	default	{ "" }
	menureplace	{
	    "diffuse"	"Diffuse"
	    "specular"	"Specular"
	    "reflect"	"Reflect"
	    "refract"	"Refract"
	}
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"angle"
	label	"Highlight Angle"
	type	float
	default	{ "10" }
	range	{ 0 90 }
	export	none
    }
    parm {
	name	"aniso"
	label	"Anisotropic Bias"
	type	float
	default	{ "0" }
	disablewhen	"{ model == cone }"
	range	{ -1 1 }
	export	none
    }
}
# Automatically generated script: Friday July 16, 16:41 2010
\set noalias = 1
#
#  Creation script for pbrspecular operator
#

if ( "$arg1" == "" ) then
    echo This script is intended as a creation script
    exit
endif

# Node $arg1 (Vop/pbrspecular)
opexprlanguage -s hscript $arg1
ParmsFromVfl := 0;
PrefixDroppedParmName := 1;
UseDSParms := 1;
ForbidOutsideParms := 1;
LockContents := 1;
SaveSpareParms := 0;
CheckExternal := 1;
GzipContents := 1;
MakeDefault := 1;
PrefixDroppedParmLabel := 1;
UnlockOnCreate := 0;
<?xml version="1.0" encoding="UTF-8"?>
<shelfDocument>
  <!-- This file contains definitions of shelves, toolbars, and tools.
 It should not be hand-edited when it is being used by the application.
 Note, that two definitions of the same element are not allowed in
 a single file. -->

  <tool name="$HDA_TABLE_$HDA_NAME" label="$HDA_LABEL" icon="VOP_pbrspecular">
    <toolMenuContext name="viewer">
      <contextNetType>VOP</contextNetType>
    </toolMenuContext>
    <toolMenuContext name="pop_viewer">
      <contextNetType>VOP</contextNetType>
    </toolMenuContext>
    <toolMenuContext name="network">
      <contextOpType>$HDA_TABLE/$HDA_NAME</contextOpType>
    </toolMenuContext>
    <toolSubmenu>Digital Assets</toolSubmenu>
    <script scriptType="python"><![CDATA[import voptoolutils

voptoolutils.genericTool(kwargs, '$HDA_NAME')]]></script>
  </tool>
</shelfDocument>
    INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"hvectovec"
    script	"hvectovec"
    label	"hvectovec"


    code {
	"$vec = $hvec;"
	"$fval4 = getcomp($hvec, 3);"
    }

    input	vector4	hvec	"Input Vector4"
    output	vector	vec	"Output Vector"
    output	float	fval4	"Fourth Component"

    parm {
	name	hvec
	label	"Input Vector4"
	type	float
	size	4
	default	{ 0 0 0 0 }
    }
}

INDX              DialogScript      [Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"twoway"
    script	"twoway"
    label	"twoway"


    code {
	"$result = ($condtype != 0 ? ($condition != 0 ? $input2 : $input1)"
	"                          : ($condition != 0 ? $input1 : $input2));"
    }

    input	int	condition	"Condition Value (int)"
    input	float	input1		"Input 1"
    input	float	input2		"Input 2"
    output	float	result		"Output Value"

    signature	"Float Values"	 	default { }
    signature	"Integer Values"	i	{ int int int int }
    signature	"String Values"		s	{ int string string string }
    signature	"Vector Values" 	v 	{ int vector vector vector }
    signature	"Point Values" 		p 	{ int point point point }
    signature	"Normal Values" 	n 	{ int normal normal normal }
    signature	"Color Values"	 	c 	{ int color color color }
    signature	"BSDF Values"	 	b 	{ int bsdf bsdf bsdf }
    signature	"Vector4 Values" 	v4 	{ int vector4 vector4 vector4 }
    signature	"Matrix3 Values" 	m3 	{ int matrix3 matrix3 matrix3 }
    signature	"Matrix Values" 	m 	{ int matrix matrix matrix }

    signature	"Uniform Float"	 	uf	{ ufloat ufloat ufloat ufloat }
    signature	"Uniform Vector" 	uv 	{ ufloat uvector uvector uvector }
    signature	"Uniform Point" 	up 	{ ufloat upoint upoint upoint }
    signature	"Uniform Normal" 	un 	{ ufloat unormal unormal unormal }
    signature	"Uniform Color"	 	uc 	{ ufloat ucolor ucolor ucolor }
    signature	"Uniform Matrix" 	um 	{ ufloat umatrix umatrix umatrix }


    parm {
	name	condtype
	label	Condition
	type	int
	menu	{
	    "true"	"True    ( != 0 )"
	    "false"	"False   ( == 0 )"
	}
	default	{ 0 }
    }

    group {
	name 	"g0"
	label	"Defaults"

	VOP_FLT_PARM(input2, "Float Input 2", 0)
	VOP_INT_PARM(input2_i, "Integer Input 2", 0)
	VOP_STR_PARM(input2_s, "String Input 2", "")
	VOP_VEC_PARM(input2_v, "Vector Input 2", 0, 0, 0)
	VOP_VEC_PARM(input2_p, "Point Input 2", 0, 0, 0)
	VOP_VEC_PARM(input2_n, "Normal Input 2", 0, 0, 0)
	VOP_CLR_PARM(input2_c, "Color Input 2", 1, 1, 1)
	VOP_VEC4_PARM(input2_v4, "Vector4 Input 2", 0, 0, 0, 0)
    }

    group {
	name	"g1"
	label	"Matrix Defaults"

	parm {
	    name	input2_m3
	    label	"Matrix3 Input 2"
	    type	float
	    size	9
	    default	{ 1 0 0 0 1 0 0 0 1 }
	}
	parm {
	    name	input2_m
	    label	"Matrix Input 2"
	    type	float
	    size	16
	    default	{ 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 }
	}
    }
    group {
	name	"g2"
	label	"Uniform Defaults"

	VOP_FLT_PARM(input2_uf, "Float Input 2", 0)
	VOP_VEC_PARM(input2_uv, "Vector Input 2", 0, 0, 0)
	VOP_VEC_PARM(input2_up, "Point Input 2", 0, 0, 0)
	VOP_VEC_PARM(input2_un, "Normal Input 2", 0, 0, 0)
	VOP_VEC_PARM(input2_uc, "Color Input 2", 0, 0, 0)
	parm {
	    name	input2_um
	    label	"Matrix Input 2"
	    type	float
	    size	16
	    default	{ 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 }
	}
    }
}

INDX              DialogScript      9Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

{
    name	"not"
    script	"not"
    label	"not"


    code {
	"#ifdef __vex"
	"    $not = !$input;"
	"#else"
	"    $not = ($input == 0) ? 1 : 0;"
	"#endif"
    }

    input	int	input	"Input Value"
    output	int	not	"\"Not\" Input"
}

INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"exp"
    script	"exp"
    label	"exp"

    outercode {
	INCLUDE_VOPLIB
    }

    code {
	"$exp = vop_exp($val);"
    }

    input	float	val	"Input Value"
    output	float	exp	"Exponent Value"

    signature	"1D Float Values"		default	{ }
    signature	"3D Vector Values"	v	{ vector vector }
    signature	"3D Point Values"	p	{ point point }
    signature	"3D Normal Values"	n	{ normal normal }
    signature	"3D Color Values"	c	{ color color }
    signature	"4D Values"		v4	{ vector4 vector4 }

    signature	"3D Uniform Float"	uf	{ ufloat ufloat }
    signature	"3D Uniform Vector"	uv	{ uvector uvector }
    signature	"3D Uniform Point"	up	{ upoint upoint }
    signature	"3D Uniform Normal"	un	{ unormal unormal }
    signature	"3D Uniform Color"	uc	{ ucolor ucolor }

    group {
	name 	"gv"
	label	"Defaults"
	VOP_FLT_PARM(val,   "1D Float Input", 1)
	VOP_VEC_PARM(val_v, "3D Vector", 1, 1, 1)
	VOP_VEC_PARM(val_p, "3D Point", 1, 1, 1)
	VOP_VEC_PARM(val_n, "3D Normal", 1, 1, 1)
	VOP_CLR_PARM(val_c, "3D Color", 1, 1, 1)
	VOP_VEC4_PARM(val_v4,"4D Vector", 1, 1, 1, 1)
    }
    group {
	name 	"gu"
	label	"Uniform Defaults"
	VOP_FLT_PARM(val_uf, "1D Float", 1)
	VOP_VEC_PARM(val_uv, "3D Vector", 1, 1, 1)
	VOP_VEC_PARM(val_up, "3D Point", 1, 1, 1)
	VOP_VEC_PARM(val_un, "3D Normal", 1, 1, 1)
	VOP_CLR_PARM(val_uc, "3D Color", 1, 1, 1)
    }
}

INDX              DialogScript      
gLt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"aanoise"
    script	"aanoise"
    label	"aanoise"


    outercode {
	INCLUDE_VOPLIB
    }

    code {
	"#ifndef __vex"
	"   $noise = vop_fbmNoise($pos * $freq - $offset, $rough, $maxoctave);"
	"#else"
	"  #if !strcmp($signature, \"default\")"
	"   $noise = vop_fbmNoiseFV($pos * $freq - $offset, $rough, $maxoctave);"
	"  #elif !strcmp($signature, \"ff\")"
	"   $noise = vop_fbmNoiseFF($pos * $freq - $offset, $rough, $maxoctave);"
	"  #elif !strcmp($signature, \"fp\")"
	"   $noise = vop_fbmNoiseFP($pos * $freq - $offset, $rough, $maxoctave);"
	"  #elif !strcmp($signature, \"vf\")"
	"   $noise = vop_fbmNoiseVF($pos * $freq - $offset, $rough, $maxoctave);"
	"  #elif !strcmp($signature, \"vv\")"
	"   $noise = vop_fbmNoiseVV($pos * $freq - $offset, $rough, $maxoctave);"
	"  #else"
	"   $noise = vop_fbmNoiseVP($pos * $freq - $offset, $rough, $maxoctave);"
	"  #endif"
	"#endif"
	"$noise *= $amp;"
    }

    input	point	pos		"Position"
    input	vector	freq		"Frequency"
    input	point	offset		"Offset"
    input	float	amp		"Amplitude"
    input	float	rough		"Roughness"
    input	int	maxoctave	"Max Octaves"
    output	float	noise		"Anti-Aliased Noise"

    signature	"1D Input, 1D Noise"	ff	{ float   float   float   float float int float }
    signature	"3D Input, 1D Noise"	default	{ point  vector  point  float float int float }
    signature	"4D Input, 1D Noise"	fp	{ vector4 vector4 vector4 float float int float }
    signature	"1D Input, 3D Noise"	vf	{ float   float   float   float float int vector }
    signature	"3D Input, 3D Noise"	vv	{ point   vector  point  float float int vector }
    signature	"4D Input, 3D Noise"	vp	{ vector4 vector4 vector4 float float int vector }

    VOP_FLT_PARM	(pos_ff,	"1D Position", 0)
    VOP_VEC_PARM	(pos,		"3D Position", 0, 0, 0)
    VOP_VEC4_PARM	(pos_fp,	"4D Position", 0, 0, 0, 0)

    VOP_FLT_PARM	(freq_ff,	"1D Frequency", 1)
    VOP_VEC_PARM	(freq,		"3D Frequency", 1, 1, 1)
    VOP_VEC4_PARM	(freq_fp,	"4D Frequency", 1, 1, 1, 1)

    VOP_FLT_PARM	(offset_ff,	"1D Offset", 0)
    VOP_VEC_PARM	(offset,	"3D Offset", 0, 0, 0)
    VOP_VEC4_PARM	(offset_fp,	"4D Offset", 0, 0, 0, 0)

    VOP_FLT_PARM_R	(amp,		"Amplitude", 1, -1, 1)
    VOP_FLT_PARM	(rough,		"Roughness", 0.5)
    VOP_INT_PARM_R	(maxoctave,	"Max Octaves", 8, 0, 32)
}
INDX              DialogScript      Lt   CreateScript    PLt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"alphamix"
    script	"alphamix"
    label	"alphamix"


    input       vector  I       "Direction From Eye To Surface"
    input       normal  N       "Surface Normal"
    VOP_FLT_INPUT(	apara,	"Alpha Para",	0.3)
    VOP_FLT_INPUT(	aperp,	"Alpha Perp",	0)
    VOP_FLT_INPUT_R(	aroll,	"Alpha Roll",	0.025, 0.02, 0.1)
}
# Automatically generated script: Wednesday May 15, 18:12
\set noalias = 1
#
#  Creation script for alphamix operator
#

if ( "$arg1" == "" ) then
    echo This script is intended as a creation script
    exit
endif

# Node $arg1
opparm $arg1
opcolor -c 0.8 0.8 0.8 $arg1

opcf $arg1

# Node suboutput1
opadd -n suboutput suboutput1
oplocate -x 13.6145 -y 4.06791 suboutput1
opparm suboutput1 stdswitcher ( 0 0 0 0 ) name1 ( alpha ) label1 ( Alpha ) name2 ( "" ) label2 ( "" ) name3 ( "" ) label3 ( "" ) name4 ( "" ) label4 ( "" ) name5 ( "" ) label5 ( "" ) name6 ( "" ) label6 ( "" ) name7 ( "" ) label7 ( "" ) name8 ( "" ) label8 ( "" ) name9 ( "" ) label9 ( "" ) name10 ( "" ) label10 ( "" ) name11 ( "" ) label11 ( "" ) name12 ( "" ) label12 ( "" ) name13 ( "" ) label13 ( "" ) name14 ( "" ) label14 ( "" ) name15 ( "" ) label15 ( "" ) name16 ( "" ) label16 ( "" ) name17 ( "" ) label17 ( "" ) name18 ( "" ) label18 ( "" ) name19 ( "" ) label19 ( "" ) name20 ( "" ) label20 ( "" ) name21 ( "" ) label21 ( "" ) name22 ( "" ) label22 ( "" ) name23 ( "" ) label23 ( "" ) name24 ( "" ) label24 ( "" ) name25 ( "" ) label25 ( "" ) name26 ( "" ) label26 ( "" ) name27 ( "" ) label27 ( "" ) name28 ( "" ) label28 ( "" ) name29 ( "" ) label29 ( "" ) name30 ( "" ) label30 ( "" ) name31 ( "" ) label31 ( "" ) name32 ( "" ) label32 ( "" )
opcolor -c 0.8 0.8 0.8 suboutput1
opset -d on -r on -h off -f off -y off -t off -l off -s off -u off -c off -e on -b off -L off -M on -H off suboutput1
opwire -n para_perp_mix -5 suboutput1

# Node subinput1
opadd -n subinput subinput1
oplocate -x -5.74978 -y 3.85546 subinput1
opparm subinput1
opcolor -c 0.8 0.8 0.8 subinput1
opset -d off -r off -h off -f off -y off -t off -l off -s off -u off -c off -e on -b off -L off -M on -H off subinput1

# Node N_frontface
opadd -n frontface N_frontface
oplocate -x 0.593617 -y 5.29837 N_frontface
opparm N_frontface normalize ( on )
opcolor -c 0.8 0.8 0.8 N_frontface
opset -d off -r off -h off -f off -y off -t off -l off -s off -u off -c off -e on -b off -L off -M on -H off N_frontface
opwire -n subinput1 -0 N_frontface
opwire -n -o 1 subinput1 -1 N_frontface

# Node pow
opadd -n pow pow
oplocate -x 9.29362 -y 3.19173 pow
opparm pow signature ( default ) val ( 1 ) val_v ( 1 1 1 ) val_v4 ( 1 1 1 1 ) exp ( 1 )
opcolor -c 0.8 0.8 0.8 pow
opset -d off -r off -h off -f off -y off -t off -l off -s off -u off -c off -e on -b off -L off -M on -H off pow
opwire -n clamp1 -0 pow
opwire -n one_over_aroll -1 pow

# Node N_dot_I
opadd -n dot N_dot_I
oplocate -x 2.69362 -y 5.29837 N_dot_I
opparm N_dot_I vec1 ( 1 0 0 ) vec2 ( 0 1 0 )
opcolor -c 0.8 0.8 0.8 N_dot_I
opset -d off -r off -h off -f off -y off -t off -l off -s off -u off -c off -e on -b off -L off -M on -H off N_dot_I
opwire -n N_frontface -0 N_dot_I
opwire -n I_normalize -1 N_dot_I

# Node one_over_aroll
opadd -n divide one_over_aroll
oplocate -x 7.34362 -y 1.99529 one_over_aroll
opparm one_over_aroll
opcolor -c 0.8 0.8 0.8 one_over_aroll
opset -d off -r off -h off -f off -y off -t off -l off -s off -u off -c off -e on -b off -L off -M on -H off one_over_aroll
opwire -n one -0 one_over_aroll
opwire -n -o 4 subinput1 -1 one_over_aroll

# Node one
opadd -n constant one
oplocate -x 5.3194 -y 2.69245 one
opparm one consttype ( float ) parmuniform ( off ) constname ( one ) constlabel ( one ) stdswitcher ( 0 0 0 0 ) floatdef ( 1 ) angledef ( 0 ) float3def ( 0 0 0 ) directiondef ( 1 0 0 ) float4def ( 0 0 0 0 ) float9def ( 1 0 0 0 1 0 0 0 1 ) float16def ( 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 ) intdef ( 0 ) toggledef ( off ) stringdef ( "" ) filedef ( "" ) imagedef ( "" ) geometrydef ( "" ) colordef ( 0 0 0 ) color4def ( 0 0 0 0 )
opcolor -c 0.8 0.8 0.8 one
opset -d off -r off -h off -f off -y off -t off -l off -s off -u off -c off -e on -b off -L off -M on -H off one

# Node para_perp_mix
opadd -n mix para_perp_mix
oplocate -x 11.3936 -y 4.02529 para_perp_mix
opparm para_perp_mix signature ( default ) bias ( 0.5 ) std_switcher_0 ( 0 0 0 ) input1 ( 0 ) input2 ( 1 ) input1_v ( 0 0 0 ) input2_v ( 1 1 1 ) input1_v4 ( 0 0 0 0 ) input2_v4 ( 1 1 1 1 )
opcolor -c 0.8 0.8 0.8 para_perp_mix
opset -d off -r off -h off -f off -y off -t off -l off -s off -u off -c off -e on -b off -L off -M on -H off para_perp_mix
opwire -n -o 3 subinput1 -0 para_perp_mix
opwire -n -o 2 subinput1 -1 para_perp_mix
opwire -n pow -2 para_perp_mix

# Node negate
opadd -n negate negate
oplocate -x 4.94362 -y 5.29837 negate
opparm negate signature ( f )
opcolor -c 0.8 0.8 0.8 negate
opset -d off -r off -h off -f off -y off -t off -l off -s off -u off -c off -e on -b off -L off -M on -H off negate
opwire -n N_dot_I -0 negate

# Node I_normalize
opadd -n normalize I_normalize
oplocate -x 0.825205 -y 3.1936 I_normalize
opparm I_normalize signature ( v ) vec ( 1 0 0 )
opcolor -c 0.8 0.8 0.8 I_normalize
opset -d off -r off -h off -f off -y off -t off -l off -s off -u off -c off -e on -b off -L off -M on -H off I_normalize
opwire -n I_input -0 I_normalize

# Node clamp1
opadd -n clamp clamp1
oplocate -x 7.19362 -y 5.29837 clamp1
opparm clamp1 signature ( default ) min ( 0 ) min_i ( 0 ) min_v ( 0 0 0 ) min_v4 ( 0 0 0 0 ) max ( 1 ) max_i ( 1 ) max_v ( 1 1 1 ) max_v4 ( 1 1 1 1 )
opcolor -c 0.8 0.8 0.8 clamp1
opset -d off -r off -h off -f off -y off -t off -l off -s off -u off -c off -e on -b off -L off -M on -H off clamp1
opwire -n negate -0 clamp1

# Node I_input
opadd -n ifconnected I_input
oplocate -x -1.29683 -y 3.03833 I_input
opparm I_input signature ( v ) std_switcher_0 ( 0 0 ) notconnected ( 0 ) notconnected_i ( 0 ) notconnected_s ( "" ) notconnected_v ( 0 0 0 ) notconnected_v4 ( 0 0 0 0 ) notconnected_m3 ( 1 0 0 0 1 0 0 0 1 ) notconnected_m ( 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 )
opcolor -c 0.8 0.8 0.8 I_input
opset -d off -r off -h off -f off -y off -t off -l off -s off -u off -c off -e on -b off -L off -M on -H off I_input
opwire -n subinput1 -0 I_input
opwire -n I_global -1 I_input

# Node I_global
opadd -n global I_global
oplocate -x -3.29321 -y 2.26829 I_global
opparm I_global usemenu ( on ) varname ( I )
opcolor -c 0.8 0.8 0.8 I_global
opset -d off -r off -h off -f off -y off -t off -l off -s off -u off -c off -e on -b off -L off -M on -H off I_global

opcf ..
INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"ifconnected"
    script	"ifconnected"
    label	"ifconnected"

    code {
	"$result = $isconnected_connected != 0 ? $connected : $notconnected;"
    }

    input	float	connected	"Input Tested For Connectivity"
    input	float	notconnected	"Default If First Input Not Connected"
    output	float	result		"Output Value"
    signature	"Float Values"		default { }
    signature	"Integer Values"	i	{ int int int }
    signature	"String Values"		s	{ string string string }
    signature	"Vector Values"		v	{ vector vector vector }
    signature	"Point Values"		p	{ point point point }
    signature	"Normal Values"		n	{ normal normal normal }
    signature	"Color Values"		c	{ color color color }
    signature	"Vector4 Values"	v4	{ vector4 vector4 vector4 }
    signature	"Matrix3 Values"	m3	{ matrix3 matrix3 matrix3 }
    signature	"Matrix Values"		m	{ matrix matrix matrix }

    signature	"Uniform Float Values"	uf	{ ufloat ufloat ufloat }
    signature	"Uniform Vector Values"	uv	{ uvector uvector uvector }
    signature	"Uniform Point Values"	up	{ upoint upoint upoint }
    signature	"Uniform Normal Values"	un	{ unormal unormal unormal }
    signature	"Uniform Color Values"	uc	{ ucolor ucolor ucolor }
    signature	"Uniform Matrix Values"	um	{ umatrix umatrix umatrix }

    group {
	name	"g0"
	label	"Defaults"

	VOP_FLT_PARM(notconnected, "Float Input 2", 0)
	VOP_INT_PARM(notconnected_i, "Integer Input 2", 0)
	VOP_STR_PARM(notconnected_s, "String Input 2", "")
	VOP_VEC_PARM(notconnected_v, "Vector Input 2", 0, 0, 0)
	VOP_VEC_PARM(notconnected_p, "Point Input 2", 0, 0, 0)
	VOP_VEC_PARM(notconnected_n, "Normal Input 2", 0, 0, 0)
	VOP_CLR_PARM(notconnected_c, "Color Input 2", 0, 0, 0)
	VOP_VEC4_PARM(notconnected_v4, "Vector4 Input 2", 0, 0, 0, 0)
    }

    group {
	name	"g1"
	label	"Matrix Defaults"

	parm {
	    name	notconnected_m3
	    label	"Matrix3 Input 2"
	    type	float
	    size	9
	    default	{ 1 0 0 0 1 0 0 0 1 }
	}
	parm {
	    name	notconnected_m
	    label	"Matrix Input 2"
	    type	float
	    size	16
	    default	{ 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 }
	}
    }

    group {
	name	"g2"
	label	"Uniform Defaults"

	VOP_FLT_PARM(notconnected_uf, "Float Input 2", 0)
	VOP_VEC_PARM(notconnected_uv, "Vector Input 2", 0, 0, 0)
	VOP_VEC_PARM(notconnected_up, "Point Input 2", 0, 0, 0)
	VOP_VEC_PARM(notconnected_un, "Normal Input 2", 0, 0, 0)
	VOP_CLR_PARM(notconnected_uc, "Color Input 2", 0, 0, 0)
	parm {
	    name	notconnected_um
	    label	"Matrix Input 2"
	    type	float
	    size	16
	    default	{ 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 }
	}
    }
}

INDX              DialogScript      JOa   CreateScript    JOa   TypePropertiesOptions     JOa   Help      JOa   Contents.gz    JOa   ExtraFileOptions  ,   JOa# Dialog script for surfacecolor automatically generated 07/04/09 10:05:31

{
    name	surfacecolor
    script	surfacecolor
    label	"Surface Color"

    input	int	useBaseColor	"Use Base Color"
    input	vector	baseColor	"Base Color"
    input	int	usePointColor	"Use Point Color"
    input	int	useColorMap	"Use Color Map"
    input	string	baseColorMap	"Base Color Map"
    input	string	colorMapWrap	"Color Map Wrap"
    input	string	colorMapfilter	"Color Map Filter"
    input	float	colorMapWidth	"Color Map Width"
    input	vector4	colorMapBorder	"Color Map Border"
    input	float	scoord	"S Coordinate"
    input	float	tcoord	"T Coordinate"
    input	int	usePointAlpha	"Use Point Alpha"
    input	float	colorMapIntensity	"Map Intensity"
    signature	"Default Inputs"	default	{ }

    help {
	""
    }

    parm {
	name	"useBaseColor"
	label	"Use Base Color"
	type	toggle
	default	{ "1" }
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"baseColor"
	label	"Base Color"
	type	color
	size	3
	default	{ "1" "1" "1" }
	disablewhen	"{ useBaseColor == 0 }"
	range	{ 0 10 }
	export	none
    }
    parm {
	name	"usePointColor"
	label	"Use Point Color"
	type	toggle
	default	{ "1" }
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"useColorMap"
	label	"Use Color Map"
	type	toggle
	default	{ "0" }
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"baseColorMap"
	label	"Base Color Map"
	type	image
	default	{ "" }
	disablewhen	"{ useColorMap == 0 }"
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"colorMapWrap"
	label	"Color Map Wrap"
	type	string
	default	{ "repeat" }
	disablewhen	"{ useColorMap == 0 }"
	menu	{
	    "repeat"	"Repeat"
	    "streak"	"Streak"
	    "decal"	"Decal"
	}
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"colorMapfilter"
	label	"color Map Filter Type"
	type	string
	default	{ "catrom" }
	disablewhen	"{ useColorMap == 0 }"
	menu	{
	    "box"	"Box"
	    "gauss"	"Gaussian"
	    "bartlett"	"Bartlett/Triangular"
	    "sinc"	"Sinc Sharpening"
	    "hanning"	"Hanning"
	    "blackman"	"Blackman"
	    "catrom"	"Catmull-Rom"
	    "mitchell"	"Mitchell"
	}
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"colorMapWidth"
	label	"Color Map Filter Width"
	type	float
	default	{ "1" }
	disablewhen	"{ useColorMap == 0 }"
	range	{ 0 5 }
	export	none
    }
    parm {
	name	"colorMapBorder"
	label	"Color Map Border Color"
	type	color4
	size	4
	default	{ "0" "0" "0" "0" }
	disablewhen	"{ useColorMap == 0 }"
	range	{ 0 10 }
	export	none
    }
    parm {
	name	"Scoord"
	label	"S Coord"
	type	float
	default	{ "0" }
	disablewhen	"{ useColorMap == 0 }"
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"Tcoord"
	label	"T Coord"
	type	float
	default	{ "0" }
	disablewhen	"{ useColorMap == 0 }"
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"usePointAlpha"
	label	"Use Point Alpha"
	type	toggle
	default	{ "1" }
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"colorMapIntensity"
	label	"Color Map Intensity"
	type	float
	default	{ "1" }
	disablewhen	"{ useColorMap == 0 }"
	range	{ 0 2 }
	export	none
    }
}
# Automatically generated script: Saturday July 04, 10:05
\set noalias = 1
#
#  Creation script for surfacecolor operator
#

if ( "$arg1" == "" ) then
    echo This script is intended as a creation script
    exit
endif

# Node $arg1 (Vop/surfacecolor)
opexprlanguage -s hscript $arg1
ParmsFromVfl := 0;
PrefixDroppedParmName := 1;
UseDSParms := 1;
ForbidOutsideParms := 1;
LockContents := 1;
SaveSpareParms := 0;
CheckExternal := 1;
GzipContents := 1;
MakeDefault := 1;
PrefixDroppedParmLabel := 1;
UnlockOnCreate := 0;
      =MsFv:.nIzK5㝌ˎ4guHPM,h<5J@=s!s5r @w4fD͐ x~ׯ|%e?,v u򳓃]k?y:}&n `C}O8΂ﶇQ08'Okïf^'i6NU{N+fǃ8SU]GpO1|Z'!q짧g##"X##dz)B~^/=JZpt;ׅ8&`4vukPy_A-	N~@Po>@n40Om4~e3!l4ą:LF/?Z
@ٿ6FчA \/4p9	|~ߡpvtI<n]i۵f|t_,l|8&'i~BzE7~W9C-tQ\?Kh&1>G)Ja!Td'e7~79Qn,r+<XDAz`DbDOűW ߮H+/0,Ҋ_'x9> nCF\.%6k#/[:A{:`?Bə.KVĳUޮzʖP[s|mN?:1zFً0Aɟc4<_b%0[q|l0Y?xϧ۟6ѧ;5yGw5i#w&(G,8,R1&~`4nKгu'1Q4a6[6Q2	SШ[d`')DBӁ!NыF4M$	uYMm(Y@Eh=KgAAb^<4BO"ߟqϏz9˻1^ף<l7"-THqB^R$Awi-t)4mdVRAƑAύ>R,hP\FQTJ(--ѢI@x'~6N+zu'J`V +-%2tGF	-3UqǴL4%SJvǳ?. =eR{ iw9݂WNȇ8qJ$V!(
_%:
GpHltuХ>12'SrBs27sr2wR륜P-#Ýiz+'p{fBn.?AV秂?8+r@=LRPtrQVm\StmkjA1ơ峪N@M_O@O'אX_O9-EyaoO>i))	޸K@&)9Op[5-C#w~\`Ρl-Bqc	o[/f`-(c&RDOu0=tS94\4i@߸q0|SM-$3zfѽ`"mZ٨v5jkפUS4upuő8\[1bS{0V)K !lLP.۞cH+c?e(9
w!`=|no	PDa	FGQ ,J<d3+h/L,N1]q=m$1 JKB\^M'r9>_EQp=K_N	E8^Ypܞs^6	4fY{6Ie`cO[Fkb['x1'Ǧ{gu	_?|ý;~͒E0 4
wk˰onr"SFKN7Zh=(,'INNfS08ْ0B[v#	PTaqXȜm NGw6YfO;?2}u
/%ܦ?+f,>|$CIu^}ϳƇ〱eIزaPH-ŅY~O>hQqR-dð0Ax(ޅ#zKDG	1O<_u<|?~5
Y{gk׮5>F̯&fXG4%bDA|emmvt%99eTat6(ǳ*YGxJ/:ѿch0+R3WZL0箏EA:'BΦ,GXDGf|R,,=1`/[ SgTYxNM/bu߬}^'+q8G	\?!u"'X唰#HrY3Ze`xz݅2@"L^:jXuf9MtPqfޫQ	BOq4Ii\F_	xW@`?duO4U).˵eNj68aeAvbI-#G'BI=E1bDI-#G;BI=7%"Ğ(8xJ>CRpgܘ u7&;i4Z7(1qg%8V9_S7?\%\R\kD%ꍖ7ށ^pzu}▝J;{ŕ#ܩ+v+i	QGYF+$Vڛ2-#2-#2"-#2Bipa/߭Bt!Y0ӝ~}>ÝXS.SiѰ6;'hKl.%<I]<$qEgy5ӼA`*0m`:C1Ǻ	qkq"2"zٴqXHs<us\:*/x)UURΫ<WU%y,kp{_fcZZδ>_|*}Yu[Bz)m2PCR6ʰȭLmNmM'FNB< `#Y L%Bŝ诒M9o%8&FzCڐN&9NWu%.F/sʴCBV[:SX2o:J+e-]Ka>EZ
]"Y⊘a%i"G0('1O43,lW1(I6Q'8#|FŜ\~)[˼Q<@V[׈xX@Vc"
(j^,@}.iIxr\aqvp- "Lhು?g` Q+h.k?x +1f^'vtaN6QqvʁxG0Gtʐ<kRt:V.bϫ;lϭ.:jY%6T.bvFwߕ.\^$/1W$2]&8W*[RʪD![Nβ-[RҪD-[N2Q1Xxo>El#!4+H|	+ 1[hoC6+	I~+b&;6U了ޔzlO Qb71?!Q2.wiR17%"F,x ߙ/96,洋9͕gHr҃d8)!בook-o\lP- <]Xt ,p,4[L+pu,:WL*p,4W]bV&|?MIdgs?l,au#1Z{p7&j|&	V-&\ֺvfR U~2zmV-Th:=qm'
1W"Zʴ993E)悘ӤFPPj)Ͳʞc
\
]s2)N|/?F')xG-)/-"<ՕM6eyl:SQ$fi͖l)Ĵ$Qu]v!}Y%ϖ;kvuÃaTB<Iv	΍]}f{뚶\1'j5qBhNAfr:vscvC1(kL`2%[Q0y~IBN飕h,^0|z?_Y2$'?piMɔqbƐr4	a6
p ;cXp$3,7dٮ׵<CEmC'Ogbϒp4	G'm`ie?>ixK&4,ۤ79a舖7*N)NE>'FqxMv	$u@[gGvstnGQL(ӎ >!CnWx#[i%7meYf,"ru<>v:ȶStݎkv:P0{ kUzcs_-<
<۶= 麟rv]rL%i6>}1
#aM*r:bX-(/ZvjԖ'A`;cw`&2R즅{CZzfrְU8bp%UaZv+4^5YDY~LKCrDklf3Հ& MII@,T[h?*R'C!!
gHph[l*
lkln{es,b&NsgҰb%)T59}́'0mj:6x'"8p\qbvAxcK;<b?fm=@u"U]G!|Y(4~ZT!, ]ƤT4œTj<a)
({FڴZkKj˼V.9Jo˕ҕV<߲ExUeᬫ/7u.]p/^Ax]pSWVW1涘b\Ng61P~[mkzWڦ ['Y֤8oIL,3%66emS)jl]"yo("CW6;MS@eLnٖIN߻zDj3^vp0t{͘8pMҐ"Q'Z5X\$5M$($ߡro,	@$V҂^ȫ)5;i:2{E3
,*h⚔(at&Xr"Y|=NT`(AƄxq0A7ɡArHIſM~" q*R뤧iJOlQM̜kG6Z0h
Z.Fd1$«k
my:t9Җo`鸇x^|W{׮ѸVBh S>.Yg(n lIT:GJr6U	D1{.Ld;m3^pt	]y+=BFЕR}T Aj]U'kcb-IjUqAԁImQ|~ ]Cqg$*|"&2XLmy=h꾭_nQ6.iDr""qH;XV%8V39V*m4i8W΅~:eޅx>jvWnjQgu2qZvҵ2]:;'_^ʱP?X2<mՅ/PW<U]޿uȆ>HUʥ@xvλ7{V1W.>/W]m%A5xvoxns\^29ɏBdTwAw!*]HuEYgo*jcDv=tHԦ߽z+H&fdo|WGGSj[N9Et[f5}DPVMRdi&&SVe\P:2mEIaLdLd]z25d
QҩP!P#,B(FV,P'.* !	
Hu"BШP'6* !	
HNrT@B$G$:Q	NrT@B$G$:Q	NrT@B(}䨀P'9* !I
HJ#9NrT@B$G$:Q	NrT@B}䨀P'9* !I
HuBsW'9* !I
HuB䨀P'9* qtB䨀P'9* !I
HuBcNrT@B$G$:Q$G$:Q	NrT@BMfpՋ^f,bX)}cˌ@Crncjm3.ޱ޶z1/&Z84Òejwoz ^WmȘ'd%Lu-sw!.;?`j.lT	MSF-):![u͎x^/ј8Jp) ererdr:|XZ.Z9FI W_"f/LBg0iiOh YҪ@ޢ-r͔ͬH//2I#&SZ81=5	gX%QbsU"'.09[}:Pۖٳ:رtzw\BCE	tST@$Gc:v]2ۭzXj~^AKV-jXTp-fOF`Ҝ,kӗdoY{XBPB|kޣ4n"f<in,p=ޠYs
.'bf_Lxd`W9XǓyH%e5s0S5[O8[Ѯ! n0Q}0'bV9!-ҜUa=Ǻ/%X*<}''	rJv8l{̈/YP9f*9QEՌ;S vi=MxޕyIРQ4=im{D '5E3AzV{yLw9'_F+P+氚ZHp:AxX&ҭ=ry=QFc*W[RxZ9YxDۡ&[o 74d2zpLC@!\o 7i4d·kYGTU&ñӕdבl&3Wlw=SUw2&v;`Tcu"'ռTu$ujzrWPl)0`ˋ_tACF;׿z#Wf4 T`.w>}YAVWR
4v׹%Ei+"U0MYUJ.!ľT	!:!dFw)jK	!꘰&\	!ruBp!\'h	!uBp!\'h	!uBp!\'Tl_{NחKb_{N1BU'phtP6fiFi"-K97ڗFQ{vCa7iMQ'8%bi6ˉ@/,_~\lţi!j3ƙۡ\&I{gk׮5j     INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"luminance"
    script	"luminance"
    label	"luminance"


    code {
	"#ifdef __vex"
	"    $lum = luminance($rgb);"
	"#else"
	"    $lum = point($rgb).point(0.299, 0.587, 0.114);"
	"#endif"
    }

    input	color	rgb	"RGB color"
    output	float	lum	"Luminance"

    VOP_CLR_PARM(rgb, "RGB Color", 0, 0, 0)
}
INDX              DialogScript      L   CreateScript    ,L   TypePropertiesOptions     L   Help      L   Tools.shelf    wL   ExtraFileOptions  !'   L# Dialog script for directlighting automatically generated 09/22/10 19:48:57

{
    name	directlighting
    script	directlighting
    label	"Direct Lighting"

    outercode {
	"#ifndef VOP_EXPORT_DEFINES"
	"#define VOP_EXPORT_DEFINES"
	""
	"#include \"pbrexports.h\""
	"#include \"pbrpathtrace.h\""
	"#include \"math.h\""
	""
	"#endif"
    }

    code {
	"int     $lights[];"
	"int     $ismicropoly = 0;"
	"int     $diffuselevel = 0;"
	"int     $fakecaustics = 0;"
	"float   $colorlimit = 1024;"
	"string  $colorspace = \"linear\";"
	"int     $n, $i, $idx;"
	"vector  $dclr_t;"
	"vector  $rclr_t;"
	"vector  $tclr_t;"
	"vector  $sclr_t;"
	"vector  $vclr_t;"
	"string  $engine;"
	"int     $mask = $isconnected_bounces ? $bounces : PBR_ALL_MASK;"
	"int     $shadowmask = $isconnected_sbounces ? $sbounces : PBR_ALL_MASK;"
	"vector  $opac = $isconnected_Of ? $Of : {1,1,1};"
	"int     $sid = $isconnected_SID ? $SID : SID;"
	"float   $now = $isconnected_Time ? $Time : Time;"
	"vector  $pos = $isconnected_P ? $P : P;"
	"vector  $dir = $isconnected_I ? $I : I;"
	"bsdf    $fval = $F;"
	""
	"renderstate(\"renderer:colorlimit\", $colorlimit);"
	"renderstate(\"renderer:colorspace\", $colorspace);"
	"renderstate(\"object:fakecaustics\", $fakecaustics);"
	"if (getraylevel() == 0)"
	"{"
	"    renderstate(\"renderer:renderengine\", $engine);"
	"    $ismicropoly = $engine == \"micropoly\" ||"
	"                   $engine == \"pbrmicropoly\";"
	"}"
	"else"
	"{"
	"    rayimport(\"diffuselevel\", diffuselevel);"
	"}"
	""
	"if ($isconnected_lightmask)"
	"    $lights = getlights(\"lightmask\", $lightmask);"
	"else"
	"    $lights = getlights();"
	""
	"$mask &= getbounces($fval);"
	"$shadowmask &= getbounces($fval);"
	""
	"$n = arraylength($lights);"
	""
	"FOR_ALL_EXPORTS3(EXPORT_DEF, direct, $_l[]);"
	"FOR_ALL_EXPORTS3(EXPORT_RESIZE, direct, $_l);"
	""
	"vector  $lclr_l[];"
	"vector  $lclr_t;"
	"resize($lclr_l, $n);"
	""
	"for ($i = 0; $i < $n; $i++)"
	"{"
	"    $idx = $lights[$i];"
	"    FOR_ALL_EXPORTS3(EXPORT_ZERO, direct, $_l[idx])"
	"    $lclr_l[idx] = {0,0,0};"
	"}"
	""
	"$clr = 0;"
	"$noshadow = 0;"
	"$nsam = 0;"
	"$imask = 0;"
	""
	"if ($mode == \"multisample\")"
	"{"
	"    pbr_direct_lighting("
	"            $clr,"
	"            $lclr_l,"
	"            $nsam,"
	"            $imask,"
	"            $direct_diffuse_l,"
	"            $direct_specular_l,"
	"            $direct_reflect_l,"
	"            $direct_refract_l,"
	"            $direct_volume_l,"
	"            $sid,"
	"            $pos,"
	"            $fval,"
	"            $dir,"
	"            normal_bsdf($fval),"
	"            $now,"
	"            {1,1,1},"
	"            $lights,"
	"            $mask,"
	"            $shadowmask,"
	"            0,"
	"            $doshadow,"
	"            $multilight,"
	"            $fakecaustics,"
	"            $colorlimit,"
	"            $diffuselevel,"
	"            1e6F,"
	"            getraylevel() == 0,"
	"            $colorspace,"
	"            $ismicropoly);"
	"}"
	"else"
	"{"
	"    vector      $nml = normal_bsdf($F);"
	"    vector      $col;"
	"    vector      $shadow_col;"
	"    string      $olmask;"
	""
	"    renderstate(\"object:lightmask\", $olmask);"
	""
	"    illuminance($pos, $nml, PI,"
	"            $isconnected_lightmask ? $lightmask : $olmask)"
	"    {"
	"        $shadow_col = Cl;"
	""
	"        $idx = getlightid(getlightname());"
	"        $col = eval_bsdf($fval, -$dir, normalize(L), $mask);"
	"        $lclr_l[idx] += $shadow_col * $col;"
	"        if ($doshadow)"
	"        {"
	"            shadow($shadow_col);"
	"        }"
	"        $col *= $shadow_col;"
	"        $direct_diffuse_l[idx] += $shadow_col * eval_bsdf("
	"                $fval, -$dir, normalize(L), $mask & PBR_DIFFUSE_MASK);"
	"        $direct_reflect_l[idx] += $shadow_col * eval_bsdf("
	"                $fval, -$dir, normalize(L), $mask & PBR_GLOSSY_MASK);"
	"        $direct_refract_l[idx] += $shadow_col * eval_bsdf("
	"                $fval, -$dir, normalize(L), $mask & PBR_GLOSSY_MASK);"
	"        $direct_volume_l[idx] += $shadow_col * eval_bsdf("
	"                $fval, -$dir, normalize(L), $mask & PBR_VOLUME_MASK);"
	"        $clr += $col;"
	"        $nsam++;"
	"    }"
	"}"
	""
	"// Premultiply"
	"$clr *= $opac;"
	""
	"$dclr_t = 0;"
	"$rclr_t = 0;"
	"$tclr_t = 0;"
	"$sclr_t = 0;"
	"$vclr_t = 0;"
	"$lclr_t = 0;"
	""
	"for ($i = 0; $i < $n; $i++)"
	"{"
	"    $idx = $lights[$i];"
	""
	"    $dclr = $direct_diffuse_l[idx] * $opac;"
	"    $rclr = $direct_reflect_l[idx] * $opac;"
	"    $tclr = $direct_refract_l[idx] * $opac;"
	"    $sclr = $direct_specular_l[idx] * $opac;"
	"    $vclr = $direct_volume_l[idx] * $opac;"
	"    $noshadow = lclr_l[idx] * $opac;"
	"    $dclr_t += $dclr;"
	"    $rclr_t += $rclr;"
	"    $tclr_t += $tclr;"
	"    $sclr_t += $sclr;"
	"    $vclr_t += $vclr;"
	"    $lclr_t += $noshadow;"
	""
	"    storelightexports(getlightname($idx));"
	"}"
	""
	"$dclr = $dclr_t;"
	"$rclr = $rclr_t;"
	"$tclr = $tclr_t;"
	"$sclr = $sclr_t;"
	"$vclr = $vclr_t;"
	"$noshadow = $lclr_t;"
    }

    input	bsdf	F	BSDF
    input	vector	Of	Opacity
    input	vector	P	Position
    input	vector	I	Direction
    input	int	SID	"Sample ID"
    input	float	Time	Time
    input	string	lightmask	"Light Mask"
    input	int	bounces	"Bounce Mask"
    input	int	sbounces	"Shadow Bounce Mask"
    input	int	doshadow	"Enable Shadows"
    input	int	dolightmask	"Use Light Mask"
    input	int	multilight	"Sample All Lights"
    output	vector	clr	Color
    output	vector	noshadow	"Unshadowed Color"
    output	vector	shadow	"Shadow Matte"
    output	float	nsam	"Sample Count"
    output	int	imask	"Exclude Indirect Bounces"
    output	vector	dclr	Diffuse
    output	vector	rclr	Reflect
    output	vector	tclr	Refract
    output	vector	sclr	Specular
    output	vector	vclr	Volume
    inputflags	F	0
    inputflags	Of	0
    inputflags	P	0
    inputflags	I	0
    inputflags	SID	0
    inputflags	Time	0
    inputflags	lightmask	0
    inputflags	bounces	0
    inputflags	sbounces	0
    inputflags	doshadow	0
    inputflags	dolightmask	0
    inputflags	multilight	0
    signature	"Default Inputs"	default	{ bsdf vector vector vector int float string int int int int int vector vector vector float int vector vector vector vector vector }

    outputoverrides	default
    {
	___begin	auto
			(0,0,0)
	___begin	auto
			(0,0,0)
	___begin	auto
			(0,0,0)
	___begin	auto
			(0)
	___begin	auto
			(0)
	___begin	auto
			(0,0,0)
	___begin	auto
			(0,0,0)
	___begin	auto
			(0,0,0)
	___begin	auto
			(0,0,0)
	___begin	auto
			(0,0,0)
    }

    help {
	""
    }

    parm {
	name	"mode"
	label	"Lighting Mode"
	type	string
	default	{ "multisample" }
	menu	{
	    "multisample"	"Multiple Importance Sampling"
	    "illuminance"	"Illuminance Loop"
	}
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"multilight"
	label	"Sample All Lights"
	type	toggle
	default	{ "1" }
	disablewhen	"{ mode != multisample }"
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"doshadow"
	label	"Enable Shadows"
	type	toggle
	default	{ "1" }
	range	{ 0 1 }
	export	none
    }
}
# Automatically generated script: Wednesday September 22, 19:48 2010
\set noalias = 1
#
#  Creation script for directlighting operator
#

if ( "$arg1" == "" ) then
    echo This script is intended as a creation script
    exit
endif

# Node $arg1 (Vop/directlighting)
opexprlanguage -s hscript $arg1
ParmsFromVfl := 0;
PrefixDroppedParmName := 1;
UseDSParms := 1;
ForbidOutsideParms := 1;
LockContents := 1;
SaveSpareParms := 0;
CheckExternal := 1;
GzipContents := 1;
MakeDefault := 1;
PrefixDroppedParmLabel := 1;
UnlockOnCreate := 0;
<?xml version="1.0" encoding="UTF-8"?>
<shelfDocument>
  <!-- This file contains definitions of shelves, toolbars, and tools.
 It should not be hand-edited when it is being used by the application.
 Note, that two definitions of the same element are not allowed in
 a single file. -->

  <tool name="$HDA_TABLE_$HDA_NAME" label="$HDA_LABEL" icon="VOP_directlighting">
    <toolMenuContext name="viewer">
      <contextNetType>VOP</contextNetType>
    </toolMenuContext>
    <toolMenuContext name="pop_viewer">
      <contextNetType>VOP</contextNetType>
    </toolMenuContext>
    <toolMenuContext name="network">
      <contextOpType>$HDA_TABLE/$HDA_NAME</contextOpType>
    </toolMenuContext>
    <toolSubmenu>Digital Assets</toolSubmenu>
    <script scriptType="python"><![CDATA[import voptoolutils

voptoolutils.genericTool(kwargs, '$HDA_NAME')]]></script>
  </tool>
</shelfDocument>
    INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

{
    name	"invert"
    script	"invert"
    label	"invert"


    code {
	"#if !strcmp($signature, \"f\")"
	"  $inverse = 1.0 / $val;"
	"#else"
	"  $inverse = invert($val);"
	"#endif"
    }

    input	matrix	val	"Input Value"
    output	matrix	inverse	"Inverted Value"
    signature	"4x4 Matrix"	default	{ }
    signature	"3x3 Matrix"	m3	{ matrix3 matrix3 }
    signature	"Scalar Float"	f	{ float float }

    parm {
	name	val
	label	"4x4 Matrix"
	type	float
	size	16
	default	{ 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 }
    }
    parm {
	name	val_m3
	label	"3x3 Matrix"
	type	float
	size	9
	default	{ 1 0 0 0 1 0 0 0 1 }
    }
    parm {
	name	val_f
	label	"Scalar Float"
	type	float
	size	1
	default	{ 1 }
    }
}
INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

{
    name	"fresnel"
    script	"fresnel"
    label	"fresnel"


    code {
	"vector $myI = ($isconnected_nI != 0) ? $nI : normalize(I);"
	"vector $myN = ($isconnected_nN != 0) ? $nN : normalize(N);"
	"fresnel($myI, $myN, $eta, $kr, $kt, $R, $T);" }

    input	vector	nI	"Normalized Incident Vector"
    input	normal	nN	"Normalized Surface Normal"
    input	float	eta	"Index Of Refraction"
    output	float	kr	"Reflected Light"
    output	float	kt	"Transmitted (i.e. Refracted) Light"
    output	vector	R	"Reflection Vector"
    output	vector	T	"Transmission (i.e. Refraction) Vector"

    parm {
	name	eta
	label	"Index Of Refraction"
	type	float
	size	1
	default	{ 0.8 }
	range	{ 0.1 1 }
    }
}

INDX              DialogScript      WLt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

{
    name	"isconnected"
    script	"isconnected"
    label	"isconnected"


    code {
	"$connected = $isconnected_input ? 1 : 0;"
    }

    input	float	input		"Input"
    output	int	connected	"Input Connected Or Not"

    signature	"Float Values"	 	default { }
    signature	"Integer Values"	i	{ int int }
    signature	"String Values"		s	{ string int }
    signature	"Vector Values" 	v	{ vector int }
    signature	"Point Values"	 	p	{ point int }
    signature	"Normal Values" 	n	{ normal int }
    signature	"Color Values" 		c	{ color int }
    signature	"Vector4 Values" 	v4	{ vector4 int }
    signature	"Matrix3 Values" 	m3	{ matrix3 int }
    signature	"Matrix Values" 	m	{ matrix int }

    signature	"Uniform Float Values"	uf	{ ufloat int }
    signature	"Uniform Vector Values"	uv	{ uvector int }
    signature	"Uniform Point Values"	up	{ upoint int }
    signature	"Uniform Normal Values"	un	{ unormal int }
    signature	"Uniform Color Values"	uc	{ ucolor int }
    signature	"Uniform Matrix Values"	um	{ umatrix int }
}
INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"length"
    script	"length"
    label	"length"


    code {
	"$len = length($vec);"
    }

    input	vector	vec	"Vector"
    output	float	len	"Vector Length"
    signature	"3D Vector"		default	{ }
    signature	"3D Point"		p	{ point float }
    signature	"3D Normal"		n	{ normal float }
    signature	"4D Vector"		v4	{ vector4 float }
    signature	"3D Uniform Vector"	uv	{ uvector ufloat }
    signature	"3D Uniform Point"	up	{ upoint ufloat }
    signature	"3D Uniform Normal"	un	{ unormal float }

    group {
	name	"g0"
	label	"Defaults"
	VOP_VEC_PARM(vec,		"3D Vector", 1, 1, 1)
	VOP_VEC_PARM(vec_p,		"3D Point", 1, 1, 1)
	VOP_VEC_PARM(vec_n,		"3D Normal", 1, 1, 1)
	VOP_VEC4_PARM(vec_v4,	"4D Vector", 1, 1, 1, 1)
    }
    group {
	name	"g0"
	label	"Uniform Defaults"
	VOP_VEC_PARM(vec_uv,	"3D Uniform Vector", 1, 1, 1)
	VOP_VEC_PARM(vec_up,	"3D Uniform Point", 1, 1, 1)
	VOP_VEC_PARM(vec_un,	"3D Uniform Normal", 1, 1, 1)
    }
}
INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"degtorad"
    script	"degtorad"
    label	"degtorad"

    outercode {
	INCLUDE_VOPLIB
    }

    code {
	"$rad = vop_radians($deg);"
    }

    input	float	deg	"Degrees"
    output	float	rad	"Radians"
    signature	"1D Float Values"		default	{ }
    signature	"3D Vector Values"	v	{ vector vector }
    signature	"3D Point Values"	p	{ point point }
    signature	"3D Normal Values"	n	{ normal normal }
    signature	"3D Color Values"	c	{ color color }
    signature	"4D Values"		v4	{ vector4 vector4 }

    signature	"3D Uniform Float"	uf	{ ufloat ufloat }
    signature	"3D Uniform Vector"	uv	{ uvector uvector }
    signature	"3D Uniform Point"	up	{ upoint upoint }
    signature	"3D Uniform Normal"	un	{ unormal unormal }
    signature	"3D Uniform Color"	uc	{ ucolor ucolor }

    group {
	name 	"gv"
	label	"Defaults"
	VOP_FLT_PARM(deg,   "1D Float Input", 1)
	VOP_VEC_PARM(deg_v, "3D Vector", 1, 1, 1)
	VOP_VEC_PARM(deg_p, "3D Point", 1, 1, 1)
	VOP_VEC_PARM(deg_n, "3D Normal", 1, 1, 1)
	VOP_CLR_PARM(deg_c, "3D Color", 1, 1, 1)
	VOP_VEC4_PARM(deg_v4,"4D Integer", 1, 1, 1, 1)
    }
    group {
	name 	"gu"
	label	"Uniform Defaults"
	VOP_FLT_PARM(deg_uf, "1D Float", 1)
	VOP_VEC_PARM(deg_uv, "3D Vector", 1, 1, 1)
	VOP_VEC_PARM(deg_up, "3D Point", 1, 1, 1)
	VOP_VEC_PARM(deg_un, "3D Normal", 1, 1, 1)
	VOP_CLR_PARM(deg_uc, "3D Color", 1, 1, 1)
    }
}
INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

{
    name	"addconst"
    script	"addconst"
    label	"addconst"


    code {
	"$added = $val + $addconst;"
    }

    input	int	val		"Input Value"
    output	int	added		"Input Value + Constant"
    signature	"1D Integer Values"	default	{ }
    signature	"1D Float Values"	f	{ float float }
    signature	"3D Values"		v	{ vector vector }
    signature	"3D Point Values"	p	{ point point }
    signature	"3D Normal Values"	n	{ normal normal }
    signature	"3D Color Values"	c	{ color color }
    signature	"4D Values"		v4	{ vector4 vector4 }
    signature	"1D Uniform Float"	uf	{ ufloat ufloat }
    signature	"3D Uniform Vector"	uv	{ uvector uvector }
    signature	"3D Uniform Point"	up	{ upoint upoint }
    signature	"3D Uniform Normal"	un	{ unormal unormal }
    signature	"3D Uniform Color"	uc	{ ucolor ucolor }

    parm {
	name	addconst
	label	"Add"
	type	float
	size	1
	default	{ 1.0 }
    }
}

INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"floattovec"
    script	"floattovec"
    label	"floattovec"

    outercode {
	INCLUDE_VOPLIB
    }

    code {
	"$vec = vop_floattovec($fval1, $fval2, $fval3);"
    }

    input	float	fval1	"Component 1"
    input	float	fval2	"Component 2"
    input	float	fval3	"Component 3"
    output	vector	vec	"Output Vector"

    VOP_FLT_PARM(fval1, "Component 1", 0)
    VOP_FLT_PARM(fval2, "Component 2", 0)
    VOP_FLT_PARM(fval3, "Component 3", 0)

    VOP_FLT_PARM(fval1_uv, "Uniform Component 1", 0)
    VOP_FLT_PARM(fval2_uv, "Uniform Component 2", 0)
    VOP_FLT_PARM(fval3_uv, "Uniform Component 3", 0)

    signature	"3D Vector Output"	default { }
    signature	"3D Point Output"	p { float float float point }
    signature	"3D Normal Output"	n { float float float normal }
    signature	"3D Color Output"	c { float float float color }

    signature	"3D Uniform Vector"	uv { ufloat ufloat ufloat uvector }
    signature	"3D Uniform Point"	up { ufloat ufloat ufloat upoint }
    signature	"3D Uniform Normal"	un { ufloat ufloat ufloat unormal }
    signature	"3D Uniform Color"	uc { ufloat ufloat ufloat ucolor }
}
0707070000010000000006660000000000000000010000001147726722100001500000000000.OPlibraries 0707070000010000000006660000000000000000010000001147726722100001700000000000.OPpreferences 0707070000010000000006660000000000000000010000001147726722100001500000015124.OPfallbacks Vop/clamp /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/clamp otls/OPlibVop.otl
Vop/pbrspecular /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/pbrspecular otls/OPlibVop.otl
Vop/uvcoords /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/uvcoords otls/OPlibVop.otl
Vop/isconnected /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/isconnected otls/OPlibVop.otl
Vop/degtorad /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/degtorad otls/OPlibVop.otl
Vop/directlighting /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/directlighting otls/OPlibVop.otl
Vop/mulconst /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/mulconst otls/OPlibVop.otl
Vop/volumevopoutput /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/volumevopoutput otls/OPlibVop.otl
Vop/inttofloat /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/inttofloat otls/OPlibVop.otl
Vop/computetan /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/computetan otls/OPlibVop.otl
Vop/pow /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/pow otls/OPlibVop.otl
Vop/vectofloat /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/vectofloat otls/OPlibVop.otl
Vop/texture /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/texture otls/OPlibVop.otl
Vop/not /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/not otls/OPlibVop.otl
Vop/length /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/length otls/OPlibVop.otl
Vop/raybounce /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/raybounce otls/OPlibVop.otl
Vop/pbrdiffuse /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/pbrdiffuse otls/OPlibVop.otl
Vop/fresnel /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/fresnel otls/OPlibVop.otl
Vop/alphamix /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/alphamix otls/OPlibVop.otl
Object/hlight /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibObject.otl
Object/hlight otls/OPlibObject.otl
Vop/switchlightingbsdf /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/switchlightingbsdf otls/OPlibVop.otl
Vop/addconst /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/addconst otls/OPlibVop.otl
Vop/inttovec /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/inttovec otls/OPlibVop.otl
Vop/albedo /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/albedo otls/OPlibVop.otl
Vop/surfacecolor /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/surfacecolor otls/OPlibVop.otl
Vop/exp /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/exp otls/OPlibVop.otl
Vop/dot /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/dot otls/OPlibVop.otl
Vop/negate /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/negate otls/OPlibVop.otl
Vop/physicalsss /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/physicalsss otls/OPlibVop.otl
Vop/indirectlighting /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/indirectlighting otls/OPlibVop.otl
Vop/isshadow /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/isshadow otls/OPlibVop.otl
Vop/twoway /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/twoway otls/OPlibVop.otl
Vop/volumevopglobal /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/volumevopglobal otls/OPlibVop.otl
Vop/ifconnected /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/ifconnected otls/OPlibVop.otl
Vop/mix /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/mix otls/OPlibVop.otl
Vop/conserveenergy /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/conserveenergy otls/OPlibVop.otl
Driver/ifd /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibDriver.otl
Driver/ifd otls/OPlibDriver.otl
Vop/aanoise /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/aanoise otls/OPlibVop.otl
Vop/normalize /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/normalize otls/OPlibVop.otl
Vop/fit /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/fit otls/OPlibVop.otl
Vop/surfacemodel /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/surfacemodel otls/OPlibVop.otl
Vop/frontface /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/frontface otls/OPlibVop.otl
Vop/shadow /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/shadow otls/OPlibVop.otl
Vop/luminance /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/luminance otls/OPlibVop.otl
Vop/hvectovec /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/hvectovec otls/OPlibVop.otl
Vop/complement /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/complement otls/OPlibVop.otl
Vop/floattovec /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/floattovec otls/OPlibVop.otl
Vop/invert /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/invert otls/OPlibVop.otl
Vop/lighting /Library/Frameworks/Houdini.framework/Versions/11.0.556/Resources/houdini/otls/OPlibVop.otl
Vop/lighting otls/OPlibVop.otl
0707070000010000000006660000000000000000010000001147726722100001500000475470.OPdummydefs INDX           2   INDEX_SECTION      Ln   	Vop/clamp    
Lk   Vop/pbrspecular  '  Lk   Vop/uvcoords  70  cLk   Vop/isconnected  8  Lk   Vop/degtorad  >  Lem   Vop/directlighting  E   Lk   Vop/mulconst  `  Lg;   Vop/volumevopoutput  fh  Lg;   Vop/inttofloat  h  Lg;   Vop/computetan  k  Lk   Vop/pow  n  Lk   Vop/vectofloat  v%  Lk   Vop/texture  |  Lk   Vop/not  D  eLk   
Vop/length    FLg;   Vop/raybounce    Lk   Vop/pbrdiffuse    Lk   Vop/fresnel    2Lk   Vop/alphamix    Lk   Object/hlight    aiLd   Vop/switchlightingbsdf U  Lk   Vop/addconst   Lg;   Vop/inttovec 	   Lg;   
Vop/albedo   Lk   Vop/surfacecolor   Lk   Vop/exp D  Lem   Vop/dot !'  	9Lk   
Vop/negate *`  Lem   Vop/physicalsss .  JLk   Vop/indirectlighting y  7Lk   Vop/isshadow   Lem   
Vop/twoway   Lem   Vop/volumevopglobal   Lg;   Vop/ifconnected !  Lk   Vop/mix   
Lk   Vop/conserveenergy   Lk   
Driver/ifd 9  Le   Vop/aanoise   
Lh   Vop/normalize \  	Lk   Vop/fit e  pLi   Vop/surfacemodel   fLk   Vop/frontface P  DLk   
Vop/shadow T  Lem   Vop/luminance W  Lk   Vop/hvectovec ZZ  Lk   Vop/complement ]J  KLem   Vop/floattovec d  Lem   
Vop/invert j  ;Lk   Vop/lighting n  Lem   1      clamp   Clamp   oplib:/Vop/clamp?Vop/clamp   	VOP_clamp           Vop   vop   VOPall       *        Ln        pbrspecular   Physically Based Specular   &oplib:/Vop/pbrspecular?Vop/pbrspecular   VOP_specular           Vop                       	Ln        uvcoords   UVcoords    oplib:/Vop/uvcoords?Vop/uvcoords   VOP_uvcoords           Vop               displace shadow surface        Ln       isconnected   Is Connected   &oplib:/Vop/isconnected?Vop/isconnected   VOP_isconnected           Vop   vop   VOPall       *        Ln        degtorad   Degrees To Radians    oplib:/Vop/degtorad?Vop/degtorad   VOP_degtorad           Vop   vop   VOPall       *        Ln        directlighting   Direct Lighting   ,oplib:/Vop/directlighting?Vop/directlighting   VOP_directlighting           Vop               (surface photon displace light shadow fog       Ln        mulconst   Multiply Constant    oplib:/Vop/mulconst?Vop/mulconst   VOP_mulconst           Vop   vop   VOPall       *        Ln        volumevopoutput   Volume VOP Output   .oplib:/Vop/volumevopoutput?Vop/volumevopoutput   VOP_volumevexoutput           Vop               *       Ln       
inttofloat   Integer To Float   $oplib:/Vop/inttofloat?Vop/inttofloat   VOP_inttofloat           Vop   vop   VOPall                Ln        
computetan   Compute Tangents   $oplib:/Vop/computetan?Vop/computetan   VOP_computetan           Vop               !displace fog light shadow surface       Ln       pow   Power   oplib:/Vop/pow?Vop/pow   VOP_pow           Vop   vop   VOPall       *        Ln        
vectofloat   Vector To Float   $oplib:/Vop/vectofloat?Vop/vectofloat   VOP_vectofloat           Vop   vop   VOPall       *        Ln        texture   Texture   oplib:/Vop/texture?Vop/texture   VOP_texture           Vop   vop   VOPall       surface displace light shadow        Ln        not   Not   oplib:/Vop/not?Vop/not   VOP_not           Vop   vop   VOPall       *        Ln        length   Length   oplib:/Vop/length?Vop/length   
VOP_length           Vop   vop   VOPall       *        Ln        	raybounce   Ray Bounce Level   "oplib:/Vop/raybounce?Vop/raybounce   VOP_raybounce           Vop   vop   VOPall       (surface photon displace light shadow fog        Ln        
pbrdiffuse   Physically Based Diffuse   $oplib:/Vop/pbrdiffuse?Vop/pbrdiffuse   VOP_diffuse           Vop                       Ln        fresnel   Fresnel   oplib:/Vop/fresnel?Vop/fresnel   VOP_fresnel           Vop   vop   VOPall       surface fog rsl_*        Ln        alphamix   	Alpha Mix    oplib:/Vop/alphamix?Vop/alphamix   VOP_alphamix           Vop   subnet   SUBvop       surface fog rsl_surface        Ln       hlight   Light   "oplib:/Object/hlight?Object/hlight   	OBJ_light           Object               subtype=light        Ln        switchlightingbsdf   Switch Lighting BSDF   4oplib:/Vop/switchlightingbsdf?Vop/switchlightingbsdf   VOP_switchlightingbsdf           Vop   vop   VOPall       (surface photon displace light shadow fog        Ln        addconst   Add Constant    oplib:/Vop/addconst?Vop/addconst   VOP_addconst           Vop   vop   VOPall       *        Ln        inttovec   Integer To Vector    oplib:/Vop/inttovec?Vop/inttovec   VOP_inttovec           Vop   vop   VOPall                Ln        albedo   Albedo   oplib:/Vop/albedo?Vop/albedo   
VOP_albedo           Vop                        Ln        surfacecolor   Surface Color   (oplib:/Vop/surfacecolor?Vop/surfacecolor   opdef:/Vop/surfacecolor?Icon           Vop               displace light shadow surface       Ln       exp   Exponential   oplib:/Vop/exp?Vop/exp   VOP_exp           Vop   vop   VOPall       *        Ln        dot   Dot Product   oplib:/Vop/dot?Vop/dot   VOP_dot           Vop   vop   VOPall       *        Ln        negate   Negate   oplib:/Vop/negate?Vop/negate   
VOP_negate           Vop   vop   VOPall       *        Ln        physicalsss   Physical SSS   &oplib:/Vop/physicalsss?Vop/physicalsss   VOP_physicalsss           Vop                        Ln        indirectlighting   Indirect Lighting   0oplib:/Vop/indirectlighting?Vop/indirectlighting   VOP_indirectlighting           Vop               (surface photon displace light shadow fog       Ln        isshadow   Is Shadow Ray    oplib:/Vop/isshadow?Vop/isshadow   VOP_isshadow           Vop   vop   VOPall       surface fog        Ln        twoway   Two Way Switch   oplib:/Vop/twoway?Vop/twoway   
VOP_twoway           Vop   vop   VOPall       *        Ln        volumevopglobal   Volume VOP Global Parameters   .oplib:/Vop/volumevopglobal?Vop/volumevopglobal   VOP_volumevexglobal           Vop               *        Ln       ifconnected   If Connected   &oplib:/Vop/ifconnected?Vop/ifconnected   VOP_ifconnected           Vop   vop   VOPall       *        Ln        mix   Mix   oplib:/Vop/mix?Vop/mix   VOP_mix           Vop   vop   VOPall       *        Ln        conserveenergy   Conserve Energy   ,oplib:/Vop/conserveenergy?Vop/conserveenergy   VOP_conserveenergy           Vop                       Ln       ifd   Mantra   oplib:/Driver/ifd?Driver/ifd   
ROP_mantra           Driver   soho/dialogs   ROPsoho              'Ln        aanoise   Anti-Aliased Noise   oplib:/Vop/aanoise?Vop/aanoise   VOP_aanoise           Vop   vop   VOPall       *        Ln        	normalize   	Normalize   "oplib:/Vop/normalize?Vop/normalize   VOP_normalize           Vop   vop   VOPall       *        Ln        fit   	Fit Range   oplib:/Vop/fit?Vop/fit   VOP_fit           Vop   vop   VOPall       *        Ln        surfacemodel   Surface Model   (oplib:/Vop/surfacemodel?Vop/surfacemodel   VOP_surfacemodel           Vop               (surface photon displace light shadow fog       [Ln       	frontface   
Front Face   "oplib:/Vop/frontface?Vop/frontface   VOP_frontface           Vop   vop   VOPall       %surface fog light shadow photon rsl_*        Ln        shadow   Shadow   oplib:/Vop/shadow?Vop/shadow   
VOP_shadow           Vop   vop   VOPall       surface fog        Ln        	luminance   	Luminance   "oplib:/Vop/luminance?Vop/luminance   VOP_luminance           Vop   vop   VOPall       *        Ln        	hvectovec   Vector4 To Vector   "oplib:/Vop/hvectovec?Vop/hvectovec   VOP_hvectovec           Vop   vop   VOPall                Ln        
complement   
Complement   $oplib:/Vop/complement?Vop/complement   VOP_complement           Vop   vop   VOPall       *        Ln        
floattovec   Float To Vector   $oplib:/Vop/floattovec?Vop/floattovec   VOP_floattovec           Vop   vop   VOPall       *        Ln        invert   Invert   oplib:/Vop/invert?Vop/invert   
VOP_invert           Vop   vop   VOPall                Ln        lighting   Lighting Model    oplib:/Vop/lighting?Vop/lighting   VOP_lighting           Vop   vop   VOPall       surface rsl_*        Ln  INDX              DialogScript      
hLt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"clamp"
    script	"clamp"
    label	"clamp"


    code {
	"$clamp = clamp($val, $min, $max);"
    }

    input	float	val	"Input Value"
    input	float	min	"Minimum Value"
    input	float	max	"Maximum Value"
    output	float	clamp	"Clamped Value"

    signature	"1D Float Values"	default	{ }
    signature	"1D Integer Values"	i  { int int int int }
    signature	"3D Vector Values"	v  { vector vector vector vector }
    signature	"3D Point Values"	p  { point point point point }
    signature	"3D Normal Values"	n  { normal normal normal normal }
    signature	"3D Color Values"	c  { color color color color }
    signature	"1D Uniform Float"	uf { ufloat ufloat ufloat ufloat }
    signature	"3D Uniform Vector"	uv { uvector uvector uvector uvector }
    signature	"3D Uniform Point"	up { upoint upoint upoint upoint }
    signature	"3D Uniform Normal"	un { unormal unormal unormal unormal }
    signature	"3D Uniform Color"	uc { ucolor ucolor ucolor ucolor }
    signature	"4D Values"		v4 { vector4 vector4 vector4 vector4 }

    group {
	name 	"gs"
	label	"Scalar Defaults"

	VOP_FLT_PARM(min, "1D Float Min", 0)
	VOP_FLT_PARM(max, "1D Float Max", 1)
	VOP_INT_PARM(min_i, "1D Integer Min", 0)
	VOP_INT_PARM(max_i, "1D Integer Max", 1)
    }

    group {
	name 	"gv"
	label	"Vector Defaults"

	VOP_VEC_PARM(min_v, "3D Vector Min", 0, 0, 0)
	VOP_VEC_PARM(max_v, "3D Vector Max", 1, 1, 1)
	VOP_VEC_PARM(min_p, "3D Point Min", 0, 0, 0)
	VOP_VEC_PARM(max_p, "3D Point Max", 1, 1, 1)
	VOP_VEC_PARM(min_n, "3D Normal Min", 0, 0, 0)
	VOP_VEC_PARM(max_n, "3D Normal Max", 1, 1, 1)
	VOP_CLR_PARM(min_c, "3D Color Min", 0, 0, 0)
	VOP_CLR_PARM(max_c, "3D Color Max", 1, 1, 1)
	VOP_CLR4_PARM(min_v4, "4D Color Min", 0, 0, 0, 0)
	VOP_CLR4_PARM(max_v4, "4D Color Max", 1, 1, 1, 1)
    }

    group {
	name 	"gu"
	label	"Uniform Defaults"
	VOP_FLT_PARM(min_uf, "1D Float Min", 0)
	VOP_FLT_PARM(max_uf, "1D Float Max", 1)
	VOP_VEC_PARM(min_uv, "3D Vector Min", 0, 0, 0)
	VOP_VEC_PARM(max_uv, "3D Vector Max", 1, 1, 1)
	VOP_VEC_PARM(min_up, "3D Point Min", 0, 0, 0)
	VOP_VEC_PARM(max_up, "3D Point Max", 1, 1, 1)
	VOP_VEC_PARM(min_un, "3D Normal Min", 0, 0, 0)
	VOP_VEC_PARM(max_un, "3D Normal Max", 1, 1, 1)
	VOP_CLR_PARM(min_uc, "3D Color Min", 0, 0, 0)
	VOP_CLR_PARM(max_uc, "3D Color Max", 1, 1, 1)
    }
}
INDX              DialogScript      L@# Dialog script for pbrspecular automatically generated 07/16/10 16:41:50

{
    name	pbrspecular
    script	pbrspecular
    label	"Physically Based Specular"

    outercode {
	"#include \"voplib.h\""
	""
	"// To avoid numerical issues due to division by 0"
	"#define SPEC_MIN_WIDTH 1e-3"
	""
	"// To avoid numerical issues due taking logarithms of a value close to 0."
	"// We'll blend with an exponent of 1 when the cosine is less than this"
	"// value."
	"#define SPEC_MIN_COSINE2 0.1"
	""
	"// Convert a highlight angle to an exponent to be passed to the phonglobe()"
	"// operation."
	"float"
	"pbrspecular_toexponent(float width)"
	"{"
	"    float       costheta2;"
	"    float       costheta2_clamped;"
	"    float       exponent;"
	""
	"    costheta2 = max(width, SPEC_MIN_WIDTH);"
	"    costheta2 = 1-costheta2*costheta2;"
	"    costheta2_clamped = max(costheta2, SPEC_MIN_COSINE2);"
	""
	"    exponent = -2*log(2)/log(costheta2_clamped) + 1;"
	"    if (costheta2 < 0.1)"
	"    {"
	"        exponent = lerp(1.0, exponent, costheta2 / SPEC_MIN_COSINE2);"
	"    }"
	""
	"    return exponent;"
	"}"
    }

    code {
	"vector $tnN = $isconnected_nN ? $nN : normalize(N);"
	"vector $tnI = $isconnected_nI ? $nI : normalize(I);"
	"vector $tnR = $isconnected_nR ? $nR : reflect($tnI, $tnN);"
	""
	"float $width = sin(radians($angle));"
	""
	"if ($width > SPEC_MIN_WIDTH)"
	"{"
	"    float       $uexp, $vexp;"
	""
	"    $uexp = $vexp = pbrspecular_toexponent($width);"
	"    if ($model != \"cone\" && abs((float)$aniso) > SPEC_MIN_WIDTH)"
	"    {"
	"        vector  $tanu, $tanv;"
	""
	"        if (!$isconnected_utan)"
	"            $tanu = dPds;"
	"        else"
	"            $tanu = $utan;"
	"        if (!$isconnected_vtan)"
	"            $tanv = dPdt;"
	"        else"
	"            $tanv = $vtan;"
	"        if ($aniso < 0)"
	"            $uexp *= pbrspecular_toexponent(1+$aniso);"
	"        else"
	"            $vexp *= pbrspecular_toexponent(1-$aniso);"
	"        if ($model == \"blinn\")"
	"            $f = ashikhmin($tnN, $uexp, $vexp, $tanu, $tanv, \"label\", $label);"
	"        else"
	"            $f = phonglobe($tnN, $tnR, $uexp, $vexp, $tanu, $tanv, \"label\", $label);"
	"    }"
	"    else"
	"    {"
	"        if ($model == \"cone\")"
	"            $f = cone($tnN, $tnR, radians($angle), \"label\", $label);"
	"        else if ($model == \"blinn\")"
	"            $f = blinn($tnN, $uexp, \"label\", $label);"
	"        else"
	"            $f = phonglobe($tnN, $tnR, $uexp, \"label\", $label);"
	"    }"
	"    $f *= 1.0 / luminance(albedo($f));"
	"}"
	"else"
	"{"
	"    $f = specular($tnR, \"label\", $label);"
	"}"
    }

    input	string	model	"Specular Model"
    input	string	label	"Component Label"
    input	vector	nR	Direction
    input	vector	nN	Normal
    input	vector	nI	"Incident Direction"
    input	float	angle	"Highlight Angle"
    input	float	aniso	"Anisotropic Bias"
    input	vector	utan	"U Tangent"
    input	vector	vtan	"V Tangent"
    output	bsdf	f	BSDF
    inputflags	model	0
    inputflags	label	0
    inputflags	nR	0
    inputflags	nN	0
    inputflags	nI	0
    inputflags	angle	0
    inputflags	aniso	0
    inputflags	utan	0
    inputflags	vtan	0
    signature	"Default Inputs"	default	{ string string vector vector vector float float vector vector bsdf }

    outputoverrides	default
    {
	___begin	auto
			(0)
    }

    help {
	""
    }

    parm {
	name	"model"
	label	"Specular Model"
	type	ordinal
	default	{ "0" }
	menu	{
	    "phong"	"Phong"
	    "blinn"	"Blinn"
	    "cone"	"Cone"
	}
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"label"
	label	"Component Label"
	type	string
	default	{ "" }
	menureplace	{
	    "diffuse"	"Diffuse"
	    "specular"	"Specular"
	    "reflect"	"Reflect"
	    "refract"	"Refract"
	}
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"angle"
	label	"Highlight Angle"
	type	float
	default	{ "10" }
	range	{ 0 90 }
	export	none
    }
    parm {
	name	"aniso"
	label	"Anisotropic Bias"
	type	float
	default	{ "0" }
	disablewhen	"{ model == cone }"
	range	{ -1 1 }
	export	none
    }
}
INDX              Contents       WLk   DialogScript   W   G;0707070000010000000006660000000000000000010000001147726576600001300000000000TRAILER!!! # Dialog script for uvcoords automatically generated 10/05/07 13:36:11

{
    name	uvcoords
    script	uvcoords
    label	UVcoords

    signature	"Default Inputs"	default	{ }

    help {
	""
    }

}
INDX              DialogScript      WLt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

{
    name	"isconnected"
    script	"isconnected"
    label	"isconnected"


    code {
	"$connected = $isconnected_input ? 1 : 0;"
    }

    input	float	input		"Input"
    output	int	connected	"Input Connected Or Not"

    signature	"Float Values"	 	default { }
    signature	"Integer Values"	i	{ int int }
    signature	"String Values"		s	{ string int }
    signature	"Vector Values" 	v	{ vector int }
    signature	"Point Values"	 	p	{ point int }
    signature	"Normal Values" 	n	{ normal int }
    signature	"Color Values" 		c	{ color int }
    signature	"Vector4 Values" 	v4	{ vector4 int }
    signature	"Matrix3 Values" 	m3	{ matrix3 int }
    signature	"Matrix Values" 	m	{ matrix int }

    signature	"Uniform Float Values"	uf	{ ufloat int }
    signature	"Uniform Vector Values"	uv	{ uvector int }
    signature	"Uniform Point Values"	up	{ upoint int }
    signature	"Uniform Normal Values"	un	{ unormal int }
    signature	"Uniform Color Values"	uc	{ ucolor int }
    signature	"Uniform Matrix Values"	um	{ umatrix int }
}
INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"degtorad"
    script	"degtorad"
    label	"degtorad"

    outercode {
	INCLUDE_VOPLIB
    }

    code {
	"$rad = vop_radians($deg);"
    }

    input	float	deg	"Degrees"
    output	float	rad	"Radians"
    signature	"1D Float Values"		default	{ }
    signature	"3D Vector Values"	v	{ vector vector }
    signature	"3D Point Values"	p	{ point point }
    signature	"3D Normal Values"	n	{ normal normal }
    signature	"3D Color Values"	c	{ color color }
    signature	"4D Values"		v4	{ vector4 vector4 }

    signature	"3D Uniform Float"	uf	{ ufloat ufloat }
    signature	"3D Uniform Vector"	uv	{ uvector uvector }
    signature	"3D Uniform Point"	up	{ upoint upoint }
    signature	"3D Uniform Normal"	un	{ unormal unormal }
    signature	"3D Uniform Color"	uc	{ ucolor ucolor }

    group {
	name 	"gv"
	label	"Defaults"
	VOP_FLT_PARM(deg,   "1D Float Input", 1)
	VOP_VEC_PARM(deg_v, "3D Vector", 1, 1, 1)
	VOP_VEC_PARM(deg_p, "3D Point", 1, 1, 1)
	VOP_VEC_PARM(deg_n, "3D Normal", 1, 1, 1)
	VOP_CLR_PARM(deg_c, "3D Color", 1, 1, 1)
	VOP_VEC4_PARM(deg_v4,"4D Integer", 1, 1, 1, 1)
    }
    group {
	name 	"gu"
	label	"Uniform Defaults"
	VOP_FLT_PARM(deg_uf, "1D Float", 1)
	VOP_VEC_PARM(deg_uv, "3D Vector", 1, 1, 1)
	VOP_VEC_PARM(deg_up, "3D Point", 1, 1, 1)
	VOP_VEC_PARM(deg_un, "3D Normal", 1, 1, 1)
	VOP_CLR_PARM(deg_uc, "3D Color", 1, 1, 1)
    }
}
INDX              DialogScript      L# Dialog script for directlighting automatically generated 09/22/10 19:48:57

{
    name	directlighting
    script	directlighting
    label	"Direct Lighting"

    outercode {
	"#ifndef VOP_EXPORT_DEFINES"
	"#define VOP_EXPORT_DEFINES"
	""
	"#include \"pbrexports.h\""
	"#include \"pbrpathtrace.h\""
	"#include \"math.h\""
	""
	"#endif"
    }

    code {
	"int     $lights[];"
	"int     $ismicropoly = 0;"
	"int     $diffuselevel = 0;"
	"int     $fakecaustics = 0;"
	"float   $colorlimit = 1024;"
	"string  $colorspace = \"linear\";"
	"int     $n, $i, $idx;"
	"vector  $dclr_t;"
	"vector  $rclr_t;"
	"vector  $tclr_t;"
	"vector  $sclr_t;"
	"vector  $vclr_t;"
	"string  $engine;"
	"int     $mask = $isconnected_bounces ? $bounces : PBR_ALL_MASK;"
	"int     $shadowmask = $isconnected_sbounces ? $sbounces : PBR_ALL_MASK;"
	"vector  $opac = $isconnected_Of ? $Of : {1,1,1};"
	"int     $sid = $isconnected_SID ? $SID : SID;"
	"float   $now = $isconnected_Time ? $Time : Time;"
	"vector  $pos = $isconnected_P ? $P : P;"
	"vector  $dir = $isconnected_I ? $I : I;"
	"bsdf    $fval = $F;"
	""
	"renderstate(\"renderer:colorlimit\", $colorlimit);"
	"renderstate(\"renderer:colorspace\", $colorspace);"
	"renderstate(\"object:fakecaustics\", $fakecaustics);"
	"if (getraylevel() == 0)"
	"{"
	"    renderstate(\"renderer:renderengine\", $engine);"
	"    $ismicropoly = $engine == \"micropoly\" ||"
	"                   $engine == \"pbrmicropoly\";"
	"}"
	"else"
	"{"
	"    rayimport(\"diffuselevel\", diffuselevel);"
	"}"
	""
	"if ($isconnected_lightmask)"
	"    $lights = getlights(\"lightmask\", $lightmask);"
	"else"
	"    $lights = getlights();"
	""
	"$mask &= getbounces($fval);"
	"$shadowmask &= getbounces($fval);"
	""
	"$n = arraylength($lights);"
	""
	"FOR_ALL_EXPORTS3(EXPORT_DEF, direct, $_l[]);"
	"FOR_ALL_EXPORTS3(EXPORT_RESIZE, direct, $_l);"
	""
	"vector  $lclr_l[];"
	"vector  $lclr_t;"
	"resize($lclr_l, $n);"
	""
	"for ($i = 0; $i < $n; $i++)"
	"{"
	"    $idx = $lights[$i];"
	"    FOR_ALL_EXPORTS3(EXPORT_ZERO, direct, $_l[idx])"
	"    $lclr_l[idx] = {0,0,0};"
	"}"
	""
	"$clr = 0;"
	"$noshadow = 0;"
	"$nsam = 0;"
	"$imask = 0;"
	""
	"if ($mode == \"multisample\")"
	"{"
	"    pbr_direct_lighting("
	"            $clr,"
	"            $lclr_l,"
	"            $nsam,"
	"            $imask,"
	"            $direct_diffuse_l,"
	"            $direct_specular_l,"
	"            $direct_reflect_l,"
	"            $direct_refract_l,"
	"            $direct_volume_l,"
	"            $sid,"
	"            $pos,"
	"            $fval,"
	"            $dir,"
	"            normal_bsdf($fval),"
	"            $now,"
	"            {1,1,1},"
	"            $lights,"
	"            $mask,"
	"            $shadowmask,"
	"            0,"
	"            $doshadow,"
	"            $multilight,"
	"            $fakecaustics,"
	"            $colorlimit,"
	"            $diffuselevel,"
	"            1e6F,"
	"            getraylevel() == 0,"
	"            $colorspace,"
	"            $ismicropoly);"
	"}"
	"else"
	"{"
	"    vector      $nml = normal_bsdf($F);"
	"    vector      $col;"
	"    vector      $shadow_col;"
	"    string      $olmask;"
	""
	"    renderstate(\"object:lightmask\", $olmask);"
	""
	"    illuminance($pos, $nml, PI,"
	"            $isconnected_lightmask ? $lightmask : $olmask)"
	"    {"
	"        $shadow_col = Cl;"
	""
	"        $idx = getlightid(getlightname());"
	"        $col = eval_bsdf($fval, -$dir, normalize(L), $mask);"
	"        $lclr_l[idx] += $shadow_col * $col;"
	"        if ($doshadow)"
	"        {"
	"            shadow($shadow_col);"
	"        }"
	"        $col *= $shadow_col;"
	"        $direct_diffuse_l[idx] += $shadow_col * eval_bsdf("
	"                $fval, -$dir, normalize(L), $mask & PBR_DIFFUSE_MASK);"
	"        $direct_reflect_l[idx] += $shadow_col * eval_bsdf("
	"                $fval, -$dir, normalize(L), $mask & PBR_GLOSSY_MASK);"
	"        $direct_refract_l[idx] += $shadow_col * eval_bsdf("
	"                $fval, -$dir, normalize(L), $mask & PBR_GLOSSY_MASK);"
	"        $direct_volume_l[idx] += $shadow_col * eval_bsdf("
	"                $fval, -$dir, normalize(L), $mask & PBR_VOLUME_MASK);"
	"        $clr += $col;"
	"        $nsam++;"
	"    }"
	"}"
	""
	"// Premultiply"
	"$clr *= $opac;"
	""
	"$dclr_t = 0;"
	"$rclr_t = 0;"
	"$tclr_t = 0;"
	"$sclr_t = 0;"
	"$vclr_t = 0;"
	"$lclr_t = 0;"
	""
	"for ($i = 0; $i < $n; $i++)"
	"{"
	"    $idx = $lights[$i];"
	""
	"    $dclr = $direct_diffuse_l[idx] * $opac;"
	"    $rclr = $direct_reflect_l[idx] * $opac;"
	"    $tclr = $direct_refract_l[idx] * $opac;"
	"    $sclr = $direct_specular_l[idx] * $opac;"
	"    $vclr = $direct_volume_l[idx] * $opac;"
	"    $noshadow = lclr_l[idx] * $opac;"
	"    $dclr_t += $dclr;"
	"    $rclr_t += $rclr;"
	"    $tclr_t += $tclr;"
	"    $sclr_t += $sclr;"
	"    $vclr_t += $vclr;"
	"    $lclr_t += $noshadow;"
	""
	"    storelightexports(getlightname($idx));"
	"}"
	""
	"$dclr = $dclr_t;"
	"$rclr = $rclr_t;"
	"$tclr = $tclr_t;"
	"$sclr = $sclr_t;"
	"$vclr = $vclr_t;"
	"$noshadow = $lclr_t;"
    }

    input	bsdf	F	BSDF
    input	vector	Of	Opacity
    input	vector	P	Position
    input	vector	I	Direction
    input	int	SID	"Sample ID"
    input	float	Time	Time
    input	string	lightmask	"Light Mask"
    input	int	bounces	"Bounce Mask"
    input	int	sbounces	"Shadow Bounce Mask"
    input	int	doshadow	"Enable Shadows"
    input	int	dolightmask	"Use Light Mask"
    input	int	multilight	"Sample All Lights"
    output	vector	clr	Color
    output	vector	noshadow	"Unshadowed Color"
    output	vector	shadow	"Shadow Matte"
    output	float	nsam	"Sample Count"
    output	int	imask	"Exclude Indirect Bounces"
    output	vector	dclr	Diffuse
    output	vector	rclr	Reflect
    output	vector	tclr	Refract
    output	vector	sclr	Specular
    output	vector	vclr	Volume
    inputflags	F	0
    inputflags	Of	0
    inputflags	P	0
    inputflags	I	0
    inputflags	SID	0
    inputflags	Time	0
    inputflags	lightmask	0
    inputflags	bounces	0
    inputflags	sbounces	0
    inputflags	doshadow	0
    inputflags	dolightmask	0
    inputflags	multilight	0
    signature	"Default Inputs"	default	{ bsdf vector vector vector int float string int int int int int vector vector vector float int vector vector vector vector vector }

    outputoverrides	default
    {
	___begin	auto
			(0,0,0)
	___begin	auto
			(0,0,0)
	___begin	auto
			(0,0,0)
	___begin	auto
			(0)
	___begin	auto
			(0)
	___begin	auto
			(0,0,0)
	___begin	auto
			(0,0,0)
	___begin	auto
			(0,0,0)
	___begin	auto
			(0,0,0)
	___begin	auto
			(0,0,0)
    }

    help {
	""
    }

    parm {
	name	"mode"
	label	"Lighting Mode"
	type	string
	default	{ "multisample" }
	menu	{
	    "multisample"	"Multiple Importance Sampling"
	    "illuminance"	"Illuminance Loop"
	}
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"multilight"
	label	"Sample All Lights"
	type	toggle
	default	{ "1" }
	disablewhen	"{ mode != multisample }"
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"doshadow"
	label	"Enable Shadows"
	type	toggle
	default	{ "1" }
	range	{ 0 1 }
	export	none
    }
}
INDX              DialogScript      xLt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

{
    name	"mulconst"
    script	"mulconst"
    label	"mulconst"


    code {
	"$scaled = $val * $mulconst;"
    }

    input	float	val		"Input Value"
    output	float	scaled		"Input Value * Constant"
    signature	"1D Float Values"	default	{ }
    signature	"1D Integer Values"	i	{ int int }
    signature	"3D Vector Values"	v	{ vector vector }
    signature	"3D Point Values"	p	{ point point }
    signature	"3D Normal Values"	n	{ normal normal }
    signature	"3D Color Values"	c	{ color color }
    signature	"3D BSDF Values"	b	{ bsdf bsdf }
    signature	"4D Values"		v4	{ vector4 vector4 }
    signature	"3x3 Matrix "		m3	{ matrix3 matrix3 }
    signature	"4x4 Matrix "		m4	{ matrix matrix }

    signature	"1D Uniform Float"	uf	{ ufloat ufloat }
    signature	"3D Uniform Vector"	uv	{ uvector uvector }
    signature	"3D Uniform Point"	up	{ upoint upoint }
    signature	"3D Uniform Normal"	un	{ unormal unormal }
    signature	"3D Uniform Color"	uc	{ ucolor ucolor }

    parm {
	name	mulconst
	label	"Multiplier"
	type	float
	size	1
	default	{ 1.0 }
    }
}

INDX              Contents       WLg;   DialogScript   W  I0707070000010000000006660000000000000000010000001147726347300001300000000000TRAILER!!! # Dialog script for volumevopoutput automatically generated 03/13/09 14:37:19

{
    name	volumevopoutput
    script	volumevexoutput
    label	"Volume VOP Output"

    input	float	density	"Combined Value"
    signature	"Default Inputs"	default	{ }

    help {
	""
    }

    parm {
	name	"sum"
	label	"sum"
	type	float
	invisible
	default	{ "0" }
	range	{ 0 10 }
	export	none
    }
}
INDX              DialogScript      YLt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

{
    name	"inttofloat"
    script	"inttofloat"
    label	"inttofloat"


    code {
	"$fval = $ival;"
    }

    input	int	ival	"Integer Value"
    output	float	fval	"Float Output"

    parm {
	name	ival
	label	"Integer Input"
	type	int
	size	1
	default	{ 0 }
    }
}

INDX              Contents       WLk   DialogScript   W  KN=0707070000010000000006660000000000000000010000001147726576700001300000000000TRAILER!!! # Dialog script for computetan automatically generated 01/13/10 16:40:28

{
    name	computetan
    script	computetan
    label	"Compute Tangents"

    outercode {
	"#include \"voplib.h\""
    }

    input	string	tstyle	"Tangent Style"
    input	vector	uv	Parameter
    input	vector	N	"Surface Normal"
    input	vector	utan	"U Tangent"
    input	vector	vtan	"V Tangent"
    signature	"Default Inputs"	default	{ }

    help {
	""
    }

    parm {
	name	"tstyle"
	label	"Tangent Style"
	type	string
	default	{ "geo" }
	menu	{
	    "geo"	"Use Geometric Tangents"
	    "world"	"Intrinsic World Space"
	    "object"	"Intrinsic Object Space"
	    "uv"	"Compute From UV"
	    "inputs"	"Use Connected utan, vtan"
	}
	range	{ 0 1 }
	export	none
    }
}
INDX              DialogScript      mLt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"pow"
    script	"pow"
    label	"pow"

    outercode {
	INCLUDE_VOPLIB
    }

    code {
	"$pow = vop_pow($val, $exp);"
    }

    input	float	val	"Input Value"
    input	float	exp	"Exponent"
    output	float	pow	"Output Value"

    signature	"1D Float Values"		default	{ }
    signature	"3D Vector Values"	v	{ vector float vector }
    signature	"3D Point Values"	p	{ point float point }
    signature	"3D Normal Values"	n	{ normal float normal }
    signature	"3D Color Values"	c	{ color float color }
    signature	"4D Values"		v4	{ vector4 float vector4 }

    signature	"3D Uniform Float"	uf	{ ufloat ufloat ufloat }
    signature	"3D Uniform Vector"	uv	{ uvector ufloat uvector }
    signature	"3D Uniform Point"	up	{ upoint ufloat upoint }
    signature	"3D Uniform Normal"	un	{ unormal ufloat unormal }
    signature	"3D Uniform Color"	uc	{ ucolor ufloat ucolor }

    group {
	name 	"gv"
	label	"Defaults"
	VOP_FLT_PARM(val,   "1D Float Input", 1)
	VOP_VEC_PARM(val_v, "3D Vector", 1, 1, 1)
	VOP_VEC_PARM(val_p, "3D Point", 1, 1, 1)
	VOP_VEC_PARM(val_n, "3D Normal", 1, 1, 1)
	VOP_CLR_PARM(val_c, "3D Color", 1, 1, 1)
	VOP_VEC4_PARM(val_v4,"4D Vector", 1, 1, 1, 1)
    }
    group {
	name 	"gu"
	label	"Uniform Defaults"
	VOP_FLT_PARM(val_uf, "1D Float", 1)
	VOP_VEC_PARM(val_uv, "3D Vector", 1, 1, 1)
	VOP_VEC_PARM(val_up, "3D Point", 1, 1, 1)
	VOP_VEC_PARM(val_un, "3D Normal", 1, 1, 1)
	VOP_CLR_PARM(val_uc, "3D Color", 1, 1, 1)
    }
    parm {
	name	exp
	label	"Exponent"
	type	float
	size	1
	default	{ 1.0 }
    }
}

INDX              DialogScript      ZLt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"vectofloat"
    script	"vectofloat"
    label	"vectofloat"

    outercode {
	INCLUDE_VOPLIB
    }

    code {
	"vop_vectofloat($vec, $fval1, $fval2, $fval3);"
    }

    input	vector	vec	"Input Vector"
    output	float	fval1	"Component 1"
    output	float	fval2	"Component 2"
    output	float	fval3	"Component 3"

    VOP_VEC_PARM(vec, "Input Vector",   0, 0, 0)
    VOP_VEC_PARM(vec_p, "Input Point",  0, 0, 0)
    VOP_VEC_PARM(vec_n, "Input Normal", 0, 0, 0)
    VOP_VEC_PARM(vec_c, "Input Color",  0, 0, 0)

    VOP_VEC_PARM(vec_uv, "Uniform Vector", 0, 0, 0)
    VOP_VEC_PARM(vec_up, "Uniform Point",  0, 0, 0)
    VOP_VEC_PARM(vec_un, "Uniform Normal", 0, 0, 0)
    VOP_VEC_PARM(vec_uc, "Uniform Color",  0, 0, 0)

    signature	"3D Vector Values"	default	{ vector float float float }
    signature	"3D Point Values"	p	{ point float float float }
    signature	"3D Normal Values"	n	{ normal float float float }
    signature	"3D Color Values"	c	{ color float float float }

    signature	"3D Uniform Vector"	uv	{ uvector ufloat ufloat ufloat }
    signature	"3D Uniform Point"	up	{ upoint ufloat ufloat ufloat }
    signature	"3D Uniform Normal"	un	{ unormal ufloat ufloat ufloat }
    signature	"3D Uniform Color"	uc	{ ucolor ufloat ufloat ufloat }
}
INDX              DialogScript      mLt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"texture"
    script	"texture"
    label	"texture"


    code {
	"if ($map != \"\") {"
	"    float $myS = $isconnected_s ? $s : s;"
	"    float $myT = $isconnected_t ? $t : t;"
	"    int $fptex = $isconnected_ptexface ? $ptexface : getprimid();"
	"    if ($isconnected_ds != 0 && $isconnected_dt != 0)"
	"    {"
	"        float $tds = $ds*0.5, $tdt = $dt*0.5;"
	"        $color = texture($map,"
	"                     $myS - $tds, $myT - $tdt,"
	"                     $myS + $tds, $myT - $tdt,"
	"                     $myS + $tds, $myT + $tdt,"
	"                     $myS - $tds, $myT + $tdt,"
	"                    \"wrap\", $wrap, \"filter\", $filter,"
	"                    \"width\", $width, \"border\", $border,"
	"                    \"extrapolate\", $extrapol, \"lerp\", $interp,"
	"                    \"channel\", $channel, \"face\", $fptex,"
	"                    \"pixelblur\", $pixelblur);"
	"    }"
	"    else"
	"        $color = texture($map, $myS, $myT, \"wrap\", $wrap,"
	"                    \"filter\", $filter, \"width\", $width,"
	"                    \"border\", $border, \"extrapolate\", $extrapol,"
	"                    \"channel\", $channel, \"face\", $fptex,"
	"                    \"lerp\", $interp, \"pixelblur\", $pixelblur);"
	"} else {"
	"   $color = $defclr;"
	"}"
    }

    input	string	map		"Texture Map"
    input	float	s		"S Coordinate"
    input	float	t		"T Coordinate"
    input	float	ds		"S Derivative"
    input	float	dt		"T Derivative"
    input	string	wrap		"Wrap"
    // The parameters for map and wrap need to occur before the filter
    // macros are invoked (so that the parameters match the input
    // order)
    parm {
        name    map
        label   "Texture Map"
        type    image
        default { "Mandril.pic" }
    }
    parm {
	name	wrap
	label	"Wrap"
	type	string
	menu	{
	    "repeat"	"Repeat"
	    "streak"	"Streak"
	    "decal"	"Decal"
	}
	default	{ "repeat" }
    }
    VOP_FULL_FILTER_INPUT(filter,	"Filter Type")
    VOP_FLT_INPUT_R(	width,		"Filter Width",	1, 1, 10)
    input	vector4	border		"Border Color"
    input	int	extrapol	"Extrapolate Derivatives"
    input	int	interp		"Interpolate MIP Levels"
    input	vector4	defclr		"Default Color"
    output	vector	color		"Texture Map Color"

    parm {
        name    border
        label   "Border Color"
        type    color4
	size	4
        default { 0.0 0.0 0.0 1.0 }
    }
    parm {
        name    extrapol
        label   "Extrapolate Derivatives"
        type    toggle
	size	1
        default { 1 }
    }
    parm {
        name    interp
        label   "Interpolate MIP Levels"
        type    toggle
	size	1
        default { 0 }
    }
    VOP_CLR4_PARM("defclr", "Default Color", 0, 0, 0, 0)
    VOP_FLT_INPUT_R(	pixelblur,		"Blur Pixels",	0, 0, 10)
    VOP_STR_INPUT(channel,  "Texture Channel", "")
    VOP_INT_INPUT(ptexface, "PTexture Face", 0)

    signature	"RGB Values"	default { }
    signature	"RGBA Values"	v4	{ string float float float float string string float vector4 int int vector4 float string int  vector4 }
}

INDX              DialogScript      9Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

{
    name	"not"
    script	"not"
    label	"not"


    code {
	"#ifdef __vex"
	"    $not = !$input;"
	"#else"
	"    $not = ($input == 0) ? 1 : 0;"
	"#endif"
    }

    input	int	input	"Input Value"
    output	int	not	"\"Not\" Input"
}

INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"length"
    script	"length"
    label	"length"


    code {
	"$len = length($vec);"
    }

    input	vector	vec	"Vector"
    output	float	len	"Vector Length"
    signature	"3D Vector"		default	{ }
    signature	"3D Point"		p	{ point float }
    signature	"3D Normal"		n	{ normal float }
    signature	"4D Vector"		v4	{ vector4 float }
    signature	"3D Uniform Vector"	uv	{ uvector ufloat }
    signature	"3D Uniform Point"	up	{ upoint ufloat }
    signature	"3D Uniform Normal"	un	{ unormal float }

    group {
	name	"g0"
	label	"Defaults"
	VOP_VEC_PARM(vec,		"3D Vector", 1, 1, 1)
	VOP_VEC_PARM(vec_p,		"3D Point", 1, 1, 1)
	VOP_VEC_PARM(vec_n,		"3D Normal", 1, 1, 1)
	VOP_VEC4_PARM(vec_v4,	"4D Vector", 1, 1, 1, 1)
    }
    group {
	name	"g0"
	label	"Uniform Defaults"
	VOP_VEC_PARM(vec_uv,	"3D Uniform Vector", 1, 1, 1)
	VOP_VEC_PARM(vec_up,	"3D Uniform Point", 1, 1, 1)
	VOP_VEC_PARM(vec_un,	"3D Uniform Normal", 1, 1, 1)
    }
}
INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

{
    name	"raybounce"
    script	"raybounce"
    label	"raybounce"


    code {
	"$raylevel = getraylevel();"
    }

    output	int	raylevel	"Ray Bounce Level"
}

INDX              DialogScript      L@e# Dialog script for pbrdiffuse automatically generated 07/16/10 16:43:17

{
    name	pbrdiffuse
    script	pbrdiffuse
    label	"Physically Based Diffuse"

    outercode {
	""
    }

    code {
	"vector $tnN = $isconnected_nN ? $nN : normalize(N);"
	""
	"if ($drough > 0)"
	"{"
	"    $f = 2.0*diffuse($tnN, $drough, \"label\", $label);"
	"}"
	"else"
	"{"
	"    $f = 2.0*diffuse($tnN, \"label\", $label);"
	"}"
    }

    input	string	model	"Diffuse Model"
    input	string	label	"Component Label"
    input	vector	nN	Normal
    input	float	drough	"Diffuse Roughness"
    output	bsdf	f	BSDF
    inputflags	model	0
    inputflags	label	0
    inputflags	nN	0
    inputflags	drough	0
    signature	"Default Inputs"	default	{ string string vector float bsdf }

    outputoverrides	default
    {
	___begin	auto
			(0)
    }

    help {
	""
    }

    parm {
	name	"label"
	label	"Component Label"
	type	string
	default	{ "" }
	menureplace	{
	    "diffuse"	"Diffuse"
	    "specular"	"Specular"
	    "reflect"	"Reflect"
	    "refract"	"Refract"
	}
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"drough"
	label	"Diffuse Roughness"
	type	float
	default	{ "0" }
	range	{ 0 1 }
	export	none
    }
}
INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

{
    name	"fresnel"
    script	"fresnel"
    label	"fresnel"


    code {
	"vector $myI = ($isconnected_nI != 0) ? $nI : normalize(I);"
	"vector $myN = ($isconnected_nN != 0) ? $nN : normalize(N);"
	"fresnel($myI, $myN, $eta, $kr, $kt, $R, $T);" }

    input	vector	nI	"Normalized Incident Vector"
    input	normal	nN	"Normalized Surface Normal"
    input	float	eta	"Index Of Refraction"
    output	float	kr	"Reflected Light"
    output	float	kt	"Transmitted (i.e. Refracted) Light"
    output	vector	R	"Reflection Vector"
    output	vector	T	"Transmission (i.e. Refraction) Vector"

    parm {
	name	eta
	label	"Index Of Refraction"
	type	float
	size	1
	default	{ 0.8 }
	range	{ 0.1 1 }
    }
}

INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"alphamix"
    script	"alphamix"
    label	"alphamix"


    input       vector  I       "Direction From Eye To Surface"
    input       normal  N       "Surface Normal"
    VOP_FLT_INPUT(	apara,	"Alpha Para",	0.3)
    VOP_FLT_INPUT(	aperp,	"Alpha Perp",	0)
    VOP_FLT_INPUT_R(	aroll,	"Alpha Roll",	0.025, 0.02, 0.1)
}
INDX              Contents       WLd   DialogScript   W  `L40707070000010000000006660000000000000000010000001147726230700001300000000000TRAILER!!! # Dialog script for hlight automatically generated 07/07/10 18:11:56

{
    name	hlight
    script	hlight
    label	Light

    help {
	""
    }
    bindhandle aperture light "Light" aperture ""
    bindhandle coneangle light "Light" coneangle ""
    bindhandle conedelta light "Light" conedelta ""
    bindhandle coneenable light "Light" coneonoff ""
    bindhandle far light "Light" far ""
    bindhandle focal light "Light" focal ""
    bindhandle focus light "Light" focus ""
    bindhandle light_conefov light "Light" light_conefov ""
    bindhandle l_lookatpath light "Light" lookat ""
    bindhandle near light "Light" near ""
    bindhandle orthowidth light "Light" orthowidth ""
    bindhandle projection light "Light" projection ""
    bindhandle px light "Light" px ""
    bindhandle py light "Light" py ""
    bindhandle pz light "Light" pz ""
    bindhandle l_xOrder light "Light" rst_order ""
    bindhandle l_rx light "Light" rx ""
    bindhandle l_ry light "Light" ry ""
    bindhandle l_rz light "Light" rz ""
    bindhandle sx light "Light" sx ""
    bindhandle sy light "Light" sy ""
    bindhandle sz light "Light" sz ""
    bindhandle l_tx light "Light" tx ""
    bindhandle l_ty light "Light" ty ""
    bindhandle l_tz light "Light" tz ""
    bindhandle resx light "Light" xres ""
    bindhandle l_rOrder light "Light" xyz_order ""
    bindhandle resy light "Light" yres ""

    inputlabel	1	parent
    inputlabel	2	parent
    inputlabel	3	parent
    inputlabel	4	parent

    group {
	name	"stdswitcher4"
	label	"stdswitcher4"
	invisibletab

    }

    group {
	name	"stdswitcher4_1"
	label	"stdswitcher4_1"
	invisibletab

    }

    group {
	name	"stdswitcher4_2"
	label	"stdswitcher4_2"
	invisibletab

    }

    parm {
	name	"keeppos"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"pre_xform"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"xOrd"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"rOrd"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"t"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"r"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"s"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"p"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"scale"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"lookatpath"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"lookup"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"pathobjpath"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"roll"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"pos"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"uparmtype"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"pathorient"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"up"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"bank"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"tdisplay"
	baseparm
	invisible
	joinnext
	export	none
    }
    parm {
	name	"display"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"dimmer"
	baseparm
	invisible
	export	all
    }
    parm {
	name	"picking"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"pickscript"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"caching"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"use_dcolor"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"dcolor"
	baseparm
	invisible
	export	none
    }
    group {
	name	"folder0"
	label	"Transform"

	parm {
	    name	"l_keeppos"
	    label	"Keep position when parenting"
	    type	toggle
	    joinnext
	    default	{ "off" }
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "autoscope" "0000000000000000" }
	}
	parm {
	    name	"l_pre_xform"
	    label	"Pre-transform"
	    type	button
	    default	{ "clean" }
	    menureplace	{
		"clean"	"Clean Transform"
		"cleantrans"	"Clean Translates"
		"cleanrot"	"Clean Rotates"
		"cleanscales"	"Clean Scales"
		"extract"	"Extract Pre-transform"
		"reset"	"Reset Pre-transform"
	    }
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "autoscope" "0000000000000000" }
	}
	parm {
	    name	"l_xOrd"
	    label	"Transform Order"
	    type	ordinal
	    joinnext
	    default	{ "srt" }
	    menu	{
		"srt"	"Scale Rot Trans"
		"str"	"Scale Trans Rot"
		"rst"	"Rot Scale Trans"
		"rts"	"Rot Trans Scale"
		"tsr"	"Trans Scale Rot"
		"trs"	"Trans Rot Scale"
	    }
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "autoscope" "0000000000000000" }
	}
	parm {
	    name	"l_rOrd"
	    label	"Rotate Order"
	    type	ordinal
	    nolabel
	    default	{ "xyz" }
	    menu	{
		"xyz"	"Rx Ry Rz"
		"xzy"	"Rx Rz Ry"
		"yxz"	"Ry Rx Rz"
		"yzx"	"Ry Rz Rx"
		"zxy"	"Rz Rx Ry"
		"zyx"	"Rz Ry Rx"
	    }
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "autoscope" "0000000000000000" }
	}
	parm {
	    name	"l_t"
	    label	"Translate"
	    type	vector
	    size	3
	    default	{ "0" "0" "0" }
	    disablewhen	"{ light_type == geo intothisobject == 1 }"
	    range	{ -1 1 }
	    export	none
	    parmtag	{ "autoscope" "1110000000000000" }
	}
	parm {
	    name	"l_r"
	    label	"Rotate"
	    type	vector
	    size	3
	    default	{ "0" "0" "0" }
	    disablewhen	"{ light_type == geo intothisobject == 1 }"
	    range	{ 0 360 }
	    export	none
	    parmtag	{ "autoscope" "1110000000000000" }
	}
	group {
	    name	"folder1_2"
	    label	"Viewing Options"

	    parm {
		name	"l_enabledisplay"
		label	"Display"
		type	toggle
		nolabel
		joinnext
		default	{ "off" }
		range	{ 0 1 }
		export	none
		parmtag	{ "autoscope" "0000000000000000" }
	    }
	    parm {
		name	"l_display"
		label	"Display"
		type	integer
		default	{ "1" }
		disablewhen	"{ l_enabledisplay == 0 }"
		range	{ 0! 1! }
		export	none
		parmtag	{ "autoscope" "0000000000000000" }
	    }
	    parm {
		name	"l_iconscale"
		label	"Icon Scale"
		type	float
		default	{ "1" }
		range	{ 0 10 }
		export	none
	    }
	    parm {
		name	"l_caching"
		label	"Cache Object Transform"
		type	toggle
		default	{ "off" }
		range	{ 0 1 }
		export	none
		parmtag	{ "autoscope" "0000000000000000" }
	    }
	    parm {
		name	"l_picking"
		label	"Viewport Selecting Enabled"
		type	toggle
		default	{ "on" }
		range	{ 0 1 }
		export	none
		parmtag	{ "autoscope" "0000000000000000" }
	    }
	    parm {
		name	"l_pickscript"
		label	"Select Script"
		type	file
		default	{ "" }
		disablewhen	"{ l_picking == 0 }"
		menureplace	{
		    [ "opmenu -l . pickscript" ]
		}
		range	{ 0 1 }
		export	none
		parmtag	{ "autoscope" "0000000000000000" }
	    }
	}

	group {
	    name	"folder1_2_1"
	    label	"Lookat Options"

	    parm {
		name	"l_lookatpath"
		label	"Look At"
		type	oppath
		default	{ "" }
		range	{ 0 1 }
		export	none
		parmtag	{ "oprelative" "." }
		parmtag	{ "opfilter" "!!OBJ!!" }
		parmtag	{ "autoscope" "0000000000000000" }
	    }
	    parm {
		name	"l_lookup"
		label	"Look At Up Vector"
		type	string
		default	{ "on" }
		disablewhen	"{ l_lookatpath == \"\" }"
		menu	{
		    "off"	"Don't use up vector"
		    "on"	"Use up vector"
		    "quat"	"Use quaternions"
		}
		range	{ 0 1 }
		export	none
		parmtag	{ "autoscope" "0000000000000000" }
	    }
	}

	group {
	    name	"folder1_2_2"
	    label	"Path Options"

	    parm {
		name	"l_pathobjpath"
		label	"Path Object"
		type	oppath
		default	{ "" }
		range	{ 0 1 }
		export	none
		parmtag	{ "oprelative" "." }
		parmtag	{ "opfilter" "!!SOP!!" }
		parmtag	{ "autoscope" "0000000000000000" }
	    }
	    parm {
		name	"l_pathroll"
		label	"Roll"
		type	angle
		default	{ "0" }
		disablewhen	"{ l_pathobjpath == \"\" }"
		range	{ -360 360 }
		export	none
		parmtag	{ "autoscope" "0000000000000000" }
	    }
	    parm {
		name	"l_pathpos"
		label	"Position"
		type	float
		default	{ "0" }
		disablewhen	"{ l_pathobjpath == \"\" }"
		range	{ 0! 10 }
		export	none
		parmtag	{ "autoscope" "0000000000000000" }
	    }
	    parm {
		name	"l_pathparmtype"
		label	"Parameterization"
		type	ordinal
		default	{ "arc" }
		disablewhen	"{ l_pathobjpath == \"\" }"
		menu	{
		    "uniform"	"Uniform"
		    "arc"	"Arc Length"
		}
		range	{ 0 1 }
		export	none
		parmtag	{ "autoscope" "0000000000000000" }
	    }
	    parm {
		name	"l_pathorient"
		label	"Orient Along Path"
		type	integer
		default	{ "1" }
		disablewhen	"{ l_pathobjpath == \"\" }"
		range	{ 0 1 }
		export	none
		parmtag	{ "autoscope" "0000000000000000" }
	    }
	    parm {
		name	"l_pathup"
		label	"Orient Up Vector"
		type	direction
		size	3
		default	{ "0" "1" "0" }
		disablewhen	"{ l_pathobjpath == \"\" }"
		range	{ 0 1 }
		export	none
		parmtag	{ "autoscope" "0000000000000000" }
	    }
	    parm {
		name	"l_pathbank"
		label	"Auto-Bank factor"
		type	float
		default	{ "1" }
		disablewhen	"{ l_pathobjpath == \"\" }"
		range	{ -1 1 }
		export	none
		parmtag	{ "autoscope" "0000000000000000" }
	    }
	}

    }

    group {
	name	"folder0_1"
	label	"Light"

	parm {
	    name	"light_type"
	    label	"Light Type"
	    type	ordinal
	    default	{ "0" }
	    disablewhen	"{ light_enable == 0 }"
	    menu	{
		"point"	"Point"
		"line"	"Line"
		"grid"	"Grid"
		"disk"	"Disk"
		"sphere"	"Sphere"
		"geo"	"Geometry"
		"distant"	"Distant"
		"sun"	"Sun"
		"env"	"Environment *"
	    }
	    range	{ 0 1 }
	    export	all
	}
	parm {
	    name	"light_color"
	    label	"Light Color"
	    type	color
	    size	3
	    default	{ "1" "1" "1" }
	    disablewhen	"{ light_enable == 0 }"
	    range	{ 0 1 }
	    export	all
	}
	parm {
	    name	"light_intensity"
	    label	"Light Intensity"
	    type	float
	    default	{ "1" }
	    disablewhen	"{ light_enable == 0 }"
	    range	{ 0 10 }
	    export	none
	    parmtag	{ "autoscope" "1000000000000000" }
	}
	parm {
	    name	"light_enable"
	    label	"Light Enabled"
	    type	toggle
	    default	{ "1" }
	    range	{ 0 1 }
	    export	all
	}
	parm {
	    name	"ogl_enablelight"
	    label	"Enable Light In Viewport"
	    type	toggle
	    default	{ "1" }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"light_contribdiff"
	    label	"Diffuse Contribution"
	    type	toggle
	    default	{ "1" }
	    disablewhen	"{ light_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"light_contribspec"
	    label	"Specular Contribution"
	    type	toggle
	    default	{ "1" }
	    disablewhen	"{ light_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"categories"
	    label	"Categories"
	    type	string
	    default	{ "" }
	    disablewhen	"{ light_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "spare_category" "Shading" }
	}
	parm {
	    name	"vm_samplingquality"
	    label	"Sampling Quality"
	    type	float
	    default	{ "1" }
	    disablewhen	"{ light_type == point } { light_type == distant }"
	    range	{ 0 10 }
	    export	none
	}
	parm {
	    name	"light_contribprimary"
	    label	"Render Light Geometry"
	    type	toggle
	    default	{ "0" }
	    disablewhen	"{ light_type == point } { light_type == distant }"
	    range	{ 0 1 }
	    export	none
	}
	group {
	    name	"atten_folder_1"
	    label	"Spot Light Options"

	    parm {
		name	"coneenable"
		label	"Enable Spot Light"
		type	toggle
		default	{ "0" }
		disablewhen	"{ light_enable == 0 } { light_type == distant } { light_type == sun }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"light_conefov"
		label	"Use cone angle for field of view"
		type	toggle
		default	{ "1" }
		disablewhen	"{ coneenable != 1 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"light_fov"
		label	"Projection Angle"
		type	float
		default	{ "45" }
		disablewhen	"{ light_conefov != 0 coneenable == 1 } { light_type == distant } { light_type == sun }"
		range	{ 0.05 90 }
		export	none
	    }
	    parm {
		name	"coneangle"
		label	"Cone Angle"
		type	angle
		default	{ "45" }
		disablewhen	"{ coneenable != 1 }"
		range	{ 0 180 }
		export	none
	    }
	    parm {
		name	"conedelta"
		label	"Cone Delta"
		type	angle
		default	{ "10" }
		disablewhen	"{ coneenable != 1 }"
		range	{ 0 180 }
		export	none
	    }
	    parm {
		name	"coneroll"
		label	"Cone Rolloff"
		type	float
		default	{ "1" }
		disablewhen	"{ coneenable != 1 }"
		range	{ 0.001 10 }
		export	none
	    }
	    parm {
		name	"sepparm2"
		label	"Separator"
		type	separator
		default	{ }
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"projmap"
		label	"Projection Map"
		type	image
		default	{ "" }
		disablewhen	"{ light_enable == 0 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"near"
		label	"Near Clipping"
		type	float
		default	{ "0.001" }
		disablewhen	"{ light_enable == 0 }"
		range	{ 0 10000 }
		export	none
		parmtag	{ "spare_category" "View" }
	    }
	    parm {
		name	"far"
		label	"Far Clipping"
		type	float
		default	{ "10000" }
		disablewhen	"{ light_enable == 0 }"
		range	{ 0 10000 }
		export	none
		parmtag	{ "spare_category" "View" }
	    }
	}

	group {
	    name	"atten_folder_1_1"
	    label	"Area Light Options"

	    parm {
		name	"areasize"
		label	"Area Size"
		type	float
		size	2
		default	{ "1" "1" }
		disablewhen	"{ light_type == point } { light_type == distant } { light_type == sun } { light_type == geo } { light_type == env }"
		range	{ 0 10 }
		export	none
	    }
	    parm {
		name	"normalizearea"
		label	"Normalize Light Intensity to Area"
		type	toggle
		default	{ "1" }
		disablewhen	"{ light_type == point } { light_type == distant } { light_type == sun }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"singlesided"
		label	"Single Sided"
		type	toggle
		default	{ "0" }
		disablewhen	"{ light_type == point } { light_type == distant } { light_type == sun }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"reverse"
		label	"Reverse Emission Direction"
		type	toggle
		default	{ "0" }
		disablewhen	"{ light_type == point } { light_type == distant } { light_type == sun } { singlesided == 0 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"areamap"
		label	"Environment Map"
		type	image
		default	{ "" }
		disablewhen	"{ light_enable == 0 } { light_type == point } { light_type == distant } { light_type == sun }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"areamapspace"
		label	"Environment Space"
		type	string
		default	{ "space:object" }
		disablewhen	"{ light_enable == 0 } { light_type == point } { light_type == distant } { light_type == sun }"
		menu	{
		    "space:current"	"Camera Space"
		    "space:world"	"World Space"
		    "space:object"	"Object Space"
		    ""	"Use Environment Null"
		}
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"areamapnull"
		label	"Environment Null"
		type	oppath
		default	{ "" }
		disablewhen	"{ light_enable == 0 } { light_type == point } { light_type == distant } { light_type == sun } { areamapspace != \"\" }"
		range	{ 0 1 }
		export	none
		parmtag	{ "oprelative" "." }
		parmtag	{ "opfilter" "!!OBJ/NULL!!" }
	    }
	    parm {
		name	"light_texture"
		label	"Texture Map"
		type	image
		default	{ "" }
		disablewhen	"{ light_enable == 0 } { light_type == point } { light_type == distant } { light_type == sun }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"edgeenable"
		label	"Enable Edge Falloff"
		type	toggle
		default	{ "0" }
		disablewhen	"{ light_type == point } { light_type == distant } { light_type == sun } { light_type == env }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"edgewidth"
		label	"Edge Width"
		type	float
		default	{ "0.1" }
		disablewhen	"{ edgeenable == 0 } { light_type == point } { light_type == distant } { light_type == sun } { light_type == env }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"edgerolloff"
		label	"Edge Rolloff"
		type	float
		default	{ "1" }
		disablewhen	"{ edgeenable == 0 } { light_type == point } { light_type == distant } { light_type == sun } { light_type == env }"
		range	{ 0.001 10 }
		export	none
	    }
	    parm {
		name	"areageometry"
		label	"Geometry Object"
		type	oppath
		default	{ "" }
		disablewhen	"{ light_type != geo }"
		range	{ 0 1 }
		export	none
		parmtag	{ "oprelative" "." }
	    }
	    parm {
		name	"intothisobject"
		label	"Transform Into This Object"
		type	toggle
		default	{ "0" }
		disablewhen	"{ light_type != geo }"
		range	{ 0 1 }
		export	none
	    }
	}

	group {
	    name	"atten_folder_1_2"
	    label	"Distant Light Options"

	    parm {
		name	"orthowidth"
		label	"Orthographic Width"
		type	float
		default	{ "2" }
		disablewhen	"{ light_type != distant light_type != sun }"
		range	{ 1 10 }
		export	none
	    }
	    parm {
		name	"vm_envangle"
		label	"Sun Angle"
		type	float
		default	{ "5" }
		disablewhen	"{ light_type != sun }"
		range	{ 0 90 }
		export	none
	    }
	}

	group {
	    name	"atten_folder_1_3"
	    label	"Attenuation Options"

	    parm {
		name	"atten_type"
		label	"Attenuation"
		type	ordinal
		default	{ "0" }
		disablewhen	"{ light_enable == 0 } { light_type == distant } { light_type == sun }"
		menu	{
		    "none"	"No Attenuation"
		    "half"	"Half Distance Attenuation"
		    "physical"	"Physically Correct"
		}
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"atten_dist"
		label	"Half Distance"
		type	float
		default	{ "10" }
		disablewhen	"{ light_enable == 0 } { atten_type != half } { light_type == distant } { light_type == sun }"
		range	{ 0 100 }
		export	none
	    }
	    parm {
		name	"atten_start"
		label	"Attenuation Start"
		type	float
		default	{ "0" }
		disablewhen	"{ light_enable == 0 } { light_type == distant } { light_type == sun } { atten_type == none }"
		range	{ 0 100 }
		export	none
	    }
	    parm {
		name	"activeradiusenable"
		label	"Use Seperate Active Radius"
		type	toggle
		nolabel
		joinnext
		default	{ "0" }
		disablewhen	"{ light_enable == 0 } { light_type == distant } { light_type == sun }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"activeradius"
		label	"Active Radius"
		type	float
		default	{ "100" }
		help	"Radius of effect for the light, if different from Attenuation End.  Objects farther than this distance will not receive illumination"
		disablewhen	"{ light_enable == 0 } { light_type == distant } { light_type == sun } { activeradiusenable == 0 }"
		range	{ 0 100 }
		export	none
		parmtag	{ "spare_category" "Light" }
	    }
	    parm {
		name	"attenrampenable"
		label	"Use Attenuation Ramp Multiplier"
		type	toggle
		default	{ "0" }
		disablewhen	"{ light_enable == 0 } { light_type == distant } { light_type == sun }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"atten_rampstart"
		label	"Ramp Start Distance"
		type	float
		default	{ "0" }
		disablewhen	"{ light_enable == 0 } { light_type == distant } { light_type == sun } { attenrampenable == 0 }"
		range	{ 0 100 }
		export	none
		parmtag	{ "spare_category" "Light" }
	    }
	    parm {
		name	"atten_rampend"
		label	"Ramp End Distance"
		type	float
		default	{ "100" }
		disablewhen	"{ light_enable == 0 } { light_type == distant } { light_type == sun } { attenrampenable == 0 }"
		range	{ 0 100 }
		export	none
		parmtag	{ "spare_category" "Light" }
	    }
	    parm {
		name	"attenramp"
		label	"Attenuation Ramp Multiplier"
		type	ramp_rgb
		default	{ "3" }
		disablewhen	"{ light_enable == 0 } { light_type == distant } { light_type == sun } { attenrampenable == 0 }"
		range	{ 1! 10 }
		export	none
		parmtag	{ "rampvalues_var" "atten_values" }
		parmtag	{ "rampkeys_var" "atten_keys" }
		parmtag	{ "rampbasis_var" "atten_basis" }
		parmtag	{ "rampcolordefault" "1pos ( 0 ) 1c ( 1 1 1 ) 1interp ( linear ) 2pos ( 0.899999976 ) 2c ( 1 1 1 ) 2interp ( linear ) 3pos ( 1 ) 3c ( 0 0 0 ) 3interp ( linear )" }
		parmtag	{ "rampshowcontrolsdefault" "0" }
	    }
	}

    }

    group {
	name	"folder0_2"
	label	"Shadow"

	parm {
	    name	"shadow_type"
	    label	"Shadow Type"
	    type	ordinal
	    default	{ "raytrace" }
	    menu	{
		"off"	"No Shadows"
		"raytrace"	"Ray-Traced Shadows"
		"depthmap"	"Depth Map Shadows"
	    }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"shadowmask"
	    label	"Shadow Mask"
	    type	oplist
	    default	{ "*" }
	    disablewhen	"{ shadow_type == off }"
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "oprelative" "/obj" }
	    parmtag	{ "opfilter" "!!OBJ/GEOMETRY!!" }
	}
	parm {
	    name	"shadow_intensity"
	    label	"Shadow Intensity"
	    type	float
	    default	{ "1" }
	    disablewhen	"{ shadow_type == off }"
	    range	{ 0 10 }
	    export	none
	}
	parm {
	    name	"shadow_transparent"
	    label	"Transparent Shadows"
	    type	toggle
	    default	{ "1" }
	    disablewhen	"{ shadow_type == off }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"sepparm"
	    label	"Separator"
	    type	separator
	    default	{ }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"shadow_bias"
	    label	"Shadow Bias"
	    type	float
	    default	{ "0.05" }
	    disablewhen	"{ shadow_type != depthmap }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"shadow_quality"
	    label	"Shadow Quality"
	    type	float
	    default	{ "1" }
	    disablewhen	"{ shadow_type != depthmap }"
	    range	{ 0.1 10 }
	    export	none
	}
	parm {
	    name	"shadow_softness"
	    label	"Shadow Softness"
	    type	float
	    default	{ "1" }
	    disablewhen	"{ shadow_type != depthmap }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"shadow_blur"
	    label	"Shadow Blur"
	    type	float
	    default	{ "0" }
	    disablewhen	"{ shadow_type != depthmap }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"render_shadowmap"
	    label	"Auto-generate Shadow Map"
	    type	toggle
	    default	{ "1" }
	    disablewhen	"{ shadow_type != depthmap }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"labelparm"
	    label	"Field Of View"
	    type	label
	    default	{ "See spot light options (in light tab) for view controls" }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"shadowmap_file"
	    label	"Shadow Map"
	    type	image
	    default	{ "temp:$OS.rat" }
	    disablewhen	"{ shadow_type != depthmap }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"res"
	    label	"Resolution"
	    type	intvector2
	    joinnext
	    size	2
	    default	{ "512" "512" }
	    disablewhen	"{ shadow_type != depthmap }"
	    range	{ -1 1 }
	    export	none
	    parmtag	{ "spare_category" "View" }
	}
	parm {
	    name	"shadowmap_resMenu"
	    label	"Choose Resolution"
	    type	button
	    nolabel
	    default	{ "0" }
	    disablewhen	"{ shadow_type != depthmap }"
	    menumini	{
		"128"	"Tiny (128x128)"
		"256"	"Small (256x256)"
		"512"	"Normal (512x512)"
		"1024"	"Large (1024x1024)"
		"4096"	"Huge (4096)"
	    }
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "spare_category" "View" }
	    parmtag	{ "script_callback" "opparm . res ( $script_value $script_value )" }
	}
	parm {
	    name	"shadowmap_samples"
	    label	"Pixel Samples"
	    type	intvector2
	    size	2
	    default	{ "1" "1" }
	    disablewhen	"{ shadow_type != depthmap } { shadow_transparent != 1 }"
	    range	{ 1 32 }
	    export	none
	}
	parm {
	    name	"shadowmotionblur"
	    label	"Depth Map Motion Blur"
	    type	toggle
	    default	{ "0" }
	    disablewhen	"{ shadow_type != depthmap }"
	    range	{ 0 1 }
	    export	none
	}
    }

    group {
	name	"folder0_3"
	label	"Material"

	parm {
	    name	"shop_materialpath"
	    label	"Material"
	    type	oppath
	    default	{ "" }
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "oprelative" "." }
	    parmtag	{ "opfilter" "!!SHOP!!" }
	}
    }

    parm {
	name	"focal"
	label	"Camera Focal Length"
	type	float
	invisible
	default	{ "lock(1)" }
	range	{ 0 10 }
	export	none
    }
    parm {
	name	"aperture"
	label	"Camera Aperture"
	type	float
	invisible
	default	{ "if(ch('coneenable')!=0 || ch('light_conefov') == 0, if(strcmp(chs('light_type'), 'distant') == 0 || strcmp(chs('light_type'), 'sun') == 0, 1, tan(ch('light_fov'))), tan(ch('conedelta')+ch('coneangle')))" }
	range	{ 0 10 }
	export	none
    }
    parm {
	name	"projection"
	label	"Camera Projection"
	type	ordinal
	invisible
	default	{ "if(strcmp(chs('light_type'), 'distant')==0 || strcmp(chs('light_type'), 'sun')==0, 1, 0)" }
	menu	{
	    "perspective"	"Perspective"
	    "ortho"	"Orthographic"
	}
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"focus"
	label	"Handle Focus"
	type	float
	invisible
	default	{ "10" }
	range	{ 0 10 }
	export	none
    }
    parm {
	name	"light_wrangler"
	label	"Light Wrangler"
	type	string
	invisible
	default	{ "HoudiniLight" }
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"clampprojmap"
	label	"Clamp Projected Map To Frustum"
	type	toggle
	invisible
	default	{ "0" }
	disablewhen	"{ projmap == \"\" }"
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"areafullsphere"
	label	"Use full sphere for environment"
	type	toggle
	invisible
	default	{ "0" }
	range	{ 0 1 }
	export	none
    }
}
INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"switchlightingbsdf"
    script	"switchlightingbsdf"
    label	"Switch Lighting BSDF"


    code {
	"$f = switch($direct, $indirect);"
    }

    output	bsdf	f	"Switch BSDF"

    input	bsdf	direct		"Direct Lighting BSDF"
    input	bsdf	indirect	"Indirect Lighting BSDF"
}
INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

{
    name	"addconst"
    script	"addconst"
    label	"addconst"


    code {
	"$added = $val + $addconst;"
    }

    input	int	val		"Input Value"
    output	int	added		"Input Value + Constant"
    signature	"1D Integer Values"	default	{ }
    signature	"1D Float Values"	f	{ float float }
    signature	"3D Values"		v	{ vector vector }
    signature	"3D Point Values"	p	{ point point }
    signature	"3D Normal Values"	n	{ normal normal }
    signature	"3D Color Values"	c	{ color color }
    signature	"4D Values"		v4	{ vector4 vector4 }
    signature	"1D Uniform Float"	uf	{ ufloat ufloat }
    signature	"3D Uniform Vector"	uv	{ uvector uvector }
    signature	"3D Uniform Point"	up	{ upoint upoint }
    signature	"3D Uniform Normal"	un	{ unormal unormal }
    signature	"3D Uniform Color"	uc	{ ucolor ucolor }

    parm {
	name	addconst
	label	"Add"
	type	float
	size	1
	default	{ 1.0 }
    }
}

INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"inttovec"
    script	"inttovec"
    label	"inttovec"

    outercode {
	INCLUDE_VOPLIB
    }

    code {
	"$vec = set((float) $int1, (float) $int2, (float) $int3);"
    }

    output	vector	vec	"Output Vector"

    VOP_INT_INPUT_R(int1, "Component 1", 0, 0, 1)
    VOP_INT_INPUT_R(int2, "Component 2", 0, 0, 1)
    VOP_INT_INPUT_R(int3, "Component 3", 0, 0, 1)
}
INDX              Contents       WLk   DialogScript   W  !KPE0707070000010000000006660000000000000000010000001147726576700001300000000000TRAILER!!! # Dialog script for albedo automatically generated 01/15/10 11:35:17

{
    name	albedo
    script	albedo
    label	Albedo

    code {
	"$albedo = albedo($f);"
    }

    input	bsdf	f	BSDF
    output	vector	albedo	Albedo
    signature	"Default Inputs"	default	{ }

    help {
	""
    }

}
INDX              Contents       WLk   DialogScript   W  JOa0707070000010000000006660000000000000000010000001147726576600001300000000000TRAILER!!! # Dialog script for surfacecolor automatically generated 07/04/09 10:05:31

{
    name	surfacecolor
    script	surfacecolor
    label	"Surface Color"

    input	int	useBaseColor	"Use Base Color"
    input	vector	baseColor	"Base Color"
    input	int	usePointColor	"Use Point Color"
    input	int	useColorMap	"Use Color Map"
    input	string	baseColorMap	"Base Color Map"
    input	string	colorMapWrap	"Color Map Wrap"
    input	string	colorMapfilter	"Color Map Filter"
    input	float	colorMapWidth	"Color Map Width"
    input	vector4	colorMapBorder	"Color Map Border"
    input	float	scoord	"S Coordinate"
    input	float	tcoord	"T Coordinate"
    input	int	usePointAlpha	"Use Point Alpha"
    input	float	colorMapIntensity	"Map Intensity"
    signature	"Default Inputs"	default	{ }

    help {
	""
    }

    parm {
	name	"useBaseColor"
	label	"Use Base Color"
	type	toggle
	default	{ "1" }
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"baseColor"
	label	"Base Color"
	type	color
	size	3
	default	{ "1" "1" "1" }
	disablewhen	"{ useBaseColor == 0 }"
	range	{ 0 10 }
	export	none
    }
    parm {
	name	"usePointColor"
	label	"Use Point Color"
	type	toggle
	default	{ "1" }
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"useColorMap"
	label	"Use Color Map"
	type	toggle
	default	{ "0" }
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"baseColorMap"
	label	"Base Color Map"
	type	image
	default	{ "" }
	disablewhen	"{ useColorMap == 0 }"
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"colorMapWrap"
	label	"Color Map Wrap"
	type	string
	default	{ "repeat" }
	disablewhen	"{ useColorMap == 0 }"
	menu	{
	    "repeat"	"Repeat"
	    "streak"	"Streak"
	    "decal"	"Decal"
	}
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"colorMapfilter"
	label	"color Map Filter Type"
	type	string
	default	{ "catrom" }
	disablewhen	"{ useColorMap == 0 }"
	menu	{
	    "box"	"Box"
	    "gauss"	"Gaussian"
	    "bartlett"	"Bartlett/Triangular"
	    "sinc"	"Sinc Sharpening"
	    "hanning"	"Hanning"
	    "blackman"	"Blackman"
	    "catrom"	"Catmull-Rom"
	    "mitchell"	"Mitchell"
	}
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"colorMapWidth"
	label	"Color Map Filter Width"
	type	float
	default	{ "1" }
	disablewhen	"{ useColorMap == 0 }"
	range	{ 0 5 }
	export	none
    }
    parm {
	name	"colorMapBorder"
	label	"Color Map Border Color"
	type	color4
	size	4
	default	{ "0" "0" "0" "0" }
	disablewhen	"{ useColorMap == 0 }"
	range	{ 0 10 }
	export	none
    }
    parm {
	name	"Scoord"
	label	"S Coord"
	type	float
	default	{ "0" }
	disablewhen	"{ useColorMap == 0 }"
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"Tcoord"
	label	"T Coord"
	type	float
	default	{ "0" }
	disablewhen	"{ useColorMap == 0 }"
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"usePointAlpha"
	label	"Use Point Alpha"
	type	toggle
	default	{ "1" }
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"colorMapIntensity"
	label	"Color Map Intensity"
	type	float
	default	{ "1" }
	disablewhen	"{ useColorMap == 0 }"
	range	{ 0 2 }
	export	none
    }
}
INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"exp"
    script	"exp"
    label	"exp"

    outercode {
	INCLUDE_VOPLIB
    }

    code {
	"$exp = vop_exp($val);"
    }

    input	float	val	"Input Value"
    output	float	exp	"Exponent Value"

    signature	"1D Float Values"		default	{ }
    signature	"3D Vector Values"	v	{ vector vector }
    signature	"3D Point Values"	p	{ point point }
    signature	"3D Normal Values"	n	{ normal normal }
    signature	"3D Color Values"	c	{ color color }
    signature	"4D Values"		v4	{ vector4 vector4 }

    signature	"3D Uniform Float"	uf	{ ufloat ufloat }
    signature	"3D Uniform Vector"	uv	{ uvector uvector }
    signature	"3D Uniform Point"	up	{ upoint upoint }
    signature	"3D Uniform Normal"	un	{ unormal unormal }
    signature	"3D Uniform Color"	uc	{ ucolor ucolor }

    group {
	name 	"gv"
	label	"Defaults"
	VOP_FLT_PARM(val,   "1D Float Input", 1)
	VOP_VEC_PARM(val_v, "3D Vector", 1, 1, 1)
	VOP_VEC_PARM(val_p, "3D Point", 1, 1, 1)
	VOP_VEC_PARM(val_n, "3D Normal", 1, 1, 1)
	VOP_CLR_PARM(val_c, "3D Color", 1, 1, 1)
	VOP_VEC4_PARM(val_v4,"4D Vector", 1, 1, 1, 1)
    }
    group {
	name 	"gu"
	label	"Uniform Defaults"
	VOP_FLT_PARM(val_uf, "1D Float", 1)
	VOP_VEC_PARM(val_uv, "3D Vector", 1, 1, 1)
	VOP_VEC_PARM(val_up, "3D Point", 1, 1, 1)
	VOP_VEC_PARM(val_un, "3D Normal", 1, 1, 1)
	VOP_CLR_PARM(val_uc, "3D Color", 1, 1, 1)
    }
}

INDX              DialogScript      	Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"dot"
    script	"dot"
    label	"dot"

    outercode {
	INCLUDE_VOPLIB
    }

    code {
	"$dotprod = vop_dot($vec1, $vec2);"
    }

    input	vector	vec1	"Vector 1"
    input	vector	vec2	"Vector 2"
    output	float	dotprod	"Dot Product"

    group {
	name 	"gv"
	label	"Defaults"

	VOP_VEC_PARM(vec1, "Vector 1", 1, 0, 0)
	VOP_VEC_PARM(vec2, "Vector 2", 0, 1, 0)
	VOP_CLR_PARM(vec1_c, "Color 1", 1, 0, 0)
	VOP_CLR_PARM(vec2_c, "Color 2", 0, 1, 0)
    }
    group {
	name 	"gu"
	label	"Uniform Defaults"

	VOP_VEC_PARM(vec1_uv, "Vector 1", 1, 0, 0)
	VOP_VEC_PARM(vec2_uv, "Vector 2", 0, 1, 0)
	VOP_CLR_PARM(vec1_uc, "Color 1", 1, 0, 0)
	VOP_CLR_PARM(vec2_uc, "Color 2", 0, 1, 0)
    }

    signature	"3D Vector Values"	default	{ }
    signature	"3D Vector/Point"	vp	{ vector point float }
    signature	"3D Vector/Normal"	vn	{ vector normal float }
    signature	"3D Point/Vector"	pv	{ point vector float }
    signature	"3D Point/Point"	pp	{ point point float }
    signature	"3D Point/Normal"	pn	{ point normal float }
    signature	"3D Normal/Vector"	nv	{ normal vector float }
    signature	"3D Normal/Point"	np	{ normal point float }
    signature	"3D Normal/Normal"	nn	{ normal normal float }
    signature	"3D Color Values"	c	{ color color float }

    signature	"3D Uniform Vector"	   uv	{ uvector uvector ufloat }
    signature	"3D Uniform Vector/Point"  vp	{ uvector upoint ufloat }
    signature	"3D Uniform Vector/Normal" vn	{ uvector unormal ufloat }
    signature	"3D Uniform Point/Vector"  pv	{ upoint uvector ufloat }
    signature	"3D Uniform Point/Point"   pp	{ upoint upoint ufloat }
    signature	"3D Uniform Point/Normal"  pn	{ upoint unormal ufloat }
    signature	"3D Uniform Normal/Vector" nv	{ unormal uvector ufloat }
    signature	"3D Uniform Normal/Point"  np	{ unormal upoint ufloat }
    signature	"3D Uniform Normal/Normal" nn	{ unormal unormal ufloat }
    signature	"3D Uniform Color"	uc	{ ucolor ucolor ufloat }
}
INDX              DialogScript      qLt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

{
    name	"negate"
    script	"negate"
    label	"negate"


    code {
	"$negated = -$val;"
    }

    input	int	val		"Input Value"
    output	int	negated		"Negated Value"
    signature	"1D Integer Values"	default	{ }
    signature	"1D Float Values"	f	{ float float }
    signature	"3D Vector Values"	v	{ vector vector }
    signature	"3D Point Values"	p	{ point point }
    signature	"3D Normal Values"	n	{ normal normal }
    signature	"3D Color Values"	c	{ color color }
    signature	"4D Values"		v4	{ vector4 vector4 }

    signature	"1D Uniform Float"	uf	{ ufloat ufloat }
    signature	"3D Uniform Vector"	uv	{ uvector uvector }
    signature	"3D Uniform Point"	up	{ upoint upoint }
    signature	"3D Uniform Normal"	un	{ unormal unormal }
    signature	"3D Uniform Color"	uc	{ ucolor ucolor }
}

INDX              DialogScript      JL?X# Dialog script for physicalsss automatically generated 07/15/10 14:51:20

{
    name	physicalsss
    script	physicalsss
    label	"Physical SSS"

    outercode {
	"#include <voptype.h>"
	"#include <voplib.h>"
	"#include <math.h>"
	"#include <physicalsss.h>"
    }

    code {
	"VOPvector $_p  = ($isconnected_p != 0)      ? $p            : P;"
	"VOPvector $bp  = ($isconnected_blurp != 0)  ? $blurp        : getblurP(0);"
	"VOPnormal $_n  = ($isconnected_n != 0)      ? $n            : normalize(N);"
	"VOPfloat  $eta = max(0.0, $oior / $iior);"
	"VOPvector $_t  = ($isconnected_t != 0)      ? normalize($t) : normalize(refract(normalize(I), $_n, $eta));"
	""
	"VOPfloat  $_g       = clamp($g, -0.99, 0.99);"
	"VOPvector $_absrp   = 1.0;"
	"VOPvector $scatr    = 0.0;"
	"VOPfloat  $_kt      = 0.0;"
	""
	"if ($isconnected_kt != 0)"
	"{"
	"    $_kt = $kt;"
	"    $kr = 1.0 - $_kt;"
	"}"
	"else"
	"    fresnel(-$_t, -$_n, 1.0 / $eta, $kr, $_kt);"
	""
	"$clr = 0;"
	"$opacity = 1;"
	"$singleclr = 0;"
	"$multiclr = 0;"
	"$multiloclclr = 0;"
	"$multiglobclr = 0;"
	""
	"if ($mode == 1) // physical mode"
	"{"
	"    $scatr = $redscatr / ((1.0 - $_g) * $scatrscale);"
	"    $_absrp = $absrp / $scatrscale;"
	"}"
	"else // artist mode"
	"{"
	"    VOPvector $_redscatr, $redext, $redalbedo, $rd;"
	""
	"    // Compute the diffuse reflectance (diffuseclr is a reflectivity)."
	"    $rd = $diffuseclr * $diffuseclr;"
	"    $rd = clamp($rd, { 0.0, 0.0, 0.0 }, { 1.0, 1.0, 1.0 });"
	""
	"    // Compute the reduced albedo."
	"    $redalbedo = vop_sss_reduced_albedo($rd, $eta, 1e-9);"
	"    $redalbedo = clamp($redalbedo, { 0.0, 0.0, 0.0 }, { 0.99999999, 0.99999999, 0.99999999 });"
	""
	"    // Compute the absorption and scattering coefficients."
	"    $redext = luminance($attenclr);"
	"    $redext *= $redext * max(0.0, $attendensity);"
	"    $redext /= max($attenclr, { 1e-16, 1e-16, 1e-16 });"
	"    $_redscatr = $redalbedo * $redext;"
	"    $_absrp = $redext - $_redscatr;"
	"    $scatr = $_redscatr * (1.0 / (1.0 - $_g));"
	"}"
	""
	"if (isshadowray())"
	"    $opacity = vop_sss_opacity($_p, $_n, normalize(I), $_absrp, $scatr);"
	"else"
	"{"
	"    if ($singlesss)"
	"    {"
	"        $singleclr = vop_sss_single("
	"            $_p, $_n, $_t, $_absrp, $scatr, $_g, $eta, $optsingle, $nsingle);"
	"        $singleclr *= $_kt;"
	"    }"
	""
	"    if ($multimodel != 0)"
	"    {"
	"        $multiclr = vop_sss_multi("
	"            $bp, $_n, $_absrp, $scatr, $_g, $eta, $multimodel, $loclradscale, $loclquality,"
	"            $globquality, $optmulti, $pcmode, $pcname, $pcsavepos, $pcsaveirrad,"
	"            $pcautosize, $pcautofactor, $pcsize, 0.1, $pcfilter, $pcfiltersize,"
	"            $multiloclclr, $multiglobclr);"
	"        $multiclr *= $_kt;"
	"    }"
	""
	"    $clr = $singleclr + $multiclr;"
	"}"
    }

    input	vector	p	Position
    input	vector	blurp	"Blur Position"
    input	normal	n	Normal
    input	vector	t	Transmitted
    input	float	kt	"Fresnel Transmission"
    input	int	mode	"Parameter Mode"
    input	color	diffuseclr	"Diffuse Color"
    input	float	attendensity	"Attenuation Density"
    input	color	attenclr	"Attenuation Color"
    input	vector	absrp	"Absorption Coefficient"
    input	vector	redscatr	"Reduced Scattering Coefficient"
    input	float	scatrscale	"Scattering Scale"
    input	float	g	"Scattering Phase"
    input	float	iior	"Inside IOR"
    input	float	oior	"Outside IOR"
    input	int	singlesss	"Single Scattering"
    input	int	optsingle	"Optimize Single Scattering For Secondary Rays"
    input	int	nsingle	"Single Scattering Samples"
    input	int	multimodel	"Multiple Scattering Model"
    input	int	optmulti	"Optimize Multiple Scattering For Secondary Rays"
    input	float	loclradscale	"Local Radius Scale"
    input	float	loclquality	"Local Light Quality"
    input	float	globquality	"Global Light Quality"
    input	int	pcmode	"Point Cloud Mode"
    input	string	pcname	"Point Cloud"
    input	int	pcsavepos	"Cache Positions/Normals/Areas"
    input	int	pcsaveirrad	"Cache Irradiance"
    input	int	pcautosize	"Auto Point Cloud Size"
    input	float	pcautofactor	"Auto Size Factor"
    input	int	pcsize	"Point Cloud Size"
    input	int	pcfilter	"Filter Multiple Scattering"
    input	int	pcfiltersize	"Filter Samples"
    output	color	clr	Color
    output	color	opacity	Opacity
    output	color	singleclr	"Single Scattering Color"
    output	color	multiclr	"Multiple Scattering Color"
    output	color	multiloclclr	"Multiple Scattering Color (Local)"
    output	color	multiglobclr	"Multiple Scattering Color (Global)"
    output	float	kr	"Fresnel Reflectance"
    inputflags	p	0
    inputflags	blurp	0
    inputflags	n	0
    inputflags	t	0
    inputflags	kt	0
    inputflags	mode	1
    inputflags	diffuseclr	0
    inputflags	attendensity	0
    inputflags	attenclr	0
    inputflags	absrp	1
    inputflags	redscatr	1
    inputflags	scatrscale	1
    inputflags	g	0
    inputflags	iior	0
    inputflags	oior	0
    inputflags	singlesss	0
    inputflags	optsingle	1
    inputflags	nsingle	1
    inputflags	multimodel	0
    inputflags	optmulti	1
    inputflags	loclradscale	1
    inputflags	loclquality	1
    inputflags	globquality	1
    inputflags	pcmode	1
    inputflags	pcname	1
    inputflags	pcsavepos	1
    inputflags	pcsaveirrad	1
    inputflags	pcautosize	1
    inputflags	pcautofactor	1
    inputflags	pcsize	1
    inputflags	pcfilter	1
    inputflags	pcfiltersize	1
    signature	"Default Inputs"	default	{ vector vector normal vector float int color float color vector vector float float float float int int int int int float float float int string int int int float int int int color color color color color color float }

    outputoverrides	default
    {
	___begin	auto
			(0,0,0)
	___begin	auto
			(0,0,0)
	___begin	auto
			(0,0,0)
	___begin	auto
			(0,0,0)
	___begin	auto
			(0,0,0)
	___begin	auto
			(0,0,0)
	___begin	auto
			(0)
    }

    help {
	""
    }

    parm {
	name	"mode"
	label	"Parameter Mode"
	type	ordinal
	default	{ "0" }
	help	"Sub-surface scattering properties can be given in \"Artist\" or \"Physical\" mode.  This chooser selects which of the two parameterizations to use."
	menu	{
	    "0"	"Artist"
	    "1"	"Physical"
	}
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"diffuseclr"
	label	"Diffuse Color"
	type	color
	size	3
	default	{ "0.9" "0.9" "0.9" }
	help	"The amount of light that is reflected for each color component.  This color will tend to dominate areas of the surface that are lit."
	disablewhen	"{ mode != 0 }"
	range	{ 0! 1! }
	export	none
	parmtag	{ "script_callback_language" "python" }
	parmtag	{ "script_callback" "kwargs['node'].hdaModule().updatePhysical(kwargs['node'])" }
	parmtag	{ "export_disable" "1" }
    }
    parm {
	name	"attendensity"
	label	"Attenuation Density"
	type	float
	default	{ "1" }
	help	"Controls how fast light is attenuated.  Higher densities correspond to faster attenuation."
	disablewhen	"{ mode != 0 }"
	range	{ 0! 10 }
	export	none
	parmtag	{ "script_callback_language" "python" }
	parmtag	{ "script_callback" "kwargs['node'].hdaModule().updatePhysical(kwargs['node'])" }
    }
    parm {
	name	"attenclr"
	label	"Attenuation Color"
	type	color
	size	3
	default	{ "1" "1" "1" }
	help	"Color that the light will tend towards as it is attenuated.  This color will typically dominate areas of the surface that are in shadow."
	disablewhen	"{ mode != 0 }"
	range	{ 0! 1! }
	export	none
	parmtag	{ "script_callback_language" "python" }
	parmtag	{ "script_callback" "kwargs['node'].hdaModule().updatePhysical(kwargs['node'])" }
    }
    parm {
	name	"absrp"
	label	"Absorption Coefficient (RGB)"
	type	vector
	size	3
	default	{ "0.0131039" "0.0131039" "0.0131039" }
	help	"Probability per unit distance that an absorption event will occur.  Since the probability is per unit distance, it may range from 0 to infinity."
	disablewhen	"{ mode != 1 }"
	range	{ 0! 1 }
	export	none
	parmtag	{ "script_callback_language" "python" }
	parmtag	{ "script_callback" "kwargs['node'].hdaModule().updateArtist(kwargs['node'])" }
    }
    parm {
	name	"redscatr"
	label	"Reduced Scattering Coefficient (RGB)"
	type	vector
	size	3
	default	{ "25.4246" "25.4246" "25.4246" }
	help	"Probability per unit distance that a scattering event will occur, assuming isotropic scattering.  Since the probability is per unit distance, the value may range from 0 to infinity."
	disablewhen	"{ mode != 1 }"
	range	{ 0! 1 }
	export	none
	parmtag	{ "script_callback_language" "python" }
	parmtag	{ "script_callback" "kwargs['node'].hdaModule().updateArtist(kwargs['node'])" }
    }
    parm {
	name	"scatrscale"
	label	"Scattering Scale"
	type	float
	default	{ "1" }
	help	"This parameter adjusts the scale of the scattering/absorption events.  Values less than 1 will cause the scattering to become more localized and the surface to look more opaque, while values greater than 1 will cause the scattering to become less localized and the surface to look more transparent."
	disablewhen	"{ mode != 1 }"
	range	{ 0! 1 }
	export	none
	parmtag	{ "script_callback_language" "python" }
	parmtag	{ "script_callback" "kwargs['node'].hdaModule().updateArtist(kwargs['node'])" }
    }
    parm {
	name	"g"
	label	"Scattering Phase"
	type	float
	default	{ "0" }
	help	"Phase function parameter that controls the nature of the scattering (forward, backward, isotropic, etc.).  The parameter must lie in the range [-1, 1], with -1 indicating full backward scattering, 0 indicating isotropic scattering, and 1 indicating full forward scattering."
	range	{ -1! 1! }
	export	none
    }
    parm {
	name	"iior"
	label	"Inside IOR"
	type	float
	default	{ "1.3" }
	help	"The absolute index of refraction of the surface medium."
	range	{ 0! 10 }
	export	none
    }
    parm {
	name	"oior"
	label	"Outside IOR"
	type	float
	default	{ "1" }
	help	"Absolute index of refraction of the medium outside of the surface."
	range	{ 0! 10 }
	export	none
    }
    group {
	name	"single_multi"
	label	"Single Scattering"

	parm {
	    name	"singlesss"
	    label	"Enable Single Scattering"
	    type	toggle
	    default	{ "1" }
	    help	"Enable/disable contribution from light that scatters exactly once in the surface.  Certain types of surfaces (such as skin) gain little contribution from single scattering and so disabling this option will reduce computation time with little impact on accuracy."
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"optsingle"
	    label	"Optimize Secondary Rays"
	    type	toggle
	    default	{ "0" }
	    help	"When enabled, single scattering is computed using a BRDF approximation for secondary rays.  Enabling this option reduces computation time at the expense of accuracy."
	    disablewhen	"{ singlesss == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"nsingle"
	    label	"Samples"
	    type	integer
	    default	{ "1" }
	    help	"Quality control for single scattering.  Increase the sample count to reduce noise at the expense of computation time."
	    disablewhen	"{ singlesss == 0 }"
	    range	{ 0! 10 }
	    export	none
	}
    }

    group {
	name	"single_multi_1"
	label	"Multiple Scattering"

	parm {
	    name	"multimodel"
	    label	"Model"
	    type	ordinal
	    default	{ "3" }
	    help	"Control the way in which multiple scattering is calculated.  The \"Local BRDF\" option is the fastest yet least accurate model.  It produces a sharper looking surface than the other models, but may be useful for look development.  It avoids the need for a point cloud and is best suited for highly dense surfaces.  The \"Global Point Cloud\" option is the slowest yet most accurate model.  It takes into account light arriving at all different parts of the surface when shading.  This model is more subject to low frequency noise (blotches) than the other models and requires higher density point clouds.  The \"Local And Global\" option is usually the best choice for final renders.  It strikes the best balance between speed and accuracy.  It requires lower density point clouds than the \"Global Point Cloud\" model and reduces low frequency noise."
	    menu	{
		"0"	"None"
		"1"	"Local BRDF"
		"2"	"Global Point Cloud"
		"3"	"Local And Global"
	    }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"optmulti"
	    label	"Optimize Secondary Rays"
	    type	toggle
	    default	{ "0" }
	    help	"When enabled, multiple scattering is computed using a BRDF approximation for secondary rays.  Enabling this option reduces computation time at the expense of accuracy."
	    disablewhen	"{ multimodel == 0 } { multimodel == 1 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"loclradscale"
	    label	"Local Radius Scale"
	    type	float
	    default	{ "1" }
	    help	"Controls the contribution from the local BRDF in the \"Local And Global\" model.  Smaller values will reduce the area of local integration, which will reduce sharpness and possibly introduce low frequency noise.  Higher values will increase sharpness and reduce low frequency noise."
	    disablewhen	"{ multimodel != 3 }"
	    range	{ 0! 2 }
	    export	none
	}
	parm {
	    name	"loclquality"
	    label	"Local Light Quality"
	    type	float
	    default	{ "0.1" }
	    help	"Controls the quality of area light sampling for the local BRDF term."
	    disablewhen	"{ multimodel == 0 } { multimodel == 2 }"
	    range	{ 0! 1 }
	    export	none
	}
	parm {
	    name	"globquality"
	    label	"Global Light Quality"
	    type	float
	    default	{ "1" }
	    help	"Controls the quality of area light sampling for the global point cloud term."
	    disablewhen	"{ multimodel == 0 } { multimodel == 1 }"
	    range	{ 0! 10 }
	    export	none
	}
	parm {
	    name	"pcmode"
	    label	"Point Cloud Mode"
	    type	ordinal
	    default	{ "0" }
	    help	"Controls how the shader generates a point cloud.  The simplest option is to select \"Generate At Render Time\".  This will create a new point cloud for every render.  To reduce computation time, you can first use \"Write To File\" mode and then re-use the point cloud using \"Read From File\" mode on subsequent renders.  This is also the recommended approach when rendering animations because the shader will smoothly interpolate the point cloud across frames.  The exception to this is when the model's topology changes (two joined polygons are separated, for example).  In this case, a new point cloud must be generated.  Note that in \"Write To File\" mode, the file will be overwritten if it already exists.  Cancelling a render before it completes in \"Write To File\" mode may result in an unusable point cloud file."
	    disablewhen	"{ multimodel == 0 } { multimodel == 1 }"
	    menu	{
		"0"	"Generate At Render Time"
		"1"	"Read From File"
		"2"	"Write To File"
	    }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"pcname"
	    label	"Point Cloud"
	    type	file
	    default	{ "$HIP/${HIPNAME}_${OS}.pc" }
	    help	"Path to the point cloud file that will be written to in \"Write To File\" mode or read from in \"Read From File\" mode."
	    disablewhen	"{ multimodel == 0 } { multimodel == 1 } { pcmode == 0 }"
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "script_callback_language" "python" }
	    parmtag	{ "script_callback" "kwargs['node'].hdaModule().checkFileName(kwargs['node'])" }
	}
	parm {
	    name	"pcsavepos"
	    label	"Cache Positions/Normals/Areas"
	    type	toggle
	    default	{ "0" }
	    help	"Causes point positions, normals, and areas to be written to the point cloud.  Doing this may improve performance when reading point clouds with many points; however, the positions, normals, and areas are stored in camera space and are only valid with static geometry and a static camera.  If either the geometry or camera is transformed, the point cloud will be invalid and you will need to generate a new one.  This feature is also useful for visualizing the distribution of points over the surface."
	    disablewhen	"{ multimodel == 0 } { multimodel == 1 } { pcmode != 2 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"pcsaveirrad"
	    label	"Cache Irradiance"
	    type	toggle
	    default	{ "0" }
	    help	"Causes irradiance (light information) to be written to the point cloud.  This will improve performance when reading point clouds with many points; however, irradiance caching should only be used with static scenes.  If the camera, lights, or any objects are transformed, the point cloud becomes invalid and you will need to create a new one."
	    disablewhen	"{ multimodel == 0 } { multimodel == 1 } { pcmode != 2 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"pcautosize"
	    label	"Auto Point Cloud Size"
	    type	toggle
	    default	{ "1" }
	    help	"When this option is enabled, the shader will automatically compute the number of points to use in the point cloud, based on the scattering properties of the surface.  You may acheive faster renders or increased accuracy by disabling this option and manually entering a point cloud size."
	    disablewhen	"{ multimodel == 0 } { multimodel == 1 } { pcmode == 1 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"pcautofactor"
	    label	"Auto Size Factor"
	    type	float
	    default	{ "1" }
	    help	"When \"Auto Point Cloud Size\" is enabled, the point cloud size is scaled by this factor."
	    disablewhen	"{ multimodel == 0 } { multimodel == 1 } { pcmode == 1 } { pcautosize == 0 }"
	    range	{ 0! 2 }
	    export	none
	}
	parm {
	    name	"pcsize"
	    label	"Point Cloud Size"
	    type	integer
	    default	{ "10000" }
	    help	"Number of points to generate in the point cloud.  Higher point counts will increase quality at the expense of computation time."
	    disablewhen	"{ multimodel == 0 } { multimodel == 1 } { pcmode == 1 } { pcautosize == 1 }"
	    range	{ 0! 1e+06 }
	    export	none
	}
	parm {
	    name	"pcfilter"
	    label	"Filter Multiple Scattering"
	    type	toggle
	    default	{ "1" }
	    help	"Enabling this option reduces computation time, at the expense of accuracy, by caching results of the multiple scattering calculation on the point cloud's points.  These cached values are then filtered over the surface.  When this option is enabled, the \"Multiple Scattering Color (Global)\" output of this VOP must be exported via a Parameter VOP.  To do this, create a Parameter VOP, set its \"Parameter Type\" to \"Color\", set its \"Parameter Name\" to \"multiglobclr\", set \"Export\" to \"Always\", and connect its input to this VOPs \"Multiple Scattering Color (Global)\" output."
	    disablewhen	"{ multimodel == 0 } { multimodel == 1 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"pcfiltersize"
	    label	"Filter Samples"
	    type	integer
	    default	{ "50" }
	    help	"Number of point cloud points to filter (see \"Filter Multiple Scattering\").  Increasing the point count will produce a more blurry result, while decreasing the point count will produce a more blotchy result."
	    disablewhen	"{ multimodel == 0 } { multimodel == 1 } { pcfilter == 0 }"
	    range	{ 0! 100 }
	    export	none
	}
    }

}
INDX              DialogScript      L# Dialog script for indirectlighting automatically generated 10/14/10 20:30:17

{
    name	indirectlighting
    script	indirectlighting
    label	"Indirect Lighting"

    outercode {
	"#ifndef VOP_EXPORT_DEFINES"
	"#define VOP_EXPORT_DEFINES"
	""
	"#include \"pbrexports.h\""
	"#include \"pbrpathtrace.h\""
	"#include \"math.h\""
	""
	"#endif"
    }

    code {
	"pbr_trace("
	"        $clr,"
	"        $nsam,"
	""
	"        $isconnected_SID ? $SID : SID,"
	"        $isconnected_P ? $P : P,"
	"        $F,"
	"        $isconnected_I ? $I : I,"
	"        N,"
	"        $isconnected_Time ? $Time : Time,"
	""
	"        $samplingquality,"
	"        $raystyle,"
	"        $doscope ? $scope : \"scope:default\","
	"        $domaxdist ? $maxdist : -1.0,"
	"        $doatten,"
	"        $adensity,"
	"        $acolor);"
    }

    input	bsdf	F	BSDF
    input	vector	P	Position
    input	vector	I	Direction
    input	int	SID	"Sample ID"
    input	float	Time	Time
    input	string	raystyle	"Ray Style"
    input	float	samplingquality	"Sampling Quality"
    input	int	doscope	doscope
    input	string	scope	Scope
    input	int	domaxdist	domaxdist
    input	float	maxdist	"Max Distance"
    input	int	doatten	doatten
    input	float	adensity	"Attenuation Density"
    input	vector	acolor	"Attenuation Color"
    output	vector	clr	Color
    output	float	nsam	"Sample Count"
    inputflags	F	0
    inputflags	P	0
    inputflags	I	0
    inputflags	SID	0
    inputflags	Time	0
    inputflags	raystyle	0
    inputflags	samplingquality	0
    inputflags	doscope	0
    inputflags	scope	0
    inputflags	domaxdist	0
    inputflags	maxdist	0
    inputflags	doatten	0
    inputflags	adensity	0
    inputflags	acolor	0
    signature	"Default Inputs"	default	{ bsdf vector vector int float string float int string int float int float vector vector float }

    outputoverrides	default
    {
	___begin	auto
			(0,0,0)
	___begin	auto
			(0)
    }

    help {
	""
    }

    parm {
	name	"raystyle"
	label	"Ray Style"
	type	string
	default	{ "reflect" }
	menu	{
	    "reflect"	"Reflect"
	    "refract"	"Refract"
	    "diffuse"	"Diffuse"
	}
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"samplingquality"
	label	"Sampling Quality"
	type	float
	default	{ "1" }
	range	{ 0 10 }
	export	none
    }
    parm {
	name	"doscope"
	label	"doscope"
	type	toggle
	nolabel
	joinnext
	default	{ "0" }
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"scope"
	label	"Scope"
	type	oplist
	default	{ "*" }
	disablewhen	"{ doscope == 0 }"
	range	{ 0 1 }
	export	none
	parmtag	{ "oprelative" "/" }
	parmtag	{ "opfilter" "!!OBJ/GEOMETRY!!" }
    }
    parm {
	name	"domaxdist"
	label	"domaxdist"
	type	toggle
	nolabel
	joinnext
	default	{ "0" }
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"maxdist"
	label	"Max Ray Distance"
	type	float
	default	{ "10" }
	disablewhen	"{ domaxdist == 0 }"
	range	{ 0 100 }
	export	none
    }
    parm {
	name	"doatten"
	label	"doatten"
	type	toggle
	nolabel
	joinnext
	default	{ "0" }
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"adensity"
	label	"Attenuation Density"
	type	float
	default	{ "0.5" }
	disablewhen	"{ doatten == 0 }"
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"acolor"
	label	"Attenuation Color"
	type	color
	size	3
	default	{ "1" "1" "1" }
	disablewhen	"{ doatten == 0 }"
	range	{ 0 1 }
	export	none
    }
}
INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

{
    name	"isshadow"
    script	"isshadow"
    label	"isshadow"


    code {
	"$isshadow = isshadowray();"
    }

    output	int	isshadow	"Is Shadow Ray"
}

INDX              DialogScript      [Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"twoway"
    script	"twoway"
    label	"twoway"


    code {
	"$result = ($condtype != 0 ? ($condition != 0 ? $input2 : $input1)"
	"                          : ($condition != 0 ? $input1 : $input2));"
    }

    input	int	condition	"Condition Value (int)"
    input	float	input1		"Input 1"
    input	float	input2		"Input 2"
    output	float	result		"Output Value"

    signature	"Float Values"	 	default { }
    signature	"Integer Values"	i	{ int int int int }
    signature	"String Values"		s	{ int string string string }
    signature	"Vector Values" 	v 	{ int vector vector vector }
    signature	"Point Values" 		p 	{ int point point point }
    signature	"Normal Values" 	n 	{ int normal normal normal }
    signature	"Color Values"	 	c 	{ int color color color }
    signature	"BSDF Values"	 	b 	{ int bsdf bsdf bsdf }
    signature	"Vector4 Values" 	v4 	{ int vector4 vector4 vector4 }
    signature	"Matrix3 Values" 	m3 	{ int matrix3 matrix3 matrix3 }
    signature	"Matrix Values" 	m 	{ int matrix matrix matrix }

    signature	"Uniform Float"	 	uf	{ ufloat ufloat ufloat ufloat }
    signature	"Uniform Vector" 	uv 	{ ufloat uvector uvector uvector }
    signature	"Uniform Point" 	up 	{ ufloat upoint upoint upoint }
    signature	"Uniform Normal" 	un 	{ ufloat unormal unormal unormal }
    signature	"Uniform Color"	 	uc 	{ ufloat ucolor ucolor ucolor }
    signature	"Uniform Matrix" 	um 	{ ufloat umatrix umatrix umatrix }


    parm {
	name	condtype
	label	Condition
	type	int
	menu	{
	    "true"	"True    ( != 0 )"
	    "false"	"False   ( == 0 )"
	}
	default	{ 0 }
    }

    group {
	name 	"g0"
	label	"Defaults"

	VOP_FLT_PARM(input2, "Float Input 2", 0)
	VOP_INT_PARM(input2_i, "Integer Input 2", 0)
	VOP_STR_PARM(input2_s, "String Input 2", "")
	VOP_VEC_PARM(input2_v, "Vector Input 2", 0, 0, 0)
	VOP_VEC_PARM(input2_p, "Point Input 2", 0, 0, 0)
	VOP_VEC_PARM(input2_n, "Normal Input 2", 0, 0, 0)
	VOP_CLR_PARM(input2_c, "Color Input 2", 1, 1, 1)
	VOP_VEC4_PARM(input2_v4, "Vector4 Input 2", 0, 0, 0, 0)
    }

    group {
	name	"g1"
	label	"Matrix Defaults"

	parm {
	    name	input2_m3
	    label	"Matrix3 Input 2"
	    type	float
	    size	9
	    default	{ 1 0 0 0 1 0 0 0 1 }
	}
	parm {
	    name	input2_m
	    label	"Matrix Input 2"
	    type	float
	    size	16
	    default	{ 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 }
	}
    }
    group {
	name	"g2"
	label	"Uniform Defaults"

	VOP_FLT_PARM(input2_uf, "Float Input 2", 0)
	VOP_VEC_PARM(input2_uv, "Vector Input 2", 0, 0, 0)
	VOP_VEC_PARM(input2_up, "Point Input 2", 0, 0, 0)
	VOP_VEC_PARM(input2_un, "Normal Input 2", 0, 0, 0)
	VOP_VEC_PARM(input2_uc, "Color Input 2", 0, 0, 0)
	parm {
	    name	input2_um
	    label	"Matrix Input 2"
	    type	float
	    size	16
	    default	{ 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 }
	}
    }
}

INDX              Contents       WLg;   DialogScript   W   I0707070000010000000006660000000000000000010000001147726347300001300000000000TRAILER!!! # Dialog script for volumevopglobal automatically generated 03/13/09 14:37:04

{
    name	volumevopglobal
    script	volumevexglobal
    label	"Volume VOP Global Parameters"

    signature	"Default Inputs"	default	{ }

    help {
	""
    }

}
INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"ifconnected"
    script	"ifconnected"
    label	"ifconnected"

    code {
	"$result = $isconnected_connected != 0 ? $connected : $notconnected;"
    }

    input	float	connected	"Input Tested For Connectivity"
    input	float	notconnected	"Default If First Input Not Connected"
    output	float	result		"Output Value"
    signature	"Float Values"		default { }
    signature	"Integer Values"	i	{ int int int }
    signature	"String Values"		s	{ string string string }
    signature	"Vector Values"		v	{ vector vector vector }
    signature	"Point Values"		p	{ point point point }
    signature	"Normal Values"		n	{ normal normal normal }
    signature	"Color Values"		c	{ color color color }
    signature	"Vector4 Values"	v4	{ vector4 vector4 vector4 }
    signature	"Matrix3 Values"	m3	{ matrix3 matrix3 matrix3 }
    signature	"Matrix Values"		m	{ matrix matrix matrix }

    signature	"Uniform Float Values"	uf	{ ufloat ufloat ufloat }
    signature	"Uniform Vector Values"	uv	{ uvector uvector uvector }
    signature	"Uniform Point Values"	up	{ upoint upoint upoint }
    signature	"Uniform Normal Values"	un	{ unormal unormal unormal }
    signature	"Uniform Color Values"	uc	{ ucolor ucolor ucolor }
    signature	"Uniform Matrix Values"	um	{ umatrix umatrix umatrix }

    group {
	name	"g0"
	label	"Defaults"

	VOP_FLT_PARM(notconnected, "Float Input 2", 0)
	VOP_INT_PARM(notconnected_i, "Integer Input 2", 0)
	VOP_STR_PARM(notconnected_s, "String Input 2", "")
	VOP_VEC_PARM(notconnected_v, "Vector Input 2", 0, 0, 0)
	VOP_VEC_PARM(notconnected_p, "Point Input 2", 0, 0, 0)
	VOP_VEC_PARM(notconnected_n, "Normal Input 2", 0, 0, 0)
	VOP_CLR_PARM(notconnected_c, "Color Input 2", 0, 0, 0)
	VOP_VEC4_PARM(notconnected_v4, "Vector4 Input 2", 0, 0, 0, 0)
    }

    group {
	name	"g1"
	label	"Matrix Defaults"

	parm {
	    name	notconnected_m3
	    label	"Matrix3 Input 2"
	    type	float
	    size	9
	    default	{ 1 0 0 0 1 0 0 0 1 }
	}
	parm {
	    name	notconnected_m
	    label	"Matrix Input 2"
	    type	float
	    size	16
	    default	{ 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 }
	}
    }

    group {
	name	"g2"
	label	"Uniform Defaults"

	VOP_FLT_PARM(notconnected_uf, "Float Input 2", 0)
	VOP_VEC_PARM(notconnected_uv, "Vector Input 2", 0, 0, 0)
	VOP_VEC_PARM(notconnected_up, "Point Input 2", 0, 0, 0)
	VOP_VEC_PARM(notconnected_un, "Normal Input 2", 0, 0, 0)
	VOP_CLR_PARM(notconnected_uc, "Color Input 2", 0, 0, 0)
	parm {
	    name	notconnected_um
	    label	"Matrix Input 2"
	    type	float
	    size	16
	    default	{ 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 }
	}
    }
}

INDX              DialogScript      
Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"mix"
    script	"mix"
    label	"mix"


    code {
	"#ifdef __vex"
	"  $blend = lerp($input1, $input2, $bias);"
	"#else"
	"  $blend = mix($input1, $input2, $bias);"
	"#endif"
    }

    input	float	input1	"Input 1"
    input	float	input2	"Input 2"
    input	float	bias	"Interpolation Bias"
    output	float	blend	"Interpolated Value"

    signature	"1D Values"	    default { }
    signature	"3D Vector Values"	 v  { vector vector float vector }
    signature	"3D Point Values"	 p  { point point float point }
    signature	"3D Normal Values"	 n  { normal normal float normal }
    signature	"3D Color Values"	 c  { color color float color }
    signature	"4D Values"	 	v4  { vector4 vector4 float vector4 }
    signature	"BSDF Values"		 b  { bsdf bsdf float bsdf }
    signature	"1D Uniform Float"	uf  { ufloat ufloat ufloat ufloat }
    signature	"3D Uniform Vector"	uv  { uvector uvector ufloat uvector }
    signature	"3D Uniform Point"	up  { upoint upoint ufloat upoint }
    signature	"3D Uniform Normal"	un  { unormal unormal ufloat unormal }
    signature	"3D Uniform Color"	uc  { ucolor ucolor ufloat ucolor }

    VOP_FLT_PARM_R(bias, "Bias", .5, 0, 1)
    group {
	name 	"gf"
	label	"1D Defaults"

	VOP_FLT_PARM(input1,	"Input 1", 0)
	VOP_FLT_PARM(input2,	"Input 2", 1)
    }
    group {
	name 	"gv"
	label	"3D Defaults"

	VOP_VEC_PARM(input1_v,	"Input 1", 0, 0, 0)
	VOP_VEC_PARM(input2_v,	"Input 2", 1, 1, 1)
	VOP_VEC_PARM(input1_p,	"Input 1", 0, 0, 0)
	VOP_VEC_PARM(input2_p,	"Input 2", 1, 1, 1)
	VOP_VEC_PARM(input1_n,	"Input 1", 0, 0, 0)
	VOP_VEC_PARM(input2_n,	"Input 2", 1, 1, 1)
	VOP_CLR_PARM(input1_c,	"Input 1", 0, 0, 0)
	VOP_CLR_PARM(input2_c,	"Input 2", 1, 1, 1)
    }
    group {
	name 	"gv4"
	label	"4D Defaults"

	VOP_VEC4_PARM(input1_v4,	"Input 1", 0, 0, 0, 0)
	VOP_VEC4_PARM(input2_v4,	"Input 2", 1, 1, 1, 1)
    }
    group {
	name 	"gv"
	label	"Uniform Defaults"

	VOP_FLT_PARM(input1_uf,	"Input 1", 0)
	VOP_FLT_PARM(input2_uf,	"Input 2", 1)
	VOP_VEC_PARM(input1_uv,	"Input 1", 0, 0, 0)
	VOP_VEC_PARM(input2_uv,	"Input 2", 1, 1, 1)
	VOP_VEC_PARM(input1_up,	"Input 1", 0, 0, 0)
	VOP_VEC_PARM(input2_up,	"Input 2", 1, 1, 1)
	VOP_VEC_PARM(input1_un,	"Input 1", 0, 0, 0)
	VOP_VEC_PARM(input2_un,	"Input 2", 1, 1, 1)
	VOP_CLR_PARM(input1_uc,	"Input 1", 0, 0, 0)
	VOP_CLR_PARM(input2_uc,	"Input 2", 1, 1, 1)
    }
}

INDX              Contents       WLk   DialogScript   W  KP0707070000010000000006660000000000000000010000001147726576700001300000000000TRAILER!!! # Dialog script for conserveenergy automatically generated 01/15/10 17:01:52

{
    name	conserveenergy
    script	conserveenergy
    label	"Conserve Energy"

    code {
	""
    }

    input	bsdf	f	BSDF
    signature	"Default Inputs"	default	{ }

    help {
	""
    }

}
INDX              DialogScript      dLt	/*
 * Dialog script for the IFD soho output driver
 */

#define RENDERSCRIPT(TOKEN, LABEL)	\
	parm	{ \
	    name	t##TOKEN \
	    label	"" \
	    type	toggle \
	    default	{ 1 } \
	    nolabel \
	    joinnext \
	} \
	parm	{ \
	    name	TOKEN \
	    label	LABEL \
	    type	file \
	    joinnext \
	    default	{ "" } \
	    disablewhen	{ { t##TOKEN == 0 } } \
	    parmtag	{ filechooser_mode	"read" } \
	} \
	parm	{ \
	    name	l##TOKEN \
	    label	"" \
	    type	ordinal \
	    nolabel \
	    default { "0" } \
	    menu { \
		"hscript"	"Hscript" \
		"python"	"Python" \
	    } \
	    disablewhen	{ { t##TOKEN == 0 } } \
	}

{
    name	"ifd"
    label	"Mantra"

    //
    // Common rendering parameters for soho
    //
    group	{
	name	main
	label	"Main"

	parm {
	    name	soho_program
	    label	"soho Program"
	    type	file
	    parmtag	{ filechooser_mode	"read" }
	    default	{ "IFD.py" }
	    invisible
	}
	parm {
	    // When evaluating SHOPs, this parameter is used to build
	    // shader strings in the "correct" format.  For IFD, we want
	    // to set this to "VMantra" so that the correct clerk is
	    // invoked.  It's also used to determine overrides for
	    // viewport rendering (and the render state)
	    name	soho_shopstyle
	    label	"soho SHOP Style"
	    type	string
	    default	{ "VMantra" }
	    invisible
	}
	parm {
	    name	target
	    label	"Render Target"
	    type	string
	    default	{ "current" }
	    menu	{
		"current"	"Mantra Current"
		"mantra11.0"	"Mantra 11.0"
		"mantra10.0"	"Mantra 10.0"
		"mantra9.5"	"Mantra 9.5"
		"mantra9.1"	"Mantra 9.1"
		"mantra9.0"	"Mantra 9.0"
	    }
	}
	parm {
	    name	camera
	    label	"Camera"
	    type	oppath
	    opfilter	"obj/camera"
	    default	{ "/obj/cam1" }
	}
	parm {
	    name	soho_pipecmd
	    label	"Command"
	    type	string
	    default	{ "mantra" }
	    disablewhen	"{ soho_outputmode != 0 }"
	    menureplace {
		"mantra"			"No command line overrides"
		"mantra -j 1"			"Use one CPU"
		"mantra -H host1,host2"		"Network rendering"
		"mantra -V 1"			"Verbose output"
		"mantra -V 2"			"More verbose output"
		"mantra -V p1"			"Verbose output with VEX profiling"
		"mantra -o consolewait"		"Verbose to console (Windows only)"
		"mantra -P pythonfilter"	"Filter IFD using python"
	    }
	}
	parm {
	    name	soho_outputmode
	    label	"Save IFD File To Disk"
	    type	toggle
	    nolabel
	    joinnext
	    default	{ 0 }
	}
	parm {
	    name	soho_diskfile
	    label	"Disk File"
	    type	file
	    parmtag	{ filechooser_mode	"write" }
	    default	{ "$HIP/test.ifd" }
	    disablewhen	"{ soho_outputmode != 1 }"
	}
	parm {
	    name	soho_foreground
	    label	"Block Until Render Complete"
	    type	toggle
	    default	{ 0 }
	    disablewhen	"{ soho_outputmode != 0 }"
	}
	parm {
	    name	soho_initsim
	    label	"Initialize Simulation OPs"
	    type	toggle
	    default	{ 0 }
	}
	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."
	}
    }
    group  {
	name	objects
	label	"Objects"
	parm {
	    name	vobject
	    label	"Candidate Objects"
	    type	oplist
	    parmtag	{ opfilter	"!!OBJ/GEOMETRY!!" }
	    parmtag	{ oprelative	"/obj" }
	    default	{ "*" }
	    help	"Objects will not be output if their display flag is off"
	}
	parm {
	    name	forceobject
	    label	"Force Objects"
	    type	oplist
	    parmtag	{ opfilter	"!!OBJ/GEOMETRY!!" }
	    parmtag	{ oprelative	"/obj" }
	    default	{ "" }
	    help	"Objects will be output regardless of the state of their display flag"
	}
	parm {
	    name	matte_objects
	    label	"Forced Matte"
	    type	oplist
	    parmtag	{ opfilter	"!!OBJ/GEOMETRY!!" }
	    default	{ "" }
	    help	"Objects forced to be output as matte objects"
	}
	parm {
	    name	phantom_objects
	    label	"Forced Phantom"
	    type	oplist
	    parmtag	{ opfilter	"!!OBJ/GEOMETRY!!" }
	    default	{ "" }
	    help	"Objects forced to be output as phantom objects"
	}
	parm {
	    name	excludeobject
	    label	"Exclude Objects"
	    type	oplist
	    parmtag	{ opfilter	"!!OBJ/GEOMETRY!!" }
	    parmtag	{ oprelative	"/obj" }
	    default	{ "" }
	    help	"Objects which are not output"
	}
	parm {
	    name	"obj_light_sep"
	    label	"Separator"
	    type	separator
	}

	parm {
	    name	sololight
	    label	"Solo Light"
	    type	oplist
	    parmtag	{ opfilter	"!!OBJ/LIGHT!!" }
	    parmtag	{ oprelative	"/obj" }
	    default	{ "" }
	    help	"Solo Lights"
	}
	parm {
	    name	alights
	    label	"Candidate Lights"
	    type	oplist
	    parmtag	{ opfilter	"!!OBJ/LIGHT!!" }
	    parmtag	{ oprelative	"/obj" }
	    default	{ "*" }
	    help	"Lights will not be output if their dimmer channel is 0."
	    disablewhen	"{ sololight != \"\" }"
	}
	parm {
	    name	forcelights
	    label	"Force Lights"
	    type	oplist
	    parmtag	{ opfilter	"!!OBJ/LIGHT!!" }
	    parmtag	{ oprelative	"/obj" }
	    default	{ "" }
	    help	"Lights will be output regardless of the value of their dimmer channel"
	    disablewhen	"{ sololight != \"\" }"
	}
	parm {
	    name	excludelights
	    label	"Exclude Lights"
	    type	oplist
	    parmtag	{ opfilter	"!!OBJ/LIGHT!!" }
	    parmtag	{ oprelative	"/obj" }
	    default	{ "" }
	    help	"Lights will not be output under any circumstances."
	    disablewhen	"{ sololight != \"\" }"
	}
	parm {
	    name	soho_autoheadlight
	    label	"Headlight Creation"
	    type	toggle
	    default	{ 1 }
	    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 != \"\" }"
	}

	parm {
	    name	"light_fog_sep"
	    label	"Separator"
	    type	separator
	}
	parm {
	    name	vfog
	    label	"Visible Fog"
	    type	oplist
	    parmtag	{ opfilter	"!!OBJ/FOG!!" }
	    parmtag	{ oprelative	"/obj" }
	    default	{ "*" }
	    help	"Objects will not be output if their display flag is off"
	}
    }
    group {
	name	properties
	label	"Properties"
	parm {
	    name	shop_propertiespath
	    label	"Default Properties"
	    type	oppath
	    parmtag	{ opfilter	"!!SHOP/PROPERTIES!!" }
	}
    }
    group {
	name	scripts
	label	"Scripts"

	RENDERSCRIPT(prerender,		"Pre-Render Script")
	RENDERSCRIPT(preframe,		"Pre-Frame Script")
	RENDERSCRIPT(postframe,		"Post-Frame Script")
	RENDERSCRIPT(postrender,	"Post-Render Script")
    }
}
INDX              DialogScript      
gLt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"aanoise"
    script	"aanoise"
    label	"aanoise"


    outercode {
	INCLUDE_VOPLIB
    }

    code {
	"#ifndef __vex"
	"   $noise = vop_fbmNoise($pos * $freq - $offset, $rough, $maxoctave);"
	"#else"
	"  #if !strcmp($signature, \"default\")"
	"   $noise = vop_fbmNoiseFV($pos * $freq - $offset, $rough, $maxoctave);"
	"  #elif !strcmp($signature, \"ff\")"
	"   $noise = vop_fbmNoiseFF($pos * $freq - $offset, $rough, $maxoctave);"
	"  #elif !strcmp($signature, \"fp\")"
	"   $noise = vop_fbmNoiseFP($pos * $freq - $offset, $rough, $maxoctave);"
	"  #elif !strcmp($signature, \"vf\")"
	"   $noise = vop_fbmNoiseVF($pos * $freq - $offset, $rough, $maxoctave);"
	"  #elif !strcmp($signature, \"vv\")"
	"   $noise = vop_fbmNoiseVV($pos * $freq - $offset, $rough, $maxoctave);"
	"  #else"
	"   $noise = vop_fbmNoiseVP($pos * $freq - $offset, $rough, $maxoctave);"
	"  #endif"
	"#endif"
	"$noise *= $amp;"
    }

    input	point	pos		"Position"
    input	vector	freq		"Frequency"
    input	point	offset		"Offset"
    input	float	amp		"Amplitude"
    input	float	rough		"Roughness"
    input	int	maxoctave	"Max Octaves"
    output	float	noise		"Anti-Aliased Noise"

    signature	"1D Input, 1D Noise"	ff	{ float   float   float   float float int float }
    signature	"3D Input, 1D Noise"	default	{ point  vector  point  float float int float }
    signature	"4D Input, 1D Noise"	fp	{ vector4 vector4 vector4 float float int float }
    signature	"1D Input, 3D Noise"	vf	{ float   float   float   float float int vector }
    signature	"3D Input, 3D Noise"	vv	{ point   vector  point  float float int vector }
    signature	"4D Input, 3D Noise"	vp	{ vector4 vector4 vector4 float float int vector }

    VOP_FLT_PARM	(pos_ff,	"1D Position", 0)
    VOP_VEC_PARM	(pos,		"3D Position", 0, 0, 0)
    VOP_VEC4_PARM	(pos_fp,	"4D Position", 0, 0, 0, 0)

    VOP_FLT_PARM	(freq_ff,	"1D Frequency", 1)
    VOP_VEC_PARM	(freq,		"3D Frequency", 1, 1, 1)
    VOP_VEC4_PARM	(freq_fp,	"4D Frequency", 1, 1, 1, 1)

    VOP_FLT_PARM	(offset_ff,	"1D Offset", 0)
    VOP_VEC_PARM	(offset,	"3D Offset", 0, 0, 0)
    VOP_VEC4_PARM	(offset_fp,	"4D Offset", 0, 0, 0, 0)

    VOP_FLT_PARM_R	(amp,		"Amplitude", 1, -1, 1)
    VOP_FLT_PARM	(rough,		"Roughness", 0.5)
    VOP_INT_PARM_R	(maxoctave,	"Max Octaves", 8, 0, 32)
}
INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"normalize"
    script	"normalize"
    label	"normalize"


    code {
	"$nvec = normalize($vec);"
    }

    input	normal	vec	"Input Vector"
    output	normal	nvec	"Normalized Vector"

    signature	"Normal Values"		default { }
    signature	"Point Values"		p  { point point }
    signature	"Vector Values"		v  { vector vector }
    signature	"Uniform Normal"	un { unormal unormal }
    signature	"Uniform Point"		up { upoint upoint }
    signature	"Uniform Vector"	uv { uvector uvector }

    group {
	name	"g0"
	label	"Defaults"
	VOP_VEC_PARM(vec,   "Input Normal",	1, 0, 0)
	VOP_VEC_PARM(vec_p, "Input Point",	1, 0, 0)
	VOP_VEC_PARM(vec_v, "Input Vector",	1, 0, 0)
    }
    group {
	name	"g1"
	label	"Uniform Defaults"
	VOP_VEC_PARM(vec_un, "Uniform Normal",	1, 0, 0)
	VOP_VEC_PARM(vec_up, "Uniform Point",	1, 0, 0)
	VOP_VEC_PARM(vec_uv, "Uniform Vector",	1, 0, 0)
    }
}
INDX              DialogScript      DLt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"fit"
    script	"fit"
    label	"fit"

    outercode {
	INCLUDE_VOPLIB
    }

    code {
	"$shift = vop_fit($val, $srcmin, $srcmax, $destmin, $destmax);"
    }

    input	float	val	"Input Value"
    input	float	srcmin	"Minimum Value In Source Range"
    input	float	srcmax	"Maximum Value In Source Range"
    input	float	destmin	"Minimum Value In Destination Range"
    input	float	destmax	"Maximum Value In Destination Range"
    output	float	shift	"Shifted Value"

    signature	"1D Values" default { }
    signature	"3D Values" v	 { vector vector vector vector vector vector }
    signature	"4D Values" v4	 { vector4 vector4 vector4 vector4 vector4 vector4 }
    signature	"1D Float Values"		default	{ }
    signature	"3D Vector Values"	v	{ vector vector vector vector vector vector }
    signature	"3D Point Values"	p	{ point point point point point point }
    signature	"3D Normal Values"	n	{ normal normal normal normal normal normal }
    signature	"3D Color Values"	c	{ color color color color color color }
    signature	"4D Values"		v4	{ vector4 vector4 vector4 vector4 vector4 vector4 }

    signature	"3D Uniform Float"	uf	{ ufloat ufloat ufloat ufloat ufloat ufloat }
    signature	"3D Uniform Vector"	uv	{ uvector uvector uvector uvector uvector uvector }
    signature	"3D Uniform Point"	up	{ upoint upoint upoint upoint upoint upoint }
    signature	"3D Uniform Normal"	un	{ unormal unormal unormal unormal unormal unormal }
    signature	"3D Uniform Color"	uc	{ ucolor ucolor ucolor ucolor ucolor ucolor }

    group {
	name	"gs"
	label	"1D Defaults"

	VOP_FLT_PARM(srcmin,	"1D Src Min", 0)
	VOP_FLT_PARM(srcmax,	"1D Src Max", 1)
	VOP_FLT_PARM(destmin,	"1D Dest Min", 0)
	VOP_FLT_PARM(destmax,	"1D Dest Max", 1)
    }
    group {
	name	"gv"
	label	"3D Defaults"

	VOP_VEC_PARM(srcmin_v,	"3D Vector Src Min", 0, 0, 0)
	VOP_VEC_PARM(srcmax_v,	"3D Vector Src Max", 1, 1, 1)
	VOP_VEC_PARM(destmin_v,	"3D Vector Dest Min", 0, 0, 0)
	VOP_VEC_PARM(destmax_v,	"3D Vector Dest Max", 1, 1, 1)

	VOP_VEC_PARM(srcmin_p,	"3D Point Src Min", 0, 0, 0)
	VOP_VEC_PARM(srcmax_p,	"3D Point Src Max", 1, 1, 1)
	VOP_VEC_PARM(destmin_p,	"3D Point Dest Min", 0, 0, 0)
	VOP_VEC_PARM(destmax_p,	"3D Point Dest Max", 1, 1, 1)

	VOP_VEC_PARM(srcmin_n,	"3D Normal Src Min", 0, 0, 0)
	VOP_VEC_PARM(srcmax_n,	"3D Normal Src Max", 1, 1, 1)
	VOP_VEC_PARM(destmin_n,	"3D Normal Dest Min", 0, 0, 0)
	VOP_VEC_PARM(destmax_n,	"3D Normal Dest Max", 1, 1, 1)

	VOP_CLR_PARM(srcmin_c,	"3D Color Src Min", 0, 0, 0)
	VOP_CLR_PARM(srcmax_c,	"3D Color Src Max", 1, 1, 1)
	VOP_CLR_PARM(destmin_c,	"3D Color Dest Min", 0, 0, 0)
	VOP_CLR_PARM(destmax_c,	"3D Color Dest Max", 1, 1, 1)
    }

    group {
	name	"gv4"
	label	"4D Defaults"

	VOP_VEC4_PARM(srcmin_v4, "4D Src Min", 0, 0, 0, 0)
	VOP_VEC4_PARM(srcmax_v4, "4D Src Max", 1, 1, 1, 1)
	VOP_VEC4_PARM(destmin_v4, "4D Dest Min", 0, 0, 0, 0)
	VOP_VEC4_PARM(destmax_v4, "4D Dest Max", 1, 1, 1, 1)
    }
    group {
	name	"gu"
	label	"Uniform Defaults"

	VOP_FLT_PARM(srcmin_uf,	"1D Src Min", 0)
	VOP_FLT_PARM(srcmax_uf,	"1D Src Max", 1)
	VOP_FLT_PARM(destmin_uf, "1D Dest Min", 0)
	VOP_FLT_PARM(destmax_uf, "1D Dest Max", 1)

	VOP_VEC_PARM(srcmin_uv,	"3D Vector Src Min", 0, 0, 0)
	VOP_VEC_PARM(srcmax_uv,	"3D Vector Src Max", 1, 1, 1)
	VOP_VEC_PARM(destmin_uv, "3D Vector Dest Min", 0, 0, 0)
	VOP_VEC_PARM(destmax_uv, "3D Vector Dest Max", 1, 1, 1)

	VOP_VEC_PARM(srcmin_up,	"3D Point Src Min", 0, 0, 0)
	VOP_VEC_PARM(srcmax_up,	"3D Point Src Max", 1, 1, 1)
	VOP_VEC_PARM(destmin_up, "3D Point Dest Min", 0, 0, 0)
	VOP_VEC_PARM(destmax_up, "3D Point Dest Max", 1, 1, 1)

	VOP_VEC_PARM(srcmin_un,	"3D Normal Src Min", 0, 0, 0)
	VOP_VEC_PARM(srcmax_un,	"3D Normal Src Max", 1, 1, 1)
	VOP_VEC_PARM(destmin_un, "3D Normal Dest Min", 0, 0, 0)
	VOP_VEC_PARM(destmax_un, "3D Normal Dest Max", 1, 1, 1)

	VOP_CLR_PARM(srcmin_uc,	"3D Color Src Min", 0, 0, 0)
	VOP_CLR_PARM(srcmax_uc,	"3D Color Src Max", 1, 1, 1)
	VOP_CLR_PARM(destmin_uc, "3D Color Dest Min", 0, 0, 0)
	VOP_CLR_PARM(destmax_uc, "3D Color Dest Max", 1, 1, 1)
    }

}

INDX              Contents       WLk   DialogScript   W  fLO0707070000010000000006660000000000000000010000001147726576700001300000000000TRAILER!!! # Dialog script for surfacemodel automatically generated 10/22/10 17:25:35

{
    name	surfacemodel
    script	surfacemodel
    label	"Surface Model"

    input	vector	P	Position
    input	vector	N	"Surface Normal"
    input	vector	I	"Direction from Eye to Surface"
    input	vector	uv	"UV Coordinate"
    input	vector	utan	"U Tangent"
    input	vector	vtan	"V Tangent"
    input	float	fresnel	Fresnel
    input	int	facefwd	"Ensure Faces Point Forward"
    input	int	conserveenergy	"Conserve Energy"
    input	int	fres_enable	"Fresnel Blending"
    input	string	fres_style	"Fresnel Style"
    input	float	ior_in	"Inside IOR"
    input	float	ior_out	"Outside IOR"
    input	string	tan_style	"Tangent Style"
    input	int	maxdist_enable	maxdist_enable
    input	float	maxdist	"Max Ray Distance"
    input	int	diff_enable	"Enable Diffuse"
    input	float	diff_int	"Diffuse Intensity"
    input	float	diff_min	"Diffuse Minimum"
    input	color	diff_clr	"Diffuse Color"
    input	float	diff_rough	"Oren-Nayar Roughness"
    input	int	sss_enable	"Enable Subsurface Scattering"
    input	float	sss_int	"Subsurface Intensity"
    input	vector	sss_clr	"Subsurface Color"
    input	float	sss_min	"Subsurface Minimum"
    input	float	sss_atten	"Attenuation Density"
    input	color	sss_attenclr	"Attenuation Color"
    input	float	sss_phase	"Scattering Phase"
    input	int	sss_1enable	"Enable Single Scattering"
    input	float	sss_1intensity	"Single Intensity"
    input	int	sss_1quality	"Single Quality"
    input	int	sss_2enable	"Enable Multiple Scattering"
    input	int	sss_pcmode	"Point Cloud Mode"
    input	string	sss_pcname	"Point Cloud"
    input	float	sss_2intensity	"Multi Intensity"
    input	float	sss_2quality	"Multi Quality"
    input	int	refl_enable	"Enable Reflection Layer 1"
    input	int	refl_lights	"Reflect Lights"
    input	string	spec_model	"Specular Model"
    input	float	spec_int	"Specular Intensity"
    input	float	spec_min	"Specular Minimum"
    input	vector	spec_clr	"Specular Color"
    input	float	spec_angle	"Specular Angle"
    input	float	spec_aniso	"Specular Anisotropy"
    input	int	refl_objs	"Reflect Objects"
    input	float	refl_qual	"Reflection Quality"
    input	int	refl_sep	"Separate Object Reflection Parameters"
    input	float	refl_int	"Reflection Intensity"
    input	vector	refl_clr	"Reflection Color"
    input	float	refl_angle	"Reflection Angle"
    input	int	refl_enable2	"Enable Reflection Layer 2"
    input	int	refl_lights2	"Reflect Lights"
    input	string	spec_model2	"Specular Model"
    input	float	spec_int2	"Specular Intensity"
    input	float	spec_min2	"Specular Minimum"
    input	vector	spec_clr2	"Specular Color"
    input	float	spec_angle2	"Specular Angle"
    input	float	spec_aniso2	"Specular Anisotropy"
    input	int	refl_objs2	"Reflect Objects"
    input	float	refl_qual2	"Reflection Quality"
    input	int	refl_sep2	"Separate Object Reflection Parameters"
    input	float	refl_int2	"Reflection Intensity"
    input	vector	refl_clr2	"Reflection Color"
    input	float	refl_angle2	"Reflection Angle"
    input	int	refr_enable	"Enable Refractions"
    input	int	refr_lights	"Refract Lights"
    input	string	refr_model	"Refraction Model"
    input	float	refr_int	"Refraction Intensity"
    input	float	refr_min	"Refraction Minimum"
    input	vector	refr_clr	"Refraction Color"
    input	float	refr_angle	"Refraction Angle"
    input	float	refr_aniso	"Refraction Anisotropy"
    input	int	refr_objs	"Refract Objects"
    input	float	refr_qual	"Refraction Quality"
    input	int	atten_enable	"Enable Attenuation"
    input	float	atten_den	"Attenuation Density"
    input	vector	atten_clr	"Attenuation Color"
    input	int	emit_enable	"Enable Emission"
    input	float	emit_int	"Emission Intensity"
    input	vector	emit_clr	"Emission Color"
    input	float	opac_int	"Opacity Scale"
    input	vector	opac_clr	Opacity
    input	int	fake_enable	"Enable Fake Caustics"
    input	float	fake_min	"Min Shadow Intensity"
    input	float	fake_max	"Max Shadow Intensity"
    input	int	opac_falloff	"Enable Opacity Falloff"
    input	float	opac_para	"Parallel Opacity"
    input	float	opac_perp	"Perp Opacity"
    input	float	opac_rolloff	"Opacity Rolloff"
    input	int	emit_illum	"Emission Illuminates Objects"
    input	int	refr_thin	"Thin Film Refraction"
    output	vector	Cf	Cf
    output	vector	Of	Of
    output	bsdf	F	F
    inputflags	P	0
    inputflags	N	0
    inputflags	I	0
    inputflags	uv	0
    inputflags	utan	0
    inputflags	vtan	0
    inputflags	fresnel	0
    inputflags	facefwd	1
    inputflags	conserveenergy	1
    inputflags	fres_enable	1
    inputflags	fres_style	1
    inputflags	ior_in	1
    inputflags	ior_out	1
    inputflags	tan_style	1
    inputflags	maxdist_enable	1
    inputflags	maxdist	1
    inputflags	diff_enable	1
    inputflags	diff_int	0
    inputflags	diff_min	1
    inputflags	diff_clr	0
    inputflags	diff_rough	1
    inputflags	sss_enable	1
    inputflags	sss_int	0
    inputflags	sss_clr	0
    inputflags	sss_min	1
    inputflags	sss_atten	1
    inputflags	sss_attenclr	1
    inputflags	sss_phase	1
    inputflags	sss_1enable	1
    inputflags	sss_1intensity	1
    inputflags	sss_1quality	1
    inputflags	sss_2enable	1
    inputflags	sss_pcmode	1
    inputflags	sss_pcname	1
    inputflags	sss_2intensity	1
    inputflags	sss_2quality	1
    inputflags	refl_enable	1
    inputflags	refl_lights	1
    inputflags	spec_model	1
    inputflags	spec_int	0
    inputflags	spec_min	1
    inputflags	spec_clr	0
    inputflags	spec_angle	1
    inputflags	spec_aniso	1
    inputflags	refl_objs	1
    inputflags	refl_qual	1
    inputflags	refl_sep	1
    inputflags	refl_int	1
    inputflags	refl_clr	1
    inputflags	refl_angle	1
    inputflags	refl_enable2	1
    inputflags	refl_lights2	1
    inputflags	spec_model2	1
    inputflags	spec_int2	1
    inputflags	spec_min2	1
    inputflags	spec_clr2	1
    inputflags	spec_angle2	1
    inputflags	spec_aniso2	1
    inputflags	refl_objs2	1
    inputflags	refl_qual2	1
    inputflags	refl_sep2	1
    inputflags	refl_int2	1
    inputflags	refl_clr2	1
    inputflags	refl_angle2	1
    inputflags	refr_enable	1
    inputflags	refr_lights	1
    inputflags	refr_model	1
    inputflags	refr_int	0
    inputflags	refr_min	1
    inputflags	refr_clr	0
    inputflags	refr_angle	1
    inputflags	refr_aniso	1
    inputflags	refr_objs	1
    inputflags	refr_qual	1
    inputflags	atten_enable	1
    inputflags	atten_den	1
    inputflags	atten_clr	1
    inputflags	emit_enable	1
    inputflags	emit_int	0
    inputflags	emit_clr	0
    inputflags	opac_int	0
    inputflags	opac_clr	0
    inputflags	fake_enable	1
    inputflags	fake_min	1
    inputflags	fake_max	1
    inputflags	opac_falloff	1
    inputflags	opac_para	1
    inputflags	opac_perp	1
    inputflags	opac_rolloff	1
    inputflags	emit_illum	1
    inputflags	refr_thin	1
    signature	"Default Inputs"	default	{ vector vector vector vector vector vector float int int int string float float string int float int float float color float int float vector float float color float int float int int int string float float int int string float float vector float float int float int float vector float int int string float float vector float float int float int float vector float int int string float float vector float float int float int float vector int float vector float vector int float float int float float float int int vector vector bsdf }

    outputoverrides	default
    {
	___begin	auto
			(0,0,0)
	___begin	auto
			(0,0,0)
	___begin	auto
			(0)
    }

    help {
	""
    }

    parm {
	name	"facefwd"
	label	"Ensure Faces Point Forward"
	type	toggle
	default	{ "1" }
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"conserveenergy"
	label	"Conserve Energy"
	type	toggle
	default	{ "1" }
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"fres_enable"
	label	"Fresnel Blending"
	type	toggle
	default	{ "0" }
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"fres_style"
	label	"Fresnel Style"
	type	string
	default	{ "physical" }
	disablewhen	"{ fres_enable == 0 }"
	menu	{
	    "physical"	"Physically Based"
	    "input"	"Use Connected 'fresnel'"
	}
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"ior_in"
	label	"Inside IOR"
	type	float
	default	{ "1.2" }
	range	{ 1 3 }
	export	none
    }
    parm {
	name	"ior_out"
	label	"Outside IOR"
	type	float
	default	{ "1" }
	range	{ 1 3 }
	export	none
    }
    parm {
	name	"tan_style"
	label	"Tangent Style"
	type	string
	default	{ "geo" }
	menu	{
	    "geo"	"Use Geometric Tangents"
	    "world"	"Intrinsic World Space"
	    "object"	"Intrinsic Object Space"
	    "uv"	"Compute From UV"
	    "inputs"	"Use Connected 'utan', 'vtan'"
	}
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"maxdist_enable"
	label	"maxdist_enable"
	type	toggle
	nolabel
	joinnext
	default	{ "0" }
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"maxdist"
	label	"Max Ray Distance"
	type	float
	default	{ "10" }
	disablewhen	"{ maxdist_enable == 0 }"
	range	{ 0 100 }
	export	none
    }
    group {
	name	"diffuse_folder"
	label	"Diffuse"

	parm {
	    name	"diff_enable"
	    label	"Enable Diffuse"
	    type	toggle
	    default	{ "1" }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"diff_int"
	    label	"Diffuse Intensity"
	    type	float
	    default	{ "0.5" }
	    disablewhen	"{ diff_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"diff_min"
	    label	"Diffuse Minimum"
	    type	float
	    default	{ "0" }
	    disablewhen	"{ diff_enable == 0 } { fres_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"diff_clr"
	    label	"Diffuse Color"
	    type	color
	    size	3
	    default	{ "1" "1" "1" }
	    disablewhen	"{ diff_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"diff_rough"
	    label	"Oren-Nayar Roughness"
	    type	float
	    default	{ "0" }
	    disablewhen	"{ diff_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
    }

    group {
	name	"diffuse_folder_1"
	label	"Subsurface"

	parm {
	    name	"sss_enable"
	    label	"Enable Subsurface Scattering"
	    type	toggle
	    default	{ "0" }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"sss_int"
	    label	"Subsurface Intensity"
	    type	float
	    default	{ "0.5" }
	    disablewhen	"{ sss_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"sss_clr"
	    label	"Subsurface Color"
	    type	color
	    size	3
	    default	{ "1" "1" "1" }
	    disablewhen	"{ sss_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"sss_min"
	    label	"Subsurface Minimum"
	    type	float
	    default	{ "0" }
	    disablewhen	"{ sss_enable == 0 } { fres_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"sss_atten"
	    label	"Attenuation Density"
	    type	float
	    default	{ "10" }
	    help	"This parameter controls how fast light is attenuated.  Higher densities correspond to faster attenuation."
	    disablewhen	"{ sss_enable == 0 }"
	    range	{ 0! 1 }
	    export	none
	}
	parm {
	    name	"sss_attenclr"
	    label	"Attenuation Color"
	    type	color
	    size	3
	    default	{ "1" "1" "1" }
	    help	"This parameter specifies the color that the light will tend towards as it is attenuated.  This color will typically dominate areas of the surface that are in shadow."
	    disablewhen	"{ sss_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"sss_phase"
	    label	"Scattering Phase"
	    type	float
	    default	{ "0" }
	    help	"This parameter controls the nature of the scattering (forward, backward, isotropic, etc.).  The phase must lie in the range [-1, 1], with -1 indicating full backward scattering, 0 indicating isotropic scattering, and 1 indicating full forward scattering."
	    disablewhen	"{ sss_enable == 0 }"
	    range	{ -1! 1! }
	    export	none
	}
	parm {
	    name	"sss_1enable"
	    label	"Enable Single Scattering"
	    type	toggle
	    default	{ "1" }
	    disablewhen	"{ sss_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"sss_1intensity"
	    label	"Single Intensity"
	    type	float
	    default	{ "1" }
	    help	"This parameter controls the intensity of single scattering."
	    disablewhen	"{ sss_enable == 0 } { sss_1enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"sss_1quality"
	    label	"Single Quality"
	    type	integer
	    default	{ "1" }
	    help	"This parameter controls the quality of single scattering.  Higher values will increase quality and render times."
	    disablewhen	"{ sss_enable == 0 } { sss_1enable == 0 }"
	    range	{ 1! 10 }
	    export	none
	}
	parm {
	    name	"sss_2enable"
	    label	"Enable Multiple Scattering"
	    type	toggle
	    default	{ "1" }
	    disablewhen	"{ sss_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"sss_pcmode"
	    label	"Point Cloud Mode"
	    type	ordinal
	    default	{ "0" }
	    help	"This option controls how the shader generates a point cloud.  The simplest option is to select \"Generate At Render Time\".  This will create a new point cloud for every render.  To reduce computation time, you can first use \"Write To File\" mode and then re-use the point cloud using \"Read From File\" mode on subsequent renders.  This is also the recommended approach when rendering animations because the shader will smoothly interpolate the point cloud across frames.  The exception to this is when the model's topology changes (two joined polygons are separated, for example).  In this case, a new point cloud must be generated.  Note that in \"Write To File\" mode, the file will be overwritten if it already exists.  Cancelling a render before it completes in \"Write To File\" mode may result in an unusable point cloud file."
	    disablewhen	"{ sss_enable == 0 } { sss_2enable == 0 }"
	    menu	{
		"0"	"Generate At Render Time"
		"1"	"Read From File"
		"2"	"Write To File"
	    }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"sss_pcname"
	    label	"Point Cloud"
	    type	file
	    default	{ "default.pc" }
	    help	"This parameter holds the path to the point cloud file that will be written to in \"Write To File\" mode or read from in \"Read From File\" mode."
	    disablewhen	"{ sss_enable == 0 } { sss_2enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"sss_2intensity"
	    label	"Multi Intensity"
	    type	float
	    default	{ "1" }
	    help	"This parameter controls the intensity of multiple scattering."
	    disablewhen	"{ sss_enable == 0 } { sss_2enable == 0 }"
	    range	{ 0! 1 }
	    export	none
	}
	parm {
	    name	"sss_2quality"
	    label	"Multi Quality"
	    type	float
	    default	{ "1" }
	    help	"This parameter controls the quality of multiple scattering.  Higher values will increase quality and render times."
	    disablewhen	"{ sss_enable == 0 } { sss_2enable == 0 }"
	    range	{ 0.01 10 }
	    export	none
	}
    }

    group {
	name	"diffuse_folder_2"
	label	"Reflect"

	group {
	    name	"folder0"
	    label	"Layer 1"

	    parm {
		name	"refl_enable"
		label	"Enable Reflection Layer 1"
		type	toggle
		default	{ "1" }
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"refl_lights"
		label	"Reflect Lights"
		type	toggle
		default	{ "1" }
		disablewhen	"{ refl_enable == 0 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"spec_model"
		label	"Specular Model"
		type	string
		default	{ "0" }
		disablewhen	"{ refl_enable == 0 } { refl_lights == 0 refl_objs == 0 }"
		menu	{
		    "phong"	"Phong"
		    "blinn"	"Blinn"
		    "cone"	"Cone"
		}
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"spec_int"
		label	"Specular Intensity"
		type	float
		default	{ "0.1" }
		disablewhen	"{ refl_enable == 0 } { refl_lights == 0 refl_objs == 0 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"spec_min"
		label	"Specular Minimum"
		type	float
		default	{ "0" }
		disablewhen	"{ refl_enable == 0 } { refl_lights == 0 refl_objs == 0 } { fres_enable == 0 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"spec_clr"
		label	"Specular Color"
		type	color
		size	3
		default	{ "1" "1" "1" }
		disablewhen	"{ refl_enable == 0 } { refl_lights == 0 refl_objs == 0 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"spec_angle"
		label	"Specular Angle"
		type	float
		default	{ "10" }
		disablewhen	"{ refl_enable == 0 } { refl_lights == 0 refl_objs == 0 }"
		range	{ 0 90 }
		export	none
	    }
	    parm {
		name	"spec_aniso"
		label	"Specular Anisotropy"
		type	float
		default	{ "0" }
		disablewhen	"{ refl_enable == 0 } { refl_lights == 0 refl_objs == 0 } { spec_angle == 0 }"
		range	{ -1 1 }
		export	none
	    }
	    parm {
		name	"refl_objs"
		label	"Reflect Objects"
		type	toggle
		default	{ "1" }
		disablewhen	"{ refl_enable == 0 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"refl_qual"
		label	"Reflection Quality"
		type	float
		default	{ "1" }
		disablewhen	"{ refl_enable == 0 } { refl_objs == 0 }"
		range	{ 0.1 10 }
		export	none
	    }
	    parm {
		name	"refl_sep"
		label	"Separate Object Reflection Parameters"
		type	toggle
		default	{ "0" }
		disablewhen	"{ refl_enable == 0 } { refl_objs == 0 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"refl_int"
		label	"Reflection Intensity"
		type	float
		default	{ "0.1" }
		disablewhen	"{ refl_enable == 0 } { refl_objs == 0 } { refl_sep == 0 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"refl_clr"
		label	"Reflection Color"
		type	color
		size	3
		default	{ "1" "1" "1" }
		disablewhen	"{ refl_enable == 0 } { refl_objs == 0 } { refl_sep == 0 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"refl_angle"
		label	"Reflection Angle"
		type	float
		default	{ "0" }
		disablewhen	"{ refl_enable == 0 } { refl_objs == 0 } { refl_sep == 0 }"
		range	{ 0 90 }
		export	none
	    }
	}

	group {
	    name	"folder0_1"
	    label	"Layer 2"

	    parm {
		name	"refl_enable2"
		label	"Enable Reflection Layer 2"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"refl_lights2"
		label	"Reflect Lights"
		type	toggle
		default	{ "1" }
		disablewhen	"{ refl_enable2 == 0 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"spec_model2"
		label	"Specular Model"
		type	string
		default	{ "0" }
		disablewhen	"{ refl_enable2 == 0 } { refl_lights2 == 0 refl_objs2 == 0 }"
		menu	{
		    "phong"	"Phong"
		    "blinn"	"Blinn"
		    "cone"	"Cone"
		}
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"spec_int2"
		label	"Specular Intensity"
		type	float
		default	{ "0.1" }
		disablewhen	"{ refl_enable2 == 0 } { refl_lights2 == 0 refl_objs2 == 0 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"spec_min2"
		label	"Specular Minimum"
		type	float
		default	{ "0" }
		disablewhen	"{ refl_enable2 == 0 } { refl_lights2 == 0 refl_objs2 == 0 } { fres_enable == 0 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"spec_clr2"
		label	"Specular Color"
		type	color
		size	3
		default	{ "1" "1" "1" }
		disablewhen	"{ refl_enable2 == 0 } { refl_lights2 == 0 refl_objs2 == 0 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"spec_angle2"
		label	"Specular Angle"
		type	float
		default	{ "10" }
		disablewhen	"{ refl_enable2 == 0 } { refl_lights2 == 0 refl_objs2 == 0 }"
		range	{ 0 90 }
		export	none
	    }
	    parm {
		name	"spec_aniso2"
		label	"Specular Anisotropy"
		type	float
		default	{ "0" }
		disablewhen	"{ refl_enable2 == 0 } { refl_lights2 == 0 refl_objs2 == 0 } { spec_angle2 == 0 }"
		range	{ -1 1 }
		export	none
	    }
	    parm {
		name	"refl_objs2"
		label	"Reflect Objects"
		type	toggle
		default	{ "1" }
		disablewhen	"{ refl_enable2 == 0 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"refl_qual2"
		label	"Reflection Quality"
		type	float
		default	{ "1" }
		disablewhen	"{ refl_enable2 == 0 } { refl_objs2 == 0 }"
		range	{ 0.1 10 }
		export	none
	    }
	    parm {
		name	"refl_sep2"
		label	"Separate Object Reflection Parameters"
		type	toggle
		default	{ "0" }
		disablewhen	"{ refl_enable2 == 0 } { refl_objs2 == 0 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"refl_int2"
		label	"Reflection Intensity"
		type	float
		default	{ "0.1" }
		disablewhen	"{ refl_enable2 == 0 } { refl_objs2 == 0 } { refl_sep2 == 0 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"refl_clr2"
		label	"Reflection Color"
		type	color
		size	3
		default	{ "1" "1" "1" }
		disablewhen	"{ refl_enable2 == 0 } { refl_objs2 == 0 } { refl_sep2 == 0 }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"refl_angle2"
		label	"Reflection Angle"
		type	float
		default	{ "0" }
		disablewhen	"{ refl_enable2 == 0 } { refl_objs2 == 0 } { refl_sep2 == 0 }"
		range	{ 0 90 }
		export	none
	    }
	}

    }

    group {
	name	"diffuse_folder_3"
	label	"Refract"

	parm {
	    name	"refr_enable"
	    label	"Enable Refractions"
	    type	toggle
	    default	{ "0" }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"refr_lights"
	    label	"Refract Lights"
	    type	toggle
	    default	{ "1" }
	    disablewhen	"{ refr_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"refr_model"
	    label	"Refraction Model"
	    type	string
	    default	{ "phong" }
	    disablewhen	"{ refr_enable == 0 } { refr_lights == 0 refr_objs == 0 }"
	    menu	{
		"phong"	"Phong"
		"cone"	"Cone"
		"diffuse"	"Translucency"
	    }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"refr_int"
	    label	"Refraction Intensity"
	    type	float
	    default	{ "1" }
	    disablewhen	"{ refr_enable == 0 } { refr_lights == 0 refr_objs == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"refr_min"
	    label	"Refraction Minimum"
	    type	float
	    default	{ "0" }
	    disablewhen	"{ refr_enable == 0 } { refr_lights == 0 refr_objs == 0 } { fres_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"refr_clr"
	    label	"Refraction Color"
	    type	color
	    size	3
	    default	{ "1" "1" "1" }
	    disablewhen	"{ refr_enable == 0 } { refr_lights == 0 refr_objs == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"refr_angle"
	    label	"Refraction Angle"
	    type	float
	    default	{ "0" }
	    disablewhen	"{ refr_enable == 0 } { refr_lights == 0 refr_objs == 0 } { refr_model == diffuse }"
	    range	{ 0 90 }
	    export	none
	}
	parm {
	    name	"refr_aniso"
	    label	"Refraction Anisotropy"
	    type	float
	    default	{ "0" }
	    disablewhen	"{ refr_enable == 0 } { refr_lights == 0 refr_objs == 0 } { refr_model == diffuse } { refr_angle == 0 }"
	    range	{ -1 1 }
	    export	none
	}
	parm {
	    name	"refr_objs"
	    label	"Refract Objects"
	    type	toggle
	    default	{ "1" }
	    disablewhen	"{ refr_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"refr_qual"
	    label	"Refraction Quality"
	    type	float
	    default	{ "1" }
	    disablewhen	"{ refr_enable == 0 } { refr_objs == 0 }"
	    range	{ 0.1 10 }
	    export	none
	}
	parm {
	    name	"atten_enable"
	    label	"Enable Attenuation"
	    type	toggle
	    default	{ "0" }
	    disablewhen	"{ refr_enable == 0 } { refr_objs == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"atten_den"
	    label	"Attenuation Density"
	    type	float
	    default	{ "0.5" }
	    disablewhen	"{ refr_enable == 0 } { refr_objs == 0 } { atten_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"atten_clr"
	    label	"Attenuation Color"
	    type	color
	    size	3
	    default	{ "1" "1" "1" }
	    disablewhen	"{ refr_enable == 0 } { refr_objs == 0 } { atten_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"refr_thin"
	    label	"Thin Film Refraction"
	    type	toggle
	    default	{ "0" }
	    disablewhen	"{ refr_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
    }

    group {
	name	"diffuse_folder_4"
	label	"Emission"

	parm {
	    name	"emit_enable"
	    label	"Enable Emission"
	    type	toggle
	    default	{ "0" }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"emit_int"
	    label	"Emission Intensity"
	    type	float
	    default	{ "1" }
	    disablewhen	"{ emit_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"emit_clr"
	    label	"Emission Color"
	    type	color
	    size	3
	    default	{ "1" "1" "1" }
	    disablewhen	"{ emit_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"emit_illum"
	    label	"Emission Illuminates Objects"
	    type	toggle
	    default	{ "1" }
	    disablewhen	"{ emit_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
    }

    group {
	name	"diffuse_folder_5"
	label	"Opacity"

	parm {
	    name	"opac_int"
	    label	"Opacity Scale"
	    type	float
	    default	{ "1" }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"opac_clr"
	    label	"Opacity"
	    type	color
	    size	3
	    default	{ "1" "1" "1" }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"fake_enable"
	    label	"Enable Fake Caustics"
	    type	toggle
	    default	{ "1" }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"fake_min"
	    label	"Min Shadow Intensity"
	    type	float
	    default	{ "0" }
	    disablewhen	"{ fake_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"fake_max"
	    label	"Max Shadow Intensity"
	    type	float
	    default	{ "1" }
	    disablewhen	"{ fake_enable == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"opac_falloff"
	    label	"Enable Opacity Falloff"
	    type	toggle
	    default	{ "0" }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"opac_para"
	    label	"Parallel Opacity"
	    type	float
	    default	{ "0" }
	    disablewhen	"{ opac_falloff == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"opac_perp"
	    label	"Perp Opacity"
	    type	float
	    default	{ "1" }
	    disablewhen	"{ opac_falloff == 0 }"
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"opac_rolloff"
	    label	"Opacity Rolloff"
	    type	float
	    default	{ "1" }
	    disablewhen	"{ opac_falloff == 0 }"
	    range	{ 0 10 }
	    export	none
	}
    }

}
INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"frontface"
    script	"frontface"
    label	"frontface"

    outercode {
	INCLUDE_VOPLIB
    }

    code {
	"VOPvector $myI = $isconnected_I != 0 ? $I : I;"
	"VOPnormal $myN = $isconnected_N != 0 ? $N : N;"
	"$frontN = vop_frontface($myN, $myI);"
	"if ($normalize)"
	"    $frontN = normalize($frontN);"
    }

    input	vector	I	"Incident Vector"
    input	normal	N	"Surface Normal"
    output	normal	frontN	"Front-Facing Surface Normal"

    signature "Varying Normal"	default { }
    signature "Uniform Normal"	un	{ uvector unormal unormal }	

    parm {
        name    normalize
        label   "Normalize Output Vector"
        type    toggle
        default { 1 }
    }
}

INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

{
    name	"shadow"
    script	"shadow"
    label	"shadow"


    code {
	"$color = $lightcolor;"
	"shadow($color);"
    }

    input	vector	lightcolor	"Light Color"
    output	vector	color		"Light Color After Shadowing"

    parm {
	name	lightcolor
	label	"Light Color"
	type	float
	size	3
	default	{ 0.0 0.0 0.0 }
    }
}

INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"luminance"
    script	"luminance"
    label	"luminance"


    code {
	"#ifdef __vex"
	"    $lum = luminance($rgb);"
	"#else"
	"    $lum = point($rgb).point(0.299, 0.587, 0.114);"
	"#endif"
    }

    input	color	rgb	"RGB color"
    output	float	lum	"Luminance"

    VOP_CLR_PARM(rgb, "RGB Color", 0, 0, 0)
}
INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"hvectovec"
    script	"hvectovec"
    label	"hvectovec"


    code {
	"$vec = $hvec;"
	"$fval4 = getcomp($hvec, 3);"
    }

    input	vector4	hvec	"Input Vector4"
    output	vector	vec	"Output Vector"
    output	float	fval4	"Fourth Component"

    parm {
	name	hvec
	label	"Input Vector4"
	type	float
	size	4
	default	{ 0 0 0 0 }
    }
}

INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"complement"
    script	"complement"
    label	"complement"

    code {
	"$complem = -$val;"
	"$complem += 1;"
    }

    input	float	val	"Input Value"
    output	float	complem	"Complement: 1 - Input Value"

    signature	"1D Float Values"		default	{ }
    signature	"1D Integer Values"	i	{ int int }
    signature	"3D Vector Values"	v	{ vector vector }
    signature	"3D Point Values"	p	{ point point }
    signature	"3D Normal Values"	n	{ normal normal }
    signature	"3D Color Values"	c	{ color color }
    signature	"4D Values"		v4	{ vector4 vector4 }

    signature	"3D Uniform Float"	uf	{ ufloat ufloat }
    signature	"3D Uniform Vector"	uv	{ uvector uvector }
    signature	"3D Uniform Point"	up	{ upoint upoint }
    signature	"3D Uniform Normal"	un	{ unormal unormal }
    signature	"3D Uniform Color"	uc	{ ucolor ucolor }

    group {
	name 	"gv"
	label	"Defaults"
	VOP_FLT_PARM(val,   "1D Float Input", 1)
	VOP_INT_PARM(val_i, "1D Integer Input", 1)
	VOP_VEC_PARM(val_v, "3D Vector", 1, 1, 1)
	VOP_VEC_PARM(val_p, "3D Point", 1, 1, 1)
	VOP_VEC_PARM(val_n, "3D Normal", 1, 1, 1)
	VOP_CLR_PARM(val_c, "3D Color", 1, 1, 1)
	VOP_VEC4_PARM(val_v4,"4D Vector", 1, 1, 1, 1)
    }
    group {
	name 	"gu"
	label	"Uniform Defaults"
	VOP_FLT_PARM(val_uf, "1D Float", 1)
	VOP_VEC_PARM(val_uv, "3D Vector", 1, 1, 1)
	VOP_VEC_PARM(val_up, "3D Point", 1, 1, 1)
	VOP_VEC_PARM(val_un, "3D Normal", 1, 1, 1)
	VOP_CLR_PARM(val_uc, "3D Color", 1, 1, 1)
    }
}
INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"floattovec"
    script	"floattovec"
    label	"floattovec"

    outercode {
	INCLUDE_VOPLIB
    }

    code {
	"$vec = vop_floattovec($fval1, $fval2, $fval3);"
    }

    input	float	fval1	"Component 1"
    input	float	fval2	"Component 2"
    input	float	fval3	"Component 3"
    output	vector	vec	"Output Vector"

    VOP_FLT_PARM(fval1, "Component 1", 0)
    VOP_FLT_PARM(fval2, "Component 2", 0)
    VOP_FLT_PARM(fval3, "Component 3", 0)

    VOP_FLT_PARM(fval1_uv, "Uniform Component 1", 0)
    VOP_FLT_PARM(fval2_uv, "Uniform Component 2", 0)
    VOP_FLT_PARM(fval3_uv, "Uniform Component 3", 0)

    signature	"3D Vector Output"	default { }
    signature	"3D Point Output"	p { float float float point }
    signature	"3D Normal Output"	n { float float float normal }
    signature	"3D Color Output"	c { float float float color }

    signature	"3D Uniform Vector"	uv { ufloat ufloat ufloat uvector }
    signature	"3D Uniform Point"	up { ufloat ufloat ufloat upoint }
    signature	"3D Uniform Normal"	un { ufloat ufloat ufloat unormal }
    signature	"3D Uniform Color"	uc { ufloat ufloat ufloat ucolor }
}
INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

{
    name	"invert"
    script	"invert"
    label	"invert"


    code {
	"#if !strcmp($signature, \"f\")"
	"  $inverse = 1.0 / $val;"
	"#else"
	"  $inverse = invert($val);"
	"#endif"
    }

    input	matrix	val	"Input Value"
    output	matrix	inverse	"Inverted Value"
    signature	"4x4 Matrix"	default	{ }
    signature	"3x3 Matrix"	m3	{ matrix3 matrix3 }
    signature	"Scalar Float"	f	{ float float }

    parm {
	name	val
	label	"4x4 Matrix"
	type	float
	size	16
	default	{ 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 }
    }
    parm {
	name	val_m3
	label	"3x3 Matrix"
	type	float
	size	9
	default	{ 1 0 0 0 1 0 0 0 1 }
    }
    parm {
	name	val_f
	label	"Scalar Float"
	type	float
	size	1
	default	{ 1 }
    }
}
INDX              DialogScript      Lt/*
 * PROPRIETARY INFORMATION.  This software is proprietary to
 * Side Effects Software Inc., and is not to be reproduced,
 * transmitted, or disclosed in any way without written permission.
 *
 * Produced by:
 *	Side Effects Software Inc
 *	477 Richmond Street West
 *	Toronto, Ontario
 *	Canada   M5V 3E7
 *	416-504-9876
 *
 */

#include <parameter.ds>

{
    name	"lighting"
    script	"lighting"
    label	"lighting"


    outercode {
	INCLUDE_VOPLIB
    }

    code {
	"VOPvector $ii = ($isconnected_nI != 0) ? $nI : normalize(I);"
	"VOPnormal $nf = ($isconnected_nN != 0) ? $nN : normalize(N);"
	""
        "if ($facefwd) $nf = vop_frontface($nf, $ii);"
	""
	"$clr = vop_lighting($lmodel, $nf, $ii, $uv, $amb, $diff, $spec,"
	"                    $urough, $vrough, $tstyle);"
	VOP_ASSIGN_BSDF(
	    "$f = vop_lighting_bsdf($lmodel, $nf, $ii, $uv, $amb, $diff, $spec, $urough, $vrough, $tstyle);"
	)
    }

    output	color	clr	"Color"
    output	bsdf	f	"BSDF"

    VOP_LMODEL_INPUT(	lmodel,	"Lighting Model")

    input normal    nN		"Normal Vector"
    input vector    nI		"Incident Vector"

    VOP_CLR_INPUT  (amb,	"Ambient Color",	.5, .5, .5)
    VOP_CLR_INPUT  (diff,	"Diffuse Color",	.5, .5, .5)
    VOP_CLR_INPUT  (spec,	"Specular Color",	.5, .5, .5)
    VOP_FLT_INPUT_R(urough,	"U Roughness",		.05, 0, 1)
    VOP_FLT_INPUT_R(vrough,	"V Roughness",		.05, 0, 1)
    VOP_TOGGLE_INPUT(facefwd,	"Ensure Faces Point Forward", 1)

    input vector    uv		"UV Coordinate"
    input int	    tstyle	"Tangent Style"
    parm {
	name	tstyle
	label	"Tangent Style"
	type	int
	menu	{
		0		"Intrinsic World Space"
		1		"Intrinsic Object Space"
		2		"Compute from UV"
	}
	default { 0 }
    }
}
0707070000010000000006660000000000000000010000001147726722100002000000000012expression.func # 0 bytes
0707070000010000000006660000000000000000010000001147726722100001000000000566obj.def comment ""
position 5 2
cachesize 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 off exposed on
inputs
{
}
stat
{
  create 1291674342
  modify 1291676411
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100001100000000020obj.parm {
version 0.8
}
0707070000010000000006660000000000000000010000001147726722100001500000000032obj/fog.init type = geo
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100001400000000755obj/fog.def objflags 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.66384 -0.097467
cachesize 1
flags =  lock off model off template off footprint off xray off bypass off display on render off highlight off unload off savedata off compress off exposed on selectable on
inputs
{
}
stat
{
  create 1291674873
  modify 1291675451
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100002500000020166obj/fog.spareparmdef     group {
	name	"stdswitcher5"
	label	"Transform"

	parm {
	    name	"keeppos"
	    baseparm
	    joinnext
	    export	none
	}
	parm {
	    name	"pre_xform"
	    baseparm
	    export	none
	}
	parm {
	    name	"xOrd"
	    baseparm
	    joinnext
	    export	none
	}
	parm {
	    name	"rOrd"
	    baseparm
	    export	none
	}
	parm {
	    name	"t"
	    baseparm
	    export	all
	}
	parm {
	    name	"r"
	    baseparm
	    export	all
	}
	parm {
	    name	"s"
	    baseparm
	    export	none
	}
	parm {
	    name	"p"
	    baseparm
	    export	none
	}
	parm {
	    name	"scale"
	    baseparm
	    export	none
	}
	parm {
	    name	"lookatpath"
	    baseparm
	    export	none
	}
	parm {
	    name	"lookup"
	    baseparm
	    export	none
	}
	parm {
	    name	"pathobjpath"
	    baseparm
	    export	none
	}
	parm {
	    name	"roll"
	    baseparm
	    export	none
	}
	parm {
	    name	"pos"
	    baseparm
	    export	none
	}
	parm {
	    name	"uparmtype"
	    baseparm
	    export	none
	}
	parm {
	    name	"pathorient"
	    baseparm
	    export	none
	}
	parm {
	    name	"up"
	    baseparm
	    export	none
	}
	parm {
	    name	"bank"
	    baseparm
	    export	none
	}
    }

    group {
	name	"stdswitcher5_1"
	label	"Material"

	parm {
	    name	"shop_materialpath"
	    baseparm
	    joinnext
	    export	none
	}
	parm {
	    name	"shop_materialopts"
	    baseparm
	    export	none
	}
    }

    group {
	name	"stdswitcher5_2"
	label	"Render"

	parm {
	    name	"tdisplay"
	    baseparm
	    joinnext
	    export	none
	}
	parm {
	    name	"display"
	    baseparm
	    export	none
	}
	parm {
	    name	"vm_phantom"
	    label	"Phantom"
	    type	toggle
	    default	{ "0" }
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "spare_category" "Render" }
	}
	parm {
	    name	"vm_renderable"
	    label	"Renderable"
	    type	toggle
	    default	{ "1" }
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "spare_category" "Render" }
	}
	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"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Shading" }
	    }
	    parm {
		name	"reflectmask"
		label	"Reflection Mask"
		type	oplist
		default	{ "*" }
		help	"Objects that will be reflected on this object."
		range	{ 0 1 }
		export	none
		parmtag	{ "oprelative" "/obj" }
		parmtag	{ "opfilter" "!!OBJ/GEOMETRY!!" }
		parmtag	{ "spare_category" "Shading" }
		parmtag	{ "opexpand" "1" }
	    }
	    parm {
		name	"refractmask"
		label	"Refraction Mask"
		type	oplist
		default	{ "*" }
		help	"Objects that will be refracted on this object."
		range	{ 0 1 }
		export	none
		parmtag	{ "oprelative" "/obj" }
		parmtag	{ "opfilter" "!!OBJ/GEOMETRY!!" }
		parmtag	{ "spare_category" "Shading" }
		parmtag	{ "opexpand" "1" }
	    }
	    parm {
		name	"lightmask"
		label	"Light Mask"
		type	oplist
		default	{ "*" }
		help	"Lights that illuminate this object."
		range	{ 0 1 }
		export	none
		parmtag	{ "oprelative" "/obj" }
		parmtag	{ "opfilter" "!!OBJ/LIGHT!!" }
		parmtag	{ "spare_category" "Shading" }
		parmtag	{ "opexpand" "1" }
	    }
	    parm {
		name	"vm_volumefilter"
		label	"Volume Filter"
		type	string
		default	{ "gaussian" }
		menu	{
		    "box"	"Box Filter"
		    "gaussian"	"Gaussian"
		    "bartlett"	"Bartlett (triangle)"
		    "catrom"	"Catmull-Rom"
		    "hanning"	"Hanning"
		    "blackman"	"Blackman"
		    "sinc"	"Sinc (sharpening)"
		}
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Shading" }
	    }
	    parm {
		name	"vm_volumefilterwidth"
		label	"Volume Filter Width"
		type	float
		default	{ "1.5" }
		range	{ 0.001 5 }
		export	none
		parmtag	{ "spare_category" "Shading" }
	    }
	    parm {
		name	"vm_matte"
		label	"Matte shading"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Shading" }
	    }
	    parm {
		name	"vm_rayshade"
		label	"Raytrace Shading"
		type	toggle
		default	{ "0" }
		help	"Shade every sample rather than shading micropolygon vertices.  This setting enables the raytrace rendering engine on a per-object basis."
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Shading" }
	    }
	}

	group {
	    name	"folder0_1"
	    label	"Sampling"

	    parm {
		name	"geo_velocityblur"
		label	"Geometry Velocity Blur"
		type	toggle
		default	{ "0" }
		disablewhen	"{ allowmotionblur == 0 }"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Sampling" }
	    }
	}

	group {
	    name	"folder0_2"
	    label	"Dicing"

	    parm {
		name	"vm_shadingquality"
		label	"Shading Quality"
		type	float
		default	{ "1" }
		disablewhen	"{ vm_renderengine != micropoly vm_renderengine != pbrmicropoly }"
		range	{ 0 10 }
		export	none
		parmtag	{ "spare_category" "Dicing" }
	    }
	    parm {
		name	"vm_rayshadingquality"
		label	"Ray Shading Quality"
		type	float
		default	{ "1" }
		range	{ 0 10 }
		export	none
		parmtag	{ "spare_category" "Dicing" }
	    }
	    parm {
		name	"vm_flatness"
		label	"Dicing Flatness"
		type	float
		default	{ "0.05" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Dicing" }
	    }
	    parm {
		name	"vm_raypredice"
		label	"Ray Predicing"
		type	integer
		default	{ "0" }
		menu	{
		    "off"	"Disable Predicing"
		    "on"	"Full Predicing"
		    "bounds"	"Precompute Bounds"
		}
		range	{ 0 10 }
		export	none
		parmtag	{ "spare_category" "Dicing" }
	    }
	    parm {
		name	"vm_curvesurface"
		label	"Shade Curves As Surfaces"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Dicing" }
	    }
	}

	group {
	    name	"folder0_3"
	    label	"Geometry"

	    parm {
		name	"vm_rmbackface"
		label	"Backface Removal (Mantra)"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Geometry" }
	    }
	    parm {
		name	"shop_geometrypath"
		label	"Procedural Shader"
		type	oppath
		default	{ "" }
		range	{ 0 1 }
		export	none
		parmtag	{ "oprelative" "." }
		parmtag	{ "opfilter" "!!SHOP/GEOMETRY!!" }
		parmtag	{ "spare_category" "Geometry" }
	    }
	    parm {
		name	"vm_forcegeometry"
		label	"Force Procedural Geometry Output"
		type	toggle
		default	{ "1" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Geometry" }
	    }
	    parm {
		name	"vm_rendersubd"
		label	"Polygons As Subdivision (Mantra)"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Geometry" }
	    }
	    parm {
		name	"vm_renderpoints"
		label	"Render As Points (Mantra)"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Geometry" }
	    }
	    parm {
		name	"vm_usenforpoints"
		label	"Use N For Point Rendering"
		type	toggle
		default	{ "0" }
		disablewhen	"{ vm_renderpoints == 0 }"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Geometry" }
	    }
	    parm {
		name	"vm_metavolume"
		label	"Metaballs as Volume"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
		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 }
		export	none
		parmtag	{ "spare_category" "Geometry" }
	    }
	    parm {
		name	"vm_computeN"
		label	"Automatically Compute Normals"
		type	toggle
		default	{ "1" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Geometry" }
	    }
	    parm {
		name	"vm_overridedetail"
		label	"Ignore Geometry Attribute Shaders"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Geometry" }
	    }
	}

    }

    group {
	name	"stdswitcher5_3"
	label	"Misc"

	parm {
	    name	"use_dcolor"
	    baseparm
	    export	none
	}
	parm {
	    name	"dcolor"
	    baseparm
	    export	none
	}
	parm {
	    name	"picking"
	    baseparm
	    export	none
	}
	parm {
	    name	"pickscript"
	    baseparm
	    export	none
	}
	parm {
	    name	"caching"
	    baseparm
	    export	none
	}
	parm {
	    name	"vport_shadeopen"
	    baseparm
	    export	none
	}
	parm {
	    name	"vport_displayassubdiv"
	    baseparm
	    invisible
	    export	none
	}
    }

0707070000010000000006660000000000000000010000001147726722100001500000003726obj/fog.parm {
version 0.8
stdswitcher	[ 0	locks=0 ]	(	0	0	0	0	)
keeppos	[ 0	locks=0 ]	(	"off"	)
pre_xform	[ 0	locks=0 ]	(	0	)
xOrd	[ 0	locks=0 ]	(	"srt"	)
rOrd	[ 0	locks=0 ]	(	"xyz"	)
t	[ 0	locks=0 ]	(	0	0	0	)
r	[ 0	locks=0 ]	(	0	0	0	)
s	[ 0	locks=0 ]	(	1	1	1	)
p	[ 0	locks=0 ]	(	0	0	0	)
scale	[ 0	locks=0 ]	(	1	)
lookatpath	[ 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 ]	(	/shop/basicsmoke	)
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 ]	(	"off"	)
vport_shadeopen	[ 0	locks=0 ]	(	"off"	)
vport_displayassubdiv	[ 0	locks=0 ]	(	"off"	)
stdswitcher5	[ 0	locks=0 ]	(	1	1	1	1	)
vm_phantom	[ 0	locks=0 ]	(	"off"	)
vm_renderable	[ 0	locks=0 ]	(	"on"	)
folder0	[ 0	locks=0 ]	(	0	0	0	0	)
categories	[ 0	locks=0 ]	(	""	)
reflectmask	[ 0	locks=0 ]	(	*	)
refractmask	[ 0	locks=0 ]	(	*	)
lightmask	[ 0	locks=0 ]	(	*	)
vm_volumefilter	[ 0	locks=0 ]	(	gaussian	)
vm_volumefilterwidth	[ 0	locks=0 ]	(	1.5	)
vm_matte	[ 0	locks=0 ]	(	"off"	)
vm_rayshade	[ 0	locks=0 ]	(	"off"	)
geo_velocityblur	[ 0	locks=0 ]	(	"off"	)
vm_shadingquality	[ 0	locks=0 ]	(	1	)
vm_rayshadingquality	[ 0	locks=0 ]	(	1	)
vm_flatness	[ 0	locks=0 ]	(	0.0500000007	)
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_rendersubd	[ 0	locks=0 ]	(	"off"	)
vm_renderpoints	[ 0	locks=0 ]	(	"off"	)
vm_usenforpoints	[ 0	locks=0 ]	(	"off"	)
vm_metavolume	[ 0	locks=0 ]	(	"off"	)
vm_coving	[ 0	locks=0 ]	(	1	)
vm_computeN	[ 0	locks=0 ]	(	"on"	)
vm_overridedetail	[ 0	locks=0 ]	(	"off"	)
}
0707070000010000000006660000000000000000010000001147726722100003000000000040obj/fog/volumevop1.init type = volumevop
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100002700000000650obj/fog/volumevop1.def sopflags sopflags = 
comment ""
position -1.0974 -0.064935
cachesize 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 off exposed on
inputs
{
0 	volume1 0 1
}
stat
{
  create 1291675451
  modify 1291676619
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100004000000007247obj/fog/volumevop1.spareparmdef     groupradio {
	name	"stdswitcher3"
	label	"Vex Setup"

	parm {
	    name	"vexsrc"
	    baseparm
	    export	dialog
	}
	parm {
	    name	"shoppath"
	    baseparm
	    export	dialog
	}
	parm {
	    name	"script"
	    baseparm
	    export	all
	}
	parm {
	    name	"clear"
	    baseparm
	    export	all
	}
	parm {
	    name	"vop_compiler"
	    baseparm
	    export	none
	}
	parm {
	    name	"vop_forcecompile"
	    baseparm
	    export	none
	}
    }

    groupradio {
	name	"stdswitcher3_1"
	label	"Volume Bindings"

	parm {
	    name	"autobind"
	    baseparm
	    export	none
	}
	multiparm {
	    name	"bindings"
	    label	"Number of Bindings"
	    baseparm
	    default	0
	    parmtag	{ "multistartoffset" "1" }

	    parm {
		name	"bindprim#"
		baseparm
		export	none
	    }
	    parm {
		name	"bindname#"
		baseparm
		export	none
	    }
	}

    }

    parm {
	name	"P"
	label	"P"
	type	float
	invisible
	size	3
	default	{ "0" "0" "0" }
	range	{ 0 10 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"ix"
	label	"IX"
	type	integer
	invisible
	default	{ "0" }
	range	{ 0 10 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"iy"
	label	"IY"
	type	integer
	invisible
	default	{ "0" }
	range	{ 0 10 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"iz"
	label	"IZ"
	type	integer
	invisible
	default	{ "0" }
	range	{ 0 10 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"density"
	label	"density"
	type	float
	invisible
	default	{ "0" }
	range	{ 0 1 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"resx"
	label	"ResX"
	type	integer
	invisible
	default	{ "0" }
	range	{ 0 10 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"resy"
	label	"ResY"
	type	integer
	invisible
	default	{ "0" }
	range	{ 0 10 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"resz"
	label	"ResZ"
	type	integer
	invisible
	default	{ "0" }
	range	{ 0 10 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"dPdx"
	label	"dPdx"
	type	float
	invisible
	size	3
	default	{ "0" "0" "0" }
	range	{ 0 10 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"dPdy"
	label	"dPdy"
	type	float
	invisible
	size	3
	default	{ "0" "0" "0" }
	range	{ 0 10 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"dPdz"
	label	"dPdz"
	type	float
	invisible
	size	3
	default	{ "0" "0" "0" }
	range	{ 0 10 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"center"
	label	"Center"
	type	float
	invisible
	size	3
	default	{ "0" "0" "0" }
	range	{ 0 10 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"Time"
	label	"Time"
	type	float
	invisible
	default	{ "0" }
	range	{ 0 1 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"Timeinc"
	label	"Timeinc"
	type	float
	invisible
	default	{ "0" }
	range	{ 0 1 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"Frame"
	label	"Frame"
	type	float
	invisible
	default	{ "0" }
	range	{ 0 1 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"freq"
	label	"Frequency"
	type	float
	size	3
	default	{ "1" "1" "1" }
	range	{ 0 10 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"offset"
	label	"Offset"
	type	float
	size	3
	default	{ "0" "0" "0" }
	range	{ 0 10 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"amp"
	label	"Amplitude"
	type	float
	default	{ "1" }
	range	{ -1 1 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"rough"
	label	"Roughness"
	type	float
	default	{ "0.5" }
	range	{ 0 1 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"maxoctave"
	label	"Max Octaves"
	type	integer
	default	{ "8" }
	range	{ 0 32 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
0707070000010000000006660000000000000000010000001147726722100003000000001674obj/fog/volumevop1.parm {
version 0.8
stdswitcher	[ 0	locks=0 ]	(	0	0	)
vexsrc	[ 0	locks=0 ]	(	"myself"	)
shoppath	[ 0	locks=0 ]	(	""	)
script	[ 0	locks=0 ]	(	null	)
clear	[ 0	locks=0 ]	(	0	)
vop_compiler	[ 0	locks=0 ]	(	"vcc -r -q $VOP_INCLUDEPATH -o $VOP_OBJECTFILE -e $VOP_ERRORFILE $VOP_SOURCEFILE"	)
vop_forcecompile	[ 0	locks=0 ]	(	0	)
autobind	[ 0	locks=0 ]	(	"on"	)
bindings	[ 0	locks=0 ]	(	0	)
stdswitcher3	[ 0	locks=0 ]	(	0	0	)
P	[ 0	locks=0 ]	(	0	0	0	)
ix	[ 0	locks=0 ]	(	0	)
iy	[ 0	locks=0 ]	(	0	)
iz	[ 0	locks=0 ]	(	0	)
density	[ 0	locks=0 ]	(	0	)
resx	[ 0	locks=0 ]	(	0	)
resy	[ 0	locks=0 ]	(	0	)
resz	[ 0	locks=0 ]	(	0	)
dPdx	[ 0	locks=0 ]	(	0	0	0	)
dPdy	[ 0	locks=0 ]	(	0	0	0	)
dPdz	[ 0	locks=0 ]	(	0	0	0	)
center	[ 0	locks=0 ]	(	0	0	0	)
Time	[ 0	locks=0 ]	(	0	)
Timeinc	[ 0	locks=0 ]	(	0	)
Frame	[ 0	locks=0 ]	(	0	)
freq	[ 0	locks=0 ]	(	10	10	10	)
offset	[ 0	locks=0 ]	(	0	0	0	)
amp	[ 0	locks=0 ]	(	5	)
rough	[ 0	locks=0 ]	(	0.5	)
maxoctave	[ 0	locks=0 ]	(	8	)
}
0707070000010000000006660000000000000000010000001147726722100005100000000046obj/fog/volumevop1/volumevopglobal1.init type = volumevopglobal
matchesdef = 1
0707070000010000000006660000000000000000010000001147726722100005000000000660obj/fog/volumevop1/volumevopglobal1.def comment ""
position 0.779882 4.26611
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1291675451
  modify 1291675570
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100005100000000020obj/fog/volumevop1/volumevopglobal1.parm {
version 0.8
}
0707070000010000000006660000000000000000010000001147726722100005100000000046obj/fog/volumevop1/volumevopoutput1.init type = volumevopoutput
matchesdef = 1
0707070000010000000006660000000000000000010000001147726722100005000000000675obj/fog/volumevop1/volumevopoutput1.def comment ""
position 8.56484 4.67913
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	add1 0 1
}
stat
{
  create 1291675451
  modify 1291676094
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100005100000000064obj/fog/volumevop1/volumevopoutput1.parm {
version 0.8
sum	[ 0	locks=0	autoscope=0 ]	(	0	)
}
0707070000010000000006660000000000000000010000001147726722100004200000000037obj/fog/volumevop1/multiply1.init type = multiply
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100004100000000724obj/fog/volumevop1/multiply1.def comment ""
position 4.6335 4.39673
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	volumevopglobal1 1 1
1 	fit1 0 1
}
stat
{
  create 1291675503
  modify 1291676094
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100004200000000020obj/fog/volumevop1/multiply1.parm {
version 0.8
}
0707070000010000000006660000000000000000010000001147726722100003500000000032obj/fog/volumevop1/add1.init type = add
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100003400000000732obj/fog/volumevop1/add1.def comment ""
position 6.65233 4.83913
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	volumevopglobal1 1 1
1 	multiply1 0 1
}
stat
{
  create 1291675532
  modify 1291676094
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100003500000000020obj/fog/volumevop1/add1.parm {
version 0.8
}
0707070000010000000006660000000000000000010000001147726722100004100000000036obj/fog/volumevop1/aanoise1.init type = aanoise
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100004000000001014obj/fog/volumevop1/aanoise1.def comment ""
position 2.74979 3.38037
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	volumevopglobal1 0 1
1 	freq 0 1
2 	offset 0 1
3 	amp 0 1
4 	rough 0 1
5 	maxoctave 0 1
}
stat
{
  create 1291675819
  modify 1291676076
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100004000000003040obj/fog/volumevop1/aanoise1.chn {
    channel freq1 {
      lefttype = extend
      righttype = extend
      default = 1
      flags = 0
      segment { length = 0 value = 1 1 expr = ch('../freq/float3def1') }
    }
    channel freq2 {
      lefttype = extend
      righttype = extend
      default = 1
      flags = 0
      segment { length = 0 value = 1 1 expr = ch('../freq/float3def2') }
    }
    channel freq3 {
      lefttype = extend
      righttype = extend
      default = 1
      flags = 0
      segment { length = 0 value = 1 1 expr = ch('../freq/float3def3') }
    }
    channel offset1 {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = ch('../offset/pointdef1') }
    }
    channel offset2 {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = ch('../offset/pointdef2') }
    }
    channel offset3 {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = ch('../offset/pointdef3') }
    }
    channel amp {
      lefttype = extend
      righttype = extend
      default = 1
      flags = 0
      segment { length = 0 value = 1 1 expr = ch('../amp/floatdef') }
    }
    channel rough {
      lefttype = extend
      righttype = extend
      default = 0.5
      flags = 0
      segment { length = 0 value = 0.5 0.5 expr = ch('../rough/floatdef') }
    }
    channel maxoctave {
      lefttype = extend
      righttype = extend
      default = 8
      flags = 0
      segment { length = 0 value = 8 8 expr = ch('../maxoctave/intdef') }
    }
  }
0707070000010000000006660000000000000000010000001147726722100004100000001005obj/fog/volumevop1/aanoise1.parm {
version 0.8
signature	[ 0	locks=0 ]	(	default	)
pos_ff	[ 0	locks=0 ]	(	0	)
pos	[ 0	locks=0 ]	(	0	0	0	)
pos_fp	[ 0	locks=0 ]	(	0	0	0	0	)
freq_ff	[ 0	locks=0 ]	(	1	)
freq	[ 0	locks=0 ]	(	[ freq1	1 ] 	[ freq2	1 ] 	[ freq3	1 ] 	)
freq_fp	[ 0	locks=0 ]	(	1	1	1	1	)
offset_ff	[ 0	locks=0 ]	(	0	)
offset	[ 0	locks=0 ]	(	[ offset1	0 ] 	[ offset2	0 ] 	[ offset3	0 ] 	)
offset_fp	[ 0	locks=0 ]	(	0	0	0	0	)
amp	[ 0	locks=0 ]	(	[ amp	1 ] 	)
rough	[ 0	locks=0 ]	(	[ rough	0.5 ] 	)
maxoctave	[ 0	locks=0 ]	(	[ maxoctave	8 ] 	)
}
0707070000010000000006660000000000000000010000001147726722100003500000000040obj/fog/volumevop1/freq.init type = parameter
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100003400000000663obj/fog/volumevop1/freq.def comment ""
position 0.349788 4.18037
cachesize 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 off exposed off lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1291675833
  modify 1291676076
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100003500000002653obj/fog/volumevop1/freq.parm {
version 0.8
parmname	[ 0	locks=0 ]	(	freq	)
parmlabel	[ 0	locks=0 ]	(	Frequency	)
showlabel	[ 0	locks=0 ]	(	"on"	)
parmtype	[ 0	locks=0 ]	(	"float3"	)
separator1	[ 0	locks=0 ]	(	)
useasparmdefiner	[ 0	locks=0 ]	(	"off"	)
parmuniform	[ 0	locks=0 ]	(	"on"	)
usebound	[ 0	locks=0 ]	(	"off"	)
exportparm	[ 0	locks=0 ]	(	"off"	)
exportcontext	[ 0	locks=0 ]	(	cvex	)
providemenu	[ 0	locks=0 ]	(	"off"	)
menuchoices	[ 0	locks=0 ]	(	""	)
separator2	[ 0	locks=0 ]	(	)
invisible	[ 0	locks=0 ]	(	"off"	)
joinnext	[ 0	locks=0 ]	(	"off"	)
disablewhen	[ 0	locks=0 ]	(	""	)
callback	[ 0	locks=0 ]	(	""	)
help	[ 0	locks=0 ]	(	""	)
separator3	[ 0	locks=0 ]	(	)
stdswitcher	[ 0	locks=0 ]	(	0	0	0	0	0	)
floatdef	[ 0	locks=0 ]	(	0	)
rangeflt	[ 0	locks=0 ]	(	0	1	)
intdef	[ 0	locks=0 ]	(	0	)
rangeint	[ 0	locks=0 ]	(	0	10	)
toggledef	[ 0	locks=0 ]	(	"off"	)
angledef	[ 0	locks=0 ]	(	0	)
float3def	[ 0	locks=0 ]	(	1	1	1	)
vectordef	[ 0	locks=0 ]	(	0	0	0	)
normaldef	[ 0	locks=0 ]	(	0	0	0	)
pointdef	[ 0	locks=0 ]	(	0	0	0	)
directiondef	[ 0	locks=0 ]	(	1	0	0	)
float4def	[ 0	locks=0 ]	(	0	0	0	0	)
float9def	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
float16def	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
stringdef	[ 0	locks=0 ]	(	""	)
stringtype	[ 0	locks=0 ]	(	off	)
opfilter	[ 0	locks=0 ]	(	!!OBJ/LIGHT!!	)
filedef	[ 0	locks=0 ]	(	""	)
imagedef	[ 0	locks=0 ]	(	""	)
geometrydef	[ 0	locks=0 ]	(	""	)
colordef	[ 0	locks=0 ]	(	0	0	0	)
color4def	[ 0	locks=0 ]	(	0	0	0	0	)
}
0707070000010000000006660000000000000000010000001147726722100003700000000040obj/fog/volumevop1/offset.init type = parameter
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100003600000000663obj/fog/volumevop1/offset.def comment ""
position 0.449788 3.98037
cachesize 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 off exposed off lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1291675834
  modify 1291676076
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100003700000002651obj/fog/volumevop1/offset.parm {
version 0.8
parmname	[ 0	locks=0 ]	(	offset	)
parmlabel	[ 0	locks=0 ]	(	Offset	)
showlabel	[ 0	locks=0 ]	(	"on"	)
parmtype	[ 0	locks=0 ]	(	"point"	)
separator1	[ 0	locks=0 ]	(	)
useasparmdefiner	[ 0	locks=0 ]	(	"off"	)
parmuniform	[ 0	locks=0 ]	(	"on"	)
usebound	[ 0	locks=0 ]	(	"off"	)
exportparm	[ 0	locks=0 ]	(	"off"	)
exportcontext	[ 0	locks=0 ]	(	cvex	)
providemenu	[ 0	locks=0 ]	(	"off"	)
menuchoices	[ 0	locks=0 ]	(	""	)
separator2	[ 0	locks=0 ]	(	)
invisible	[ 0	locks=0 ]	(	"off"	)
joinnext	[ 0	locks=0 ]	(	"off"	)
disablewhen	[ 0	locks=0 ]	(	""	)
callback	[ 0	locks=0 ]	(	""	)
help	[ 0	locks=0 ]	(	""	)
separator3	[ 0	locks=0 ]	(	)
stdswitcher	[ 0	locks=0 ]	(	0	0	0	0	0	)
floatdef	[ 0	locks=0 ]	(	0	)
rangeflt	[ 0	locks=0 ]	(	0	1	)
intdef	[ 0	locks=0 ]	(	0	)
rangeint	[ 0	locks=0 ]	(	0	10	)
toggledef	[ 0	locks=0 ]	(	"off"	)
angledef	[ 0	locks=0 ]	(	0	)
float3def	[ 0	locks=0 ]	(	0	0	0	)
vectordef	[ 0	locks=0 ]	(	0	0	0	)
normaldef	[ 0	locks=0 ]	(	0	0	0	)
pointdef	[ 0	locks=0 ]	(	0	0	0	)
directiondef	[ 0	locks=0 ]	(	1	0	0	)
float4def	[ 0	locks=0 ]	(	0	0	0	0	)
float9def	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
float16def	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
stringdef	[ 0	locks=0 ]	(	""	)
stringtype	[ 0	locks=0 ]	(	off	)
opfilter	[ 0	locks=0 ]	(	!!OBJ/LIGHT!!	)
filedef	[ 0	locks=0 ]	(	""	)
imagedef	[ 0	locks=0 ]	(	""	)
geometrydef	[ 0	locks=0 ]	(	""	)
colordef	[ 0	locks=0 ]	(	0	0	0	)
color4def	[ 0	locks=0 ]	(	0	0	0	0	)
}
0707070000010000000006660000000000000000010000001147726722100003400000000040obj/fog/volumevop1/amp.init type = parameter
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100003300000000663obj/fog/volumevop1/amp.def comment ""
position 0.549788 3.78037
cachesize 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 off exposed off lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1291675835
  modify 1291676076
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100003400000002652obj/fog/volumevop1/amp.parm {
version 0.8
parmname	[ 0	locks=0 ]	(	amp	)
parmlabel	[ 0	locks=0 ]	(	Amplitude	)
showlabel	[ 0	locks=0 ]	(	"on"	)
parmtype	[ 0	locks=0 ]	(	"float"	)
separator1	[ 0	locks=0 ]	(	)
useasparmdefiner	[ 0	locks=0 ]	(	"off"	)
parmuniform	[ 0	locks=0 ]	(	"on"	)
usebound	[ 0	locks=0 ]	(	"off"	)
exportparm	[ 0	locks=0 ]	(	"off"	)
exportcontext	[ 0	locks=0 ]	(	cvex	)
providemenu	[ 0	locks=0 ]	(	"off"	)
menuchoices	[ 0	locks=0 ]	(	""	)
separator2	[ 0	locks=0 ]	(	)
invisible	[ 0	locks=0 ]	(	"off"	)
joinnext	[ 0	locks=0 ]	(	"off"	)
disablewhen	[ 0	locks=0 ]	(	""	)
callback	[ 0	locks=0 ]	(	""	)
help	[ 0	locks=0 ]	(	""	)
separator3	[ 0	locks=0 ]	(	)
stdswitcher	[ 0	locks=0 ]	(	0	0	0	0	0	)
floatdef	[ 0	locks=0 ]	(	1	)
rangeflt	[ 0	locks=0 ]	(	-1	1	)
intdef	[ 0	locks=0 ]	(	0	)
rangeint	[ 0	locks=0 ]	(	0	10	)
toggledef	[ 0	locks=0 ]	(	"off"	)
angledef	[ 0	locks=0 ]	(	0	)
float3def	[ 0	locks=0 ]	(	0	0	0	)
vectordef	[ 0	locks=0 ]	(	0	0	0	)
normaldef	[ 0	locks=0 ]	(	0	0	0	)
pointdef	[ 0	locks=0 ]	(	0	0	0	)
directiondef	[ 0	locks=0 ]	(	1	0	0	)
float4def	[ 0	locks=0 ]	(	0	0	0	0	)
float9def	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
float16def	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
stringdef	[ 0	locks=0 ]	(	""	)
stringtype	[ 0	locks=0 ]	(	off	)
opfilter	[ 0	locks=0 ]	(	!!OBJ/LIGHT!!	)
filedef	[ 0	locks=0 ]	(	""	)
imagedef	[ 0	locks=0 ]	(	""	)
geometrydef	[ 0	locks=0 ]	(	""	)
colordef	[ 0	locks=0 ]	(	0	0	0	)
color4def	[ 0	locks=0 ]	(	0	0	0	0	)
}
0707070000010000000006660000000000000000010000001147726722100003600000000040obj/fog/volumevop1/rough.init type = parameter
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100003500000000663obj/fog/volumevop1/rough.def comment ""
position 0.649788 3.58037
cachesize 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 off exposed off lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1291675836
  modify 1291676076
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100003600000002655obj/fog/volumevop1/rough.parm {
version 0.8
parmname	[ 0	locks=0 ]	(	rough	)
parmlabel	[ 0	locks=0 ]	(	Roughness	)
showlabel	[ 0	locks=0 ]	(	"on"	)
parmtype	[ 0	locks=0 ]	(	"float"	)
separator1	[ 0	locks=0 ]	(	)
useasparmdefiner	[ 0	locks=0 ]	(	"off"	)
parmuniform	[ 0	locks=0 ]	(	"on"	)
usebound	[ 0	locks=0 ]	(	"off"	)
exportparm	[ 0	locks=0 ]	(	"off"	)
exportcontext	[ 0	locks=0 ]	(	cvex	)
providemenu	[ 0	locks=0 ]	(	"off"	)
menuchoices	[ 0	locks=0 ]	(	""	)
separator2	[ 0	locks=0 ]	(	)
invisible	[ 0	locks=0 ]	(	"off"	)
joinnext	[ 0	locks=0 ]	(	"off"	)
disablewhen	[ 0	locks=0 ]	(	""	)
callback	[ 0	locks=0 ]	(	""	)
help	[ 0	locks=0 ]	(	""	)
separator3	[ 0	locks=0 ]	(	)
stdswitcher	[ 0	locks=0 ]	(	0	0	0	0	0	)
floatdef	[ 0	locks=0 ]	(	0.5	)
rangeflt	[ 0	locks=0 ]	(	0	1	)
intdef	[ 0	locks=0 ]	(	0	)
rangeint	[ 0	locks=0 ]	(	0	10	)
toggledef	[ 0	locks=0 ]	(	"off"	)
angledef	[ 0	locks=0 ]	(	0	)
float3def	[ 0	locks=0 ]	(	0	0	0	)
vectordef	[ 0	locks=0 ]	(	0	0	0	)
normaldef	[ 0	locks=0 ]	(	0	0	0	)
pointdef	[ 0	locks=0 ]	(	0	0	0	)
directiondef	[ 0	locks=0 ]	(	1	0	0	)
float4def	[ 0	locks=0 ]	(	0	0	0	0	)
float9def	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
float16def	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
stringdef	[ 0	locks=0 ]	(	""	)
stringtype	[ 0	locks=0 ]	(	off	)
opfilter	[ 0	locks=0 ]	(	!!OBJ/LIGHT!!	)
filedef	[ 0	locks=0 ]	(	""	)
imagedef	[ 0	locks=0 ]	(	""	)
geometrydef	[ 0	locks=0 ]	(	""	)
colordef	[ 0	locks=0 ]	(	0	0	0	)
color4def	[ 0	locks=0 ]	(	0	0	0	0	)
}
0707070000010000000006660000000000000000010000001147726722100004200000000040obj/fog/volumevop1/maxoctave.init type = parameter
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100004100000000663obj/fog/volumevop1/maxoctave.def comment ""
position 0.749788 3.38037
cachesize 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 off exposed off lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1291675838
  modify 1291676076
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100004200000002661obj/fog/volumevop1/maxoctave.parm {
version 0.8
parmname	[ 0	locks=0 ]	(	maxoctave	)
parmlabel	[ 0	locks=0 ]	(	"Max Octaves"	)
showlabel	[ 0	locks=0 ]	(	"on"	)
parmtype	[ 0	locks=0 ]	(	"int"	)
separator1	[ 0	locks=0 ]	(	)
useasparmdefiner	[ 0	locks=0 ]	(	"off"	)
parmuniform	[ 0	locks=0 ]	(	"on"	)
usebound	[ 0	locks=0 ]	(	"off"	)
exportparm	[ 0	locks=0 ]	(	"off"	)
exportcontext	[ 0	locks=0 ]	(	cvex	)
providemenu	[ 0	locks=0 ]	(	"off"	)
menuchoices	[ 0	locks=0 ]	(	""	)
separator2	[ 0	locks=0 ]	(	)
invisible	[ 0	locks=0 ]	(	"off"	)
joinnext	[ 0	locks=0 ]	(	"off"	)
disablewhen	[ 0	locks=0 ]	(	""	)
callback	[ 0	locks=0 ]	(	""	)
help	[ 0	locks=0 ]	(	""	)
separator3	[ 0	locks=0 ]	(	)
stdswitcher	[ 0	locks=0 ]	(	0	0	0	0	0	)
floatdef	[ 0	locks=0 ]	(	0	)
rangeflt	[ 0	locks=0 ]	(	0	1	)
intdef	[ 0	locks=0 ]	(	8	)
rangeint	[ 0	locks=0 ]	(	0	32	)
toggledef	[ 0	locks=0 ]	(	"off"	)
angledef	[ 0	locks=0 ]	(	0	)
float3def	[ 0	locks=0 ]	(	0	0	0	)
vectordef	[ 0	locks=0 ]	(	0	0	0	)
normaldef	[ 0	locks=0 ]	(	0	0	0	)
pointdef	[ 0	locks=0 ]	(	0	0	0	)
directiondef	[ 0	locks=0 ]	(	1	0	0	)
float4def	[ 0	locks=0 ]	(	0	0	0	0	)
float9def	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
float16def	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
stringdef	[ 0	locks=0 ]	(	""	)
stringtype	[ 0	locks=0 ]	(	off	)
opfilter	[ 0	locks=0 ]	(	!!OBJ/LIGHT!!	)
filedef	[ 0	locks=0 ]	(	""	)
imagedef	[ 0	locks=0 ]	(	""	)
geometrydef	[ 0	locks=0 ]	(	""	)
colordef	[ 0	locks=0 ]	(	0	0	0	)
color4def	[ 0	locks=0 ]	(	0	0	0	0	)
}
0707070000010000000006660000000000000000010000001147726722100003500000000032obj/fog/volumevop1/fit1.init type = fit
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100003400000000750obj/fog/volumevop1/fit1.def comment ""
position 4.6335 3.00968
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	aanoise1 0 1
1 	"" 0 1
2 	"" 0 1
3 	"" 0 1
4 	"" 0 1
}
stat
{
  create 1291676085
  modify 1291676102
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100003500000003014obj/fog/volumevop1/fit1.parm {
version 0.8
signature	[ 0	locks=0 ]	(	default	)
gs	[ 0	locks=0 ]	(	0	0	0	0	)
srcmin	[ 0	locks=0 ]	(	0	)
srcmax	[ 0	locks=0 ]	(	1	)
destmin	[ 0	locks=0 ]	(	-1	)
destmax	[ 0	locks=0 ]	(	1	)
srcmin_v	[ 0	locks=0 ]	(	0	0	0	)
srcmax_v	[ 0	locks=0 ]	(	1	1	1	)
destmin_v	[ 0	locks=0 ]	(	0	0	0	)
destmax_v	[ 0	locks=0 ]	(	1	1	1	)
srcmin_p	[ 0	locks=0 ]	(	0	0	0	)
srcmax_p	[ 0	locks=0 ]	(	1	1	1	)
destmin_p	[ 0	locks=0 ]	(	0	0	0	)
destmax_p	[ 0	locks=0 ]	(	1	1	1	)
srcmin_n	[ 0	locks=0 ]	(	0	0	0	)
srcmax_n	[ 0	locks=0 ]	(	1	1	1	)
destmin_n	[ 0	locks=0 ]	(	0	0	0	)
destmax_n	[ 0	locks=0 ]	(	1	1	1	)
srcmin_c	[ 0	locks=0 ]	(	0	0	0	)
srcmax_c	[ 0	locks=0 ]	(	1	1	1	)
destmin_c	[ 0	locks=0 ]	(	0	0	0	)
destmax_c	[ 0	locks=0 ]	(	1	1	1	)
srcmin_v4	[ 0	locks=0 ]	(	0	0	0	0	)
srcmax_v4	[ 0	locks=0 ]	(	1	1	1	1	)
destmin_v4	[ 0	locks=0 ]	(	0	0	0	0	)
destmax_v4	[ 0	locks=0 ]	(	1	1	1	1	)
srcmin_uf	[ 0	locks=0 ]	(	0	)
srcmax_uf	[ 0	locks=0 ]	(	1	)
destmin_uf	[ 0	locks=0 ]	(	0	)
destmax_uf	[ 0	locks=0 ]	(	1	)
srcmin_uv	[ 0	locks=0 ]	(	0	0	0	)
srcmax_uv	[ 0	locks=0 ]	(	1	1	1	)
destmin_uv	[ 0	locks=0 ]	(	0	0	0	)
destmax_uv	[ 0	locks=0 ]	(	1	1	1	)
srcmin_up	[ 0	locks=0 ]	(	0	0	0	)
srcmax_up	[ 0	locks=0 ]	(	1	1	1	)
destmin_up	[ 0	locks=0 ]	(	0	0	0	)
destmax_up	[ 0	locks=0 ]	(	1	1	1	)
srcmin_un	[ 0	locks=0 ]	(	0	0	0	)
srcmax_un	[ 0	locks=0 ]	(	1	1	1	)
destmin_un	[ 0	locks=0 ]	(	0	0	0	)
destmax_un	[ 0	locks=0 ]	(	1	1	1	)
srcmin_uc	[ 0	locks=0 ]	(	0	0	0	)
srcmax_uc	[ 0	locks=0 ]	(	1	1	1	)
destmin_uc	[ 0	locks=0 ]	(	0	0	0	)
destmax_uc	[ 0	locks=0 ]	(	1	1	1	)
}
0707070000010000000006660000000000000000010000001147726722100001600000000032obj/dust.init type = geo
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100001500000000755obj/dust.def objflags 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.57929 -0.922524
cachesize 1
flags =  lock off model off template off footprint off xray off bypass off display on render off highlight off unload off savedata off compress off exposed on selectable on
inputs
{
}
stat
{
  create 1291676411
  modify 1291676788
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100002600000020166obj/dust.spareparmdef     group {
	name	"stdswitcher5"
	label	"Transform"

	parm {
	    name	"keeppos"
	    baseparm
	    joinnext
	    export	none
	}
	parm {
	    name	"pre_xform"
	    baseparm
	    export	none
	}
	parm {
	    name	"xOrd"
	    baseparm
	    joinnext
	    export	none
	}
	parm {
	    name	"rOrd"
	    baseparm
	    export	none
	}
	parm {
	    name	"t"
	    baseparm
	    export	all
	}
	parm {
	    name	"r"
	    baseparm
	    export	all
	}
	parm {
	    name	"s"
	    baseparm
	    export	none
	}
	parm {
	    name	"p"
	    baseparm
	    export	none
	}
	parm {
	    name	"scale"
	    baseparm
	    export	none
	}
	parm {
	    name	"lookatpath"
	    baseparm
	    export	none
	}
	parm {
	    name	"lookup"
	    baseparm
	    export	none
	}
	parm {
	    name	"pathobjpath"
	    baseparm
	    export	none
	}
	parm {
	    name	"roll"
	    baseparm
	    export	none
	}
	parm {
	    name	"pos"
	    baseparm
	    export	none
	}
	parm {
	    name	"uparmtype"
	    baseparm
	    export	none
	}
	parm {
	    name	"pathorient"
	    baseparm
	    export	none
	}
	parm {
	    name	"up"
	    baseparm
	    export	none
	}
	parm {
	    name	"bank"
	    baseparm
	    export	none
	}
    }

    group {
	name	"stdswitcher5_1"
	label	"Material"

	parm {
	    name	"shop_materialpath"
	    baseparm
	    joinnext
	    export	none
	}
	parm {
	    name	"shop_materialopts"
	    baseparm
	    export	none
	}
    }

    group {
	name	"stdswitcher5_2"
	label	"Render"

	parm {
	    name	"tdisplay"
	    baseparm
	    joinnext
	    export	none
	}
	parm {
	    name	"display"
	    baseparm
	    export	none
	}
	parm {
	    name	"vm_phantom"
	    label	"Phantom"
	    type	toggle
	    default	{ "0" }
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "spare_category" "Render" }
	}
	parm {
	    name	"vm_renderable"
	    label	"Renderable"
	    type	toggle
	    default	{ "1" }
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "spare_category" "Render" }
	}
	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"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Shading" }
	    }
	    parm {
		name	"reflectmask"
		label	"Reflection Mask"
		type	oplist
		default	{ "*" }
		help	"Objects that will be reflected on this object."
		range	{ 0 1 }
		export	none
		parmtag	{ "oprelative" "/obj" }
		parmtag	{ "opfilter" "!!OBJ/GEOMETRY!!" }
		parmtag	{ "spare_category" "Shading" }
		parmtag	{ "opexpand" "1" }
	    }
	    parm {
		name	"refractmask"
		label	"Refraction Mask"
		type	oplist
		default	{ "*" }
		help	"Objects that will be refracted on this object."
		range	{ 0 1 }
		export	none
		parmtag	{ "oprelative" "/obj" }
		parmtag	{ "opfilter" "!!OBJ/GEOMETRY!!" }
		parmtag	{ "spare_category" "Shading" }
		parmtag	{ "opexpand" "1" }
	    }
	    parm {
		name	"lightmask"
		label	"Light Mask"
		type	oplist
		default	{ "*" }
		help	"Lights that illuminate this object."
		range	{ 0 1 }
		export	none
		parmtag	{ "oprelative" "/obj" }
		parmtag	{ "opfilter" "!!OBJ/LIGHT!!" }
		parmtag	{ "spare_category" "Shading" }
		parmtag	{ "opexpand" "1" }
	    }
	    parm {
		name	"vm_volumefilter"
		label	"Volume Filter"
		type	string
		default	{ "gaussian" }
		menu	{
		    "box"	"Box Filter"
		    "gaussian"	"Gaussian"
		    "bartlett"	"Bartlett (triangle)"
		    "catrom"	"Catmull-Rom"
		    "hanning"	"Hanning"
		    "blackman"	"Blackman"
		    "sinc"	"Sinc (sharpening)"
		}
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Shading" }
	    }
	    parm {
		name	"vm_volumefilterwidth"
		label	"Volume Filter Width"
		type	float
		default	{ "1.5" }
		range	{ 0.001 5 }
		export	none
		parmtag	{ "spare_category" "Shading" }
	    }
	    parm {
		name	"vm_matte"
		label	"Matte shading"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Shading" }
	    }
	    parm {
		name	"vm_rayshade"
		label	"Raytrace Shading"
		type	toggle
		default	{ "0" }
		help	"Shade every sample rather than shading micropolygon vertices.  This setting enables the raytrace rendering engine on a per-object basis."
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Shading" }
	    }
	}

	group {
	    name	"folder0_1"
	    label	"Sampling"

	    parm {
		name	"geo_velocityblur"
		label	"Geometry Velocity Blur"
		type	toggle
		default	{ "0" }
		disablewhen	"{ allowmotionblur == 0 }"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Sampling" }
	    }
	}

	group {
	    name	"folder0_2"
	    label	"Dicing"

	    parm {
		name	"vm_shadingquality"
		label	"Shading Quality"
		type	float
		default	{ "1" }
		disablewhen	"{ vm_renderengine != micropoly vm_renderengine != pbrmicropoly }"
		range	{ 0 10 }
		export	none
		parmtag	{ "spare_category" "Dicing" }
	    }
	    parm {
		name	"vm_rayshadingquality"
		label	"Ray Shading Quality"
		type	float
		default	{ "1" }
		range	{ 0 10 }
		export	none
		parmtag	{ "spare_category" "Dicing" }
	    }
	    parm {
		name	"vm_flatness"
		label	"Dicing Flatness"
		type	float
		default	{ "0.05" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Dicing" }
	    }
	    parm {
		name	"vm_raypredice"
		label	"Ray Predicing"
		type	integer
		default	{ "0" }
		menu	{
		    "off"	"Disable Predicing"
		    "on"	"Full Predicing"
		    "bounds"	"Precompute Bounds"
		}
		range	{ 0 10 }
		export	none
		parmtag	{ "spare_category" "Dicing" }
	    }
	    parm {
		name	"vm_curvesurface"
		label	"Shade Curves As Surfaces"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Dicing" }
	    }
	}

	group {
	    name	"folder0_3"
	    label	"Geometry"

	    parm {
		name	"vm_rmbackface"
		label	"Backface Removal (Mantra)"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Geometry" }
	    }
	    parm {
		name	"shop_geometrypath"
		label	"Procedural Shader"
		type	oppath
		default	{ "" }
		range	{ 0 1 }
		export	none
		parmtag	{ "oprelative" "." }
		parmtag	{ "opfilter" "!!SHOP/GEOMETRY!!" }
		parmtag	{ "spare_category" "Geometry" }
	    }
	    parm {
		name	"vm_forcegeometry"
		label	"Force Procedural Geometry Output"
		type	toggle
		default	{ "1" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Geometry" }
	    }
	    parm {
		name	"vm_rendersubd"
		label	"Polygons As Subdivision (Mantra)"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Geometry" }
	    }
	    parm {
		name	"vm_renderpoints"
		label	"Render As Points (Mantra)"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Geometry" }
	    }
	    parm {
		name	"vm_usenforpoints"
		label	"Use N For Point Rendering"
		type	toggle
		default	{ "0" }
		disablewhen	"{ vm_renderpoints == 0 }"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Geometry" }
	    }
	    parm {
		name	"vm_metavolume"
		label	"Metaballs as Volume"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
		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 }
		export	none
		parmtag	{ "spare_category" "Geometry" }
	    }
	    parm {
		name	"vm_computeN"
		label	"Automatically Compute Normals"
		type	toggle
		default	{ "1" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Geometry" }
	    }
	    parm {
		name	"vm_overridedetail"
		label	"Ignore Geometry Attribute Shaders"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Geometry" }
	    }
	}

    }

    group {
	name	"stdswitcher5_3"
	label	"Misc"

	parm {
	    name	"use_dcolor"
	    baseparm
	    export	none
	}
	parm {
	    name	"dcolor"
	    baseparm
	    export	none
	}
	parm {
	    name	"picking"
	    baseparm
	    export	none
	}
	parm {
	    name	"pickscript"
	    baseparm
	    export	none
	}
	parm {
	    name	"caching"
	    baseparm
	    export	none
	}
	parm {
	    name	"vport_shadeopen"
	    baseparm
	    export	none
	}
	parm {
	    name	"vport_displayassubdiv"
	    baseparm
	    invisible
	    export	none
	}
    }

0707070000010000000006660000000000000000010000001147726722100001600000003717obj/dust.parm {
version 0.8
stdswitcher	[ 0	locks=0 ]	(	0	0	0	0	)
keeppos	[ 0	locks=0 ]	(	"off"	)
pre_xform	[ 0	locks=0 ]	(	0	)
xOrd	[ 0	locks=0 ]	(	"srt"	)
rOrd	[ 0	locks=0 ]	(	"xyz"	)
t	[ 0	locks=0 ]	(	0	0	0	)
r	[ 0	locks=0 ]	(	0	0	0	)
s	[ 0	locks=0 ]	(	1	1	1	)
p	[ 0	locks=0 ]	(	0	0	0	)
scale	[ 0	locks=0 ]	(	1	)
lookatpath	[ 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 ]	(	/shop/clay	)
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 ]	(	"off"	)
vport_shadeopen	[ 0	locks=0 ]	(	"off"	)
vport_displayassubdiv	[ 0	locks=0 ]	(	"off"	)
stdswitcher5	[ 0	locks=0 ]	(	1	1	1	1	)
vm_phantom	[ 0	locks=0 ]	(	"off"	)
vm_renderable	[ 0	locks=0 ]	(	"on"	)
folder0	[ 0	locks=0 ]	(	3	3	3	3	)
categories	[ 0	locks=0 ]	(	""	)
reflectmask	[ 0	locks=0 ]	(	*	)
refractmask	[ 0	locks=0 ]	(	*	)
lightmask	[ 0	locks=0 ]	(	*	)
vm_volumefilter	[ 0	locks=0 ]	(	gaussian	)
vm_volumefilterwidth	[ 0	locks=0 ]	(	1.5	)
vm_matte	[ 0	locks=0 ]	(	"off"	)
vm_rayshade	[ 0	locks=0 ]	(	"off"	)
geo_velocityblur	[ 0	locks=0 ]	(	"off"	)
vm_shadingquality	[ 0	locks=0 ]	(	1	)
vm_rayshadingquality	[ 0	locks=0 ]	(	1	)
vm_flatness	[ 0	locks=0 ]	(	0.0500000007	)
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_rendersubd	[ 0	locks=0 ]	(	"off"	)
vm_renderpoints	[ 0	locks=0 ]	(	"on"	)
vm_usenforpoints	[ 0	locks=0 ]	(	"off"	)
vm_metavolume	[ 0	locks=0 ]	(	"off"	)
vm_coving	[ 0	locks=0 ]	(	1	)
vm_computeN	[ 0	locks=0 ]	(	"on"	)
vm_overridedetail	[ 0	locks=0 ]	(	"off"	)
}
0707070000010000000006660000000000000000010000001147726722100004300000000035obj/dust/vopsop__add_movement.init type = vopsop
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100004200000000720obj/dust/vopsop__add_movement.def sopflags sopflags = 
comment ""
position -0.616883 -4.68635
cachesize 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 off exposed on
inputs
{
0 	delete__points_outside_light_frustum_using_uvs 0 1
}
stat
{
  create 1291676508
  modify 1291677201
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100005300000001676obj/dust/vopsop__add_movement.spareparmdef     parm {
	name	"vex_group"
	baseparm
	export	none
    }
    parm {
	name	"vex_numthreads"
	baseparm
	export	none
    }
    parm {
	name	"vop_compiler"
	baseparm
	export	none
    }
    parm {
	name	"vop_forcecompile"
	baseparm
	export	none
    }
    parm {
	name	"freq"
	label	"Frequency"
	type	float
	size	3
	default	{ "1" "1" "1" }
	range	{ 0 10 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"offset"
	label	"Offset"
	type	float
	size	3
	default	{ "0" "0" "0" }
	range	{ 0 10 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"amp"
	label	"Amplitude"
	type	float
	default	{ "1" }
	range	{ -1 1 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"rough"
	label	"Roughness"
	type	float
	default	{ "0.5" }
	range	{ 0 1 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"maxoctave"
	label	"Max Octaves"
	type	integer
	default	{ "8" }
	range	{ 0 32 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
0707070000010000000006660000000000000000010000001147726722100004200000000216obj/dust/vopsop__add_movement.chn {
    channel offset2 {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = $T*0.1 }
    }
  }
0707070000010000000006660000000000000000010000001147726722100004300000000610obj/dust/vopsop__add_movement.parm {
version 0.8
vex_group	[ 0	locks=0 ]	(	""	)
vex_numthreads	[ 0	locks=0 ]	(	"none"	)
vop_compiler	[ 0	locks=0 ]	(	"vcc -r -q $VOP_INCLUDEPATH -o $VOP_OBJECTFILE -e $VOP_ERRORFILE $VOP_SOURCEFILE"	)
vop_forcecompile	[ 0	locks=0 ]	(	0	)
freq	[ 0	locks=0 ]	(	1	1	1	)
offset	[ 0	locks=0 ]	(	0	[ offset2	0 ] 	0	)
amp	[ 0	locks=0 ]	(	4	)
rough	[ 0	locks=0 ]	(	0.5	)
maxoctave	[ 0	locks=0 ]	(	8	)
}
0707070000010000000006660000000000000000010000001147726722100005300000000035obj/dust/vopsop__add_movement/global1.init type = global
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100005200000000643obj/dust/vopsop__add_movement/global1.def comment ""
position 1 1
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1291676508
  modify 1291676513
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100005300000000156obj/dust/vopsop__add_movement/global1.parm {
version 0.8
contexttype	[ 0	locks=0 ]	(	sop	)
usemenu	[ 0	locks=0 ]	(	"off"	)
varname	[ 0	locks=0 ]	(	P	)
}
0707070000010000000006660000000000000000010000001147726722100005300000000035obj/dust/vopsop__add_movement/output1.init type = output
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100005200000000675obj/dust/vopsop__add_movement/output1.def comment ""
position 7.99836 1.83077
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	add1 0 1
}
stat
{
  create 1291676508
  modify 1291677179
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100005300000000167obj/dust/vopsop__add_movement/output1.parm {
version 0.8
contexttype	[ 0	locks=0 ]	(	sop	)
outputcodelast	[ 0	locks=0 ]	(	"on"	)
parmorder	[ 0	locks=0 ]	(	""	)
}
0707070000010000000006660000000000000000010000001147726722100005400000000036obj/dust/vopsop__add_movement/aanoise1.init type = aanoise
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100005300000001003obj/dust/vopsop__add_movement/aanoise1.def comment ""
position 3.49562 1.48788
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	global1 0 1
1 	freq 0 1
2 	offset 0 1
3 	amp 0 1
4 	rough 0 1
5 	maxoctave 0 1
}
stat
{
  create 1291676521
  modify 1291677179
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100005300000003040obj/dust/vopsop__add_movement/aanoise1.chn {
    channel freq1 {
      lefttype = extend
      righttype = extend
      default = 1
      flags = 0
      segment { length = 0 value = 1 1 expr = ch('../freq/float3def1') }
    }
    channel freq2 {
      lefttype = extend
      righttype = extend
      default = 1
      flags = 0
      segment { length = 0 value = 1 1 expr = ch('../freq/float3def2') }
    }
    channel freq3 {
      lefttype = extend
      righttype = extend
      default = 1
      flags = 0
      segment { length = 0 value = 1 1 expr = ch('../freq/float3def3') }
    }
    channel offset1 {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = ch('../offset/pointdef1') }
    }
    channel offset2 {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = ch('../offset/pointdef2') }
    }
    channel offset3 {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = ch('../offset/pointdef3') }
    }
    channel amp {
      lefttype = extend
      righttype = extend
      default = 1
      flags = 0
      segment { length = 0 value = 1 1 expr = ch('../amp/floatdef') }
    }
    channel rough {
      lefttype = extend
      righttype = extend
      default = 0.5
      flags = 0
      segment { length = 0 value = 0.5 0.5 expr = ch('../rough/floatdef') }
    }
    channel maxoctave {
      lefttype = extend
      righttype = extend
      default = 8
      flags = 0
      segment { length = 0 value = 8 8 expr = ch('../maxoctave/intdef') }
    }
  }
0707070000010000000006660000000000000000010000001147726722100005400000001000obj/dust/vopsop__add_movement/aanoise1.parm {
version 0.8
signature	[ 0	locks=0 ]	(	vv	)
pos_ff	[ 0	locks=0 ]	(	0	)
pos	[ 0	locks=0 ]	(	0	0	0	)
pos_fp	[ 0	locks=0 ]	(	0	0	0	0	)
freq_ff	[ 0	locks=0 ]	(	1	)
freq	[ 0	locks=0 ]	(	[ freq1	1 ] 	[ freq2	1 ] 	[ freq3	1 ] 	)
freq_fp	[ 0	locks=0 ]	(	1	1	1	1	)
offset_ff	[ 0	locks=0 ]	(	0	)
offset	[ 0	locks=0 ]	(	[ offset1	0 ] 	[ offset2	0 ] 	[ offset3	0 ] 	)
offset_fp	[ 0	locks=0 ]	(	0	0	0	0	)
amp	[ 0	locks=0 ]	(	[ amp	1 ] 	)
rough	[ 0	locks=0 ]	(	[ rough	0.5 ] 	)
maxoctave	[ 0	locks=0 ]	(	[ maxoctave	8 ] 	)
}
0707070000010000000006660000000000000000010000001147726722100005000000000040obj/dust/vopsop__add_movement/freq.init type = parameter
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100004700000000662obj/dust/vopsop__add_movement/freq.def comment ""
position 1.09562 2.28788
cachesize 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 off exposed off lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1291676525
  modify 1291676535
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100005000000002652obj/dust/vopsop__add_movement/freq.parm {
version 0.8
parmname	[ 0	locks=0 ]	(	freq	)
parmlabel	[ 0	locks=0 ]	(	Frequency	)
showlabel	[ 0	locks=0 ]	(	"on"	)
parmtype	[ 0	locks=0 ]	(	"float3"	)
separator1	[ 0	locks=0 ]	(	)
useasparmdefiner	[ 0	locks=0 ]	(	"off"	)
parmuniform	[ 0	locks=0 ]	(	"on"	)
usebound	[ 0	locks=0 ]	(	"off"	)
exportparm	[ 0	locks=0 ]	(	"off"	)
exportcontext	[ 0	locks=0 ]	(	sop	)
providemenu	[ 0	locks=0 ]	(	"off"	)
menuchoices	[ 0	locks=0 ]	(	""	)
separator2	[ 0	locks=0 ]	(	)
invisible	[ 0	locks=0 ]	(	"off"	)
joinnext	[ 0	locks=0 ]	(	"off"	)
disablewhen	[ 0	locks=0 ]	(	""	)
callback	[ 0	locks=0 ]	(	""	)
help	[ 0	locks=0 ]	(	""	)
separator3	[ 0	locks=0 ]	(	)
stdswitcher	[ 0	locks=0 ]	(	0	0	0	0	0	)
floatdef	[ 0	locks=0 ]	(	0	)
rangeflt	[ 0	locks=0 ]	(	0	1	)
intdef	[ 0	locks=0 ]	(	0	)
rangeint	[ 0	locks=0 ]	(	0	10	)
toggledef	[ 0	locks=0 ]	(	"off"	)
angledef	[ 0	locks=0 ]	(	0	)
float3def	[ 0	locks=0 ]	(	1	1	1	)
vectordef	[ 0	locks=0 ]	(	0	0	0	)
normaldef	[ 0	locks=0 ]	(	0	0	0	)
pointdef	[ 0	locks=0 ]	(	0	0	0	)
directiondef	[ 0	locks=0 ]	(	1	0	0	)
float4def	[ 0	locks=0 ]	(	0	0	0	0	)
float9def	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
float16def	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
stringdef	[ 0	locks=0 ]	(	""	)
stringtype	[ 0	locks=0 ]	(	off	)
opfilter	[ 0	locks=0 ]	(	!!OBJ/LIGHT!!	)
filedef	[ 0	locks=0 ]	(	""	)
imagedef	[ 0	locks=0 ]	(	""	)
geometrydef	[ 0	locks=0 ]	(	""	)
colordef	[ 0	locks=0 ]	(	0	0	0	)
color4def	[ 0	locks=0 ]	(	0	0	0	0	)
}
0707070000010000000006660000000000000000010000001147726722100005200000000040obj/dust/vopsop__add_movement/offset.init type = parameter
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100005100000000662obj/dust/vopsop__add_movement/offset.def comment ""
position 1.19562 2.08788
cachesize 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 off exposed off lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1291676527
  modify 1291676537
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100005200000002650obj/dust/vopsop__add_movement/offset.parm {
version 0.8
parmname	[ 0	locks=0 ]	(	offset	)
parmlabel	[ 0	locks=0 ]	(	Offset	)
showlabel	[ 0	locks=0 ]	(	"on"	)
parmtype	[ 0	locks=0 ]	(	"point"	)
separator1	[ 0	locks=0 ]	(	)
useasparmdefiner	[ 0	locks=0 ]	(	"off"	)
parmuniform	[ 0	locks=0 ]	(	"on"	)
usebound	[ 0	locks=0 ]	(	"off"	)
exportparm	[ 0	locks=0 ]	(	"off"	)
exportcontext	[ 0	locks=0 ]	(	sop	)
providemenu	[ 0	locks=0 ]	(	"off"	)
menuchoices	[ 0	locks=0 ]	(	""	)
separator2	[ 0	locks=0 ]	(	)
invisible	[ 0	locks=0 ]	(	"off"	)
joinnext	[ 0	locks=0 ]	(	"off"	)
disablewhen	[ 0	locks=0 ]	(	""	)
callback	[ 0	locks=0 ]	(	""	)
help	[ 0	locks=0 ]	(	""	)
separator3	[ 0	locks=0 ]	(	)
stdswitcher	[ 0	locks=0 ]	(	0	0	0	0	0	)
floatdef	[ 0	locks=0 ]	(	0	)
rangeflt	[ 0	locks=0 ]	(	0	1	)
intdef	[ 0	locks=0 ]	(	0	)
rangeint	[ 0	locks=0 ]	(	0	10	)
toggledef	[ 0	locks=0 ]	(	"off"	)
angledef	[ 0	locks=0 ]	(	0	)
float3def	[ 0	locks=0 ]	(	0	0	0	)
vectordef	[ 0	locks=0 ]	(	0	0	0	)
normaldef	[ 0	locks=0 ]	(	0	0	0	)
pointdef	[ 0	locks=0 ]	(	0	0	0	)
directiondef	[ 0	locks=0 ]	(	1	0	0	)
float4def	[ 0	locks=0 ]	(	0	0	0	0	)
float9def	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
float16def	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
stringdef	[ 0	locks=0 ]	(	""	)
stringtype	[ 0	locks=0 ]	(	off	)
opfilter	[ 0	locks=0 ]	(	!!OBJ/LIGHT!!	)
filedef	[ 0	locks=0 ]	(	""	)
imagedef	[ 0	locks=0 ]	(	""	)
geometrydef	[ 0	locks=0 ]	(	""	)
colordef	[ 0	locks=0 ]	(	0	0	0	)
color4def	[ 0	locks=0 ]	(	0	0	0	0	)
}
0707070000010000000006660000000000000000010000001147726722100004700000000040obj/dust/vopsop__add_movement/amp.init type = parameter
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100004600000000662obj/dust/vopsop__add_movement/amp.def comment ""
position 1.29562 1.88788
cachesize 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 off exposed off lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1291676528
  modify 1291676538
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100004700000002651obj/dust/vopsop__add_movement/amp.parm {
version 0.8
parmname	[ 0	locks=0 ]	(	amp	)
parmlabel	[ 0	locks=0 ]	(	Amplitude	)
showlabel	[ 0	locks=0 ]	(	"on"	)
parmtype	[ 0	locks=0 ]	(	"float"	)
separator1	[ 0	locks=0 ]	(	)
useasparmdefiner	[ 0	locks=0 ]	(	"off"	)
parmuniform	[ 0	locks=0 ]	(	"on"	)
usebound	[ 0	locks=0 ]	(	"off"	)
exportparm	[ 0	locks=0 ]	(	"off"	)
exportcontext	[ 0	locks=0 ]	(	sop	)
providemenu	[ 0	locks=0 ]	(	"off"	)
menuchoices	[ 0	locks=0 ]	(	""	)
separator2	[ 0	locks=0 ]	(	)
invisible	[ 0	locks=0 ]	(	"off"	)
joinnext	[ 0	locks=0 ]	(	"off"	)
disablewhen	[ 0	locks=0 ]	(	""	)
callback	[ 0	locks=0 ]	(	""	)
help	[ 0	locks=0 ]	(	""	)
separator3	[ 0	locks=0 ]	(	)
stdswitcher	[ 0	locks=0 ]	(	0	0	0	0	0	)
floatdef	[ 0	locks=0 ]	(	1	)
rangeflt	[ 0	locks=0 ]	(	-1	1	)
intdef	[ 0	locks=0 ]	(	0	)
rangeint	[ 0	locks=0 ]	(	0	10	)
toggledef	[ 0	locks=0 ]	(	"off"	)
angledef	[ 0	locks=0 ]	(	0	)
float3def	[ 0	locks=0 ]	(	0	0	0	)
vectordef	[ 0	locks=0 ]	(	0	0	0	)
normaldef	[ 0	locks=0 ]	(	0	0	0	)
pointdef	[ 0	locks=0 ]	(	0	0	0	)
directiondef	[ 0	locks=0 ]	(	1	0	0	)
float4def	[ 0	locks=0 ]	(	0	0	0	0	)
float9def	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
float16def	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
stringdef	[ 0	locks=0 ]	(	""	)
stringtype	[ 0	locks=0 ]	(	off	)
opfilter	[ 0	locks=0 ]	(	!!OBJ/LIGHT!!	)
filedef	[ 0	locks=0 ]	(	""	)
imagedef	[ 0	locks=0 ]	(	""	)
geometrydef	[ 0	locks=0 ]	(	""	)
colordef	[ 0	locks=0 ]	(	0	0	0	)
color4def	[ 0	locks=0 ]	(	0	0	0	0	)
}
0707070000010000000006660000000000000000010000001147726722100005100000000040obj/dust/vopsop__add_movement/rough.init type = parameter
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100005000000000662obj/dust/vopsop__add_movement/rough.def comment ""
position 1.39562 1.68788
cachesize 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 off exposed off lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1291676529
  modify 1291676539
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100005100000002654obj/dust/vopsop__add_movement/rough.parm {
version 0.8
parmname	[ 0	locks=0 ]	(	rough	)
parmlabel	[ 0	locks=0 ]	(	Roughness	)
showlabel	[ 0	locks=0 ]	(	"on"	)
parmtype	[ 0	locks=0 ]	(	"float"	)
separator1	[ 0	locks=0 ]	(	)
useasparmdefiner	[ 0	locks=0 ]	(	"off"	)
parmuniform	[ 0	locks=0 ]	(	"on"	)
usebound	[ 0	locks=0 ]	(	"off"	)
exportparm	[ 0	locks=0 ]	(	"off"	)
exportcontext	[ 0	locks=0 ]	(	sop	)
providemenu	[ 0	locks=0 ]	(	"off"	)
menuchoices	[ 0	locks=0 ]	(	""	)
separator2	[ 0	locks=0 ]	(	)
invisible	[ 0	locks=0 ]	(	"off"	)
joinnext	[ 0	locks=0 ]	(	"off"	)
disablewhen	[ 0	locks=0 ]	(	""	)
callback	[ 0	locks=0 ]	(	""	)
help	[ 0	locks=0 ]	(	""	)
separator3	[ 0	locks=0 ]	(	)
stdswitcher	[ 0	locks=0 ]	(	0	0	0	0	0	)
floatdef	[ 0	locks=0 ]	(	0.5	)
rangeflt	[ 0	locks=0 ]	(	0	1	)
intdef	[ 0	locks=0 ]	(	0	)
rangeint	[ 0	locks=0 ]	(	0	10	)
toggledef	[ 0	locks=0 ]	(	"off"	)
angledef	[ 0	locks=0 ]	(	0	)
float3def	[ 0	locks=0 ]	(	0	0	0	)
vectordef	[ 0	locks=0 ]	(	0	0	0	)
normaldef	[ 0	locks=0 ]	(	0	0	0	)
pointdef	[ 0	locks=0 ]	(	0	0	0	)
directiondef	[ 0	locks=0 ]	(	1	0	0	)
float4def	[ 0	locks=0 ]	(	0	0	0	0	)
float9def	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
float16def	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
stringdef	[ 0	locks=0 ]	(	""	)
stringtype	[ 0	locks=0 ]	(	off	)
opfilter	[ 0	locks=0 ]	(	!!OBJ/LIGHT!!	)
filedef	[ 0	locks=0 ]	(	""	)
imagedef	[ 0	locks=0 ]	(	""	)
geometrydef	[ 0	locks=0 ]	(	""	)
colordef	[ 0	locks=0 ]	(	0	0	0	)
color4def	[ 0	locks=0 ]	(	0	0	0	0	)
}
0707070000010000000006660000000000000000010000001147726722100005500000000040obj/dust/vopsop__add_movement/maxoctave.init type = parameter
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100005400000000662obj/dust/vopsop__add_movement/maxoctave.def comment ""
position 1.49562 1.48788
cachesize 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 off exposed off lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1291676530
  modify 1291676540
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100005500000002660obj/dust/vopsop__add_movement/maxoctave.parm {
version 0.8
parmname	[ 0	locks=0 ]	(	maxoctave	)
parmlabel	[ 0	locks=0 ]	(	"Max Octaves"	)
showlabel	[ 0	locks=0 ]	(	"on"	)
parmtype	[ 0	locks=0 ]	(	"int"	)
separator1	[ 0	locks=0 ]	(	)
useasparmdefiner	[ 0	locks=0 ]	(	"off"	)
parmuniform	[ 0	locks=0 ]	(	"on"	)
usebound	[ 0	locks=0 ]	(	"off"	)
exportparm	[ 0	locks=0 ]	(	"off"	)
exportcontext	[ 0	locks=0 ]	(	sop	)
providemenu	[ 0	locks=0 ]	(	"off"	)
menuchoices	[ 0	locks=0 ]	(	""	)
separator2	[ 0	locks=0 ]	(	)
invisible	[ 0	locks=0 ]	(	"off"	)
joinnext	[ 0	locks=0 ]	(	"off"	)
disablewhen	[ 0	locks=0 ]	(	""	)
callback	[ 0	locks=0 ]	(	""	)
help	[ 0	locks=0 ]	(	""	)
separator3	[ 0	locks=0 ]	(	)
stdswitcher	[ 0	locks=0 ]	(	0	0	0	0	0	)
floatdef	[ 0	locks=0 ]	(	0	)
rangeflt	[ 0	locks=0 ]	(	0	1	)
intdef	[ 0	locks=0 ]	(	8	)
rangeint	[ 0	locks=0 ]	(	0	32	)
toggledef	[ 0	locks=0 ]	(	"off"	)
angledef	[ 0	locks=0 ]	(	0	)
float3def	[ 0	locks=0 ]	(	0	0	0	)
vectordef	[ 0	locks=0 ]	(	0	0	0	)
normaldef	[ 0	locks=0 ]	(	0	0	0	)
pointdef	[ 0	locks=0 ]	(	0	0	0	)
directiondef	[ 0	locks=0 ]	(	1	0	0	)
float4def	[ 0	locks=0 ]	(	0	0	0	0	)
float9def	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
float16def	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
stringdef	[ 0	locks=0 ]	(	""	)
stringtype	[ 0	locks=0 ]	(	off	)
opfilter	[ 0	locks=0 ]	(	!!OBJ/LIGHT!!	)
filedef	[ 0	locks=0 ]	(	""	)
imagedef	[ 0	locks=0 ]	(	""	)
geometrydef	[ 0	locks=0 ]	(	""	)
colordef	[ 0	locks=0 ]	(	0	0	0	)
color4def	[ 0	locks=0 ]	(	0	0	0	0	)
}
0707070000010000000006660000000000000000010000001147726722100005000000000032obj/dust/vopsop__add_movement/add1.init type = add
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100004700000000717obj/dust/vopsop__add_movement/add1.def comment ""
position 5.57095 2.6944
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	global1 0 1
1 	aanoise1 0 1
}
stat
{
  create 1291676533
  modify 1291677179
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100005000000000020obj/dust/vopsop__add_movement/add1.parm {
version 0.8
}
0707070000010000000006660000000000000000010000001147726722100001100000000570shop.def comment ""
position 5 3
cachesize 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 off exposed on
inputs
{
}
stat
{
  create 1291674342
  modify 1291676662
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100001200000000020shop.parm {
version 0.8
}
0707070000010000000006660000000000000000010000001147726722100002500000000042shop/basicsmoke.init type = vopmaterial
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100002400000000764shop/basicsmoke.def comment "Created from Gallery Entry: Basic Smoke

Default smoke volumetric material."
position -1.412 1.0354
cachesize 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 off exposed on
inputs
{
}
stat
{
  create 1291674989
  modify 1291676663
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
creator gallery::basicsmoke
explicit 1
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100003500000022515shop/basicsmoke.spareparmdef     group {
	name	"folder0"
	label	"Smoke"

	parm {
	    name	"diff"
	    label	"Smoke Color"
	    type	color
	    size	3
	    default	{ "0.7" "0.67" "0.63" }
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "parmvop" "1" }
	}
	parm {
	    name	"usePointColor"
	    label	"Use Point Color"
	    type	toggle
	    default	{ "on" }
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "parmvop" "1" }
	}
	parm {
	    name	"sepparm"
	    label	"Separator"
	    type	separator
	    default	{ }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"clouddensity"
	    label	"Cloud Density"
	    type	float
	    default	{ "50" }
	    range	{ 0 100 }
	    export	none
	    parmtag	{ "parmvop" "1" }
	}
	parm {
	    name	"sepparm2"
	    label	"Separator"
	    type	separator
	    default	{ }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"shadowdensity"
	    label	"Shadow Density"
	    type	float
	    default	{ "50" }
	    range	{ 0 100 }
	    export	none
	    parmtag	{ "parmvop" "1" }
	}
	parm {
	    name	"receiveshadows"
	    label	"Receive Shadows"
	    type	toggle
	    default	{ "on" }
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "parmvop" "1" }
	}
	parm {
	    name	"illumAngle"
	    label	"Illuminance Angle"
	    type	float
	    default	{ "180" }
	    range	{ 0 360 }
	    export	none
	    parmtag	{ "parmvop" "1" }
	}
    }

    group {
	name	"folder0_1"
	label	"OpenGL"

	group {
	    name	"folder2"
	    label	"Surface"

	    parm {
		name	"ogl_light"
		label	"Use Lighting"
		type	toggle
		default	{ "1" }
		help	"None"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "OGL" }
	    }
	    parm {
		name	"sepparm6"
		label	"Separator"
		type	separator
		default	{ }
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"ogl_alpha"
		label	"OGL Alpha"
		type	float
		default	{ "1" }
		help	"None"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "OGL" }
	    }
	    parm {
		name	"ogl_cutout"
		label	"Transparent Texture Alpha"
		type	toggle
		default	{ "1" }
		help	"None"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "OGL" }
	    }
	    parm {
		name	"ogl_amb"
		label	"OGL Ambient"
		type	color
		size	3
		default	{ "1" "1" "1" }
		help	"None"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "OGL" }
	    }
	    parm {
		name	"ogl_emit"
		label	"OGL Emission"
		type	color
		size	3
		default	{ "0" "0" "0" }
		help	"None"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "OGL" }
	    }
	    parm {
		name	"sepparm12"
		label	"Separator"
		type	separator
		default	{ }
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"ogl_diff"
		label	"OGL Diffuse"
		type	color
		size	3
		default	{ "1" "1" "1" }
		help	"None"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "OGL" }
	    }
	    multiparm {
		name	"ogl_numtex"
		label	"Texture Layers"
		default	1
		parmtag	{ "spare_category" "OGL" }

		parm {
		    name	"ogl_tex#"
		    label	"Texture #"
		    type	image
		    default	{ "`chs(\"baseColorMap\")`" }
		    help	"None"
		    range	{ 0 1 }
		    export	none
		    parmtag	{ "filechooser_mode" "read" }
		}
		parm {
		    name	"ogl_tex_min_filter#"
		    label	"Minification Filter"
		    type	string
		    default	{ "GL_LINEAR_MIPMAP_LINEAR" }
		    help	"None"
		    menu	{
			"GL_NEAREST"	"Poor: Nearest"
			"GL_LINEAR"	"Poor: Linear"
			"GL_NEAREST_MIPMAP_NEAREST"	"Fastest (Nearest/Nearest)"
			"GL_LINEAR_MIPMAP_NEAREST"	"Better (Linear/Nearest)"
			"GL_NEAREST_MIPMAP_LINEAR"	"Good (Nearest/Linear)"
			"GL_LINEAR_MIPMAP_LINEAR"	"Best (Linear/Linear)"
		    }
		    range	{ 0 1 }
		    export	none
		}
		parm {
		    name	"ogl_tex_mag_filter#"
		    label	"Magnification Filter"
		    type	string
		    default	{ "GL_LINEAR" }
		    help	"None"
		    menu	{
			"GL_NEAREST"	"Nearest"
			"GL_LINEAR"	"Linear"
		    }
		    range	{ 0 1 }
		    export	none
		}
		parm {
		    name	"ogl_clamping_mode#"
		    label	"Clamp Texture"
		    type	toggle
		    default	{ "0" }
		    help	"None"
		    range	{ 0 1 }
		    export	none
		}
	    }

	    parm {
		name	"sepparm8"
		label	"Separator"
		type	separator
		default	{ }
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"ogl_spec"
		label	"OGL Specular"
		type	color
		size	3
		default	{ "1" "1" "1" }
		help	"None"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "OGL" }
	    }
	    parm {
		name	"ogl_specmap"
		label	"OGL Specular Map"
		type	image
		default	{ "" }
		help	"None"
		range	{ 0 1 }
		export	none
		parmtag	{ "filechooser_mode" "read" }
		parmtag	{ "spare_category" "OGL" }
	    }
	    parm {
		name	"ogl_speclayer"
		label	"Specular Layer"
		type	integer
		default	{ "0" }
		help	"None"
		disablewhen	"{ ogl_specmap == \"\" }"
		range	{ 0 15 }
		export	none
	    }
	    parm {
		name	"ogl_rough"
		label	"OGL Roughness"
		type	float
		default	{ "0.1" }
		help	"None"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "OGL" }
	    }
	    parm {
		name	"ogl_adjustshiny"
		label	"Adjust Shininess with Alpha Channel"
		type	toggle
		default	{ "off" }
		help	"None"
		disablewhen	"{ ogl_specmap == \"\" }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"ogl_shinyrange"
		label	"Shininess Range"
		type	vector2
		size	2
		default	{ "10" "30" }
		help	"None"
		disablewhen	"{ ogl_specmap == \"\" } { ogl_adjustshiny == 0 }"
		range	{ -1 1 }
		export	none
	    }
	    parm {
		name	"sepparm10"
		label	"Separator"
		type	separator
		default	{ }
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"ogl_opacitymap"
		label	"OGL Opacity Map"
		type	image
		default	{ "" }
		help	"None"
		range	{ 0 1 }
		export	none
		parmtag	{ "filechooser_mode" "read" }
		parmtag	{ "spare_category" "OGL" }
	    }
	    parm {
		name	"ogl_opacitylayer"
		label	"Opacity Layer"
		type	integer
		default	{ "0" }
		help	"None"
		disablewhen	"{ ogl_opacitymap == \"\" }"
		range	{ 0 15 }
		export	none
	    }
	}

	group {
	    name	"folder2_1"
	    label	"Displace"

	    parm {
		name	"ogl_bumpmap"
		label	"OGL Bump Map"
		type	image
		default	{ "" }
		help	"None"
		range	{ 0 1 }
		export	none
		parmtag	{ "filechooser_mode" "read" }
	    }
	    parm {
		name	"ogl_bumptype"
		label	"Bump Map Type"
		type	string
		default	{ "height" }
		help	"None"
		disablewhen	"{ ogl_bumpmap == \"\" }"
		menu	{
		    "height"	"Height Map"
		    "uv"	"UV Bump Map"
		    "xyz"	"XYZ Bump Map"
		}
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"ogl_bumpscale"
		label	"Bump Scale"
		type	float
		default	{ "1" }
		help	"None"
		disablewhen	"{ ogl_bumpmap == \"\" }"
		range	{ 0 10 }
		export	none
	    }
	    parm {
		name	"ogl_bumpbias"
		label	"Bump Map Range"
		type	string
		default	{ "zeroone" }
		help	"None"
		disablewhen	"{ ogl_bumpmap == \"\" }"
		menu	{
		    "zeroone"	"0 to 1"
		    "centered"	"-1 to 1"
		}
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"ogl_bumplayer"
		label	"Bump Layer"
		type	integer
		default	{ "0" }
		help	"None"
		disablewhen	"{ ogl_bumpmap == \"\" }"
		range	{ 0 15 }
		export	none
	    }
	    parm {
		name	"ogl_bumpinvert"
		label	"Invert Bumps"
		type	toggle
		default	{ "0" }
		help	"None"
		disablewhen	"{ ogl_bumpmap == \"\" }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"sepparm7"
		label	"Separator"
		type	separator
		default	{ }
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"ogl_normalmap"
		label	"OGL Normal Map"
		type	image
		default	{ "" }
		help	"None"
		range	{ 0 1 }
		export	none
		parmtag	{ "filechooser_mode" "read" }
		parmtag	{ "spare_category" "OGL" }
	    }
	    parm {
		name	"ogl_normalbias"
		label	"Normal Map Range"
		type	string
		default	{ "zeroone" }
		help	"None"
		disablewhen	"{ ogl_normalmap == \"\" }"
		menu	{
		    "zeroone"	"0 to 1"
		    "centered"	"-1 to 1"
		}
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"ogl_normallayer"
		label	"Normal Layer"
		type	integer
		default	{ "0" }
		help	"None"
		disablewhen	"{ ogl_normalmap == \"\" }"
		range	{ 0 15 }
		export	none
		parmtag	{ "spare_category" "OGL" }
	    }
	    parm {
		name	"sepparm9"
		label	"Separator"
		type	separator
		default	{ }
		range	{ 0 1 }
		export	none
	    }
	}

	group {
	    name	"folder2_2"
	    label	"Environment"

	    parm {
		name	"ogl_envmap"
		label	"OGL Environment Map"
		type	image
		default	{ "" }
		help	"None"
		range	{ 0 1 }
		export	none
		parmtag	{ "filechooser_mode" "read" }
	    }
	    parm {
		name	"ogl_envrotate"
		label	"Env Map Rotation"
		type	vector
		size	3
		default	{ "0" "0" "0" }
		help	"None"
		disablewhen	"{ ogl_envmap == \"\" }"
		range	{ -1 1 }
		export	none
	    }
	    parm {
		name	"ogl_envrotorder"
		label	"Env Rotate Order"
		type	string
		default	{ "xyz" }
		help	"None"
		menu	{
		    "xyz"	"Rx Ry Rz"
		    "xzy"	"Rx Rz Ry"
		    "yxz"	"Ry Rx Rz"
		    "yzx"	"Ry Rz Rx"
		    "zxy"	"Rz Rx Ry"
		    "zyx"	"Rz Ry Rx"
		}
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"ogl_envscale"
		label	"Reflection Intensity"
		type	float
		default	{ "0.1" }
		help	"None"
		disablewhen	"{ ogl_envmap == \"\" }"
		range	{ 0 2 }
		export	none
	    }
	}

    }

    parm {
	name	"vop_compiler"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"vop_forcecompile"
	baseparm
	invisible
	export	none
    }
    parm {
	name	"density"
	label	"Density"
	type	float
	invisible
	default	{ "10" }
	range	{ 0 50 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"Cd"
	label	"Attribute Color"
	type	color
	invisible
	size	3
	default	{ "1" "1" "1" }
	range	{ 0 1 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
0707070000010000000006660000000000000000010000001147726722100002400000000735shop/basicsmoke.chn {
    channel ogl_diffr {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 value = 1 1 expr = ch(\"diffr\") }
    }
    channel ogl_diffg {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 value = 1 1 expr = ch(\"diffg\") }
    }
    channel ogl_diffb {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 value = 1 1 expr = ch(\"diffb\") }
    }
  }
0707070000010000000006660000000000000000010000001147726722100002500000003540shop/basicsmoke.parm {
version 0.8
vop_compiler	[ 0	locks=0	autoscope=0 ]	(	"vcc -r -q $VOP_INCLUDEPATH -o $VOP_OBJECTFILE -e $VOP_ERRORFILE $VOP_SOURCEFILE"	)
vop_forcecompile	[ 0	locks=0 ]	(	0	)
folder0	[ 0	locks=0 ]	(	0	0	)
diff	[ 0	locks=0 ]	(	0.699999988	0.670000017	0.629999995	)
usePointColor	[ 0	locks=0 ]	(	"on"	)
sepparm	[ 0	locks=0 ]	(	)
clouddensity	[ 0	locks=0 ]	(	0.100000001	)
sepparm2	[ 0	locks=0 ]	(	)
shadowdensity	[ 0	locks=0 ]	(	0.100000001	)
receiveshadows	[ 0	locks=0 ]	(	"on"	)
illumAngle	[ 0	locks=0 ]	(	180	)
folder2	[ 0	locks=0 ]	(	0	0	0	)
ogl_light	[ 0	locks=0 ]	(	"on"	)
sepparm6	[ 0	locks=0 ]	(	)
ogl_alpha	[ 0	locks=0 ]	(	1	)
ogl_cutout	[ 0	locks=0 ]	(	"on"	)
ogl_amb	[ 0	locks=0	autoscope=0 ]	(	0	0	0	)
ogl_emit	[ 0	locks=0 ]	(	0	0	0	)
sepparm12	[ 0	locks=0 ]	(	)
ogl_diff	[ 0	locks=0	autoscope=0 ]	(	[ ogl_diffr	0.699999988 ] 	[ ogl_diffg	0.670000017 ] 	[ ogl_diffb	0.629999995 ] 	)
ogl_numtex	[ 0	locks=0	autoscope=0 ]	(	0	)
sepparm8	[ 0	locks=0 ]	(	)
ogl_spec	[ 0	locks=0	autoscope=0 ]	(	0	0	0	)
ogl_specmap	[ 0	locks=0 ]	(	""	)
ogl_speclayer	[ 0	locks=0 ]	(	0	)
ogl_rough	[ 0	locks=0 ]	(	0.100000001	)
ogl_adjustshiny	[ 0	locks=0 ]	(	"off"	)
ogl_shinyrange	[ 0	locks=0 ]	(	10	30	)
sepparm10	[ 0	locks=0 ]	(	)
ogl_opacitymap	[ 0	locks=0 ]	(	""	)
ogl_opacitylayer	[ 0	locks=0 ]	(	0	)
ogl_bumpmap	[ 0	locks=0 ]	(	""	)
ogl_bumptype	[ 0	locks=0 ]	(	height	)
ogl_bumpscale	[ 0	locks=0 ]	(	1	)
ogl_bumpbias	[ 0	locks=0 ]	(	zeroone	)
ogl_bumplayer	[ 0	locks=0 ]	(	0	)
ogl_bumpinvert	[ 0	locks=0 ]	(	"off"	)
sepparm7	[ 0	locks=0 ]	(	)
ogl_normalmap	[ 0	locks=0 ]	(	""	)
ogl_normalbias	[ 0	locks=0 ]	(	zeroone	)
ogl_normallayer	[ 0	locks=0 ]	(	0	)
sepparm9	[ 0	locks=0 ]	(	)
ogl_envmap	[ 0	locks=0 ]	(	""	)
ogl_envrotate	[ 0	locks=0 ]	(	0	0	0	)
ogl_envrotorder	[ 0	locks=0 ]	(	xyz	)
ogl_envscale	[ 0	locks=0 ]	(	0.100000001	)
density	[ 0	locks=0 ]	(	10	)
Cd	[ 0	locks=0 ]	(	1	1	1	)
}
0707070000010000000006660000000000000000010000001147726722100003600000000035shop/basicsmoke/outpupt1.init type = output
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100003500000001015shop/basicsmoke/outpupt1.def comment ""
position 6.48842 2.79603
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	if_densityNotZero 0 1
1 	if_densityNotZero 1 1
2 	if_densityNotZero 2 1
3 	"" 0 1
4 	if_densityNotZero 3 1
}
stat
{
  create 1185233314
  modify 1279920431
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100003600000000340shop/basicsmoke/outpupt1.parm {
version 0.8
contexttype	[ 0	locks=0 ]	(	surface	)
outputcodelast	[ 0	locks=0 ]	(	"off"	)
parmorder	[ 0	locks=0 ]	(	"diff usePointColor Cd density clouddensity shadowdensity receiveshadows if_densityNotZero/illumAngle"	)
}
0707070000010000000006660000000000000000010000001147726722100003300000000037shop/basicsmoke/newCf.init type = constant
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100003200000000633shop/basicsmoke/newCf.def comment ""
position 3.29744 3.49033
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1185234108
  modify 1278606034
  author liza@chaos
  access 0777
}
color UT_Color RGB 0 0 0 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100003300000001466shop/basicsmoke/newCf.parm {
version 0.8
consttype	[ 0	locks=0 ]	(	"color"	)
parmuniform	[ 0	locks=0 ]	(	"on"	)
constname	[ 0	locks=0 ]	(	newCf	)
constlabel	[ 0	locks=0 ]	(	newCf	)
stdswitcher	[ 0	locks=0 ]	(	4	4	4	4	4	)
floatdef	[ 0	locks=0 ]	(	0	)
intdef	[ 0	locks=0 ]	(	0	)
toggledef	[ 0	locks=0 ]	(	"off"	)
angledef	[ 0	locks=0 ]	(	0	)
float3def	[ 0	locks=0 ]	(	0	0	0	)
vectordef	[ 0	locks=0 ]	(	0	0	0	)
normaldef	[ 0	locks=0 ]	(	0	0	0	)
pointdef	[ 0	locks=0 ]	(	0	0	0	)
directiondef	[ 0	locks=0 ]	(	1	0	0	)
float4def	[ 0	locks=0 ]	(	0	0	0	0	)
float9def	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
float16def	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
stringdef	[ 0	locks=0 ]	(	""	)
filedef	[ 0	locks=0 ]	(	""	)
imagedef	[ 0	locks=0 ]	(	""	)
geometrydef	[ 0	locks=0 ]	(	""	)
colordef	[ 0	locks=0 ]	(	0	0	0	)
color4def	[ 0	locks=0 ]	(	0	0	0	0	)
}
0707070000010000000006660000000000000000010000001147726722100004400000000040shop/basicsmoke/receiveshadows.init type = parameter
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100004300000000635shop/basicsmoke/receiveshadows.def comment ""
position 1.54856 3.37536
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1185234718
  modify 1278606034
  author liza@chaos
  access 0777
}
color UT_Color RGB 1 1 0.6 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100004400000002677shop/basicsmoke/receiveshadows.parm {
version 0.8
parmname	[ 0	locks=0 ]	(	receiveshadows	)
parmlabel	[ 0	locks=0 ]	(	"Receive Shadows"	)
showlabel	[ 0	locks=0 ]	(	"on"	)
parmtype	[ 0	locks=0 ]	(	"toggle"	)
separator1	[ 0	locks=0 ]	(	)
useasparmdefiner	[ 0	locks=0 ]	(	"off"	)
parmuniform	[ 0	locks=0 ]	(	"on"	)
usebound	[ 0	locks=0 ]	(	"off"	)
exportparm	[ 0	locks=0 ]	(	"off"	)
exportcontext	[ 0	locks=0 ]	(	surface	)
providemenu	[ 0	locks=0 ]	(	"off"	)
menuchoices	[ 0	locks=0 ]	(	""	)
separator2	[ 0	locks=0 ]	(	)
invisible	[ 0	locks=0 ]	(	"off"	)
joinnext	[ 0	locks=0 ]	(	"off"	)
disablewhen	[ 0	locks=0 ]	(	""	)
callback	[ 0	locks=0 ]	(	""	)
help	[ 0	locks=0 ]	(	""	)
separator3	[ 0	locks=0 ]	(	)
stdswitcher	[ 0	locks=0 ]	(	0	0	0	0	0	)
floatdef	[ 0	locks=0 ]	(	0	)
rangeflt	[ 0	locks=0 ]	(	0	1	)
intdef	[ 0	locks=0 ]	(	0	)
rangeint	[ 0	locks=0 ]	(	0	10	)
toggledef	[ 0	locks=0 ]	(	"on"	)
angledef	[ 0	locks=0 ]	(	0	)
float3def	[ 0	locks=0 ]	(	0	0	0	)
vectordef	[ 0	locks=0 ]	(	0	0	0	)
normaldef	[ 0	locks=0 ]	(	0	0	0	)
pointdef	[ 0	locks=0 ]	(	0	0	0	)
directiondef	[ 0	locks=0 ]	(	1	0	0	)
float4def	[ 0	locks=0 ]	(	0	0	0	0	)
float9def	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
float16def	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
stringdef	[ 0	locks=0 ]	(	""	)
stringtype	[ 0	locks=0 ]	(	off	)
opfilter	[ 0	locks=0 ]	(	!!OBJ/LIGHT!!	)
filedef	[ 0	locks=0 ]	(	""	)
imagedef	[ 0	locks=0 ]	(	""	)
geometrydef	[ 0	locks=0 ]	(	""	)
colordef	[ 0	locks=0 ]	(	0	0	0	)
color4def	[ 0	locks=0 ]	(	0	0	0	0	)
}
0707070000010000000006660000000000000000010000001147726722100003500000000040shop/basicsmoke/density.init type = parameter
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100003400000000637shop/basicsmoke/density.def comment ""
position 0.0354261 4.36907
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1185234802
  modify 1278606072
  author liza@chaos
  access 0777
}
color UT_Color RGB 1 1 0.6 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100003500000002657shop/basicsmoke/density.parm {
version 0.8
parmname	[ 0	locks=0 ]	(	density	)
parmlabel	[ 0	locks=0 ]	(	Density	)
showlabel	[ 0	locks=0 ]	(	"on"	)
parmtype	[ 0	locks=0 ]	(	"float"	)
separator1	[ 0	locks=0 ]	(	)
useasparmdefiner	[ 0	locks=0 ]	(	"off"	)
parmuniform	[ 0	locks=0 ]	(	"on"	)
usebound	[ 0	locks=0 ]	(	"off"	)
exportparm	[ 0	locks=0 ]	(	"off"	)
exportcontext	[ 0	locks=0 ]	(	surface	)
providemenu	[ 0	locks=0 ]	(	"off"	)
menuchoices	[ 0	locks=0 ]	(	""	)
separator2	[ 0	locks=0 ]	(	)
invisible	[ 0	locks=0 ]	(	"on"	)
joinnext	[ 0	locks=0 ]	(	"off"	)
disablewhen	[ 0	locks=0 ]	(	""	)
callback	[ 0	locks=0 ]	(	""	)
help	[ 0	locks=0 ]	(	""	)
separator3	[ 0	locks=0 ]	(	)
stdswitcher	[ 0	locks=0 ]	(	0	0	0	0	0	)
floatdef	[ 0	locks=0 ]	(	10	)
rangeflt	[ 0	locks=0 ]	(	0	50	)
intdef	[ 0	locks=0 ]	(	0	)
rangeint	[ 0	locks=0 ]	(	0	10	)
toggledef	[ 0	locks=0 ]	(	"off"	)
angledef	[ 0	locks=0 ]	(	0	)
float3def	[ 0	locks=0 ]	(	0	0	0	)
vectordef	[ 0	locks=0 ]	(	0	0	0	)
normaldef	[ 0	locks=0 ]	(	0	0	0	)
pointdef	[ 0	locks=0 ]	(	0	0	0	)
directiondef	[ 0	locks=0 ]	(	1	0	0	)
float4def	[ 0	locks=0 ]	(	0	0	0	0	)
float9def	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
float16def	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
stringdef	[ 0	locks=0 ]	(	""	)
stringtype	[ 0	locks=0 ]	(	off	)
opfilter	[ 0	locks=0 ]	(	!!OBJ/LIGHT!!	)
filedef	[ 0	locks=0 ]	(	""	)
imagedef	[ 0	locks=0 ]	(	""	)
geometrydef	[ 0	locks=0 ]	(	""	)
colordef	[ 0	locks=0 ]	(	0	0	0	)
color4def	[ 0	locks=0 ]	(	0	0	0	0	)
}
0707070000010000000006660000000000000000010000001147726722100004200000000040shop/basicsmoke/clouddensity.init type = parameter
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100004100000000635shop/basicsmoke/clouddensity.def comment ""
position 1.37798 1.93263
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1185234802
  modify 1278606034
  author liza@chaos
  access 0777
}
color UT_Color RGB 1 1 0.6 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100004200000002676shop/basicsmoke/clouddensity.parm {
version 0.8
parmname	[ 0	locks=0 ]	(	clouddensity	)
parmlabel	[ 0	locks=0 ]	(	"Cloud Density"	)
showlabel	[ 0	locks=0 ]	(	"on"	)
parmtype	[ 0	locks=0 ]	(	"float"	)
separator1	[ 0	locks=0 ]	(	)
useasparmdefiner	[ 0	locks=0 ]	(	"off"	)
parmuniform	[ 0	locks=0 ]	(	"on"	)
usebound	[ 0	locks=0 ]	(	"off"	)
exportparm	[ 0	locks=0 ]	(	"off"	)
exportcontext	[ 0	locks=0 ]	(	surface	)
providemenu	[ 0	locks=0 ]	(	"off"	)
menuchoices	[ 0	locks=0 ]	(	""	)
separator2	[ 0	locks=0 ]	(	)
invisible	[ 0	locks=0 ]	(	"off"	)
joinnext	[ 0	locks=0 ]	(	"off"	)
disablewhen	[ 0	locks=0 ]	(	""	)
callback	[ 0	locks=0 ]	(	""	)
help	[ 0	locks=0 ]	(	""	)
separator3	[ 0	locks=0 ]	(	)
stdswitcher	[ 0	locks=0 ]	(	0	0	0	0	0	)
floatdef	[ 0	locks=0 ]	(	50	)
rangeflt	[ 0	locks=0 ]	(	0	100	)
intdef	[ 0	locks=0 ]	(	0	)
rangeint	[ 0	locks=0 ]	(	0	10	)
toggledef	[ 0	locks=0 ]	(	"off"	)
angledef	[ 0	locks=0 ]	(	0	)
float3def	[ 0	locks=0 ]	(	0	0	0	)
vectordef	[ 0	locks=0 ]	(	0	0	0	)
normaldef	[ 0	locks=0 ]	(	0	0	0	)
pointdef	[ 0	locks=0 ]	(	0	0	0	)
directiondef	[ 0	locks=0 ]	(	1	0	0	)
float4def	[ 0	locks=0 ]	(	0	0	0	0	)
float9def	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
float16def	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
stringdef	[ 0	locks=0 ]	(	""	)
stringtype	[ 0	locks=0 ]	(	off	)
opfilter	[ 0	locks=0 ]	(	!!OBJ/LIGHT!!	)
filedef	[ 0	locks=0 ]	(	""	)
imagedef	[ 0	locks=0 ]	(	""	)
geometrydef	[ 0	locks=0 ]	(	""	)
colordef	[ 0	locks=0 ]	(	0	0	0	)
color4def	[ 0	locks=0 ]	(	0	0	0	0	)
}
0707070000010000000006660000000000000000010000001147726722100004300000000040shop/basicsmoke/shadowdensity.init type = parameter
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100004200000000635shop/basicsmoke/shadowdensity.def comment ""
position 3.02079 1.84746
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1185234802
  modify 1278606034
  author liza@chaos
  access 0777
}
color UT_Color RGB 1 1 0.6 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100004300000002700shop/basicsmoke/shadowdensity.parm {
version 0.8
parmname	[ 0	locks=0 ]	(	shadowdensity	)
parmlabel	[ 0	locks=0 ]	(	"Shadow Density"	)
showlabel	[ 0	locks=0 ]	(	"on"	)
parmtype	[ 0	locks=0 ]	(	"float"	)
separator1	[ 0	locks=0 ]	(	)
useasparmdefiner	[ 0	locks=0 ]	(	"off"	)
parmuniform	[ 0	locks=0 ]	(	"on"	)
usebound	[ 0	locks=0 ]	(	"off"	)
exportparm	[ 0	locks=0 ]	(	"off"	)
exportcontext	[ 0	locks=0 ]	(	surface	)
providemenu	[ 0	locks=0 ]	(	"off"	)
menuchoices	[ 0	locks=0 ]	(	""	)
separator2	[ 0	locks=0 ]	(	)
invisible	[ 0	locks=0 ]	(	"off"	)
joinnext	[ 0	locks=0 ]	(	"off"	)
disablewhen	[ 0	locks=0 ]	(	""	)
callback	[ 0	locks=0 ]	(	""	)
help	[ 0	locks=0 ]	(	""	)
separator3	[ 0	locks=0 ]	(	)
stdswitcher	[ 0	locks=0 ]	(	0	0	0	0	0	)
floatdef	[ 0	locks=0 ]	(	50	)
rangeflt	[ 0	locks=0 ]	(	0	100	)
intdef	[ 0	locks=0 ]	(	0	)
rangeint	[ 0	locks=0 ]	(	0	10	)
toggledef	[ 0	locks=0 ]	(	"off"	)
angledef	[ 0	locks=0 ]	(	0	)
float3def	[ 0	locks=0 ]	(	0	0	0	)
vectordef	[ 0	locks=0 ]	(	0	0	0	)
normaldef	[ 0	locks=0 ]	(	0	0	0	)
pointdef	[ 0	locks=0 ]	(	0	0	0	)
directiondef	[ 0	locks=0 ]	(	1	0	0	)
float4def	[ 0	locks=0 ]	(	0	0	0	0	)
float9def	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
float16def	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
stringdef	[ 0	locks=0 ]	(	""	)
stringtype	[ 0	locks=0 ]	(	off	)
opfilter	[ 0	locks=0 ]	(	!!OBJ/LIGHT!!	)
filedef	[ 0	locks=0 ]	(	""	)
imagedef	[ 0	locks=0 ]	(	""	)
geometrydef	[ 0	locks=0 ]	(	""	)
colordef	[ 0	locks=0 ]	(	0	0	0	)
color4def	[ 0	locks=0 ]	(	0	0	0	0	)
}
0707070000010000000006660000000000000000010000001147726722100003200000000040shop/basicsmoke/diff.init type = parameter
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100003100000000634shop/basicsmoke/diff.def comment ""
position -1.70095 3.989
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1185234802
  modify 1278606034
  author liza@chaos
  access 0777
}
color UT_Color RGB 1 1 0.6 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100003200000002717shop/basicsmoke/diff.parm {
version 0.8
parmname	[ 0	locks=0 ]	(	diff	)
parmlabel	[ 0	locks=0 ]	(	"Smoke Color"	)
showlabel	[ 0	locks=0 ]	(	"on"	)
parmtype	[ 0	locks=0 ]	(	"color"	)
separator1	[ 0	locks=0 ]	(	)
useasparmdefiner	[ 0	locks=0 ]	(	"off"	)
parmuniform	[ 0	locks=0 ]	(	"on"	)
usebound	[ 0	locks=0 ]	(	"off"	)
exportparm	[ 0	locks=0 ]	(	"off"	)
exportcontext	[ 0	locks=0 ]	(	surface	)
providemenu	[ 0	locks=0 ]	(	"off"	)
menuchoices	[ 0	locks=0 ]	(	""	)
separator2	[ 0	locks=0 ]	(	)
invisible	[ 0	locks=0 ]	(	"off"	)
joinnext	[ 0	locks=0 ]	(	"off"	)
disablewhen	[ 0	locks=0 ]	(	""	)
callback	[ 0	locks=0 ]	(	""	)
help	[ 0	locks=0 ]	(	""	)
separator3	[ 0	locks=0 ]	(	)
stdswitcher	[ 0	locks=0 ]	(	4	4	4	4	4	)
floatdef	[ 0	locks=0 ]	(	1	)
rangeflt	[ 0	locks=0 ]	(	0	1	)
intdef	[ 0	locks=0 ]	(	0	)
rangeint	[ 0	locks=0 ]	(	0	10	)
toggledef	[ 0	locks=0 ]	(	"off"	)
angledef	[ 0	locks=0 ]	(	0	)
float3def	[ 0	locks=0 ]	(	0	0	0	)
vectordef	[ 0	locks=0 ]	(	0	0	0	)
normaldef	[ 0	locks=0 ]	(	0	0	0	)
pointdef	[ 0	locks=0 ]	(	0	0	0	)
directiondef	[ 0	locks=0 ]	(	1	0	0	)
float4def	[ 0	locks=0 ]	(	0	0	0	0	)
float9def	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
float16def	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
stringdef	[ 0	locks=0 ]	(	""	)
stringtype	[ 0	locks=0 ]	(	off	)
opfilter	[ 0	locks=0 ]	(	!!OBJ/LIGHT!!	)
filedef	[ 0	locks=0 ]	(	""	)
imagedef	[ 0	locks=0 ]	(	""	)
geometrydef	[ 0	locks=0 ]	(	""	)
colordef	[ 0	locks=0 ]	(	0.699999988	0.670000017	0.629999995	)
color4def	[ 0	locks=0 ]	(	0	0	0	0	)
}
0707070000010000000006660000000000000000010000001147726722100003500000000036shop/basicsmoke/GT_Zero.init type = compare
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100003400000000660shop/basicsmoke/GT_Zero.def comment ""
position 3.45673 4.36907
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	density 0 1
}
stat
{
  create 1185235193
  modify 1278606034
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100003500000000177shop/basicsmoke/GT_Zero.parm {
version 0.8
cmp	[ 0	locks=0 ]	(	gt	)
input2	[ 0	locks=0 ]	(	0	)
input2_i	[ 0	locks=0 ]	(	0	)
input2_s	[ 0	locks=0 ]	(	""	)
}
0707070000010000000006660000000000000000010000001147726722100004700000000031shop/basicsmoke/if_densityNotZero.init type = if
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100004600000001066shop/basicsmoke/if_densityNotZero.def comment ""
position 4.94928 2.21953
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	GT_Zero 0 1
1 	newCf 0 1
2 	receiveshadows 0 1
3 	multiply1 0 1
4 	newOf 0 1
5 	density 0 1
6 	clouddensity 0 1
7 	shadowdensity 0 1
8 	newAf 0 1
}
stat
{
  create 1185235287
  modify 1278606279
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100004700000000063shop/basicsmoke/if_densityNotZero.parm {
version 0.8
condition	[ 0	locks=0 ]	(	"true"	)
}
0707070000010000000006660000000000000000010000001147726722100006200000000040shop/basicsmoke/if_densityNotZero/suboutput1.init type = suboutput
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100006100000001046shop/basicsmoke/if_densityNotZero/suboutput1.def comment ""
position 12.4294 1.76678
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	"" 0 1
1 	multiply2 0 1
2 	"" 0 1
3 	"" 0 1
4 	float2color 0 1
5 	"" 0 1
6 	"" 0 1
7 	"" 0 1
8 	calcOpacSubNet 0 1
9 	lighting1 1 1
}
stat
{
  create 1185235287
  modify 1278606282
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100006200000007076shop/basicsmoke/if_densityNotZero/suboutput1.parm {
version 0.8
name1	[ 0	locks=0 ]	(	""	)
label1	[ 0	locks=0 ]	(	""	)
name2	[ 0	locks=0 ]	(	""	)
label2	[ 0	locks=0 ]	(	""	)
name3	[ 0	locks=0 ]	(	""	)
label3	[ 0	locks=0 ]	(	""	)
name4	[ 0	locks=0 ]	(	""	)
label4	[ 0	locks=0 ]	(	""	)
name5	[ 0	locks=0 ]	(	""	)
label5	[ 0	locks=0 ]	(	""	)
name6	[ 0	locks=0 ]	(	""	)
label6	[ 0	locks=0 ]	(	""	)
name7	[ 0	locks=0 ]	(	""	)
label7	[ 0	locks=0 ]	(	""	)
name8	[ 0	locks=0 ]	(	""	)
label8	[ 0	locks=0 ]	(	""	)
name9	[ 0	locks=0 ]	(	""	)
label9	[ 0	locks=0 ]	(	""	)
name10	[ 0	locks=0 ]	(	""	)
label10	[ 0	locks=0 ]	(	""	)
name11	[ 0	locks=0 ]	(	""	)
label11	[ 0	locks=0 ]	(	""	)
name12	[ 0	locks=0 ]	(	""	)
label12	[ 0	locks=0 ]	(	""	)
name13	[ 0	locks=0 ]	(	""	)
label13	[ 0	locks=0 ]	(	""	)
name14	[ 0	locks=0 ]	(	""	)
label14	[ 0	locks=0 ]	(	""	)
name15	[ 0	locks=0 ]	(	""	)
label15	[ 0	locks=0 ]	(	""	)
name16	[ 0	locks=0 ]	(	""	)
label16	[ 0	locks=0 ]	(	""	)
name17	[ 0	locks=0 ]	(	""	)
label17	[ 0	locks=0 ]	(	""	)
name18	[ 0	locks=0 ]	(	""	)
label18	[ 0	locks=0 ]	(	""	)
name19	[ 0	locks=0 ]	(	""	)
label19	[ 0	locks=0 ]	(	""	)
name20	[ 0	locks=0 ]	(	""	)
label20	[ 0	locks=0 ]	(	""	)
name21	[ 0	locks=0 ]	(	""	)
label21	[ 0	locks=0 ]	(	""	)
name22	[ 0	locks=0 ]	(	""	)
label22	[ 0	locks=0 ]	(	""	)
name23	[ 0	locks=0 ]	(	""	)
label23	[ 0	locks=0 ]	(	""	)
name24	[ 0	locks=0 ]	(	""	)
label24	[ 0	locks=0 ]	(	""	)
name25	[ 0	locks=0 ]	(	""	)
label25	[ 0	locks=0 ]	(	""	)
name26	[ 0	locks=0 ]	(	""	)
label26	[ 0	locks=0 ]	(	""	)
name27	[ 0	locks=0 ]	(	""	)
label27	[ 0	locks=0 ]	(	""	)
name28	[ 0	locks=0 ]	(	""	)
label28	[ 0	locks=0 ]	(	""	)
name29	[ 0	locks=0 ]	(	""	)
label29	[ 0	locks=0 ]	(	""	)
name30	[ 0	locks=0 ]	(	""	)
label30	[ 0	locks=0 ]	(	""	)
name31	[ 0	locks=0 ]	(	""	)
label31	[ 0	locks=0 ]	(	""	)
name32	[ 0	locks=0 ]	(	""	)
label32	[ 0	locks=0 ]	(	""	)
name33	[ 0	locks=0 ]	(	""	)
label33	[ 0	locks=0 ]	(	""	)
name34	[ 0	locks=0 ]	(	""	)
label34	[ 0	locks=0 ]	(	""	)
name35	[ 0	locks=0 ]	(	""	)
label35	[ 0	locks=0 ]	(	""	)
name36	[ 0	locks=0 ]	(	""	)
label36	[ 0	locks=0 ]	(	""	)
name37	[ 0	locks=0 ]	(	""	)
label37	[ 0	locks=0 ]	(	""	)
name38	[ 0	locks=0 ]	(	""	)
label38	[ 0	locks=0 ]	(	""	)
name39	[ 0	locks=0 ]	(	""	)
label39	[ 0	locks=0 ]	(	""	)
name40	[ 0	locks=0 ]	(	""	)
label40	[ 0	locks=0 ]	(	""	)
name41	[ 0	locks=0 ]	(	""	)
label41	[ 0	locks=0 ]	(	""	)
name42	[ 0	locks=0 ]	(	""	)
label42	[ 0	locks=0 ]	(	""	)
name43	[ 0	locks=0 ]	(	""	)
label43	[ 0	locks=0 ]	(	""	)
name44	[ 0	locks=0 ]	(	""	)
label44	[ 0	locks=0 ]	(	""	)
name45	[ 0	locks=0 ]	(	""	)
label45	[ 0	locks=0 ]	(	""	)
name46	[ 0	locks=0 ]	(	""	)
label46	[ 0	locks=0 ]	(	""	)
name47	[ 0	locks=0 ]	(	""	)
label47	[ 0	locks=0 ]	(	""	)
name48	[ 0	locks=0 ]	(	""	)
label48	[ 0	locks=0 ]	(	""	)
name49	[ 0	locks=0 ]	(	""	)
label49	[ 0	locks=0 ]	(	""	)
name50	[ 0	locks=0 ]	(	""	)
label50	[ 0	locks=0 ]	(	""	)
name51	[ 0	locks=0 ]	(	""	)
label51	[ 0	locks=0 ]	(	""	)
name52	[ 0	locks=0 ]	(	""	)
label52	[ 0	locks=0 ]	(	""	)
name53	[ 0	locks=0 ]	(	""	)
label53	[ 0	locks=0 ]	(	""	)
name54	[ 0	locks=0 ]	(	""	)
label54	[ 0	locks=0 ]	(	""	)
name55	[ 0	locks=0 ]	(	""	)
label55	[ 0	locks=0 ]	(	""	)
name56	[ 0	locks=0 ]	(	""	)
label56	[ 0	locks=0 ]	(	""	)
name57	[ 0	locks=0 ]	(	""	)
label57	[ 0	locks=0 ]	(	""	)
name58	[ 0	locks=0 ]	(	""	)
label58	[ 0	locks=0 ]	(	""	)
name59	[ 0	locks=0 ]	(	""	)
label59	[ 0	locks=0 ]	(	""	)
name60	[ 0	locks=0 ]	(	""	)
label60	[ 0	locks=0 ]	(	""	)
name61	[ 0	locks=0 ]	(	""	)
label61	[ 0	locks=0 ]	(	""	)
name62	[ 0	locks=0 ]	(	""	)
label62	[ 0	locks=0 ]	(	""	)
name63	[ 0	locks=0 ]	(	""	)
label63	[ 0	locks=0 ]	(	""	)
name64	[ 0	locks=0 ]	(	""	)
label64	[ 0	locks=0 ]	(	""	)
}
0707070000010000000006660000000000000000010000001147726722100006100000000037shop/basicsmoke/if_densityNotZero/subinput1.init type = subinput
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100006000000000641shop/basicsmoke/if_densityNotZero/subinput1.def comment ""
position 6.86407 1.61203
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1185235287
  modify 1278606278
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100006100000000020shop/basicsmoke/if_densityNotZero/subinput1.parm {
version 0.8
}
0707070000010000000006660000000000000000010000001147726722100006400000000042shop/basicsmoke/if_densityNotZero/illuminance1.init type = illuminance
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100006300000001026shop/basicsmoke/if_densityNotZero/illuminance1.def vopversion 1
comment ""
position 8.49026 3.29967
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	P 0 1
1 	Y_axis 0 1
2 	degtorad1 0 1
3 	"" 0 1
4 	"" 0 1
5 	"" 0 1
6 	subinput1 1 1
7 	subinput1 2 1
}
stat
{
  create 1185233346
  modify 1278606279
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100006400000000020shop/basicsmoke/if_densityNotZero/illuminance1.parm {
version 0.8
}
0707070000010000000006660000000000000000010000001147726722100007700000000040shop/basicsmoke/if_densityNotZero/illuminance1/suboutput1.init type = suboutput
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100007600000000747shop/basicsmoke/if_densityNotZero/illuminance1/suboutput1.def comment ""
position 6.68223 1.18461
cachesize 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 off exposed on lowdetail off mediumdetail on highdetail off
inputs
{
0 	"" 0 1
1 	"" 0 1
2 	"" 0 1
3 	"" 0 1
4 	"" 0 1
5 	"" 0 1
6 	add1 0 1
}
stat
{
  create 1185233346
  modify 1278606279
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100007700000007076shop/basicsmoke/if_densityNotZero/illuminance1/suboutput1.parm {
version 0.8
name1	[ 0	locks=0 ]	(	""	)
label1	[ 0	locks=0 ]	(	""	)
name2	[ 0	locks=0 ]	(	""	)
label2	[ 0	locks=0 ]	(	""	)
name3	[ 0	locks=0 ]	(	""	)
label3	[ 0	locks=0 ]	(	""	)
name4	[ 0	locks=0 ]	(	""	)
label4	[ 0	locks=0 ]	(	""	)
name5	[ 0	locks=0 ]	(	""	)
label5	[ 0	locks=0 ]	(	""	)
name6	[ 0	locks=0 ]	(	""	)
label6	[ 0	locks=0 ]	(	""	)
name7	[ 0	locks=0 ]	(	""	)
label7	[ 0	locks=0 ]	(	""	)
name8	[ 0	locks=0 ]	(	""	)
label8	[ 0	locks=0 ]	(	""	)
name9	[ 0	locks=0 ]	(	""	)
label9	[ 0	locks=0 ]	(	""	)
name10	[ 0	locks=0 ]	(	""	)
label10	[ 0	locks=0 ]	(	""	)
name11	[ 0	locks=0 ]	(	""	)
label11	[ 0	locks=0 ]	(	""	)
name12	[ 0	locks=0 ]	(	""	)
label12	[ 0	locks=0 ]	(	""	)
name13	[ 0	locks=0 ]	(	""	)
label13	[ 0	locks=0 ]	(	""	)
name14	[ 0	locks=0 ]	(	""	)
label14	[ 0	locks=0 ]	(	""	)
name15	[ 0	locks=0 ]	(	""	)
label15	[ 0	locks=0 ]	(	""	)
name16	[ 0	locks=0 ]	(	""	)
label16	[ 0	locks=0 ]	(	""	)
name17	[ 0	locks=0 ]	(	""	)
label17	[ 0	locks=0 ]	(	""	)
name18	[ 0	locks=0 ]	(	""	)
label18	[ 0	locks=0 ]	(	""	)
name19	[ 0	locks=0 ]	(	""	)
label19	[ 0	locks=0 ]	(	""	)
name20	[ 0	locks=0 ]	(	""	)
label20	[ 0	locks=0 ]	(	""	)
name21	[ 0	locks=0 ]	(	""	)
label21	[ 0	locks=0 ]	(	""	)
name22	[ 0	locks=0 ]	(	""	)
label22	[ 0	locks=0 ]	(	""	)
name23	[ 0	locks=0 ]	(	""	)
label23	[ 0	locks=0 ]	(	""	)
name24	[ 0	locks=0 ]	(	""	)
label24	[ 0	locks=0 ]	(	""	)
name25	[ 0	locks=0 ]	(	""	)
label25	[ 0	locks=0 ]	(	""	)
name26	[ 0	locks=0 ]	(	""	)
label26	[ 0	locks=0 ]	(	""	)
name27	[ 0	locks=0 ]	(	""	)
label27	[ 0	locks=0 ]	(	""	)
name28	[ 0	locks=0 ]	(	""	)
label28	[ 0	locks=0 ]	(	""	)
name29	[ 0	locks=0 ]	(	""	)
label29	[ 0	locks=0 ]	(	""	)
name30	[ 0	locks=0 ]	(	""	)
label30	[ 0	locks=0 ]	(	""	)
name31	[ 0	locks=0 ]	(	""	)
label31	[ 0	locks=0 ]	(	""	)
name32	[ 0	locks=0 ]	(	""	)
label32	[ 0	locks=0 ]	(	""	)
name33	[ 0	locks=0 ]	(	""	)
label33	[ 0	locks=0 ]	(	""	)
name34	[ 0	locks=0 ]	(	""	)
label34	[ 0	locks=0 ]	(	""	)
name35	[ 0	locks=0 ]	(	""	)
label35	[ 0	locks=0 ]	(	""	)
name36	[ 0	locks=0 ]	(	""	)
label36	[ 0	locks=0 ]	(	""	)
name37	[ 0	locks=0 ]	(	""	)
label37	[ 0	locks=0 ]	(	""	)
name38	[ 0	locks=0 ]	(	""	)
label38	[ 0	locks=0 ]	(	""	)
name39	[ 0	locks=0 ]	(	""	)
label39	[ 0	locks=0 ]	(	""	)
name40	[ 0	locks=0 ]	(	""	)
label40	[ 0	locks=0 ]	(	""	)
name41	[ 0	locks=0 ]	(	""	)
label41	[ 0	locks=0 ]	(	""	)
name42	[ 0	locks=0 ]	(	""	)
label42	[ 0	locks=0 ]	(	""	)
name43	[ 0	locks=0 ]	(	""	)
label43	[ 0	locks=0 ]	(	""	)
name44	[ 0	locks=0 ]	(	""	)
label44	[ 0	locks=0 ]	(	""	)
name45	[ 0	locks=0 ]	(	""	)
label45	[ 0	locks=0 ]	(	""	)
name46	[ 0	locks=0 ]	(	""	)
label46	[ 0	locks=0 ]	(	""	)
name47	[ 0	locks=0 ]	(	""	)
label47	[ 0	locks=0 ]	(	""	)
name48	[ 0	locks=0 ]	(	""	)
label48	[ 0	locks=0 ]	(	""	)
name49	[ 0	locks=0 ]	(	""	)
label49	[ 0	locks=0 ]	(	""	)
name50	[ 0	locks=0 ]	(	""	)
label50	[ 0	locks=0 ]	(	""	)
name51	[ 0	locks=0 ]	(	""	)
label51	[ 0	locks=0 ]	(	""	)
name52	[ 0	locks=0 ]	(	""	)
label52	[ 0	locks=0 ]	(	""	)
name53	[ 0	locks=0 ]	(	""	)
label53	[ 0	locks=0 ]	(	""	)
name54	[ 0	locks=0 ]	(	""	)
label54	[ 0	locks=0 ]	(	""	)
name55	[ 0	locks=0 ]	(	""	)
label55	[ 0	locks=0 ]	(	""	)
name56	[ 0	locks=0 ]	(	""	)
label56	[ 0	locks=0 ]	(	""	)
name57	[ 0	locks=0 ]	(	""	)
label57	[ 0	locks=0 ]	(	""	)
name58	[ 0	locks=0 ]	(	""	)
label58	[ 0	locks=0 ]	(	""	)
name59	[ 0	locks=0 ]	(	""	)
label59	[ 0	locks=0 ]	(	""	)
name60	[ 0	locks=0 ]	(	""	)
label60	[ 0	locks=0 ]	(	""	)
name61	[ 0	locks=0 ]	(	""	)
label61	[ 0	locks=0 ]	(	""	)
name62	[ 0	locks=0 ]	(	""	)
label62	[ 0	locks=0 ]	(	""	)
name63	[ 0	locks=0 ]	(	""	)
label63	[ 0	locks=0 ]	(	""	)
name64	[ 0	locks=0 ]	(	""	)
label64	[ 0	locks=0 ]	(	""	)
}
0707070000010000000006660000000000000000010000001147726722100007600000000037shop/basicsmoke/if_densityNotZero/illuminance1/subinput1.init type = subinput
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100007500000000643shop/basicsmoke/if_densityNotZero/illuminance1/subinput1.def comment ""
position 0.890671 0.948812
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1185233346
  modify 1278606278
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100007600000000020shop/basicsmoke/if_densityNotZero/illuminance1/subinput1.parm {
version 0.8
}
0707070000010000000006660000000000000000010000001147726722100006700000000035shop/basicsmoke/if_densityNotZero/illuminance1/Cl.init type = global
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100006600000000637shop/basicsmoke/if_densityNotZero/illuminance1/Cl.def comment ""
position 2.18789 1.29546
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1185235885
  modify 1185235894
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.6 0.4 1 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100006700000000162shop/basicsmoke/if_densityNotZero/illuminance1/Cl.parm {
version 0.8
contexttype	[ 0	locks=0 ]	(	surface	)
usemenu	[ 0	locks=0 ]	(	"on"	)
varname	[ 0	locks=0 ]	(	Cl	)
}
0707070000010000000006660000000000000000010000001147726722100007100000000032shop/basicsmoke/if_densityNotZero/illuminance1/add1.init type = add
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100007000000000707shop/basicsmoke/if_densityNotZero/illuminance1/add1.def comment ""
position 5.19876 0.986172
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	if_doShadows 0 1
1 	subinput1 6 1
}
stat
{
  create 1185235971
  modify 1278606279
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100007100000000020shop/basicsmoke/if_densityNotZero/illuminance1/add1.parm {
version 0.8
}
0707070000010000000006660000000000000000010000001147726722100010100000000031shop/basicsmoke/if_densityNotZero/illuminance1/if_doShadows.init type = if
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100010000000000674shop/basicsmoke/if_densityNotZero/illuminance1/if_doShadows.def comment ""
position 3.72287 1.53622
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	subinput1 7 1
1 	Cl 0 1
}
stat
{
  create 1185395451
  modify 1278606279
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100010100000000063shop/basicsmoke/if_densityNotZero/illuminance1/if_doShadows.parm {
version 0.8
condition	[ 0	locks=0 ]	(	"true"	)
}
0707070000010000000006660000000000000000010000001147726722100011400000000040shop/basicsmoke/if_densityNotZero/illuminance1/if_doShadows/suboutput1.init type = suboutput
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100011300000000671shop/basicsmoke/if_densityNotZero/illuminance1/if_doShadows/suboutput1.def comment ""
position 2.94575 0.892354
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	"" 0 1
1 	shadow1 0 1
}
stat
{
  create 1185395451
  modify 1278606279
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100011400000007076shop/basicsmoke/if_densityNotZero/illuminance1/if_doShadows/suboutput1.parm {
version 0.8
name1	[ 0	locks=0 ]	(	""	)
label1	[ 0	locks=0 ]	(	""	)
name2	[ 0	locks=0 ]	(	""	)
label2	[ 0	locks=0 ]	(	""	)
name3	[ 0	locks=0 ]	(	""	)
label3	[ 0	locks=0 ]	(	""	)
name4	[ 0	locks=0 ]	(	""	)
label4	[ 0	locks=0 ]	(	""	)
name5	[ 0	locks=0 ]	(	""	)
label5	[ 0	locks=0 ]	(	""	)
name6	[ 0	locks=0 ]	(	""	)
label6	[ 0	locks=0 ]	(	""	)
name7	[ 0	locks=0 ]	(	""	)
label7	[ 0	locks=0 ]	(	""	)
name8	[ 0	locks=0 ]	(	""	)
label8	[ 0	locks=0 ]	(	""	)
name9	[ 0	locks=0 ]	(	""	)
label9	[ 0	locks=0 ]	(	""	)
name10	[ 0	locks=0 ]	(	""	)
label10	[ 0	locks=0 ]	(	""	)
name11	[ 0	locks=0 ]	(	""	)
label11	[ 0	locks=0 ]	(	""	)
name12	[ 0	locks=0 ]	(	""	)
label12	[ 0	locks=0 ]	(	""	)
name13	[ 0	locks=0 ]	(	""	)
label13	[ 0	locks=0 ]	(	""	)
name14	[ 0	locks=0 ]	(	""	)
label14	[ 0	locks=0 ]	(	""	)
name15	[ 0	locks=0 ]	(	""	)
label15	[ 0	locks=0 ]	(	""	)
name16	[ 0	locks=0 ]	(	""	)
label16	[ 0	locks=0 ]	(	""	)
name17	[ 0	locks=0 ]	(	""	)
label17	[ 0	locks=0 ]	(	""	)
name18	[ 0	locks=0 ]	(	""	)
label18	[ 0	locks=0 ]	(	""	)
name19	[ 0	locks=0 ]	(	""	)
label19	[ 0	locks=0 ]	(	""	)
name20	[ 0	locks=0 ]	(	""	)
label20	[ 0	locks=0 ]	(	""	)
name21	[ 0	locks=0 ]	(	""	)
label21	[ 0	locks=0 ]	(	""	)
name22	[ 0	locks=0 ]	(	""	)
label22	[ 0	locks=0 ]	(	""	)
name23	[ 0	locks=0 ]	(	""	)
label23	[ 0	locks=0 ]	(	""	)
name24	[ 0	locks=0 ]	(	""	)
label24	[ 0	locks=0 ]	(	""	)
name25	[ 0	locks=0 ]	(	""	)
label25	[ 0	locks=0 ]	(	""	)
name26	[ 0	locks=0 ]	(	""	)
label26	[ 0	locks=0 ]	(	""	)
name27	[ 0	locks=0 ]	(	""	)
label27	[ 0	locks=0 ]	(	""	)
name28	[ 0	locks=0 ]	(	""	)
label28	[ 0	locks=0 ]	(	""	)
name29	[ 0	locks=0 ]	(	""	)
label29	[ 0	locks=0 ]	(	""	)
name30	[ 0	locks=0 ]	(	""	)
label30	[ 0	locks=0 ]	(	""	)
name31	[ 0	locks=0 ]	(	""	)
label31	[ 0	locks=0 ]	(	""	)
name32	[ 0	locks=0 ]	(	""	)
label32	[ 0	locks=0 ]	(	""	)
name33	[ 0	locks=0 ]	(	""	)
label33	[ 0	locks=0 ]	(	""	)
name34	[ 0	locks=0 ]	(	""	)
label34	[ 0	locks=0 ]	(	""	)
name35	[ 0	locks=0 ]	(	""	)
label35	[ 0	locks=0 ]	(	""	)
name36	[ 0	locks=0 ]	(	""	)
label36	[ 0	locks=0 ]	(	""	)
name37	[ 0	locks=0 ]	(	""	)
label37	[ 0	locks=0 ]	(	""	)
name38	[ 0	locks=0 ]	(	""	)
label38	[ 0	locks=0 ]	(	""	)
name39	[ 0	locks=0 ]	(	""	)
label39	[ 0	locks=0 ]	(	""	)
name40	[ 0	locks=0 ]	(	""	)
label40	[ 0	locks=0 ]	(	""	)
name41	[ 0	locks=0 ]	(	""	)
label41	[ 0	locks=0 ]	(	""	)
name42	[ 0	locks=0 ]	(	""	)
label42	[ 0	locks=0 ]	(	""	)
name43	[ 0	locks=0 ]	(	""	)
label43	[ 0	locks=0 ]	(	""	)
name44	[ 0	locks=0 ]	(	""	)
label44	[ 0	locks=0 ]	(	""	)
name45	[ 0	locks=0 ]	(	""	)
label45	[ 0	locks=0 ]	(	""	)
name46	[ 0	locks=0 ]	(	""	)
label46	[ 0	locks=0 ]	(	""	)
name47	[ 0	locks=0 ]	(	""	)
label47	[ 0	locks=0 ]	(	""	)
name48	[ 0	locks=0 ]	(	""	)
label48	[ 0	locks=0 ]	(	""	)
name49	[ 0	locks=0 ]	(	""	)
label49	[ 0	locks=0 ]	(	""	)
name50	[ 0	locks=0 ]	(	""	)
label50	[ 0	locks=0 ]	(	""	)
name51	[ 0	locks=0 ]	(	""	)
label51	[ 0	locks=0 ]	(	""	)
name52	[ 0	locks=0 ]	(	""	)
label52	[ 0	locks=0 ]	(	""	)
name53	[ 0	locks=0 ]	(	""	)
label53	[ 0	locks=0 ]	(	""	)
name54	[ 0	locks=0 ]	(	""	)
label54	[ 0	locks=0 ]	(	""	)
name55	[ 0	locks=0 ]	(	""	)
label55	[ 0	locks=0 ]	(	""	)
name56	[ 0	locks=0 ]	(	""	)
label56	[ 0	locks=0 ]	(	""	)
name57	[ 0	locks=0 ]	(	""	)
label57	[ 0	locks=0 ]	(	""	)
name58	[ 0	locks=0 ]	(	""	)
label58	[ 0	locks=0 ]	(	""	)
name59	[ 0	locks=0 ]	(	""	)
label59	[ 0	locks=0 ]	(	""	)
name60	[ 0	locks=0 ]	(	""	)
label60	[ 0	locks=0 ]	(	""	)
name61	[ 0	locks=0 ]	(	""	)
label61	[ 0	locks=0 ]	(	""	)
name62	[ 0	locks=0 ]	(	""	)
label62	[ 0	locks=0 ]	(	""	)
name63	[ 0	locks=0 ]	(	""	)
label63	[ 0	locks=0 ]	(	""	)
name64	[ 0	locks=0 ]	(	""	)
label64	[ 0	locks=0 ]	(	""	)
}
0707070000010000000006660000000000000000010000001147726722100011300000000037shop/basicsmoke/if_densityNotZero/illuminance1/if_doShadows/subinput1.init type = subinput
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100011200000000625shop/basicsmoke/if_densityNotZero/illuminance1/if_doShadows/subinput1.def comment ""
position 0 1
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1185395451
  modify 1278606278
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100011300000000020shop/basicsmoke/if_densityNotZero/illuminance1/if_doShadows/subinput1.parm {
version 0.8
}
0707070000010000000006660000000000000000010000001147726722100011100000000035shop/basicsmoke/if_densityNotZero/illuminance1/if_doShadows/shadow1.init type = shadow
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100011000000000662shop/basicsmoke/if_densityNotZero/illuminance1/if_doShadows/shadow1.def comment ""
position 1.40083 1.02296
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	subinput1 1 1
}
stat
{
  create 1185235855
  modify 1278606278
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100011100000000063shop/basicsmoke/if_densityNotZero/illuminance1/if_doShadows/shadow1.parm {
version 0.8
lightcolor	[ 0	locks=0 ]	(	0	0	0	)
}
0707070000010000000006660000000000000000010000001147726722100005600000000041shop/basicsmoke/if_densityNotZero/Y_axis.init type = floattovec
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100005500000000637shop/basicsmoke/if_densityNotZero/Y_axis.def comment ""
position 6.85745 3.88263
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1185233364
  modify 1197585905
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.6 0.4 1 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100005600000000331shop/basicsmoke/if_densityNotZero/Y_axis.parm {
version 0.8
signature	[ 0	locks=0 ]	(	default	)
fval1	[ 0	locks=0 ]	(	0	)
fval2	[ 0	locks=0 ]	(	1	)
fval3	[ 0	locks=0 ]	(	0	)
fval1_uv	[ 0	locks=0 ]	(	0	)
fval2_uv	[ 0	locks=0 ]	(	0	)
fval3_uv	[ 0	locks=0 ]	(	0	)
}
0707070000010000000006660000000000000000010000001147726722100006100000000037shop/basicsmoke/if_densityNotZero/multiply2.init type = multiply
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100006000000000734shop/basicsmoke/if_densityNotZero/multiply2.def comment ""
position 10.0438 2.02737
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	illuminance1 0 1
1 	subinput1 3 1
2 	calcOpacSubNet 0 1
}
stat
{
  create 1185238925
  modify 1278606280
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100006100000000020shop/basicsmoke/if_densityNotZero/multiply2.parm {
version 0.8
}
0707070000010000000006660000000000000000010000001147726722100005100000000035shop/basicsmoke/if_densityNotZero/P.init type = global
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100005000000000637shop/basicsmoke/if_densityNotZero/P.def comment ""
position 7.02989 4.72584
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1185240078
  modify 1197585903
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.6 0.4 1 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100005100000000161shop/basicsmoke/if_densityNotZero/P.parm {
version 0.8
contexttype	[ 0	locks=0 ]	(	surface	)
usemenu	[ 0	locks=0 ]	(	"on"	)
varname	[ 0	locks=0 ]	(	P	)
}
0707070000010000000006660000000000000000010000001147726722100006600000000035shop/basicsmoke/if_densityNotZero/calcOpacSubNet.init type = subnet
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100006500000000723shop/basicsmoke/if_densityNotZero/calcOpacSubNet.def comment ""
position 8.4956 1.37277
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	subinput1 5 1
1 	subinput1 6 1
2 	subinput1 7 1
}
stat
{
  create 1185241036
  modify 1278606279
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100006600000000020shop/basicsmoke/if_densityNotZero/calcOpacSubNet.parm {
version 0.8
}
0707070000010000000006660000000000000000010000001147726722100007600000000035shop/basicsmoke/if_densityNotZero/calcOpacSubNet/twoway1.init type = twoway
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100007500000000735shop/basicsmoke/if_densityNotZero/calcOpacSubNet/twoway1.def comment ""
position 3.16893 1.24572
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	isshadow1 0 1
1 	den_x_shadDen 0 1
2 	den_x_smokeDen 0 1
}
stat
{
  create 1185236198
  modify 1278606279
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100007600000001265shop/basicsmoke/if_densityNotZero/calcOpacSubNet/twoway1.parm {
version 0.8
signature	[ 0	locks=0 ]	(	default	)
condtype	[ 0	locks=0 ]	(	0	)
g0	[ 0	locks=0 ]	(	0	0	0	)
input2	[ 0	locks=0 ]	(	0	)
input2_i	[ 0	locks=0 ]	(	0	)
input2_s	[ 0	locks=0 ]	(	""	)
input2_v	[ 0	locks=0 ]	(	0	0	0	)
input2_p	[ 0	locks=0 ]	(	0	0	0	)
input2_n	[ 0	locks=0 ]	(	0	0	0	)
input2_c	[ 0	locks=0 ]	(	1	1	1	)
input2_v4	[ 0	locks=0 ]	(	0	0	0	0	)
input2_m3	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
input2_m	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
input2_uf	[ 0	locks=0 ]	(	0	)
input2_uv	[ 0	locks=0 ]	(	0	0	0	)
input2_up	[ 0	locks=0 ]	(	0	0	0	)
input2_un	[ 0	locks=0 ]	(	0	0	0	)
input2_uc	[ 0	locks=0 ]	(	0	0	0	)
input2_um	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
}
0707070000010000000006660000000000000000010000001147726722100010500000000037shop/basicsmoke/if_densityNotZero/calcOpacSubNet/den_x_smokeDen.init type = multiply
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100010400000000704shop/basicsmoke/if_densityNotZero/calcOpacSubNet/den_x_smokeDen.def comment ""
position 1.10813 -1.43611
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	subinput1 0 1
1 	subinput1 1 1
}
stat
{
  create 1185236318
  modify 1278606278
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100010500000000020shop/basicsmoke/if_densityNotZero/calcOpacSubNet/den_x_smokeDen.parm {
version 0.8
}
0707070000010000000006660000000000000000010000001147726722100010400000000037shop/basicsmoke/if_densityNotZero/calcOpacSubNet/den_x_shadDen.init type = multiply
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100010300000000705shop/basicsmoke/if_densityNotZero/calcOpacSubNet/den_x_shadDen.def comment ""
position 0.411852 0.343373
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	subinput1 0 1
1 	subinput1 2 1
}
stat
{
  create 1185236318
  modify 1278606278
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100010400000000020shop/basicsmoke/if_densityNotZero/calcOpacSubNet/den_x_shadDen.parm {
version 0.8
}
0707070000010000000006660000000000000000010000001147726722100010000000000037shop/basicsmoke/if_densityNotZero/calcOpacSubNet/isshadow1.init type = isshadow
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100007700000000641shop/basicsmoke/if_densityNotZero/calcOpacSubNet/isshadow1.def comment ""
position 1.40292 2.05188
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1185237691
  modify 1185237691
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100010000000000020shop/basicsmoke/if_densityNotZero/calcOpacSubNet/isshadow1.parm {
version 0.8
}
0707070000010000000006660000000000000000010000001147726722100007300000000032shop/basicsmoke/if_densityNotZero/calcOpacSubNet/max0.init type = max
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100007200000000676shop/basicsmoke/if_densityNotZero/calcOpacSubNet/max0.def comment ""
position 4.44441 -0.459278
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	twoway1 0 1
1 	zero 0 1
}
stat
{
  create 1185237909
  modify 1278606278
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100007300000000020shop/basicsmoke/if_densityNotZero/calcOpacSubNet/max0.parm {
version 0.8
}
0707070000010000000006660000000000000000010000001147726722100007300000000037shop/basicsmoke/if_densityNotZero/calcOpacSubNet/zero.init type = constant
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100007200000000635shop/basicsmoke/if_densityNotZero/calcOpacSubNet/zero.def comment ""
position 3.04112 -0.337492
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1185237935
  modify 1185237965
  author liza@chaos
  access 0777
}
color UT_Color RGB 0 0 0 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100007300000001464shop/basicsmoke/if_densityNotZero/calcOpacSubNet/zero.parm {
version 0.8
consttype	[ 0	locks=0 ]	(	"float"	)
parmuniform	[ 0	locks=0 ]	(	"on"	)
constname	[ 0	locks=0 ]	(	zero	)
constlabel	[ 0	locks=0 ]	(	zero	)
stdswitcher	[ 0	locks=0 ]	(	0	0	0	0	0	)
floatdef	[ 0	locks=0 ]	(	0	)
intdef	[ 0	locks=0 ]	(	0	)
toggledef	[ 0	locks=0 ]	(	"off"	)
angledef	[ 0	locks=0 ]	(	0	)
float3def	[ 0	locks=0 ]	(	0	0	0	)
vectordef	[ 0	locks=0 ]	(	0	0	0	)
normaldef	[ 0	locks=0 ]	(	0	0	0	)
pointdef	[ 0	locks=0 ]	(	0	0	0	)
directiondef	[ 0	locks=0 ]	(	1	0	0	)
float4def	[ 0	locks=0 ]	(	0	0	0	0	)
float9def	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
float16def	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
stringdef	[ 0	locks=0 ]	(	""	)
filedef	[ 0	locks=0 ]	(	""	)
imagedef	[ 0	locks=0 ]	(	""	)
geometrydef	[ 0	locks=0 ]	(	""	)
colordef	[ 0	locks=0 ]	(	0	0	0	)
color4def	[ 0	locks=0 ]	(	0	0	0	0	)
}
0707070000010000000006660000000000000000010000001147726722100007300000000032shop/basicsmoke/if_densityNotZero/calcOpacSubNet/exp1.init type = exp
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100007200000000663shop/basicsmoke/if_densityNotZero/calcOpacSubNet/exp1.def comment ""
position 8.74395 -1.27296
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	multiply1 0 1
}
stat
{
  create 1185238038
  modify 1278606278
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100007300000000625shop/basicsmoke/if_densityNotZero/calcOpacSubNet/exp1.parm {
version 0.8
signature	[ 0	locks=0 ]	(	default	)
gv	[ 0	locks=0 ]	(	0	0	)
val	[ 0	locks=0 ]	(	1	)
val_v	[ 0	locks=0 ]	(	1	1	1	)
val_p	[ 0	locks=0 ]	(	1	1	1	)
val_n	[ 0	locks=0 ]	(	1	1	1	)
val_c	[ 0	locks=0 ]	(	1	1	1	)
val_v4	[ 0	locks=0 ]	(	1	1	1	1	)
val_uf	[ 0	locks=0 ]	(	1	)
val_uv	[ 0	locks=0 ]	(	1	1	1	)
val_up	[ 0	locks=0 ]	(	1	1	1	)
val_un	[ 0	locks=0 ]	(	1	1	1	)
val_uc	[ 0	locks=0 ]	(	1	1	1	)
}
0707070000010000000006660000000000000000010000001147726722100010000000000037shop/basicsmoke/if_densityNotZero/calcOpacSubNet/multiply1.init type = multiply
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100007700000000675shop/basicsmoke/if_densityNotZero/calcOpacSubNet/multiply1.def comment ""
position 7.36711 -2.00131
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	negate1 0 1
1 	dPdz 0 1
}
stat
{
  create 1185238093
  modify 1278606278
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100010000000000020shop/basicsmoke/if_densityNotZero/calcOpacSubNet/multiply1.parm {
version 0.8
}
0707070000010000000006660000000000000000010000001147726722100007600000000035shop/basicsmoke/if_densityNotZero/calcOpacSubNet/negate1.init type = negate
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100007500000000656shop/basicsmoke/if_densityNotZero/calcOpacSubNet/negate1.def comment ""
position 5.86333 -1.05807
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	max0 0 1
}
stat
{
  create 1185238105
  modify 1278606278
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100007600000000056shop/basicsmoke/if_densityNotZero/calcOpacSubNet/negate1.parm {
version 0.8
signature	[ 0	locks=0 ]	(	f	)
}
0707070000010000000006660000000000000000010000001147726722100010100000000040shop/basicsmoke/if_densityNotZero/calcOpacSubNet/suboutput1.init type = suboutput
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100010000000000663shop/basicsmoke/if_densityNotZero/calcOpacSubNet/suboutput1.def comment ""
position 12.1704 -1.35502
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	complement1 0 1
}
stat
{
  create 1185241036
  modify 1278606279
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100010100000007076shop/basicsmoke/if_densityNotZero/calcOpacSubNet/suboutput1.parm {
version 0.8
name1	[ 0	locks=0 ]	(	""	)
label1	[ 0	locks=0 ]	(	""	)
name2	[ 0	locks=0 ]	(	""	)
label2	[ 0	locks=0 ]	(	""	)
name3	[ 0	locks=0 ]	(	""	)
label3	[ 0	locks=0 ]	(	""	)
name4	[ 0	locks=0 ]	(	""	)
label4	[ 0	locks=0 ]	(	""	)
name5	[ 0	locks=0 ]	(	""	)
label5	[ 0	locks=0 ]	(	""	)
name6	[ 0	locks=0 ]	(	""	)
label6	[ 0	locks=0 ]	(	""	)
name7	[ 0	locks=0 ]	(	""	)
label7	[ 0	locks=0 ]	(	""	)
name8	[ 0	locks=0 ]	(	""	)
label8	[ 0	locks=0 ]	(	""	)
name9	[ 0	locks=0 ]	(	""	)
label9	[ 0	locks=0 ]	(	""	)
name10	[ 0	locks=0 ]	(	""	)
label10	[ 0	locks=0 ]	(	""	)
name11	[ 0	locks=0 ]	(	""	)
label11	[ 0	locks=0 ]	(	""	)
name12	[ 0	locks=0 ]	(	""	)
label12	[ 0	locks=0 ]	(	""	)
name13	[ 0	locks=0 ]	(	""	)
label13	[ 0	locks=0 ]	(	""	)
name14	[ 0	locks=0 ]	(	""	)
label14	[ 0	locks=0 ]	(	""	)
name15	[ 0	locks=0 ]	(	""	)
label15	[ 0	locks=0 ]	(	""	)
name16	[ 0	locks=0 ]	(	""	)
label16	[ 0	locks=0 ]	(	""	)
name17	[ 0	locks=0 ]	(	""	)
label17	[ 0	locks=0 ]	(	""	)
name18	[ 0	locks=0 ]	(	""	)
label18	[ 0	locks=0 ]	(	""	)
name19	[ 0	locks=0 ]	(	""	)
label19	[ 0	locks=0 ]	(	""	)
name20	[ 0	locks=0 ]	(	""	)
label20	[ 0	locks=0 ]	(	""	)
name21	[ 0	locks=0 ]	(	""	)
label21	[ 0	locks=0 ]	(	""	)
name22	[ 0	locks=0 ]	(	""	)
label22	[ 0	locks=0 ]	(	""	)
name23	[ 0	locks=0 ]	(	""	)
label23	[ 0	locks=0 ]	(	""	)
name24	[ 0	locks=0 ]	(	""	)
label24	[ 0	locks=0 ]	(	""	)
name25	[ 0	locks=0 ]	(	""	)
label25	[ 0	locks=0 ]	(	""	)
name26	[ 0	locks=0 ]	(	""	)
label26	[ 0	locks=0 ]	(	""	)
name27	[ 0	locks=0 ]	(	""	)
label27	[ 0	locks=0 ]	(	""	)
name28	[ 0	locks=0 ]	(	""	)
label28	[ 0	locks=0 ]	(	""	)
name29	[ 0	locks=0 ]	(	""	)
label29	[ 0	locks=0 ]	(	""	)
name30	[ 0	locks=0 ]	(	""	)
label30	[ 0	locks=0 ]	(	""	)
name31	[ 0	locks=0 ]	(	""	)
label31	[ 0	locks=0 ]	(	""	)
name32	[ 0	locks=0 ]	(	""	)
label32	[ 0	locks=0 ]	(	""	)
name33	[ 0	locks=0 ]	(	""	)
label33	[ 0	locks=0 ]	(	""	)
name34	[ 0	locks=0 ]	(	""	)
label34	[ 0	locks=0 ]	(	""	)
name35	[ 0	locks=0 ]	(	""	)
label35	[ 0	locks=0 ]	(	""	)
name36	[ 0	locks=0 ]	(	""	)
label36	[ 0	locks=0 ]	(	""	)
name37	[ 0	locks=0 ]	(	""	)
label37	[ 0	locks=0 ]	(	""	)
name38	[ 0	locks=0 ]	(	""	)
label38	[ 0	locks=0 ]	(	""	)
name39	[ 0	locks=0 ]	(	""	)
label39	[ 0	locks=0 ]	(	""	)
name40	[ 0	locks=0 ]	(	""	)
label40	[ 0	locks=0 ]	(	""	)
name41	[ 0	locks=0 ]	(	""	)
label41	[ 0	locks=0 ]	(	""	)
name42	[ 0	locks=0 ]	(	""	)
label42	[ 0	locks=0 ]	(	""	)
name43	[ 0	locks=0 ]	(	""	)
label43	[ 0	locks=0 ]	(	""	)
name44	[ 0	locks=0 ]	(	""	)
label44	[ 0	locks=0 ]	(	""	)
name45	[ 0	locks=0 ]	(	""	)
label45	[ 0	locks=0 ]	(	""	)
name46	[ 0	locks=0 ]	(	""	)
label46	[ 0	locks=0 ]	(	""	)
name47	[ 0	locks=0 ]	(	""	)
label47	[ 0	locks=0 ]	(	""	)
name48	[ 0	locks=0 ]	(	""	)
label48	[ 0	locks=0 ]	(	""	)
name49	[ 0	locks=0 ]	(	""	)
label49	[ 0	locks=0 ]	(	""	)
name50	[ 0	locks=0 ]	(	""	)
label50	[ 0	locks=0 ]	(	""	)
name51	[ 0	locks=0 ]	(	""	)
label51	[ 0	locks=0 ]	(	""	)
name52	[ 0	locks=0 ]	(	""	)
label52	[ 0	locks=0 ]	(	""	)
name53	[ 0	locks=0 ]	(	""	)
label53	[ 0	locks=0 ]	(	""	)
name54	[ 0	locks=0 ]	(	""	)
label54	[ 0	locks=0 ]	(	""	)
name55	[ 0	locks=0 ]	(	""	)
label55	[ 0	locks=0 ]	(	""	)
name56	[ 0	locks=0 ]	(	""	)
label56	[ 0	locks=0 ]	(	""	)
name57	[ 0	locks=0 ]	(	""	)
label57	[ 0	locks=0 ]	(	""	)
name58	[ 0	locks=0 ]	(	""	)
label58	[ 0	locks=0 ]	(	""	)
name59	[ 0	locks=0 ]	(	""	)
label59	[ 0	locks=0 ]	(	""	)
name60	[ 0	locks=0 ]	(	""	)
label60	[ 0	locks=0 ]	(	""	)
name61	[ 0	locks=0 ]	(	""	)
label61	[ 0	locks=0 ]	(	""	)
name62	[ 0	locks=0 ]	(	""	)
label62	[ 0	locks=0 ]	(	""	)
name63	[ 0	locks=0 ]	(	""	)
label63	[ 0	locks=0 ]	(	""	)
name64	[ 0	locks=0 ]	(	""	)
label64	[ 0	locks=0 ]	(	""	)
}
0707070000010000000006660000000000000000010000001147726722100010000000000037shop/basicsmoke/if_densityNotZero/calcOpacSubNet/subinput1.init type = subinput
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100007700000000643shop/basicsmoke/if_densityNotZero/calcOpacSubNet/subinput1.def comment ""
position -1.16686 -1.06461
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1185241036
  modify 1278606278
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100010000000000020shop/basicsmoke/if_densityNotZero/calcOpacSubNet/subinput1.parm {
version 0.8
}
0707070000010000000006660000000000000000010000001147726722100010200000000041shop/basicsmoke/if_densityNotZero/calcOpacSubNet/complement1.init type = complement
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100010100000000655shop/basicsmoke/if_densityNotZero/calcOpacSubNet/complement1.def comment ""
position 10.4263 -1.1916
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	exp1 0 1
}
stat
{
  create 1185472192
  modify 1278606278
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100010200000000657shop/basicsmoke/if_densityNotZero/calcOpacSubNet/complement1.parm {
version 0.8
signature	[ 0	locks=0 ]	(	default	)
gv	[ 0	locks=0 ]	(	0	0	)
val	[ 0	locks=0 ]	(	1	)
val_i	[ 0	locks=0 ]	(	1	)
val_v	[ 0	locks=0 ]	(	1	1	1	)
val_p	[ 0	locks=0 ]	(	1	1	1	)
val_n	[ 0	locks=0 ]	(	1	1	1	)
val_c	[ 0	locks=0 ]	(	1	1	1	)
val_v4	[ 0	locks=0 ]	(	1	1	1	1	)
val_uf	[ 0	locks=0 ]	(	1	)
val_uv	[ 0	locks=0 ]	(	1	1	1	)
val_up	[ 0	locks=0 ]	(	1	1	1	)
val_un	[ 0	locks=0 ]	(	1	1	1	)
val_uc	[ 0	locks=0 ]	(	1	1	1	)
}
0707070000010000000006660000000000000000010000001147726722100007300000000035shop/basicsmoke/if_densityNotZero/calcOpacSubNet/dPdz.init type = global
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100007200000000637shop/basicsmoke/if_densityNotZero/calcOpacSubNet/dPdz.def comment ""
position 5.8538 -2.45648
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1185238045
  modify 1185238061
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.6 0.4 1 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100007300000000164shop/basicsmoke/if_densityNotZero/calcOpacSubNet/dPdz.parm {
version 0.8
contexttype	[ 0	locks=0 ]	(	surface	)
usemenu	[ 0	locks=0 ]	(	"on"	)
varname	[ 0	locks=0 ]	(	dPdz	)
}
0707070000010000000006660000000000000000010000001147726722100006300000000041shop/basicsmoke/if_densityNotZero/float2color.init type = floattovec
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100006200000000744shop/basicsmoke/if_densityNotZero/float2color.def comment ""
position 10.0181 0.976718
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	calcOpacSubNet 0 1
1 	calcOpacSubNet 0 1
2 	calcOpacSubNet 0 1
}
stat
{
  create 1185472356
  modify 1278606278
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100006300000000323shop/basicsmoke/if_densityNotZero/float2color.parm {
version 0.8
signature	[ 0	locks=0 ]	(	c	)
fval1	[ 0	locks=0 ]	(	0	)
fval2	[ 0	locks=0 ]	(	0	)
fval3	[ 0	locks=0 ]	(	0	)
fval1_uv	[ 0	locks=0 ]	(	0	)
fval2_uv	[ 0	locks=0 ]	(	0	)
fval3_uv	[ 0	locks=0 ]	(	0	)
}
0707070000010000000006660000000000000000010000001147726722100006200000000040shop/basicsmoke/if_densityNotZero/illumAngle.init type = parameter
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100006100000000635shop/basicsmoke/if_densityNotZero/illumAngle.def comment ""
position 5.15379 3.50971
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1187895366
  modify 1197585786
  author liza@chaos
  access 0777
}
color UT_Color RGB 1 1 0.6 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100006200000002701shop/basicsmoke/if_densityNotZero/illumAngle.parm {
version 0.8
parmname	[ 0	locks=0 ]	(	illumAngle	)
parmlabel	[ 0	locks=0 ]	(	"Illuminance Angle"	)
showlabel	[ 0	locks=0 ]	(	"on"	)
parmtype	[ 0	locks=0 ]	(	"float"	)
separator1	[ 0	locks=0 ]	(	)
useasparmdefiner	[ 0	locks=0 ]	(	"off"	)
parmuniform	[ 0	locks=0 ]	(	"on"	)
usebound	[ 0	locks=0 ]	(	"off"	)
exportparm	[ 0	locks=0 ]	(	"off"	)
exportcontext	[ 0	locks=0 ]	(	surface	)
providemenu	[ 0	locks=0 ]	(	"off"	)
menuchoices	[ 0	locks=0 ]	(	""	)
separator2	[ 0	locks=0 ]	(	)
invisible	[ 0	locks=0 ]	(	"off"	)
joinnext	[ 0	locks=0 ]	(	"off"	)
disablewhen	[ 0	locks=0 ]	(	""	)
callback	[ 0	locks=0 ]	(	""	)
help	[ 0	locks=0 ]	(	""	)
separator3	[ 0	locks=0 ]	(	)
stdswitcher	[ 0	locks=0 ]	(	0	0	0	0	0	)
floatdef	[ 0	locks=0 ]	(	180	)
rangeflt	[ 0	locks=0 ]	(	0	360	)
intdef	[ 0	locks=0 ]	(	0	)
rangeint	[ 0	locks=0 ]	(	0	10	)
toggledef	[ 0	locks=0 ]	(	"off"	)
angledef	[ 0	locks=0 ]	(	0	)
float3def	[ 0	locks=0 ]	(	0	0	0	)
vectordef	[ 0	locks=0 ]	(	0	0	0	)
normaldef	[ 0	locks=0 ]	(	0	0	0	)
pointdef	[ 0	locks=0 ]	(	0	0	0	)
directiondef	[ 0	locks=0 ]	(	1	0	0	)
float4def	[ 0	locks=0 ]	(	0	0	0	0	)
float9def	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
float16def	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
stringdef	[ 0	locks=0 ]	(	""	)
stringtype	[ 0	locks=0 ]	(	off	)
opfilter	[ 0	locks=0 ]	(	!!OBJ/LIGHT!!	)
filedef	[ 0	locks=0 ]	(	""	)
imagedef	[ 0	locks=0 ]	(	""	)
geometrydef	[ 0	locks=0 ]	(	""	)
colordef	[ 0	locks=0 ]	(	0	0	0	)
color4def	[ 0	locks=0 ]	(	0	0	0	0	)
}
0707070000010000000006660000000000000000010000001147726722100006100000000037shop/basicsmoke/if_densityNotZero/degtorad1.init type = degtorad
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100006000000000663shop/basicsmoke/if_densityNotZero/degtorad1.def comment ""
position 6.81655 3.32142
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	illumAngle 0 1
}
stat
{
  create 1187895462
  modify 1197585909
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100006100000000625shop/basicsmoke/if_densityNotZero/degtorad1.parm {
version 0.8
signature	[ 0	locks=0 ]	(	default	)
gv	[ 0	locks=0 ]	(	0	0	)
deg	[ 0	locks=0 ]	(	1	)
deg_v	[ 0	locks=0 ]	(	1	1	1	)
deg_p	[ 0	locks=0 ]	(	1	1	1	)
deg_n	[ 0	locks=0 ]	(	1	1	1	)
deg_c	[ 0	locks=0 ]	(	1	1	1	)
deg_v4	[ 0	locks=0 ]	(	1	1	1	1	)
deg_uf	[ 0	locks=0 ]	(	1	)
deg_uv	[ 0	locks=0 ]	(	1	1	1	)
deg_up	[ 0	locks=0 ]	(	1	1	1	)
deg_un	[ 0	locks=0 ]	(	1	1	1	)
deg_uc	[ 0	locks=0 ]	(	1	1	1	)
}
0707070000010000000006660000000000000000010000001147726722100006100000000037shop/basicsmoke/if_densityNotZero/lighting1.init type = lighting
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100006000000000732shop/basicsmoke/if_densityNotZero/lighting1.def comment ""
position 10.0438 4.3397
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	"" 0 1
1 	"" 0 1
2 	"" 0 1
3 	"" 0 1
4 	subinput1 3 1
}
stat
{
  create 1226686122
  modify 1278606278
  author jlait@thule
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100006100000000441shop/basicsmoke/if_densityNotZero/lighting1.parm {
version 0.8
lmodel	[ 0	locks=0 ]	(	isotropic	)
amb	[ 0	locks=0 ]	(	0.5	0.5	0.5	)
diff	[ 0	locks=0 ]	(	0.5	0.5	0.5	)
spec	[ 0	locks=0 ]	(	0.5	0.5	0.5	)
urough	[ 0	locks=0 ]	(	0.0500000007	)
vrough	[ 0	locks=0 ]	(	0.0500000007	)
facefwd	[ 0	locks=0 ]	(	"on"	)
tstyle	[ 0	locks=0 ]	(	0	)
}
0707070000010000000006660000000000000000010000001147726722100003300000000037shop/basicsmoke/newOf.init type = constant
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100003200000000635shop/basicsmoke/newOf.def comment ""
position -0.150924 2.11219
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1185234108
  modify 1278606034
  author liza@chaos
  access 0777
}
color UT_Color RGB 0 0 0 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100003300000001466shop/basicsmoke/newOf.parm {
version 0.8
consttype	[ 0	locks=0 ]	(	"color"	)
parmuniform	[ 0	locks=0 ]	(	"on"	)
constname	[ 0	locks=0 ]	(	newOf	)
constlabel	[ 0	locks=0 ]	(	newOf	)
stdswitcher	[ 0	locks=0 ]	(	4	4	4	4	4	)
floatdef	[ 0	locks=0 ]	(	0	)
intdef	[ 0	locks=0 ]	(	0	)
toggledef	[ 0	locks=0 ]	(	"off"	)
angledef	[ 0	locks=0 ]	(	0	)
float3def	[ 0	locks=0 ]	(	0	0	0	)
vectordef	[ 0	locks=0 ]	(	0	0	0	)
normaldef	[ 0	locks=0 ]	(	0	0	0	)
pointdef	[ 0	locks=0 ]	(	0	0	0	)
directiondef	[ 0	locks=0 ]	(	1	0	0	)
float4def	[ 0	locks=0 ]	(	0	0	0	0	)
float9def	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
float16def	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
stringdef	[ 0	locks=0 ]	(	""	)
filedef	[ 0	locks=0 ]	(	""	)
imagedef	[ 0	locks=0 ]	(	""	)
geometrydef	[ 0	locks=0 ]	(	""	)
colordef	[ 0	locks=0 ]	(	0	0	0	)
color4def	[ 0	locks=0 ]	(	0	0	0	0	)
}
0707070000010000000006660000000000000000010000001147726722100004300000000040shop/basicsmoke/usePointColor.init type = parameter
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100004200000000636shop/basicsmoke/usePointColor.def comment ""
position -3.29271 3.15663
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1181944270
  modify 1278606278
  author liza@chaos
  access 0777
}
color UT_Color RGB 1 1 0.6 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100004300000002676shop/basicsmoke/usePointColor.parm {
version 0.8
parmname	[ 0	locks=0 ]	(	usePointColor	)
parmlabel	[ 0	locks=0 ]	(	"Use Point Color"	)
showlabel	[ 0	locks=0 ]	(	"on"	)
parmtype	[ 0	locks=0 ]	(	"toggle"	)
separator1	[ 0	locks=0 ]	(	)
useasparmdefiner	[ 0	locks=0 ]	(	"off"	)
parmuniform	[ 0	locks=0 ]	(	"on"	)
usebound	[ 0	locks=0 ]	(	"off"	)
exportparm	[ 0	locks=0 ]	(	"off"	)
exportcontext	[ 0	locks=0 ]	(	surface	)
providemenu	[ 0	locks=0 ]	(	"off"	)
menuchoices	[ 0	locks=0 ]	(	""	)
separator2	[ 0	locks=0 ]	(	)
invisible	[ 0	locks=0 ]	(	"off"	)
joinnext	[ 0	locks=0 ]	(	"off"	)
disablewhen	[ 0	locks=0 ]	(	""	)
callback	[ 0	locks=0 ]	(	""	)
help	[ 0	locks=0 ]	(	""	)
separator3	[ 0	locks=0 ]	(	)
stdswitcher	[ 0	locks=0 ]	(	0	0	0	0	0	)
floatdef	[ 0	locks=0 ]	(	0	)
rangeflt	[ 0	locks=0 ]	(	0	1	)
intdef	[ 0	locks=0 ]	(	0	)
rangeint	[ 0	locks=0 ]	(	0	10	)
toggledef	[ 0	locks=0 ]	(	"on"	)
angledef	[ 0	locks=0 ]	(	0	)
float3def	[ 0	locks=0 ]	(	0	0	0	)
vectordef	[ 0	locks=0 ]	(	0	0	0	)
normaldef	[ 0	locks=0 ]	(	0	0	0	)
pointdef	[ 0	locks=0 ]	(	0	0	0	)
directiondef	[ 0	locks=0 ]	(	1	0	0	)
float4def	[ 0	locks=0 ]	(	0	0	0	0	)
float9def	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
float16def	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
stringdef	[ 0	locks=0 ]	(	""	)
stringtype	[ 0	locks=0 ]	(	off	)
opfilter	[ 0	locks=0 ]	(	!!OBJ/LIGHT!!	)
filedef	[ 0	locks=0 ]	(	""	)
imagedef	[ 0	locks=0 ]	(	""	)
geometrydef	[ 0	locks=0 ]	(	""	)
colordef	[ 0	locks=0 ]	(	0	0	0	)
color4def	[ 0	locks=0 ]	(	0	0	0	0	)
}
0707070000010000000006660000000000000000010000001147726722100003600000000035shop/basicsmoke/chooseCd.init type = twoway
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100003500000000701shop/basicsmoke/chooseCd.def comment ""
position -1.66916 2.78119
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	usePointColor 0 1
1 	Cd 0 1
}
stat
{
  create 1180714189
  modify 1278606278
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100003600000001257shop/basicsmoke/chooseCd.parm {
version 0.8
signature	[ 0	locks=0 ]	(	c	)
condtype	[ 0	locks=0 ]	(	0	)
g0	[ 0	locks=0 ]	(	0	0	0	)
input2	[ 0	locks=0 ]	(	1	)
input2_i	[ 0	locks=0 ]	(	1	)
input2_s	[ 0	locks=0 ]	(	""	)
input2_v	[ 0	locks=0 ]	(	1	1	1	)
input2_p	[ 0	locks=0 ]	(	1	1	1	)
input2_n	[ 0	locks=0 ]	(	1	1	1	)
input2_c	[ 0	locks=0 ]	(	1	1	1	)
input2_v4	[ 0	locks=0 ]	(	0	0	0	0	)
input2_m3	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
input2_m	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
input2_uf	[ 0	locks=0 ]	(	1	)
input2_uv	[ 0	locks=0 ]	(	1	1	1	)
input2_up	[ 0	locks=0 ]	(	1	1	1	)
input2_un	[ 0	locks=0 ]	(	1	1	1	)
input2_uc	[ 0	locks=0 ]	(	1	1	1	)
input2_um	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
}
0707070000010000000006660000000000000000010000001147726722100003000000000040shop/basicsmoke/Cd.init type = parameter
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100002700000000655shop/basicsmoke/Cd.def comment ""
position -3.28542 2.34703
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1181872479
  modify 1278606034
  author mark@beijing.sidefx.com
  access 0777
}
color UT_Color RGB 0.6 0.4 1 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100003000000002662shop/basicsmoke/Cd.parm {
version 0.8
parmname	[ 0	locks=0 ]	(	Cd	)
parmlabel	[ 0	locks=0 ]	(	"Attribute Color"	)
showlabel	[ 0	locks=0 ]	(	"on"	)
parmtype	[ 0	locks=0 ]	(	"color"	)
separator1	[ 0	locks=0 ]	(	)
useasparmdefiner	[ 0	locks=0 ]	(	"off"	)
parmuniform	[ 0	locks=0 ]	(	"on"	)
usebound	[ 0	locks=0 ]	(	"off"	)
exportparm	[ 0	locks=0 ]	(	"off"	)
exportcontext	[ 0	locks=0 ]	(	surface	)
providemenu	[ 0	locks=0 ]	(	"off"	)
menuchoices	[ 0	locks=0 ]	(	""	)
separator2	[ 0	locks=0 ]	(	)
invisible	[ 0	locks=0 ]	(	"on"	)
joinnext	[ 0	locks=0 ]	(	"off"	)
disablewhen	[ 0	locks=0 ]	(	""	)
callback	[ 0	locks=0 ]	(	""	)
help	[ 0	locks=0 ]	(	""	)
separator3	[ 0	locks=0 ]	(	)
stdswitcher	[ 0	locks=0 ]	(	4	4	4	4	4	)
floatdef	[ 0	locks=0 ]	(	0	)
rangeflt	[ 0	locks=0 ]	(	0	1	)
intdef	[ 0	locks=0 ]	(	0	)
rangeint	[ 0	locks=0 ]	(	0	10	)
toggledef	[ 0	locks=0 ]	(	"off"	)
angledef	[ 0	locks=0 ]	(	0	)
float3def	[ 0	locks=0 ]	(	0	0	0	)
vectordef	[ 0	locks=0 ]	(	0	0	0	)
normaldef	[ 0	locks=0 ]	(	0	0	0	)
pointdef	[ 0	locks=0 ]	(	0	0	0	)
directiondef	[ 0	locks=0 ]	(	1	0	0	)
float4def	[ 0	locks=0 ]	(	0	0	0	0	)
float9def	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
float16def	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
stringdef	[ 0	locks=0 ]	(	""	)
stringtype	[ 0	locks=0 ]	(	off	)
opfilter	[ 0	locks=0 ]	(	!!OBJ/LIGHT!!	)
filedef	[ 0	locks=0 ]	(	""	)
imagedef	[ 0	locks=0 ]	(	""	)
geometrydef	[ 0	locks=0 ]	(	""	)
colordef	[ 0	locks=0 ]	(	1	1	1	)
color4def	[ 0	locks=0 ]	(	0	0	0	0	)
}
0707070000010000000006660000000000000000010000001147726722100003700000000037shop/basicsmoke/multiply1.init type = multiply
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100003600000000677shop/basicsmoke/multiply1.def comment ""
position -0.170684 3.27362
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	diff 0 1
1 	chooseCd 0 1
}
stat
{
  create 1185238458
  modify 1278606278
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100003700000000020shop/basicsmoke/multiply1.parm {
version 0.8
}
0707070000010000000006660000000000000000010000001147726722100003300000000037shop/basicsmoke/newAf.init type = constant
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100003200000000633shop/basicsmoke/newAf.def comment ""
position 3.37838 1.11468
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1187897348
  modify 1278606089
  author liza@chaos
  access 0777
}
color UT_Color RGB 0 0 0 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100003300000001466shop/basicsmoke/newAf.parm {
version 0.8
consttype	[ 0	locks=0 ]	(	"float"	)
parmuniform	[ 0	locks=0 ]	(	"on"	)
constname	[ 0	locks=0 ]	(	newAf	)
constlabel	[ 0	locks=0 ]	(	newAf	)
stdswitcher	[ 0	locks=0 ]	(	0	0	0	0	0	)
floatdef	[ 0	locks=0 ]	(	0	)
intdef	[ 0	locks=0 ]	(	0	)
toggledef	[ 0	locks=0 ]	(	"off"	)
angledef	[ 0	locks=0 ]	(	0	)
float3def	[ 0	locks=0 ]	(	0	0	0	)
vectordef	[ 0	locks=0 ]	(	0	0	0	)
normaldef	[ 0	locks=0 ]	(	0	0	0	)
pointdef	[ 0	locks=0 ]	(	0	0	0	)
directiondef	[ 0	locks=0 ]	(	1	0	0	)
float4def	[ 0	locks=0 ]	(	0	0	0	0	)
float9def	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
float16def	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
stringdef	[ 0	locks=0 ]	(	""	)
filedef	[ 0	locks=0 ]	(	""	)
imagedef	[ 0	locks=0 ]	(	""	)
geometrydef	[ 0	locks=0 ]	(	""	)
colordef	[ 0	locks=0 ]	(	0	0	0	)
color4def	[ 0	locks=0 ]	(	0	0	0	0	)
}
0707070000010000000006660000000000000000010000001147726722100004200000000260shop/basicsmoke/newAf.outputinfos NumInfos 1
ValuesBinary 1
BeginInfo
OutputName newAf
DebugCorrInputName __default__
BypassCorrInputName __default__
NormalMode 0
BypassMode 1
UseDefaultValue 1
EndInfo
        0707070000010000000006660000000000000000010000001147726722100004400000000036shop/basicsmoke/output_collect.init type = collect
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100004300000000671shop/basicsmoke/output_collect.def comment ""
position 9.27432 3.21963
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	outpupt1 0 1
}
stat
{
  create 1278606042
  modify 1279920431
  author rafal@warsaw.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100004400000000020shop/basicsmoke/output_collect.parm {
version 0.8
}
0707070000010000000006660000000000000000010000001147726722100001700000000042shop/clay.init type = vopmaterial
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100001600000000734shop/clay.def comment "Created from Gallery Entry: Clay

Mantra Clay Surface Shader Shader"
position 0 0
cachesize 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 off exposed on
inputs
{
}
stat
{
  create 1291676662
  modify 1291677124
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
creator gallery::clay
explicit 1
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100002700000033006shop/clay.spareparmdef     group {
	name	"shading"
	label	"Surface"

	parm {
	    name	"Kd"
	    label	"Diffuse Reflectivity"
	    type	float
	    default	{ "0.5" }
	    disablewhen	"{ denable == 0 }"
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "parmvop" "1" }
	}
	parm {
	    name	"drough"
	    label	"Diffuse Roughness"
	    type	float
	    default	{ "0" }
	    disablewhen	"{ denable == 0 }"
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "parmvop" "1" }
	}
	parm {
	    name	"useBaseColor"
	    label	"Use Base Color"
	    type	toggle
	    default	{ "on" }
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "parmvop" "1" }
	}
	parm {
	    name	"baseColor"
	    label	"Base Color"
	    type	color
	    size	3
	    default	{ "1" "1" "1" }
	    disablewhen	"{ useBaseColor == 0 }"
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "parmvop" "1" }
	}
	parm {
	    name	"usePointColor"
	    label	"Use Point Color"
	    type	toggle
	    default	{ "on" }
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "parmvop" "1" }
	}
	parm {
	    name	"opacity"
	    label	"Opacity"
	    type	color
	    size	3
	    default	{ "1" "1" "1" }
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "parmvop" "1" }
	}
	group {
	    name	"colorMap"
	    label	"Color Map"
	    tabbreak

	    parm {
		name	"useColorMap"
		label	"Use Color Map"
		type	toggle
		default	{ "off" }
		range	{ 0 1 }
		export	none
		parmtag	{ "parmvop" "1" }
	    }
	    parm {
		name	"baseColorMap"
		label	"Base Color Map"
		type	image
		default	{ "" }
		disablewhen	"{ useColorMap == 0 }"
		range	{ 0 1 }
		export	none
		parmtag	{ "parmvop" "1" }
	    }
	    parm {
		name	"colorMapWrap"
		label	"Color Map Wrap"
		type	string
		default	{ "repeat" }
		disablewhen	"{ useColorMap == 0 }"
		menu	{
		    "repeat"	"Repeat"
		    "streak"	"Streak"
		    "decal"	"Decal"
		}
		range	{ 0 1 }
		export	none
		parmtag	{ "parmvop" "1" }
	    }
	    parm {
		name	"colorMapfilter"
		label	"Color Map Filter"
		type	string
		default	{ "catrom" }
		disablewhen	"{ useColorMap == 0 }"
		menu	{
		    "box"	"Box"
		    "gauss"	"Gaussian"
		    "bartlett"	"Bartlett/Triangular"
		    "sinc"	"Sinc Sharpening"
		    "hanning"	"Hanning"
		    "blackman"	"Blackman"
		    "catrom"	"Catmull-Rom"
		    "mitchell"	"Mitchell"
		}
		range	{ 0 1 }
		export	none
		parmtag	{ "parmvop" "1" }
	    }
	    parm {
		name	"colorMapWidth"
		label	"Color Map Width"
		type	float
		default	{ "1" }
		disablewhen	"{ useColorMap == 0 }"
		range	{ 0 5 }
		export	none
		parmtag	{ "parmvop" "1" }
	    }
	    parm {
		name	"colorMapBorder"
		label	"Color Map Border"
		type	color4
		size	4
		default	{ "0" "0" "0" "1" }
		disablewhen	"{ useColorMap == 0 }"
		range	{ 0 1 }
		export	none
		parmtag	{ "parmvop" "1" }
	    }
	}

    }

    group {
	name	"shading_1"
	label	"OpenGL"

	group {
	    name	"folder0"
	    label	"Surface"

	    parm {
		name	"ogl_light"
		label	"Use Lighting"
		type	toggle
		default	{ "1" }
		help	"None"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "OGL" }
	    }
	    parm {
		name	"sepparm6"
		label	"Separator"
		type	separator
		default	{ }
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"ogl_alpha"
		label	"OGL Alpha"
		type	float
		default	{ "1" }
		help	"None"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "OGL" }
	    }
	    parm {
		name	"ogl_cutout"
		label	"Transparent Texture Alpha"
		type	toggle
		default	{ "1" }
		help	"None"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "OGL" }
	    }
	    parm {
		name	"ogl_amb"
		label	"OGL Ambient"
		type	color
		size	3
		default	{ "1" "1" "1" }
		help	"None"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "OGL" }
	    }
	    parm {
		name	"ogl_emit"
		label	"OGL Emission"
		type	color
		size	3
		default	{ "0" "0" "0" }
		help	"None"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "OGL" }
	    }
	    parm {
		name	"sepparm12"
		label	"Separator"
		type	separator
		default	{ }
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"ogl_diff"
		label	"OGL Diffuse"
		type	color
		size	3
		default	{ "ch(\"baseColorr\")" "ch(\"baseColorg\")" "ch(\"baseColorb\")" }
		help	"None"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "OGL" }
	    }
	    multiparm {
		name	"ogl_numtex"
		label	"Texture Layers"
		default	1
		parmtag	{ "spare_category" "OGL" }

		parm {
		    name	"ogl_tex#"
		    label	"Texture #"
		    type	image
		    default	{ "`chs(\"baseColorMap\")`" }
		    help	"None"
		    range	{ 0 1 }
		    export	none
		    parmtag	{ "filechooser_mode" "read" }
		}
		parm {
		    name	"ogl_tex_min_filter#"
		    label	"Minification Filter"
		    type	string
		    default	{ "GL_LINEAR_MIPMAP_LINEAR" }
		    help	"None"
		    menu	{
			"GL_NEAREST"	"Poor: Nearest"
			"GL_LINEAR"	"Poor: Linear"
			"GL_NEAREST_MIPMAP_NEAREST"	"Fastest (Nearest/Nearest)"
			"GL_LINEAR_MIPMAP_NEAREST"	"Better (Linear/Nearest)"
			"GL_NEAREST_MIPMAP_LINEAR"	"Good (Nearest/Linear)"
			"GL_LINEAR_MIPMAP_LINEAR"	"Best (Linear/Linear)"
		    }
		    range	{ 0 1 }
		    export	none
		}
		parm {
		    name	"ogl_tex_mag_filter#"
		    label	"Magnification Filter"
		    type	string
		    default	{ "GL_LINEAR" }
		    help	"None"
		    menu	{
			"GL_NEAREST"	"Nearest"
			"GL_LINEAR"	"Linear"
		    }
		    range	{ 0 1 }
		    export	none
		}
		parm {
		    name	"ogl_clamping_mode#"
		    label	"Clamp Texture"
		    type	toggle
		    default	{ "0" }
		    help	"None"
		    range	{ 0 1 }
		    export	none
		}
	    }

	    parm {
		name	"sepparm8"
		label	"Separator"
		type	separator
		default	{ }
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"ogl_spec"
		label	"OGL Specular"
		type	color
		size	3
		default	{ "1" "1" "1" }
		help	"None"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "OGL" }
	    }
	    parm {
		name	"ogl_specmap"
		label	"OGL Specular Map"
		type	image
		default	{ "" }
		help	"None"
		range	{ 0 1 }
		export	none
		parmtag	{ "filechooser_mode" "read" }
		parmtag	{ "spare_category" "OGL" }
	    }
	    parm {
		name	"ogl_speclayer"
		label	"Specular Layer"
		type	integer
		default	{ "0" }
		help	"None"
		disablewhen	"{ ogl_specmap == \"\" }"
		range	{ 0 15 }
		export	none
	    }
	    parm {
		name	"ogl_rough"
		label	"OGL Roughness"
		type	float
		default	{ "0.05" }
		help	"None"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "OGL" }
	    }
	    parm {
		name	"ogl_adjustshiny"
		label	"Adjust Shininess with Alpha Channel"
		type	toggle
		default	{ "off" }
		help	"None"
		disablewhen	"{ ogl_specmap == \"\" }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"ogl_shinyrange"
		label	"Shininess Range"
		type	vector2
		size	2
		default	{ "10" "30" }
		help	"None"
		disablewhen	"{ ogl_specmap == \"\" } { ogl_adjustshiny == 0 }"
		range	{ -1 1 }
		export	none
	    }
	    parm {
		name	"sepparm10"
		label	"Separator"
		type	separator
		default	{ }
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"ogl_opacitymap"
		label	"OGL Opacity Map"
		type	image
		default	{ "" }
		help	"None"
		range	{ 0 1 }
		export	none
		parmtag	{ "filechooser_mode" "read" }
		parmtag	{ "spare_category" "OGL" }
	    }
	    parm {
		name	"ogl_opacitylayer"
		label	"Opacity Layer"
		type	integer
		default	{ "0" }
		help	"None"
		disablewhen	"{ ogl_opacitymap == \"\" }"
		range	{ 0 15 }
		export	none
	    }
	}

	group {
	    name	"folder0_1"
	    label	"Displace"

	    parm {
		name	"ogl_bumpmap"
		label	"OGL Bump Map"
		type	image
		default	{ "" }
		help	"None"
		range	{ 0 1 }
		export	none
		parmtag	{ "filechooser_mode" "read" }
	    }
	    parm {
		name	"ogl_bumptype"
		label	"Bump Map Type"
		type	string
		default	{ "height" }
		help	"None"
		disablewhen	"{ ogl_bumpmap == \"\" }"
		menu	{
		    "height"	"Height Map"
		    "uv"	"UV Bump Map"
		    "xyz"	"XYZ Bump Map"
		}
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"ogl_bumpscale"
		label	"Bump Scale"
		type	float
		default	{ "1" }
		help	"None"
		disablewhen	"{ ogl_bumpmap == \"\" }"
		range	{ 0 10 }
		export	none
	    }
	    parm {
		name	"ogl_bumpbias"
		label	"Bump Map Range"
		type	string
		default	{ "zeroone" }
		help	"None"
		disablewhen	"{ ogl_bumpmap == \"\" }"
		menu	{
		    "zeroone"	"0 to 1"
		    "centered"	"-1 to 1"
		}
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"ogl_bumplayer"
		label	"Bump Layer"
		type	integer
		default	{ "0" }
		help	"None"
		disablewhen	"{ ogl_bumpmap == \"\" }"
		range	{ 0 15 }
		export	none
	    }
	    parm {
		name	"ogl_bumpinvert"
		label	"Invert Bumps"
		type	toggle
		default	{ "0" }
		help	"None"
		disablewhen	"{ ogl_bumpmap == \"\" }"
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"sepparm7"
		label	"Separator"
		type	separator
		default	{ }
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"ogl_normalmap"
		label	"OGL Normal Map"
		type	image
		default	{ "" }
		help	"None"
		range	{ 0 1 }
		export	none
		parmtag	{ "filechooser_mode" "read" }
		parmtag	{ "spare_category" "OGL" }
	    }
	    parm {
		name	"ogl_normalbias"
		label	"Normal Map Range"
		type	string
		default	{ "zeroone" }
		help	"None"
		disablewhen	"{ ogl_normalmap == \"\" }"
		menu	{
		    "zeroone"	"0 to 1"
		    "centered"	"-1 to 1"
		}
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"ogl_normallayer"
		label	"Normal Layer"
		type	integer
		default	{ "0" }
		help	"None"
		disablewhen	"{ ogl_normalmap == \"\" }"
		range	{ 0 15 }
		export	none
		parmtag	{ "spare_category" "OGL" }
	    }
	    parm {
		name	"sepparm9"
		label	"Separator"
		type	separator
		default	{ }
		range	{ 0 1 }
		export	none
	    }
	}

	group {
	    name	"folder0_2"
	    label	"Environment"

	    parm {
		name	"ogl_envmap"
		label	"OGL Environment Map"
		type	image
		default	{ "" }
		help	"None"
		range	{ 0 1 }
		export	none
		parmtag	{ "filechooser_mode" "read" }
	    }
	    parm {
		name	"ogl_envrotate"
		label	"Env Map Rotation"
		type	vector
		size	3
		default	{ "0" "0" "0" }
		help	"None"
		disablewhen	"{ ogl_envmap == \"\" }"
		range	{ -1 1 }
		export	none
	    }
	    parm {
		name	"ogl_envrotorder"
		label	"Env Rotate Order"
		type	string
		default	{ "xyz" }
		help	"None"
		menu	{
		    "xyz"	"Rx Ry Rz"
		    "xzy"	"Rx Rz Ry"
		    "yxz"	"Ry Rx Rz"
		    "yzx"	"Ry Rz Rx"
		    "zxy"	"Rz Rx Ry"
		    "zyx"	"Rz Ry Rx"
		}
		range	{ 0 1 }
		export	none
	    }
	    parm {
		name	"ogl_envscale"
		label	"Reflection Intensity"
		type	float
		default	{ "0.1" }
		help	"None"
		disablewhen	"{ ogl_envmap == \"\" }"
		range	{ 0 2 }
		export	none
	    }
	}

    }

    group {
	name	"shading_2"
	label	"Compile"
	invisibletab

	parm {
	    name	"vop_compiler"
	    baseparm
	    export	none
	}
	parm {
	    name	"vop_forcecompile"
	    baseparm
	    export	none
	}
    }

    parm {
	name	"Ce"
	label	"Emission"
	type	float
	invisible
	size	3
	default	{ "0" "0" "0" }
	range	{ 0 10 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"direct_diffuse"
	label	"Direct Diffuse"
	type	float
	invisible
	size	3
	default	{ "0" "0" "0" }
	range	{ 0 10 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"direct_reflect"
	label	"Direct Reflect"
	type	float
	invisible
	size	3
	default	{ "0" "0" "0" }
	range	{ 0 10 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"direct_specular"
	label	"Direct Specular"
	type	float
	invisible
	size	3
	default	{ "0" "0" "0" }
	range	{ 0 10 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"direct_volume"
	label	"Direct Volume"
	type	float
	invisible
	size	3
	default	{ "0" "0" "0" }
	range	{ 0 10 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"direct_refract"
	label	"Direct Refract"
	type	float
	invisible
	size	3
	default	{ "0" "0" "0" }
	range	{ 0 10 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"direct"
	label	"Direct Lighting"
	type	float
	invisible
	size	3
	default	{ "0" "0" "0" }
	range	{ 0 10 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"direct_noshadow"
	label	"Direct Unshadowed Lighting"
	type	float
	invisible
	size	3
	default	{ "0" "0" "0" }
	range	{ 0 10 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"direct_shadow"
	label	"Direct Shadow Matte"
	type	float
	invisible
	size	3
	default	{ "0" "0" "0" }
	range	{ 0 10 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"direct_samples"
	label	"Direct Samples"
	type	float
	invisible
	default	{ "0" }
	range	{ 0 1 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"diffuse_global_clr"
	label	"diffuse_global_clr"
	type	color
	invisible
	size	3
	default	{ "0" "0" "0" }
	range	{ 0 1 }
	export	none
    }
    parm {
	name	"Cd"
	label	"Attribute Color"
	type	color
	invisible
	size	3
	default	{ "1" "1" "1" }
	range	{ 0 1 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"Alpha"
	label	"Attribute Alpha"
	type	float
	invisible
	default	{ "1" }
	range	{ 0 1 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"multiglobclr"
	label	"multiglobclr"
	type	color
	invisible
	size	3
	default	{ "0" "0" "0" }
	range	{ 0 1 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"sss_single"
	label	"Single Scattering"
	type	float
	invisible
	size	3
	default	{ "0" "0" "0" }
	range	{ 0 10 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"sss_multi"
	label	"Multi Scattering"
	type	float
	invisible
	size	3
	default	{ "0" "0" "0" }
	range	{ 0 10 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"indirect_refract"
	label	"Indirect Refract"
	type	float
	invisible
	size	3
	default	{ "0" "0" "0" }
	range	{ 0 10 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
    parm {
	name	"indirect_reflect"
	label	"Indirect Reflect"
	type	float
	invisible
	size	3
	default	{ "0" "0" "0" }
	range	{ 0 10 }
	export	none
	parmtag	{ "parmvop" "1" }
    }
0707070000010000000006660000000000000000010000001147726722100001600000000710shop/clay.chn {
    channel ogl_diffr {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = ch(\"baseColorr\") }
    }
    channel ogl_diffg {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = ch(\"baseColorg\") }
    }
    channel ogl_diffb {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = ch(\"baseColorb\") }
    }
  }
0707070000010000000006660000000000000000010000001147726722100001700000005533shop/clay.parm {
version 0.8
vop_compiler	[ 0	locks=0	autoscope=0 ]	(	"vcc -r -q $VOP_INCLUDEPATH -o $VOP_OBJECTFILE -e $VOP_ERRORFILE $VOP_SOURCEFILE"	)
vop_forcecompile	[ 0	locks=0 ]	(	0	)
shading	[ 0	locks=0 ]	(	0	0	0	)
Kd	[ 0	locks=0 ]	(	0.5	)
drough	[ 0	locks=0 ]	(	0.458999991	)
useBaseColor	[ 0	locks=0 ]	(	"on"	)
baseColor	[ 0	locks=0 ]	(	0.660000026	0.660000026	0.660000026	)
usePointColor	[ 0	locks=0 ]	(	"on"	)
opacity	[ 0	locks=0 ]	(	0.684000015	0.684000015	0.684000015	)
colorMap	[ 0	locks=0 ]	(	0	)
useColorMap	[ 0	locks=0 ]	(	"off"	)
baseColorMap	[ 0	locks=0 ]	(	""	)
colorMapWrap	[ 0	locks=0 ]	(	repeat	)
colorMapfilter	[ 0	locks=0 ]	(	catrom	)
colorMapWidth	[ 0	locks=0 ]	(	1	)
colorMapBorder	[ 0	locks=0 ]	(	0	0	0	1	)
folder0	[ 0	locks=0 ]	(	0	0	0	)
ogl_light	[ 0	locks=0 ]	(	"on"	)
sepparm6	[ 0	locks=0 ]	(	)
ogl_alpha	[ 0	locks=0 ]	(	1	)
ogl_cutout	[ 0	locks=0 ]	(	"on"	)
ogl_amb	[ 0	locks=0 ]	(	1	1	1	)
ogl_emit	[ 0	locks=0 ]	(	0	0	0	)
sepparm12	[ 0	locks=0 ]	(	)
ogl_diff	[ 0	locks=0 ]	(	[ ogl_diffr	0.660000026 ] 	[ ogl_diffg	0.660000026 ] 	[ ogl_diffb	0.660000026 ] 	)
ogl_numtex	[ 0	locks=0	autoscope=0 ]	(	1	)
ogl_tex1	[ 0	locks=0	autoscope=0 ]	(	`chs(\"baseColorMap\")`	)
ogl_tex_min_filter1	[ 0	locks=0	autoscope=0 ]	(	GL_LINEAR_MIPMAP_LINEAR	)
ogl_tex_mag_filter1	[ 0	locks=0	autoscope=0 ]	(	GL_LINEAR	)
ogl_clamping_mode1	[ 0	locks=0	autoscope=0 ]	(	"off"	)
sepparm8	[ 0	locks=0 ]	(	)
ogl_spec	[ 0	locks=0 ]	(	1	1	1	)
ogl_specmap	[ 0	locks=0 ]	(	""	)
ogl_speclayer	[ 0	locks=0 ]	(	0	)
ogl_rough	[ 0	locks=0 ]	(	0.0500000007	)
ogl_adjustshiny	[ 0	locks=0 ]	(	"off"	)
ogl_shinyrange	[ 0	locks=0 ]	(	10	30	)
sepparm10	[ 0	locks=0 ]	(	)
ogl_opacitymap	[ 0	locks=0 ]	(	""	)
ogl_opacitylayer	[ 0	locks=0 ]	(	0	)
ogl_bumpmap	[ 0	locks=0 ]	(	""	)
ogl_bumptype	[ 0	locks=0 ]	(	height	)
ogl_bumpscale	[ 0	locks=0 ]	(	1	)
ogl_bumpbias	[ 0	locks=0 ]	(	zeroone	)
ogl_bumplayer	[ 0	locks=0 ]	(	0	)
ogl_bumpinvert	[ 0	locks=0 ]	(	"off"	)
sepparm7	[ 0	locks=0 ]	(	)
ogl_normalmap	[ 0	locks=0 ]	(	""	)
ogl_normalbias	[ 0	locks=0 ]	(	zeroone	)
ogl_normallayer	[ 0	locks=0 ]	(	0	)
sepparm9	[ 0	locks=0 ]	(	)
ogl_envmap	[ 0	locks=0 ]	(	""	)
ogl_envrotate	[ 0	locks=0 ]	(	0	0	0	)
ogl_envrotorder	[ 0	locks=0 ]	(	xyz	)
ogl_envscale	[ 0	locks=0 ]	(	0.100000001	)
Ce	[ 0	locks=0 ]	(	0	0	0	)
direct_diffuse	[ 0	locks=0 ]	(	0	0	0	)
direct_reflect	[ 0	locks=0 ]	(	0	0	0	)
direct_specular	[ 0	locks=0 ]	(	0	0	0	)
direct_volume	[ 0	locks=0 ]	(	0	0	0	)
direct_refract	[ 0	locks=0 ]	(	0	0	0	)
direct	[ 0	locks=0 ]	(	0	0	0	)
direct_noshadow	[ 0	locks=0 ]	(	0	0	0	)
direct_shadow	[ 0	locks=0 ]	(	0	0	0	)
direct_samples	[ 0	locks=0 ]	(	0	)
diffuse_global_clr	[ 0	locks=0 ]	(	0	0	0	)
Cd	[ 0	locks=0 ]	(	1	1	1	)
Alpha	[ 0	locks=0 ]	(	1	)
multiglobclr	[ 0	locks=0 ]	(	0	0	0	)
sss_single	[ 0	locks=0 ]	(	0	0	0	)
sss_multi	[ 0	locks=0 ]	(	0	0	0	)
indirect_refract	[ 0	locks=0 ]	(	0	0	0	)
indirect_reflect	[ 0	locks=0 ]	(	0	0	0	)
}
0707070000010000000006660000000000000000010000001147726722100003600000000035shop/clay/surface_output.init type = output
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100003500000000774shop/clay/surface_output.def comment ""
position 9.64302 5.32704
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	surfacemodel2 0 1
1 	surfacemodel2 1 1
2 	"" 0 1
3 	"" 0 1
4 	surfacemodel2 2 1
}
stat
{
  create 1274288096
  modify 1278601344
  author rmagee@taxco.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100003600000000173shop/clay/surface_output.parm {
version 0.8
contexttype	[ 0	locks=0 ]	(	surface	)
outputcodelast	[ 0	locks=0 ]	(	"on"	)
parmorder	[ 0	locks=0 ]	(	""	)
}
0707070000010000000006660000000000000000010000001147726722100003100000000037shop/clay/uvcoords1.init type = uvcoords
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100003000000000660shop/clay/uvcoords1.def comment ""
position 1.25088 7.65591
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1276033913
  modify 1278596723
  author jroberts@alabama.sidefx.com
  access 0777
}
color UT_Color RGB 0.6 0.4 1 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100003100000000020shop/clay/uvcoords1.parm {
version 0.8
}
0707070000010000000006660000000000000000010000001147726722100004200000000035shop/clay/uvcoords1/s_global.init type = global
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100004100000000640shop/clay/uvcoords1/s_global.def comment ""
position 4.80971 0.370124
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1182551069
  modify 1183565374
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.6 0.4 1 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100004200000000161shop/clay/uvcoords1/s_global.parm {
version 0.8
contexttype	[ 0	locks=0 ]	(	surface	)
usemenu	[ 0	locks=0 ]	(	"on"	)
varname	[ 0	locks=0 ]	(	s	)
}
0707070000010000000006660000000000000000010000001147726722100004200000000035shop/clay/uvcoords1/t_global.init type = global
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100004100000000641shop/clay/uvcoords1/t_global.def comment ""
position 4.90915 -0.613184
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1182551069
  modify 1183565387
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.6 0.4 1 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100004200000000161shop/clay/uvcoords1/t_global.parm {
version 0.8
contexttype	[ 0	locks=0 ]	(	surface	)
usemenu	[ 0	locks=0 ]	(	"on"	)
varname	[ 0	locks=0 ]	(	t	)
}
0707070000010000000006660000000000000000010000001147726722100005000000000043shop/clay/uvcoords1/shadingAttriUV.init type = shadinglayer
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100004700000000637shop/clay/uvcoords1/shadingAttriUV.def comment ""
position 1.8565 0.223634
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1187129021
  modify 1191368788
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.6 0.4 1 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100005000000000267shop/clay/uvcoords1/shadingAttriUV.parm {
version 0.8
attrib	[ 0	locks=0 ]	(	"uv"	)
useasparmdefiner	[ 0	locks=0 ]	(	"off"	)
layer	[ 0	locks=0 ]	(	1	)
exportparm	[ 0	locks=0 ]	(	"off"	)
exportcontext	[ 0	locks=0 ]	(	""	)
}
0707070000010000000006660000000000000000010000001147726722100004200000000035shop/clay/uvcoords1/choose_S.init type = twoway
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100004100000000731shop/clay/uvcoords1/choose_S.def comment ""
position 6.33186 0.706664
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	shadingAttriUV 1 1
1 	vec2float 0 1
2 	s_global 0 1
}
stat
{
  create 1187129045
  modify 1187129092
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100004200000001265shop/clay/uvcoords1/choose_S.parm {
version 0.8
signature	[ 0	locks=0 ]	(	default	)
condtype	[ 0	locks=0 ]	(	0	)
g0	[ 0	locks=0 ]	(	0	0	0	)
input2	[ 0	locks=0 ]	(	0	)
input2_i	[ 0	locks=0 ]	(	0	)
input2_s	[ 0	locks=0 ]	(	""	)
input2_v	[ 0	locks=0 ]	(	0	0	0	)
input2_p	[ 0	locks=0 ]	(	0	0	0	)
input2_n	[ 0	locks=0 ]	(	0	0	0	)
input2_c	[ 0	locks=0 ]	(	1	1	1	)
input2_v4	[ 0	locks=0 ]	(	0	0	0	0	)
input2_m3	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
input2_m	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
input2_uf	[ 0	locks=0 ]	(	0	)
input2_uv	[ 0	locks=0 ]	(	0	0	0	)
input2_up	[ 0	locks=0 ]	(	0	0	0	)
input2_un	[ 0	locks=0 ]	(	0	0	0	)
input2_uc	[ 0	locks=0 ]	(	0	0	0	)
input2_um	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
}
0707070000010000000006660000000000000000010000001147726722100004300000000041shop/clay/uvcoords1/vec2float.init type = vectofloat
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100004200000000670shop/clay/uvcoords1/vec2float.def comment ""
position 3.36006 0.184721
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	shadingAttriUV 0 1
}
stat
{
  create 1187129053
  modify 1187129254
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100004300000000446shop/clay/uvcoords1/vec2float.parm {
version 0.8
signature	[ 0	locks=0 ]	(	default	)
vec	[ 0	locks=0 ]	(	0	0	0	)
vec_p	[ 0	locks=0 ]	(	0	0	0	)
vec_n	[ 0	locks=0 ]	(	0	0	0	)
vec_c	[ 0	locks=0 ]	(	0	0	0	)
vec_uv	[ 0	locks=0 ]	(	0	0	0	)
vec_up	[ 0	locks=0 ]	(	0	0	0	)
vec_un	[ 0	locks=0 ]	(	0	0	0	)
vec_uc	[ 0	locks=0 ]	(	0	0	0	)
}
0707070000010000000006660000000000000000010000001147726722100004200000000035shop/clay/uvcoords1/choose_T.init type = twoway
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100004100000000731shop/clay/uvcoords1/choose_T.def comment ""
position 6.49179 -0.27401
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	shadingAttriUV 1 1
1 	vec2float 1 1
2 	t_global 0 1
}
stat
{
  create 1187129045
  modify 1187129160
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100004200000001265shop/clay/uvcoords1/choose_T.parm {
version 0.8
signature	[ 0	locks=0 ]	(	default	)
condtype	[ 0	locks=0 ]	(	0	)
g0	[ 0	locks=0 ]	(	0	0	0	)
input2	[ 0	locks=0 ]	(	0	)
input2_i	[ 0	locks=0 ]	(	0	)
input2_s	[ 0	locks=0 ]	(	""	)
input2_v	[ 0	locks=0 ]	(	0	0	0	)
input2_p	[ 0	locks=0 ]	(	0	0	0	)
input2_n	[ 0	locks=0 ]	(	0	0	0	)
input2_c	[ 0	locks=0 ]	(	1	1	1	)
input2_v4	[ 0	locks=0 ]	(	0	0	0	0	)
input2_m3	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
input2_m	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
input2_uf	[ 0	locks=0 ]	(	0	)
input2_uv	[ 0	locks=0 ]	(	0	0	0	)
input2_up	[ 0	locks=0 ]	(	0	0	0	)
input2_un	[ 0	locks=0 ]	(	0	0	0	)
input2_uc	[ 0	locks=0 ]	(	0	0	0	)
input2_um	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
}
0707070000010000000006660000000000000000010000001147726722100004300000000041shop/clay/uvcoords1/float2vec.init type = floattovec
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100004200000000701shop/clay/uvcoords1/float2vec.def comment ""
position 8.01391 1.37778
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	choose_S 0 1
1 	choose_T 0 1
}
stat
{
  create 1191368841
  modify 1191437776
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100004300000000331shop/clay/uvcoords1/float2vec.parm {
version 0.8
signature	[ 0	locks=0 ]	(	default	)
fval1	[ 0	locks=0 ]	(	0	)
fval2	[ 0	locks=0 ]	(	0	)
fval3	[ 0	locks=0 ]	(	0	)
fval1_uv	[ 0	locks=0 ]	(	0	)
fval2_uv	[ 0	locks=0 ]	(	0	)
fval3_uv	[ 0	locks=0 ]	(	0	)
}
0707070000010000000006660000000000000000010000001147726722100004400000000040shop/clay/uvcoords1/suboutput1.init type = suboutput
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100004300000000721shop/clay/uvcoords1/suboutput1.def comment ""
position 9.42709 0.438463
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	float2vec 0 1
1 	choose_S 0 1
2 	choose_T 0 1
}
stat
{
  create 1191445892
  modify 1191445964
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100004400000007074shop/clay/uvcoords1/suboutput1.parm {
version 0.8
name1	[ 0	locks=0 ]	(	uv	)
label1	[ 0	locks=0 ]	(	""	)
name2	[ 0	locks=0 ]	(	s	)
label2	[ 0	locks=0 ]	(	""	)
name3	[ 0	locks=0 ]	(	t	)
label3	[ 0	locks=0 ]	(	""	)
name4	[ 0	locks=0 ]	(	""	)
label4	[ 0	locks=0 ]	(	""	)
name5	[ 0	locks=0 ]	(	""	)
label5	[ 0	locks=0 ]	(	""	)
name6	[ 0	locks=0 ]	(	""	)
label6	[ 0	locks=0 ]	(	""	)
name7	[ 0	locks=0 ]	(	""	)
label7	[ 0	locks=0 ]	(	""	)
name8	[ 0	locks=0 ]	(	""	)
label8	[ 0	locks=0 ]	(	""	)
name9	[ 0	locks=0 ]	(	""	)
label9	[ 0	locks=0 ]	(	""	)
name10	[ 0	locks=0 ]	(	""	)
label10	[ 0	locks=0 ]	(	""	)
name11	[ 0	locks=0 ]	(	""	)
label11	[ 0	locks=0 ]	(	""	)
name12	[ 0	locks=0 ]	(	""	)
label12	[ 0	locks=0 ]	(	""	)
name13	[ 0	locks=0 ]	(	""	)
label13	[ 0	locks=0 ]	(	""	)
name14	[ 0	locks=0 ]	(	""	)
label14	[ 0	locks=0 ]	(	""	)
name15	[ 0	locks=0 ]	(	""	)
label15	[ 0	locks=0 ]	(	""	)
name16	[ 0	locks=0 ]	(	""	)
label16	[ 0	locks=0 ]	(	""	)
name17	[ 0	locks=0 ]	(	""	)
label17	[ 0	locks=0 ]	(	""	)
name18	[ 0	locks=0 ]	(	""	)
label18	[ 0	locks=0 ]	(	""	)
name19	[ 0	locks=0 ]	(	""	)
label19	[ 0	locks=0 ]	(	""	)
name20	[ 0	locks=0 ]	(	""	)
label20	[ 0	locks=0 ]	(	""	)
name21	[ 0	locks=0 ]	(	""	)
label21	[ 0	locks=0 ]	(	""	)
name22	[ 0	locks=0 ]	(	""	)
label22	[ 0	locks=0 ]	(	""	)
name23	[ 0	locks=0 ]	(	""	)
label23	[ 0	locks=0 ]	(	""	)
name24	[ 0	locks=0 ]	(	""	)
label24	[ 0	locks=0 ]	(	""	)
name25	[ 0	locks=0 ]	(	""	)
label25	[ 0	locks=0 ]	(	""	)
name26	[ 0	locks=0 ]	(	""	)
label26	[ 0	locks=0 ]	(	""	)
name27	[ 0	locks=0 ]	(	""	)
label27	[ 0	locks=0 ]	(	""	)
name28	[ 0	locks=0 ]	(	""	)
label28	[ 0	locks=0 ]	(	""	)
name29	[ 0	locks=0 ]	(	""	)
label29	[ 0	locks=0 ]	(	""	)
name30	[ 0	locks=0 ]	(	""	)
label30	[ 0	locks=0 ]	(	""	)
name31	[ 0	locks=0 ]	(	""	)
label31	[ 0	locks=0 ]	(	""	)
name32	[ 0	locks=0 ]	(	""	)
label32	[ 0	locks=0 ]	(	""	)
name33	[ 0	locks=0 ]	(	""	)
label33	[ 0	locks=0 ]	(	""	)
name34	[ 0	locks=0 ]	(	""	)
label34	[ 0	locks=0 ]	(	""	)
name35	[ 0	locks=0 ]	(	""	)
label35	[ 0	locks=0 ]	(	""	)
name36	[ 0	locks=0 ]	(	""	)
label36	[ 0	locks=0 ]	(	""	)
name37	[ 0	locks=0 ]	(	""	)
label37	[ 0	locks=0 ]	(	""	)
name38	[ 0	locks=0 ]	(	""	)
label38	[ 0	locks=0 ]	(	""	)
name39	[ 0	locks=0 ]	(	""	)
label39	[ 0	locks=0 ]	(	""	)
name40	[ 0	locks=0 ]	(	""	)
label40	[ 0	locks=0 ]	(	""	)
name41	[ 0	locks=0 ]	(	""	)
label41	[ 0	locks=0 ]	(	""	)
name42	[ 0	locks=0 ]	(	""	)
label42	[ 0	locks=0 ]	(	""	)
name43	[ 0	locks=0 ]	(	""	)
label43	[ 0	locks=0 ]	(	""	)
name44	[ 0	locks=0 ]	(	""	)
label44	[ 0	locks=0 ]	(	""	)
name45	[ 0	locks=0 ]	(	""	)
label45	[ 0	locks=0 ]	(	""	)
name46	[ 0	locks=0 ]	(	""	)
label46	[ 0	locks=0 ]	(	""	)
name47	[ 0	locks=0 ]	(	""	)
label47	[ 0	locks=0 ]	(	""	)
name48	[ 0	locks=0 ]	(	""	)
label48	[ 0	locks=0 ]	(	""	)
name49	[ 0	locks=0 ]	(	""	)
label49	[ 0	locks=0 ]	(	""	)
name50	[ 0	locks=0 ]	(	""	)
label50	[ 0	locks=0 ]	(	""	)
name51	[ 0	locks=0 ]	(	""	)
label51	[ 0	locks=0 ]	(	""	)
name52	[ 0	locks=0 ]	(	""	)
label52	[ 0	locks=0 ]	(	""	)
name53	[ 0	locks=0 ]	(	""	)
label53	[ 0	locks=0 ]	(	""	)
name54	[ 0	locks=0 ]	(	""	)
label54	[ 0	locks=0 ]	(	""	)
name55	[ 0	locks=0 ]	(	""	)
label55	[ 0	locks=0 ]	(	""	)
name56	[ 0	locks=0 ]	(	""	)
label56	[ 0	locks=0 ]	(	""	)
name57	[ 0	locks=0 ]	(	""	)
label57	[ 0	locks=0 ]	(	""	)
name58	[ 0	locks=0 ]	(	""	)
label58	[ 0	locks=0 ]	(	""	)
name59	[ 0	locks=0 ]	(	""	)
label59	[ 0	locks=0 ]	(	""	)
name60	[ 0	locks=0 ]	(	""	)
label60	[ 0	locks=0 ]	(	""	)
name61	[ 0	locks=0 ]	(	""	)
label61	[ 0	locks=0 ]	(	""	)
name62	[ 0	locks=0 ]	(	""	)
label62	[ 0	locks=0 ]	(	""	)
name63	[ 0	locks=0 ]	(	""	)
label63	[ 0	locks=0 ]	(	""	)
name64	[ 0	locks=0 ]	(	""	)
label64	[ 0	locks=0 ]	(	""	)
}
0707070000010000000006660000000000000000010000001147726722100004300000000037shop/clay/uvcoords1/subinput1.init type = subinput
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100004200000000641shop/clay/uvcoords1/subinput1.def comment ""
position 1.61964 1.31767
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1191445892
  modify 1191616392
  author liza@chaos
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100004300000000020shop/clay/uvcoords1/subinput1.parm {
version 0.8
}
0707070000010000000006660000000000000000010000001147726722100003400000000043shop/clay/surfaceColor.init type = surfacecolor
matchesdef = 1
0707070000010000000006660000000000000000010000001147726722100003300000001241shop/clay/surfaceColor.def comment ""
position 3.07416 6.24391
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	useBaseColor 0 1
1 	baseColor 0 1
2 	usePointColor 0 1
3 	useColorMap 0 1
4 	baseColorMap 0 1
5 	colorMapWrap 0 1
6 	colorMapfilter 0 1
7 	colorMapWidth 0 1
8 	colorMapBorder 0 1
9 	uvcoords1 1 1
10 	uvcoords1 2 1
11 	"" 0 1
12 	"" 0 1
}
stat
{
  create 1276033963
  modify 1278601345
  author jroberts@alabama.sidefx.com
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100003300000003746shop/clay/surfaceColor.chn {
    channel useColorMap {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = ch('../useColorMap/toggledef') }
    }
    channel colorMapWidth {
      lefttype = extend
      righttype = extend
      default = 1
      flags = 0
      segment { length = 0 value = 1 1 expr = ch('../colorMapWidth/floatdef') }
    }
    channel colorMapBorderr {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = ch('../colorMapBorder/color4defr') }
    }
    channel colorMapBorderg {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = ch('../colorMapBorder/color4defg') }
    }
    channel colorMapBorderb {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = ch('../colorMapBorder/color4defb') }
    }
    channel colorMapBordera {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = ch('../colorMapBorder/color4defa') }
    }
    channel useBaseColor {
      lefttype = extend
      righttype = extend
      default = 1
      flags = 0
      segment { length = 0 value = 1 1 expr = ch('../useBaseColor/toggledef') }
    }
    channel baseColorr {
      lefttype = extend
      righttype = extend
      default = 1
      flags = 0
      segment { length = 0 value = 1 1 expr = ch('../baseColor/colordefr') }
    }
    channel baseColorg {
      lefttype = extend
      righttype = extend
      default = 1
      flags = 0
      segment { length = 0 value = 1 1 expr = ch('../baseColor/colordefg') }
    }
    channel baseColorb {
      lefttype = extend
      righttype = extend
      default = 1
      flags = 0
      segment { length = 0 value = 1 1 expr = ch('../baseColor/colordefb') }
    }
    channel usePointColor {
      lefttype = extend
      righttype = extend
      default = 1
      flags = 0
      segment { length = 0 value = 1 1 expr = ch('../usePointColor/toggledef') }
    }
  }
0707070000010000000006660000000000000000010000001147726722100003400000001335shop/clay/surfaceColor.parm {
version 0.8
useBaseColor	[ 0	locks=0 ]	(	[ useBaseColor	1 ] 	)
baseColor	[ 0	locks=0 ]	(	[ baseColorr	1 ] 	[ baseColorg	1 ] 	[ baseColorb	1 ] 	)
usePointColor	[ 0	locks=0 ]	(	[ usePointColor	1 ] 	)
useColorMap	[ 0	locks=0 ]	(	[ useColorMap	0 ] 	)
baseColorMap	[ 0	locks=0 ]	(	default.pic	)
colorMapWrap	[ 0	locks=0 ]	(	chs('../colorMapWrap/stringdef')	)
colorMapfilter	[ 0	locks=0 ]	(	chs('../colorMapfilter/stringdef')	)
colorMapWidth	[ 0	locks=0 ]	(	[ colorMapWidth	1 ] 	)
colorMapBorder	[ 0	locks=0 ]	(	[ colorMapBorderr	0 ] 	[ colorMapBorderg	0 ] 	[ colorMapBorderb	0 ] 	[ colorMapBordera	0 ] 	)
Scoord	[ 0	locks=0 ]	(	0	)
Tcoord	[ 0	locks=0 ]	(	0	)
usePointAlpha	[ 0	locks=0 ]	(	"on"	)
colorMapIntensity	[ 0	locks=0 ]	(	1	)
}
0707070000010000000006660000000000000000010000001147726722100003300000000040shop/clay/useColorMap.init type = parameter
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100003200000000657shop/clay/useColorMap.def comment ""
position -2.9674 7.68726
cachesize 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 off exposed off lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1276034044
  modify 1278596722
  author jroberts@alabama.sidefx.com
  access 0777
}
color UT_Color RGB 1 1 0.6 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100003300000002665shop/clay/useColorMap.parm {
version 0.8
parmname	[ 0	locks=0 ]	(	useColorMap	)
parmlabel	[ 0	locks=0 ]	(	"Use Color Map"	)
showlabel	[ 0	locks=0 ]	(	"on"	)
parmtype	[ 0	locks=0 ]	(	"toggle"	)
separator1	[ 0	locks=0 ]	(	)
useasparmdefiner	[ 0	locks=0 ]	(	"off"	)
parmuniform	[ 0	locks=0 ]	(	"on"	)
usebound	[ 0	locks=0 ]	(	"off"	)
exportparm	[ 0	locks=0 ]	(	"off"	)
exportcontext	[ 0	locks=0 ]	(	""	)
providemenu	[ 0	locks=0 ]	(	"off"	)
menuchoices	[ 0	locks=0 ]	(	""	)
separator2	[ 0	locks=0 ]	(	)
invisible	[ 0	locks=0 ]	(	"off"	)
joinnext	[ 0	locks=0 ]	(	"off"	)
disablewhen	[ 0	locks=0 ]	(	""	)
callback	[ 0	locks=0 ]	(	""	)
help	[ 0	locks=0 ]	(	""	)
separator3	[ 0	locks=0 ]	(	)
stdswitcher	[ 0	locks=0 ]	(	0	0	0	0	0	)
floatdef	[ 0	locks=0 ]	(	0	)
rangeflt	[ 0	locks=0 ]	(	0	1	)
intdef	[ 0	locks=0 ]	(	0	)
rangeint	[ 0	locks=0 ]	(	0	1	)
toggledef	[ 0	locks=0 ]	(	"off"	)
angledef	[ 0	locks=0 ]	(	0	)
float3def	[ 0	locks=0 ]	(	0	0	0	)
vectordef	[ 0	locks=0 ]	(	0	0	0	)
normaldef	[ 0	locks=0 ]	(	0	0	0	)
pointdef	[ 0	locks=0 ]	(	0	0	0	)
directiondef	[ 0	locks=0 ]	(	1	0	0	)
float4def	[ 0	locks=0 ]	(	0	0	0	0	)
float9def	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
float16def	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
stringdef	[ 0	locks=0 ]	(	""	)
stringtype	[ 0	locks=0 ]	(	off	)
opfilter	[ 0	locks=0 ]	(	!!OBJ/LIGHT!!	)
filedef	[ 0	locks=0 ]	(	""	)
imagedef	[ 0	locks=0 ]	(	""	)
geometrydef	[ 0	locks=0 ]	(	""	)
colordef	[ 0	locks=0 ]	(	0	0	0	)
color4def	[ 0	locks=0 ]	(	0	0	0	0	)
}
0707070000010000000006660000000000000000010000001147726722100003400000000040shop/clay/baseColorMap.init type = parameter
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100003300000000660shop/clay/baseColorMap.def comment ""
position -4.08551 7.13327
cachesize 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 off exposed off lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1276034050
  modify 1278596807
  author jroberts@alabama.sidefx.com
  access 0777
}
color UT_Color RGB 1 1 0.6 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100003400000002713shop/clay/baseColorMap.parm {
version 0.8
parmname	[ 0	locks=0 ]	(	baseColorMap	)
parmlabel	[ 0	locks=0 ]	(	"Base Color Map"	)
showlabel	[ 0	locks=0 ]	(	"on"	)
parmtype	[ 0	locks=0 ]	(	"image"	)
separator1	[ 0	locks=0 ]	(	)
useasparmdefiner	[ 0	locks=0 ]	(	"off"	)
parmuniform	[ 0	locks=0 ]	(	"on"	)
usebound	[ 0	locks=0 ]	(	"off"	)
exportparm	[ 0	locks=0 ]	(	"off"	)
exportcontext	[ 0	locks=0 ]	(	""	)
providemenu	[ 0	locks=0 ]	(	"off"	)
menuchoices	[ 0	locks=0 ]	(	""	)
separator2	[ 0	locks=0 ]	(	)
invisible	[ 0	locks=0 ]	(	"off"	)
joinnext	[ 0	locks=0 ]	(	"off"	)
disablewhen	[ 0	locks=0 ]	(	"{ useColorMap == 0 }"	)
callback	[ 0	locks=0 ]	(	""	)
help	[ 0	locks=0 ]	(	""	)
separator3	[ 0	locks=0 ]	(	)
stdswitcher	[ 0	locks=0 ]	(	3	3	3	3	3	)
floatdef	[ 0	locks=0 ]	(	0	)
rangeflt	[ 0	locks=0 ]	(	0	1	)
intdef	[ 0	locks=0 ]	(	0	)
rangeint	[ 0	locks=0 ]	(	0	10	)
toggledef	[ 0	locks=0 ]	(	"off"	)
angledef	[ 0	locks=0 ]	(	0	)
float3def	[ 0	locks=0 ]	(	0	0	0	)
vectordef	[ 0	locks=0 ]	(	0	0	0	)
normaldef	[ 0	locks=0 ]	(	0	0	0	)
pointdef	[ 0	locks=0 ]	(	0	0	0	)
directiondef	[ 0	locks=0 ]	(	1	0	0	)
float4def	[ 0	locks=0 ]	(	0	0	0	0	)
float9def	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
float16def	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
stringdef	[ 0	locks=0 ]	(	""	)
stringtype	[ 0	locks=0 ]	(	off	)
opfilter	[ 0	locks=0 ]	(	!!OBJ/LIGHT!!	)
filedef	[ 0	locks=0 ]	(	""	)
imagedef	[ 0	locks=0 ]	(	""	)
geometrydef	[ 0	locks=0 ]	(	""	)
colordef	[ 0	locks=0 ]	(	0	0	0	)
color4def	[ 0	locks=0 ]	(	0	0	0	0	)
}
0707070000010000000006660000000000000000010000001147726722100003400000000040shop/clay/colorMapWrap.init type = parameter
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100003300000000657shop/clay/colorMapWrap.def comment ""
position -2.9674 6.57928
cachesize 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 off exposed off lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1276034052
  modify 1278596722
  author jroberts@alabama.sidefx.com
  access 0777
}
color UT_Color RGB 1 1 0.6 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100003400000003003shop/clay/colorMapWrap.parm {
version 0.8
parmname	[ 0	locks=0 ]	(	colorMapWrap	)
parmlabel	[ 0	locks=0 ]	(	"Color Map Wrap"	)
showlabel	[ 0	locks=0 ]	(	"on"	)
parmtype	[ 0	locks=0 ]	(	"string"	)
separator1	[ 0	locks=0 ]	(	)
useasparmdefiner	[ 0	locks=0 ]	(	"off"	)
parmuniform	[ 0	locks=0 ]	(	"on"	)
usebound	[ 0	locks=0 ]	(	"off"	)
exportparm	[ 0	locks=0 ]	(	"off"	)
exportcontext	[ 0	locks=0 ]	(	""	)
providemenu	[ 0	locks=0 ]	(	"on"	)
menuchoices	[ 0	locks=0 ]	(	"repeat \"Repeat\" streak \"Streak\" decal \"Decal\" "	)
separator2	[ 0	locks=0 ]	(	)
invisible	[ 0	locks=0 ]	(	"off"	)
joinnext	[ 0	locks=0 ]	(	"off"	)
disablewhen	[ 0	locks=0 ]	(	"{ useColorMap == 0 }"	)
callback	[ 0	locks=0 ]	(	""	)
help	[ 0	locks=0 ]	(	""	)
separator3	[ 0	locks=0 ]	(	)
stdswitcher	[ 0	locks=0 ]	(	0	0	0	0	0	)
floatdef	[ 0	locks=0 ]	(	0	)
rangeflt	[ 0	locks=0 ]	(	0	1	)
intdef	[ 0	locks=0 ]	(	0	)
rangeint	[ 0	locks=0 ]	(	0	10	)
toggledef	[ 0	locks=0 ]	(	"off"	)
angledef	[ 0	locks=0 ]	(	0	)
float3def	[ 0	locks=0 ]	(	0	0	0	)
vectordef	[ 0	locks=0 ]	(	0	0	0	)
normaldef	[ 0	locks=0 ]	(	0	0	0	)
pointdef	[ 0	locks=0 ]	(	0	0	0	)
directiondef	[ 0	locks=0 ]	(	1	0	0	)
float4def	[ 0	locks=0 ]	(	0	0	0	0	)
float9def	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
float16def	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
stringdef	[ 0	locks=0 ]	(	repeat	)
stringtype	[ 0	locks=0 ]	(	off	)
opfilter	[ 0	locks=0 ]	(	!!OBJ/LIGHT!!	)
filedef	[ 0	locks=0 ]	(	""	)
imagedef	[ 0	locks=0 ]	(	""	)
geometrydef	[ 0	locks=0 ]	(	""	)
colordef	[ 0	locks=0 ]	(	0	0	0	)
color4def	[ 0	locks=0 ]	(	0	0	0	0	)
}
0707070000010000000006660000000000000000010000001147726722100003600000000040shop/clay/colorMapfilter.init type = parameter
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100003500000000660shop/clay/colorMapfilter.def comment ""
position -1.84928 6.02529
cachesize 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 off exposed off lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1276034053
  modify 1278596722
  author jroberts@alabama.sidefx.com
  access 0777
}
color UT_Color RGB 1 1 0.6 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100003600000003203shop/clay/colorMapfilter.parm {
version 0.8
parmname	[ 0	locks=0 ]	(	colorMapfilter	)
parmlabel	[ 0	locks=0 ]	(	"Color Map Filter"	)
showlabel	[ 0	locks=0 ]	(	"on"	)
parmtype	[ 0	locks=0 ]	(	"string"	)
separator1	[ 0	locks=0 ]	(	)
useasparmdefiner	[ 0	locks=0 ]	(	"off"	)
parmuniform	[ 0	locks=0 ]	(	"on"	)
usebound	[ 0	locks=0 ]	(	"off"	)
exportparm	[ 0	locks=0 ]	(	"off"	)
exportcontext	[ 0	locks=0 ]	(	""	)
providemenu	[ 0	locks=0 ]	(	"on"	)
menuchoices	[ 0	locks=0 ]	(	"box \"Box\" gauss \"Gaussian\" bartlett \"Bartlett/Triangular\" sinc \"Sinc Sharpening\" hanning \"Hanning\" blackman \"Blackman\" catrom \"Catmull-Rom\" mitchell \"Mitchell\" "	)
separator2	[ 0	locks=0 ]	(	)
invisible	[ 0	locks=0 ]	(	"off"	)
joinnext	[ 0	locks=0 ]	(	"off"	)
disablewhen	[ 0	locks=0 ]	(	"{ useColorMap == 0 }"	)
callback	[ 0	locks=0 ]	(	""	)
help	[ 0	locks=0 ]	(	""	)
separator3	[ 0	locks=0 ]	(	)
stdswitcher	[ 0	locks=0 ]	(	0	0	0	0	0	)
floatdef	[ 0	locks=0 ]	(	0	)
rangeflt	[ 0	locks=0 ]	(	0	1	)
intdef	[ 0	locks=0 ]	(	0	)
rangeint	[ 0	locks=0 ]	(	0	10	)
toggledef	[ 0	locks=0 ]	(	"off"	)
angledef	[ 0	locks=0 ]	(	0	)
float3def	[ 0	locks=0 ]	(	0	0	0	)
vectordef	[ 0	locks=0 ]	(	0	0	0	)
normaldef	[ 0	locks=0 ]	(	0	0	0	)
pointdef	[ 0	locks=0 ]	(	0	0	0	)
directiondef	[ 0	locks=0 ]	(	1	0	0	)
float4def	[ 0	locks=0 ]	(	0	0	0	0	)
float9def	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
float16def	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
stringdef	[ 0	locks=0 ]	(	catrom	)
stringtype	[ 0	locks=0 ]	(	off	)
opfilter	[ 0	locks=0 ]	(	!!OBJ/LIGHT!!	)
filedef	[ 0	locks=0 ]	(	""	)
imagedef	[ 0	locks=0 ]	(	""	)
geometrydef	[ 0	locks=0 ]	(	""	)
colordef	[ 0	locks=0 ]	(	0	0	0	)
color4def	[ 0	locks=0 ]	(	0	0	0	0	)
}
0707070000010000000006660000000000000000010000001147726722100003500000000040shop/clay/colorMapWidth.init type = parameter
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100003400000000661shop/clay/colorMapWidth.def comment ""
position -0.613249 5.40017
cachesize 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 off exposed off lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1276034055
  modify 1278596722
  author jroberts@alabama.sidefx.com
  access 0777
}
color UT_Color RGB 1 1 0.6 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100003500000002715shop/clay/colorMapWidth.parm {
version 0.8
parmname	[ 0	locks=0 ]	(	colorMapWidth	)
parmlabel	[ 0	locks=0 ]	(	"Color Map Width"	)
showlabel	[ 0	locks=0 ]	(	"on"	)
parmtype	[ 0	locks=0 ]	(	"float"	)
separator1	[ 0	locks=0 ]	(	)
useasparmdefiner	[ 0	locks=0 ]	(	"off"	)
parmuniform	[ 0	locks=0 ]	(	"on"	)
usebound	[ 0	locks=0 ]	(	"off"	)
exportparm	[ 0	locks=0 ]	(	"off"	)
exportcontext	[ 0	locks=0 ]	(	""	)
providemenu	[ 0	locks=0 ]	(	"off"	)
menuchoices	[ 0	locks=0 ]	(	""	)
separator2	[ 0	locks=0 ]	(	)
invisible	[ 0	locks=0 ]	(	"off"	)
joinnext	[ 0	locks=0 ]	(	"off"	)
disablewhen	[ 0	locks=0 ]	(	"{ useColorMap == 0 }"	)
callback	[ 0	locks=0 ]	(	""	)
help	[ 0	locks=0 ]	(	""	)
separator3	[ 0	locks=0 ]	(	)
stdswitcher	[ 0	locks=0 ]	(	0	0	0	0	0	)
floatdef	[ 0	locks=0 ]	(	1	)
rangeflt	[ 0	locks=0 ]	(	0	5	)
intdef	[ 0	locks=0 ]	(	0	)
rangeint	[ 0	locks=0 ]	(	0	10	)
toggledef	[ 0	locks=0 ]	(	"off"	)
angledef	[ 0	locks=0 ]	(	0	)
float3def	[ 0	locks=0 ]	(	0	0	0	)
vectordef	[ 0	locks=0 ]	(	0	0	0	)
normaldef	[ 0	locks=0 ]	(	0	0	0	)
pointdef	[ 0	locks=0 ]	(	0	0	0	)
directiondef	[ 0	locks=0 ]	(	1	0	0	)
float4def	[ 0	locks=0 ]	(	0	0	0	0	)
float9def	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
float16def	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
stringdef	[ 0	locks=0 ]	(	""	)
stringtype	[ 0	locks=0 ]	(	off	)
opfilter	[ 0	locks=0 ]	(	!!OBJ/LIGHT!!	)
filedef	[ 0	locks=0 ]	(	""	)
imagedef	[ 0	locks=0 ]	(	""	)
geometrydef	[ 0	locks=0 ]	(	""	)
colordef	[ 0	locks=0 ]	(	0	0	0	)
color4def	[ 0	locks=0 ]	(	0	0	0	0	)
}
0707070000010000000006660000000000000000010000001147726722100003600000000040shop/clay/colorMapBorder.init type = parameter
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100003500000000660shop/clay/colorMapBorder.def comment ""
position 0.830139 5.40017
cachesize 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 off exposed off lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1276034057
  modify 1278601344
  author jroberts@alabama.sidefx.com
  access 0777
}
color UT_Color RGB 1 1 0.6 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100003600000002724shop/clay/colorMapBorder.parm {
version 0.8
parmname	[ 0	locks=0 ]	(	colorMapBorder	)
parmlabel	[ 0	locks=0 ]	(	"Color Map Border"	)
showlabel	[ 0	locks=0 ]	(	"on"	)
parmtype	[ 0	locks=0 ]	(	"coloralpha"	)
separator1	[ 0	locks=0 ]	(	)
useasparmdefiner	[ 0	locks=0 ]	(	"off"	)
parmuniform	[ 0	locks=0 ]	(	"on"	)
usebound	[ 0	locks=0 ]	(	"off"	)
exportparm	[ 0	locks=0 ]	(	"off"	)
exportcontext	[ 0	locks=0 ]	(	""	)
providemenu	[ 0	locks=0 ]	(	"off"	)
menuchoices	[ 0	locks=0 ]	(	""	)
separator2	[ 0	locks=0 ]	(	)
invisible	[ 0	locks=0 ]	(	"off"	)
joinnext	[ 0	locks=0 ]	(	"off"	)
disablewhen	[ 0	locks=0 ]	(	"{ useColorMap == 0 }"	)
callback	[ 0	locks=0 ]	(	""	)
help	[ 0	locks=0 ]	(	""	)
separator3	[ 0	locks=0 ]	(	)
stdswitcher	[ 0	locks=0 ]	(	4	4	4	4	4	)
floatdef	[ 0	locks=0 ]	(	0	)
rangeflt	[ 0	locks=0 ]	(	0	1	)
intdef	[ 0	locks=0 ]	(	0	)
rangeint	[ 0	locks=0 ]	(	0	10	)
toggledef	[ 0	locks=0 ]	(	"off"	)
angledef	[ 0	locks=0 ]	(	0	)
float3def	[ 0	locks=0 ]	(	0	0	0	)
vectordef	[ 0	locks=0 ]	(	0	0	0	)
normaldef	[ 0	locks=0 ]	(	0	0	0	)
pointdef	[ 0	locks=0 ]	(	0	0	0	)
directiondef	[ 0	locks=0 ]	(	1	0	0	)
float4def	[ 0	locks=0 ]	(	0	0	0	0	)
float9def	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
float16def	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
stringdef	[ 0	locks=0 ]	(	""	)
stringtype	[ 0	locks=0 ]	(	off	)
opfilter	[ 0	locks=0 ]	(	!!OBJ/LIGHT!!	)
filedef	[ 0	locks=0 ]	(	""	)
imagedef	[ 0	locks=0 ]	(	""	)
geometrydef	[ 0	locks=0 ]	(	""	)
colordef	[ 0	locks=0 ]	(	0	0	0	)
color4def	[ 0	locks=0 ]	(	0	0	0	1	)
}
0707070000010000000006660000000000000000010000001147726722100002200000000040shop/clay/Kd.init type = parameter
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100002100000000656shop/clay/Kd.def comment ""
position 5.18435 5.75064
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1276034126
  modify 1278596739
  author jroberts@alabama.sidefx.com
  access 0777
}
color UT_Color RGB 1 1 0.6 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100002200000002705shop/clay/Kd.parm {
version 0.8
parmname	[ 0	locks=0 ]	(	Kd	)
parmlabel	[ 0	locks=0 ]	(	"Diffuse Reflectivity"	)
showlabel	[ 0	locks=0 ]	(	"on"	)
parmtype	[ 0	locks=0 ]	(	"float"	)
separator1	[ 0	locks=0 ]	(	)
useasparmdefiner	[ 0	locks=0 ]	(	"off"	)
parmuniform	[ 0	locks=0 ]	(	"on"	)
usebound	[ 0	locks=0 ]	(	"off"	)
exportparm	[ 0	locks=0 ]	(	"off"	)
exportcontext	[ 0	locks=0 ]	(	""	)
providemenu	[ 0	locks=0 ]	(	"off"	)
menuchoices	[ 0	locks=0 ]	(	""	)
separator2	[ 0	locks=0 ]	(	)
invisible	[ 0	locks=0 ]	(	"off"	)
joinnext	[ 0	locks=0 ]	(	"off"	)
disablewhen	[ 0	locks=0 ]	(	"{ denable == 0 }"	)
callback	[ 0	locks=0 ]	(	""	)
help	[ 0	locks=0 ]	(	""	)
separator3	[ 0	locks=0 ]	(	)
stdswitcher	[ 0	locks=0 ]	(	0	0	0	0	0	)
floatdef	[ 0	locks=0 ]	(	0.5	)
rangeflt	[ 0	locks=0 ]	(	0	1	)
intdef	[ 0	locks=0 ]	(	0	)
rangeint	[ 0	locks=0 ]	(	0	10	)
toggledef	[ 0	locks=0 ]	(	"off"	)
angledef	[ 0	locks=0 ]	(	0	)
float3def	[ 0	locks=0 ]	(	0	0	0	)
vectordef	[ 0	locks=0 ]	(	0	0	0	)
normaldef	[ 0	locks=0 ]	(	0	0	0	)
pointdef	[ 0	locks=0 ]	(	0	0	0	)
directiondef	[ 0	locks=0 ]	(	1	0	0	)
float4def	[ 0	locks=0 ]	(	0	0	0	0	)
float9def	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
float16def	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
stringdef	[ 0	locks=0 ]	(	""	)
stringtype	[ 0	locks=0 ]	(	off	)
opfilter	[ 0	locks=0 ]	(	!!OBJ/LIGHT!!	)
filedef	[ 0	locks=0 ]	(	""	)
imagedef	[ 0	locks=0 ]	(	""	)
geometrydef	[ 0	locks=0 ]	(	""	)
colordef	[ 0	locks=0 ]	(	0	0	0	)
color4def	[ 0	locks=0 ]	(	0	0	0	0	)
}
0707070000010000000006660000000000000000010000001147726722100002600000000040shop/clay/drough.init type = parameter
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100002500000000656shop/clay/drough.def comment ""
position 5.18435 3.18157
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1276034129
  modify 1278596737
  author jroberts@alabama.sidefx.com
  access 0777
}
color UT_Color RGB 1 1 0.6 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100002600000002704shop/clay/drough.parm {
version 0.8
parmname	[ 0	locks=0 ]	(	drough	)
parmlabel	[ 0	locks=0 ]	(	"Diffuse Roughness"	)
showlabel	[ 0	locks=0 ]	(	"on"	)
parmtype	[ 0	locks=0 ]	(	"float"	)
separator1	[ 0	locks=0 ]	(	)
useasparmdefiner	[ 0	locks=0 ]	(	"off"	)
parmuniform	[ 0	locks=0 ]	(	"on"	)
usebound	[ 0	locks=0 ]	(	"off"	)
exportparm	[ 0	locks=0 ]	(	"off"	)
exportcontext	[ 0	locks=0 ]	(	""	)
providemenu	[ 0	locks=0 ]	(	"off"	)
menuchoices	[ 0	locks=0 ]	(	""	)
separator2	[ 0	locks=0 ]	(	)
invisible	[ 0	locks=0 ]	(	"off"	)
joinnext	[ 0	locks=0 ]	(	"off"	)
disablewhen	[ 0	locks=0 ]	(	"{ denable == 0 }"	)
callback	[ 0	locks=0 ]	(	""	)
help	[ 0	locks=0 ]	(	""	)
separator3	[ 0	locks=0 ]	(	)
stdswitcher	[ 0	locks=0 ]	(	0	0	0	0	0	)
floatdef	[ 0	locks=0 ]	(	0	)
rangeflt	[ 0	locks=0 ]	(	0	1	)
intdef	[ 0	locks=0 ]	(	0	)
rangeint	[ 0	locks=0 ]	(	0	10	)
toggledef	[ 0	locks=0 ]	(	"off"	)
angledef	[ 0	locks=0 ]	(	0	)
float3def	[ 0	locks=0 ]	(	0	0	0	)
vectordef	[ 0	locks=0 ]	(	0	0	0	)
normaldef	[ 0	locks=0 ]	(	0	0	0	)
pointdef	[ 0	locks=0 ]	(	0	0	0	)
directiondef	[ 0	locks=0 ]	(	1	0	0	)
float4def	[ 0	locks=0 ]	(	0	0	0	0	)
float9def	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
float16def	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
stringdef	[ 0	locks=0 ]	(	""	)
stringtype	[ 0	locks=0 ]	(	off	)
opfilter	[ 0	locks=0 ]	(	!!OBJ/LIGHT!!	)
filedef	[ 0	locks=0 ]	(	""	)
imagedef	[ 0	locks=0 ]	(	""	)
geometrydef	[ 0	locks=0 ]	(	""	)
colordef	[ 0	locks=0 ]	(	0	0	0	)
color4def	[ 0	locks=0 ]	(	0	0	0	0	)
}
0707070000010000000006660000000000000000010000001147726722100002700000000040shop/clay/opacity.init type = parameter
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100002600000000656shop/clay/opacity.def comment ""
position 5.18435 2.03097
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1276034139
  modify 1278596737
  author jroberts@alabama.sidefx.com
  access 0777
}
color UT_Color RGB 1 1 0.6 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100002700000002651shop/clay/opacity.parm {
version 0.8
parmname	[ 0	locks=0 ]	(	opacity	)
parmlabel	[ 0	locks=0 ]	(	Opacity	)
showlabel	[ 0	locks=0 ]	(	"on"	)
parmtype	[ 0	locks=0 ]	(	"color"	)
separator1	[ 0	locks=0 ]	(	)
useasparmdefiner	[ 0	locks=0 ]	(	"off"	)
parmuniform	[ 0	locks=0 ]	(	"on"	)
usebound	[ 0	locks=0 ]	(	"off"	)
exportparm	[ 0	locks=0 ]	(	"off"	)
exportcontext	[ 0	locks=0 ]	(	""	)
providemenu	[ 0	locks=0 ]	(	"off"	)
menuchoices	[ 0	locks=0 ]	(	""	)
separator2	[ 0	locks=0 ]	(	)
invisible	[ 0	locks=0 ]	(	"off"	)
joinnext	[ 0	locks=0 ]	(	"off"	)
disablewhen	[ 0	locks=0 ]	(	""	)
callback	[ 0	locks=0 ]	(	""	)
help	[ 0	locks=0 ]	(	""	)
separator3	[ 0	locks=0 ]	(	)
stdswitcher	[ 0	locks=0 ]	(	0	0	0	0	0	)
floatdef	[ 0	locks=0 ]	(	0	)
rangeflt	[ 0	locks=0 ]	(	0	1	)
intdef	[ 0	locks=0 ]	(	0	)
rangeint	[ 0	locks=0 ]	(	0	10	)
toggledef	[ 0	locks=0 ]	(	"off"	)
angledef	[ 0	locks=0 ]	(	0	)
float3def	[ 0	locks=0 ]	(	0	0	0	)
vectordef	[ 0	locks=0 ]	(	0	0	0	)
normaldef	[ 0	locks=0 ]	(	0	0	0	)
pointdef	[ 0	locks=0 ]	(	0	0	0	)
directiondef	[ 0	locks=0 ]	(	1	0	0	)
float4def	[ 0	locks=0 ]	(	0	0	0	0	)
float9def	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
float16def	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
stringdef	[ 0	locks=0 ]	(	""	)
stringtype	[ 0	locks=0 ]	(	off	)
opfilter	[ 0	locks=0 ]	(	!!OBJ/LIGHT!!	)
filedef	[ 0	locks=0 ]	(	""	)
imagedef	[ 0	locks=0 ]	(	""	)
geometrydef	[ 0	locks=0 ]	(	""	)
colordef	[ 0	locks=0 ]	(	1	1	1	)
color4def	[ 0	locks=0 ]	(	0	0	0	0	)
}
0707070000010000000006660000000000000000010000001147726722100003400000000040shop/clay/useBaseColor.init type = parameter
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100003300000000660shop/clay/useBaseColor.def comment ""
position 0.854534 8.71903
cachesize 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 off exposed off lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1276038525
  modify 1278596722
  author jroberts@alabama.sidefx.com
  access 0777
}
color UT_Color RGB 1 1 0.6 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100003400000002666shop/clay/useBaseColor.parm {
version 0.8
parmname	[ 0	locks=0 ]	(	useBaseColor	)
parmlabel	[ 0	locks=0 ]	(	"Use Base Color"	)
showlabel	[ 0	locks=0 ]	(	"on"	)
parmtype	[ 0	locks=0 ]	(	"toggle"	)
separator1	[ 0	locks=0 ]	(	)
useasparmdefiner	[ 0	locks=0 ]	(	"off"	)
parmuniform	[ 0	locks=0 ]	(	"on"	)
usebound	[ 0	locks=0 ]	(	"off"	)
exportparm	[ 0	locks=0 ]	(	"off"	)
exportcontext	[ 0	locks=0 ]	(	""	)
providemenu	[ 0	locks=0 ]	(	"off"	)
menuchoices	[ 0	locks=0 ]	(	""	)
separator2	[ 0	locks=0 ]	(	)
invisible	[ 0	locks=0 ]	(	"off"	)
joinnext	[ 0	locks=0 ]	(	"off"	)
disablewhen	[ 0	locks=0 ]	(	""	)
callback	[ 0	locks=0 ]	(	""	)
help	[ 0	locks=0 ]	(	""	)
separator3	[ 0	locks=0 ]	(	)
stdswitcher	[ 0	locks=0 ]	(	0	0	0	0	0	)
floatdef	[ 0	locks=0 ]	(	0	)
rangeflt	[ 0	locks=0 ]	(	0	1	)
intdef	[ 0	locks=0 ]	(	0	)
rangeint	[ 0	locks=0 ]	(	0	1	)
toggledef	[ 0	locks=0 ]	(	"on"	)
angledef	[ 0	locks=0 ]	(	0	)
float3def	[ 0	locks=0 ]	(	0	0	0	)
vectordef	[ 0	locks=0 ]	(	0	0	0	)
normaldef	[ 0	locks=0 ]	(	0	0	0	)
pointdef	[ 0	locks=0 ]	(	0	0	0	)
directiondef	[ 0	locks=0 ]	(	1	0	0	)
float4def	[ 0	locks=0 ]	(	0	0	0	0	)
float9def	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
float16def	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
stringdef	[ 0	locks=0 ]	(	""	)
stringtype	[ 0	locks=0 ]	(	off	)
opfilter	[ 0	locks=0 ]	(	!!OBJ/LIGHT!!	)
filedef	[ 0	locks=0 ]	(	""	)
imagedef	[ 0	locks=0 ]	(	""	)
geometrydef	[ 0	locks=0 ]	(	""	)
colordef	[ 0	locks=0 ]	(	0	0	0	)
color4def	[ 0	locks=0 ]	(	0	0	0	0	)
}
0707070000010000000006660000000000000000010000001147726722100003100000000040shop/clay/baseColor.init type = parameter
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100003000000000660shop/clay/baseColor.def comment ""
position -0.73116 8.79525
cachesize 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 off exposed off lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1276038527
  modify 1278596722
  author jroberts@alabama.sidefx.com
  access 0777
}
color UT_Color RGB 1 1 0.6 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100003100000002705shop/clay/baseColor.parm {
version 0.8
parmname	[ 0	locks=0 ]	(	baseColor	)
parmlabel	[ 0	locks=0 ]	(	"Base Color"	)
showlabel	[ 0	locks=0 ]	(	"on"	)
parmtype	[ 0	locks=0 ]	(	"color"	)
separator1	[ 0	locks=0 ]	(	)
useasparmdefiner	[ 0	locks=0 ]	(	"off"	)
parmuniform	[ 0	locks=0 ]	(	"on"	)
usebound	[ 0	locks=0 ]	(	"off"	)
exportparm	[ 0	locks=0 ]	(	"off"	)
exportcontext	[ 0	locks=0 ]	(	""	)
providemenu	[ 0	locks=0 ]	(	"off"	)
menuchoices	[ 0	locks=0 ]	(	""	)
separator2	[ 0	locks=0 ]	(	)
invisible	[ 0	locks=0 ]	(	"off"	)
joinnext	[ 0	locks=0 ]	(	"off"	)
disablewhen	[ 0	locks=0 ]	(	"{ useBaseColor == 0 }"	)
callback	[ 0	locks=0 ]	(	""	)
help	[ 0	locks=0 ]	(	""	)
separator3	[ 0	locks=0 ]	(	)
stdswitcher	[ 0	locks=0 ]	(	3	3	3	3	3	)
floatdef	[ 0	locks=0 ]	(	0	)
rangeflt	[ 0	locks=0 ]	(	0	1	)
intdef	[ 0	locks=0 ]	(	0	)
rangeint	[ 0	locks=0 ]	(	0	10	)
toggledef	[ 0	locks=0 ]	(	"off"	)
angledef	[ 0	locks=0 ]	(	0	)
float3def	[ 0	locks=0 ]	(	0	0	0	)
vectordef	[ 0	locks=0 ]	(	0	0	0	)
normaldef	[ 0	locks=0 ]	(	0	0	0	)
pointdef	[ 0	locks=0 ]	(	0	0	0	)
directiondef	[ 0	locks=0 ]	(	1	0	0	)
float4def	[ 0	locks=0 ]	(	0	0	0	0	)
float9def	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
float16def	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
stringdef	[ 0	locks=0 ]	(	""	)
stringtype	[ 0	locks=0 ]	(	off	)
opfilter	[ 0	locks=0 ]	(	!!OBJ/LIGHT!!	)
filedef	[ 0	locks=0 ]	(	""	)
imagedef	[ 0	locks=0 ]	(	""	)
geometrydef	[ 0	locks=0 ]	(	""	)
colordef	[ 0	locks=0 ]	(	1	1	1	)
color4def	[ 0	locks=0 ]	(	0	0	0	0	)
}
0707070000010000000006660000000000000000010000001147726722100003500000000040shop/clay/usePointColor.init type = parameter
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100003400000000660shop/clay/usePointColor.def comment ""
position -1.84928 8.24125
cachesize 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 off exposed off lowdetail off mediumdetail off highdetail on
inputs
{
}
stat
{
  create 1276038588
  modify 1278596722
  author jroberts@alabama.sidefx.com
  access 0777
}
color UT_Color RGB 1 1 0.6 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100003500000002670shop/clay/usePointColor.parm {
version 0.8
parmname	[ 0	locks=0 ]	(	usePointColor	)
parmlabel	[ 0	locks=0 ]	(	"Use Point Color"	)
showlabel	[ 0	locks=0 ]	(	"on"	)
parmtype	[ 0	locks=0 ]	(	"toggle"	)
separator1	[ 0	locks=0 ]	(	)
useasparmdefiner	[ 0	locks=0 ]	(	"off"	)
parmuniform	[ 0	locks=0 ]	(	"on"	)
usebound	[ 0	locks=0 ]	(	"off"	)
exportparm	[ 0	locks=0 ]	(	"off"	)
exportcontext	[ 0	locks=0 ]	(	""	)
providemenu	[ 0	locks=0 ]	(	"off"	)
menuchoices	[ 0	locks=0 ]	(	""	)
separator2	[ 0	locks=0 ]	(	)
invisible	[ 0	locks=0 ]	(	"off"	)
joinnext	[ 0	locks=0 ]	(	"off"	)
disablewhen	[ 0	locks=0 ]	(	""	)
callback	[ 0	locks=0 ]	(	""	)
help	[ 0	locks=0 ]	(	""	)
separator3	[ 0	locks=0 ]	(	)
stdswitcher	[ 0	locks=0 ]	(	0	0	0	0	0	)
floatdef	[ 0	locks=0 ]	(	0	)
rangeflt	[ 0	locks=0 ]	(	0	1	)
intdef	[ 0	locks=0 ]	(	0	)
rangeint	[ 0	locks=0 ]	(	0	1	)
toggledef	[ 0	locks=0 ]	(	"on"	)
angledef	[ 0	locks=0 ]	(	0	)
float3def	[ 0	locks=0 ]	(	0	0	0	)
vectordef	[ 0	locks=0 ]	(	0	0	0	)
normaldef	[ 0	locks=0 ]	(	0	0	0	)
pointdef	[ 0	locks=0 ]	(	0	0	0	)
directiondef	[ 0	locks=0 ]	(	1	0	0	)
float4def	[ 0	locks=0 ]	(	0	0	0	0	)
float9def	[ 0	locks=0 ]	(	1	0	0	0	1	0	0	0	1	)
float16def	[ 0	locks=0 ]	(	1	0	0	0	0	1	0	0	0	0	1	0	0	0	0	1	)
stringdef	[ 0	locks=0 ]	(	""	)
stringtype	[ 0	locks=0 ]	(	off	)
opfilter	[ 0	locks=0 ]	(	!!OBJ/LIGHT!!	)
filedef	[ 0	locks=0 ]	(	""	)
imagedef	[ 0	locks=0 ]	(	""	)
geometrydef	[ 0	locks=0 ]	(	""	)
colordef	[ 0	locks=0 ]	(	0	0	0	)
color4def	[ 0	locks=0 ]	(	0	0	0	0	)
}
0707070000010000000006660000000000000000010000001147726722100003500000000043shop/clay/surfacemodel2.init type = surfacemodel
matchesdef = 1
0707070000010000000006660000000000000000010000001147726722100003400000002643shop/clay/surfacemodel2.def comment ""
position 7.18362 -6.81616
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	"" 0 1
1 	"" 0 1
2 	"" 0 1
3 	"" 0 1
4 	"" 0 1
5 	"" 0 1
6 	"" 0 1
7 	"" 0 0
8 	"" 0 0
9 	"" 0 0
10 	"" 0 0
11 	"" 0 0
12 	"" 0 0
13 	"" 0 0
14 	"" 0 0
15 	"" 0 0
16 	"" 0 0
17 	Kd 0 1
18 	"" 0 0
19 	surfaceColor 0 1
20 	drough 0 0
21 	"" 0 0
22 	"" 0 1
23 	"" 0 1
24 	"" 0 0
25 	"" 0 0
26 	"" 0 0
27 	"" 0 0
28 	"" 0 0
29 	"" 0 0
30 	"" 0 0
31 	"" 0 0
32 	"" 0 0
33 	"" 0 0
34 	"" 0 0
35 	"" 0 0
36 	"" 0 0
37 	"" 0 0
38 	"" 0 0
39 	"" 0 1
40 	"" 0 0
41 	"" 0 1
42 	"" 0 0
43 	"" 0 0
44 	"" 0 0
45 	"" 0 0
46 	"" 0 0
47 	"" 0 0
48 	"" 0 0
49 	"" 0 0
50 	"" 0 0
51 	"" 0 0
52 	"" 0 0
53 	"" 0 0
54 	"" 0 0
55 	"" 0 0
56 	"" 0 0
57 	"" 0 0
58 	"" 0 0
59 	"" 0 0
60 	"" 0 0
61 	"" 0 0
62 	"" 0 0
63 	"" 0 0
64 	"" 0 0
65 	"" 0 0
66 	"" 0 0
67 	"" 0 1
68 	"" 0 0
69 	"" 0 1
70 	"" 0 0
71 	"" 0 0
72 	"" 0 0
73 	"" 0 0
74 	"" 0 0
75 	"" 0 0
76 	"" 0 0
77 	"" 0 0
78 	"" 0 1
79 	"" 0 1
80 	"" 0 1
81 	opacity 0 1
82 	"" 0 0
83 	"" 0 0
84 	"" 0 0
85 	"" 0 0
86 	"" 0 0
87 	"" 0 0
88 	"" 0 0
89 	"" 0 0
90 	"" 0 0
}
stat
{
  create 1278596574
  modify 1278601346
  author jroberts@alabama.sidefx.com
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100003500000005477shop/clay/surfacemodel2.parm {
version 0.8
facefwd	[ 0	locks=0 ]	(	"on"	)
conserveenergy	[ 0	locks=0 ]	(	"on"	)
fres_enable	[ 0	locks=0 ]	(	"off"	)
fres_style	[ 0	locks=0 ]	(	physical	)
ior_in	[ 0	locks=0 ]	(	1.20000005	)
ior_out	[ 0	locks=0 ]	(	1	)
tan_style	[ 0	locks=0 ]	(	geo	)
maxdist_enable	[ 0	locks=0 ]	(	"off"	)
maxdist	[ 0	locks=0 ]	(	10	)
diffuse_folder	[ 0	locks=0 ]	(	2	2	2	2	2	2	)
diff_enable	[ 0	locks=0 ]	(	"on"	)
diff_int	[ 0	locks=0 ]	(	0.5	)
diff_min	[ 0	locks=0 ]	(	0	)
diff_clr	[ 0	locks=0 ]	(	1	1	1	)
diff_rough	[ 0	locks=0 ]	(	0	)
sss_enable	[ 0	locks=0 ]	(	"off"	)
sss_int	[ 0	locks=0 ]	(	0.5	)
sss_clr	[ 0	locks=0 ]	(	1	1	1	)
sss_min	[ 0	locks=0 ]	(	0	)
sss_atten	[ 0	locks=0 ]	(	10	)
sss_attenclr	[ 0	locks=0 ]	(	1	1	1	)
sss_phase	[ 0	locks=0 ]	(	0	)
sss_1enable	[ 0	locks=0 ]	(	"on"	)
sss_1intensity	[ 0	locks=0 ]	(	1	)
sss_1quality	[ 0	locks=0 ]	(	1	)
sss_2enable	[ 0	locks=0 ]	(	"on"	)
sss_pcmode	[ 0	locks=0 ]	(	"0"	)
sss_pcname	[ 0	locks=0 ]	(	default.pc	)
sss_2intensity	[ 0	locks=0 ]	(	1	)
sss_2quality	[ 0	locks=0 ]	(	1	)
folder0	[ 0	locks=0 ]	(	0	0	)
refl_enable	[ 0	locks=0 ]	(	"off"	)
refl_lights	[ 0	locks=0 ]	(	"on"	)
spec_model	[ 0	locks=0 ]	(	0	)
spec_int	[ 0	locks=0 ]	(	0.100000001	)
spec_min	[ 0	locks=0 ]	(	0	)
spec_clr	[ 0	locks=0 ]	(	1	1	1	)
spec_angle	[ 0	locks=0 ]	(	10	)
spec_aniso	[ 0	locks=0 ]	(	0	)
refl_objs	[ 0	locks=0 ]	(	"on"	)
refl_qual	[ 0	locks=0 ]	(	1	)
refl_sep	[ 0	locks=0 ]	(	"off"	)
refl_int	[ 0	locks=0 ]	(	0.100000001	)
refl_clr	[ 0	locks=0 ]	(	1	1	1	)
refl_angle	[ 0	locks=0 ]	(	0	)
refl_enable2	[ 0	locks=0 ]	(	"off"	)
refl_lights2	[ 0	locks=0 ]	(	"on"	)
spec_model2	[ 0	locks=0 ]	(	0	)
spec_int2	[ 0	locks=0 ]	(	0.100000001	)
spec_min2	[ 0	locks=0 ]	(	0	)
spec_clr2	[ 0	locks=0 ]	(	1	1	1	)
spec_angle2	[ 0	locks=0 ]	(	10	)
spec_aniso2	[ 0	locks=0 ]	(	0	)
refl_objs2	[ 0	locks=0 ]	(	"on"	)
refl_qual2	[ 0	locks=0 ]	(	1	)
refl_sep2	[ 0	locks=0 ]	(	"off"	)
refl_int2	[ 0	locks=0 ]	(	0.100000001	)
refl_clr2	[ 0	locks=0 ]	(	1	1	1	)
refl_angle2	[ 0	locks=0 ]	(	0	)
refr_enable	[ 0	locks=0 ]	(	"off"	)
refr_lights	[ 0	locks=0 ]	(	"on"	)
refr_model	[ 0	locks=0 ]	(	phong	)
refr_int	[ 0	locks=0 ]	(	1	)
refr_min	[ 0	locks=0 ]	(	0	)
refr_clr	[ 0	locks=0 ]	(	1	1	1	)
refr_angle	[ 0	locks=0 ]	(	0	)
refr_aniso	[ 0	locks=0 ]	(	0	)
refr_objs	[ 0	locks=0 ]	(	"on"	)
refr_qual	[ 0	locks=0 ]	(	1	)
atten_enable	[ 0	locks=0 ]	(	"off"	)
atten_den	[ 0	locks=0 ]	(	0.5	)
atten_clr	[ 0	locks=0 ]	(	1	1	1	)
refr_thin	[ 0	locks=0 ]	(	"off"	)
emit_enable	[ 0	locks=0 ]	(	"off"	)
emit_int	[ 0	locks=0 ]	(	1	)
emit_clr	[ 0	locks=0 ]	(	1	1	1	)
emit_illum	[ 0	locks=0 ]	(	"on"	)
opac_int	[ 0	locks=0 ]	(	1	)
opac_clr	[ 0	locks=0 ]	(	1	1	1	)
fake_enable	[ 0	locks=0 ]	(	"on"	)
fake_min	[ 0	locks=0 ]	(	0	)
fake_max	[ 0	locks=0 ]	(	1	)
opac_falloff	[ 0	locks=0 ]	(	"off"	)
opac_para	[ 0	locks=0 ]	(	0	)
opac_perp	[ 0	locks=0 ]	(	1	)
opac_rolloff	[ 0	locks=0 ]	(	1	)
}
0707070000010000000006660000000000000000010000001147726722100002700000000036shop/clay/collect.init type = collect
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100002600000000710shop/clay/collect.def comment ""
position 11.4345 5.75064
cachesize 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 off exposed on lowdetail off mediumdetail off highdetail on
inputs
{
0 	surface_output 0 1
}
stat
{
  create 1278596644
  modify 1278601344
  author jroberts@alabama.sidefx.com
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100002700000000020shop/clay/collect.parm {
version 0.8
}
0707070000010000000006660000000000000000010000001147726722100001000000000574vex.def comment ""
position 5.5 2.5
cachesize 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 off exposed on
inputs
{
}
stat
{
  create 1291674342
  modify 1291674343
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100001100000000020vex.parm {
version 0.8
}
0707070000010000000006660000000000000000010000001147726722100003000000000032obj/sphere_object1.init type = geo
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100002700000000751obj/sphere_object1.def objflags objflags =  origin off
pretransform UT_DMatrix4 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1
comment ""
position -5.0832 2.6826
cachesize 1
flags =  lock off model off template off footprint off xray off bypass off display on render off highlight off unload off savedata off compress off exposed on selectable on
inputs
{
}
stat
{
  create 1291674777
  modify 1291674830
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100004000000020166obj/sphere_object1.spareparmdef     group {
	name	"stdswitcher5"
	label	"Transform"

	parm {
	    name	"keeppos"
	    baseparm
	    joinnext
	    export	none
	}
	parm {
	    name	"pre_xform"
	    baseparm
	    export	none
	}
	parm {
	    name	"xOrd"
	    baseparm
	    joinnext
	    export	none
	}
	parm {
	    name	"rOrd"
	    baseparm
	    export	none
	}
	parm {
	    name	"t"
	    baseparm
	    export	all
	}
	parm {
	    name	"r"
	    baseparm
	    export	all
	}
	parm {
	    name	"s"
	    baseparm
	    export	none
	}
	parm {
	    name	"p"
	    baseparm
	    export	none
	}
	parm {
	    name	"scale"
	    baseparm
	    export	none
	}
	parm {
	    name	"lookatpath"
	    baseparm
	    export	none
	}
	parm {
	    name	"lookup"
	    baseparm
	    export	none
	}
	parm {
	    name	"pathobjpath"
	    baseparm
	    export	none
	}
	parm {
	    name	"roll"
	    baseparm
	    export	none
	}
	parm {
	    name	"pos"
	    baseparm
	    export	none
	}
	parm {
	    name	"uparmtype"
	    baseparm
	    export	none
	}
	parm {
	    name	"pathorient"
	    baseparm
	    export	none
	}
	parm {
	    name	"up"
	    baseparm
	    export	none
	}
	parm {
	    name	"bank"
	    baseparm
	    export	none
	}
    }

    group {
	name	"stdswitcher5_1"
	label	"Material"

	parm {
	    name	"shop_materialpath"
	    baseparm
	    joinnext
	    export	none
	}
	parm {
	    name	"shop_materialopts"
	    baseparm
	    export	none
	}
    }

    group {
	name	"stdswitcher5_2"
	label	"Render"

	parm {
	    name	"tdisplay"
	    baseparm
	    joinnext
	    export	none
	}
	parm {
	    name	"display"
	    baseparm
	    export	none
	}
	parm {
	    name	"vm_phantom"
	    label	"Phantom"
	    type	toggle
	    default	{ "0" }
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "spare_category" "Render" }
	}
	parm {
	    name	"vm_renderable"
	    label	"Renderable"
	    type	toggle
	    default	{ "1" }
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "spare_category" "Render" }
	}
	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"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Shading" }
	    }
	    parm {
		name	"reflectmask"
		label	"Reflection Mask"
		type	oplist
		default	{ "*" }
		help	"Objects that will be reflected on this object."
		range	{ 0 1 }
		export	none
		parmtag	{ "oprelative" "/obj" }
		parmtag	{ "opfilter" "!!OBJ/GEOMETRY!!" }
		parmtag	{ "spare_category" "Shading" }
		parmtag	{ "opexpand" "1" }
	    }
	    parm {
		name	"refractmask"
		label	"Refraction Mask"
		type	oplist
		default	{ "*" }
		help	"Objects that will be refracted on this object."
		range	{ 0 1 }
		export	none
		parmtag	{ "oprelative" "/obj" }
		parmtag	{ "opfilter" "!!OBJ/GEOMETRY!!" }
		parmtag	{ "spare_category" "Shading" }
		parmtag	{ "opexpand" "1" }
	    }
	    parm {
		name	"lightmask"
		label	"Light Mask"
		type	oplist
		default	{ "*" }
		help	"Lights that illuminate this object."
		range	{ 0 1 }
		export	none
		parmtag	{ "oprelative" "/obj" }
		parmtag	{ "opfilter" "!!OBJ/LIGHT!!" }
		parmtag	{ "spare_category" "Shading" }
		parmtag	{ "opexpand" "1" }
	    }
	    parm {
		name	"vm_volumefilter"
		label	"Volume Filter"
		type	string
		default	{ "gaussian" }
		menu	{
		    "box"	"Box Filter"
		    "gaussian"	"Gaussian"
		    "bartlett"	"Bartlett (triangle)"
		    "catrom"	"Catmull-Rom"
		    "hanning"	"Hanning"
		    "blackman"	"Blackman"
		    "sinc"	"Sinc (sharpening)"
		}
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Shading" }
	    }
	    parm {
		name	"vm_volumefilterwidth"
		label	"Volume Filter Width"
		type	float
		default	{ "1.5" }
		range	{ 0.001 5 }
		export	none
		parmtag	{ "spare_category" "Shading" }
	    }
	    parm {
		name	"vm_matte"
		label	"Matte shading"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Shading" }
	    }
	    parm {
		name	"vm_rayshade"
		label	"Raytrace Shading"
		type	toggle
		default	{ "0" }
		help	"Shade every sample rather than shading micropolygon vertices.  This setting enables the raytrace rendering engine on a per-object basis."
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Shading" }
	    }
	}

	group {
	    name	"folder0_1"
	    label	"Sampling"

	    parm {
		name	"geo_velocityblur"
		label	"Geometry Velocity Blur"
		type	toggle
		default	{ "0" }
		disablewhen	"{ allowmotionblur == 0 }"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Sampling" }
	    }
	}

	group {
	    name	"folder0_2"
	    label	"Dicing"

	    parm {
		name	"vm_shadingquality"
		label	"Shading Quality"
		type	float
		default	{ "1" }
		disablewhen	"{ vm_renderengine != micropoly vm_renderengine != pbrmicropoly }"
		range	{ 0 10 }
		export	none
		parmtag	{ "spare_category" "Dicing" }
	    }
	    parm {
		name	"vm_rayshadingquality"
		label	"Ray Shading Quality"
		type	float
		default	{ "1" }
		range	{ 0 10 }
		export	none
		parmtag	{ "spare_category" "Dicing" }
	    }
	    parm {
		name	"vm_flatness"
		label	"Dicing Flatness"
		type	float
		default	{ "0.05" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Dicing" }
	    }
	    parm {
		name	"vm_raypredice"
		label	"Ray Predicing"
		type	integer
		default	{ "0" }
		menu	{
		    "off"	"Disable Predicing"
		    "on"	"Full Predicing"
		    "bounds"	"Precompute Bounds"
		}
		range	{ 0 10 }
		export	none
		parmtag	{ "spare_category" "Dicing" }
	    }
	    parm {
		name	"vm_curvesurface"
		label	"Shade Curves As Surfaces"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Dicing" }
	    }
	}

	group {
	    name	"folder0_3"
	    label	"Geometry"

	    parm {
		name	"vm_rmbackface"
		label	"Backface Removal (Mantra)"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Geometry" }
	    }
	    parm {
		name	"shop_geometrypath"
		label	"Procedural Shader"
		type	oppath
		default	{ "" }
		range	{ 0 1 }
		export	none
		parmtag	{ "oprelative" "." }
		parmtag	{ "opfilter" "!!SHOP/GEOMETRY!!" }
		parmtag	{ "spare_category" "Geometry" }
	    }
	    parm {
		name	"vm_forcegeometry"
		label	"Force Procedural Geometry Output"
		type	toggle
		default	{ "1" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Geometry" }
	    }
	    parm {
		name	"vm_rendersubd"
		label	"Polygons As Subdivision (Mantra)"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Geometry" }
	    }
	    parm {
		name	"vm_renderpoints"
		label	"Render As Points (Mantra)"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Geometry" }
	    }
	    parm {
		name	"vm_usenforpoints"
		label	"Use N For Point Rendering"
		type	toggle
		default	{ "0" }
		disablewhen	"{ vm_renderpoints == 0 }"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Geometry" }
	    }
	    parm {
		name	"vm_metavolume"
		label	"Metaballs as Volume"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
		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 }
		export	none
		parmtag	{ "spare_category" "Geometry" }
	    }
	    parm {
		name	"vm_computeN"
		label	"Automatically Compute Normals"
		type	toggle
		default	{ "1" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Geometry" }
	    }
	    parm {
		name	"vm_overridedetail"
		label	"Ignore Geometry Attribute Shaders"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Geometry" }
	    }
	}

    }

    group {
	name	"stdswitcher5_3"
	label	"Misc"

	parm {
	    name	"use_dcolor"
	    baseparm
	    export	none
	}
	parm {
	    name	"dcolor"
	    baseparm
	    export	none
	}
	parm {
	    name	"picking"
	    baseparm
	    export	none
	}
	parm {
	    name	"pickscript"
	    baseparm
	    export	none
	}
	parm {
	    name	"caching"
	    baseparm
	    export	none
	}
	parm {
	    name	"vport_shadeopen"
	    baseparm
	    export	none
	}
	parm {
	    name	"vport_displayassubdiv"
	    baseparm
	    invisible
	    export	none
	}
    }

0707070000010000000006660000000000000000010000001147726722100003000000003710obj/sphere_object1.parm {
version 0.8
stdswitcher	[ 0	locks=0 ]	(	0	0	0	0	)
keeppos	[ 0	locks=0 ]	(	"off"	)
pre_xform	[ 0	locks=0 ]	(	0	)
xOrd	[ 0	locks=0 ]	(	"srt"	)
rOrd	[ 0	locks=0 ]	(	"xyz"	)
t	[ 0	locks=0 ]	(	0	1	0	)
r	[ 0	locks=0 ]	(	0	0	0	)
s	[ 0	locks=0 ]	(	1	1	1	)
p	[ 0	locks=0 ]	(	0	0	0	)
scale	[ 0	locks=0 ]	(	1	)
lookatpath	[ 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 ]	(	""	)
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 ]	(	"off"	)
vport_shadeopen	[ 0	locks=0 ]	(	"off"	)
vport_displayassubdiv	[ 0	locks=0 ]	(	"off"	)
stdswitcher5	[ 0	locks=0 ]	(	0	0	0	0	)
vm_phantom	[ 0	locks=0 ]	(	"off"	)
vm_renderable	[ 0	locks=0 ]	(	"on"	)
folder0	[ 0	locks=0 ]	(	0	0	0	0	)
categories	[ 0	locks=0 ]	(	""	)
reflectmask	[ 0	locks=0 ]	(	*	)
refractmask	[ 0	locks=0 ]	(	*	)
lightmask	[ 0	locks=0 ]	(	*	)
vm_volumefilter	[ 0	locks=0 ]	(	gaussian	)
vm_volumefilterwidth	[ 0	locks=0 ]	(	1.5	)
vm_matte	[ 0	locks=0 ]	(	"off"	)
vm_rayshade	[ 0	locks=0 ]	(	"off"	)
geo_velocityblur	[ 0	locks=0 ]	(	"off"	)
vm_shadingquality	[ 0	locks=0 ]	(	1	)
vm_rayshadingquality	[ 0	locks=0 ]	(	1	)
vm_flatness	[ 0	locks=0 ]	(	0.0500000007	)
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_rendersubd	[ 0	locks=0 ]	(	"off"	)
vm_renderpoints	[ 0	locks=0 ]	(	"off"	)
vm_usenforpoints	[ 0	locks=0 ]	(	"off"	)
vm_metavolume	[ 0	locks=0 ]	(	"off"	)
vm_coving	[ 0	locks=0 ]	(	1	)
vm_computeN	[ 0	locks=0 ]	(	"on"	)
vm_overridedetail	[ 0	locks=0 ]	(	"off"	)
}
0707070000010000000006660000000000000000010000001147726722100003400000000072obj/sphere_object1.userdata     ___toolcount___    1 ___toolid___    
sop_sphere0707070000010000000006660000000000000000010000001147726722100004000000000035obj/sphere_object1/sphere1.init type = sphere
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100003700000000612obj/sphere_object1/sphere1.def sopflags sopflags = 
comment ""
position 0 0
cachesize 1
flags =  lock off model off template off footprint off xray off bypass off display on render on highlight on unload off savedata off compress off exposed on
inputs
{
}
stat
{
  create 1291674777
  modify 1291674784
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100004000000000606obj/sphere_object1/sphere1.parm {
version 0.8
type	[ 0	locks=0 ]	(	"prim"	)
surftype	[ 0	locks=0 ]	(	"quads"	)
rad	[ 0	locks=0 ]	(	1	1	1	)
t	[ 0	locks=0 ]	(	0	0	0	)
orient	[ 0	locks=0 ]	(	"y"	)
freq	[ 0	locks=0 ]	(	2	)
rows	[ 0	locks=0 ]	(	10	)
cols	[ 0	locks=0 ]	(	10	)
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"	)
}
0707070000010000000006660000000000000000010000001147726722100004400000000072obj/sphere_object1/sphere1.userdata     ___toolcount___    1 ___toolid___    
sop_sphere0707070000010000000006660000000000000000010000001147726722100002700000000002obj/sphere_object1.net 1
0707070000010000000006660000000000000000010000001147726722100002600000000032obj/grid_object1.init type = geo
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100002500000000751obj/grid_object1.def objflags 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
cachesize 1
flags =  lock off model off template off footprint off xray off bypass off display on render off highlight off unload off savedata off compress off exposed on selectable on
inputs
{
}
stat
{
  create 1291674797
  modify 1291674878
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100003600000020166obj/grid_object1.spareparmdef     group {
	name	"stdswitcher5"
	label	"Transform"

	parm {
	    name	"keeppos"
	    baseparm
	    joinnext
	    export	none
	}
	parm {
	    name	"pre_xform"
	    baseparm
	    export	none
	}
	parm {
	    name	"xOrd"
	    baseparm
	    joinnext
	    export	none
	}
	parm {
	    name	"rOrd"
	    baseparm
	    export	none
	}
	parm {
	    name	"t"
	    baseparm
	    export	all
	}
	parm {
	    name	"r"
	    baseparm
	    export	all
	}
	parm {
	    name	"s"
	    baseparm
	    export	none
	}
	parm {
	    name	"p"
	    baseparm
	    export	none
	}
	parm {
	    name	"scale"
	    baseparm
	    export	none
	}
	parm {
	    name	"lookatpath"
	    baseparm
	    export	none
	}
	parm {
	    name	"lookup"
	    baseparm
	    export	none
	}
	parm {
	    name	"pathobjpath"
	    baseparm
	    export	none
	}
	parm {
	    name	"roll"
	    baseparm
	    export	none
	}
	parm {
	    name	"pos"
	    baseparm
	    export	none
	}
	parm {
	    name	"uparmtype"
	    baseparm
	    export	none
	}
	parm {
	    name	"pathorient"
	    baseparm
	    export	none
	}
	parm {
	    name	"up"
	    baseparm
	    export	none
	}
	parm {
	    name	"bank"
	    baseparm
	    export	none
	}
    }

    group {
	name	"stdswitcher5_1"
	label	"Material"

	parm {
	    name	"shop_materialpath"
	    baseparm
	    joinnext
	    export	none
	}
	parm {
	    name	"shop_materialopts"
	    baseparm
	    export	none
	}
    }

    group {
	name	"stdswitcher5_2"
	label	"Render"

	parm {
	    name	"tdisplay"
	    baseparm
	    joinnext
	    export	none
	}
	parm {
	    name	"display"
	    baseparm
	    export	none
	}
	parm {
	    name	"vm_phantom"
	    label	"Phantom"
	    type	toggle
	    default	{ "0" }
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "spare_category" "Render" }
	}
	parm {
	    name	"vm_renderable"
	    label	"Renderable"
	    type	toggle
	    default	{ "1" }
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "spare_category" "Render" }
	}
	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"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Shading" }
	    }
	    parm {
		name	"reflectmask"
		label	"Reflection Mask"
		type	oplist
		default	{ "*" }
		help	"Objects that will be reflected on this object."
		range	{ 0 1 }
		export	none
		parmtag	{ "oprelative" "/obj" }
		parmtag	{ "opfilter" "!!OBJ/GEOMETRY!!" }
		parmtag	{ "spare_category" "Shading" }
		parmtag	{ "opexpand" "1" }
	    }
	    parm {
		name	"refractmask"
		label	"Refraction Mask"
		type	oplist
		default	{ "*" }
		help	"Objects that will be refracted on this object."
		range	{ 0 1 }
		export	none
		parmtag	{ "oprelative" "/obj" }
		parmtag	{ "opfilter" "!!OBJ/GEOMETRY!!" }
		parmtag	{ "spare_category" "Shading" }
		parmtag	{ "opexpand" "1" }
	    }
	    parm {
		name	"lightmask"
		label	"Light Mask"
		type	oplist
		default	{ "*" }
		help	"Lights that illuminate this object."
		range	{ 0 1 }
		export	none
		parmtag	{ "oprelative" "/obj" }
		parmtag	{ "opfilter" "!!OBJ/LIGHT!!" }
		parmtag	{ "spare_category" "Shading" }
		parmtag	{ "opexpand" "1" }
	    }
	    parm {
		name	"vm_volumefilter"
		label	"Volume Filter"
		type	string
		default	{ "gaussian" }
		menu	{
		    "box"	"Box Filter"
		    "gaussian"	"Gaussian"
		    "bartlett"	"Bartlett (triangle)"
		    "catrom"	"Catmull-Rom"
		    "hanning"	"Hanning"
		    "blackman"	"Blackman"
		    "sinc"	"Sinc (sharpening)"
		}
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Shading" }
	    }
	    parm {
		name	"vm_volumefilterwidth"
		label	"Volume Filter Width"
		type	float
		default	{ "1.5" }
		range	{ 0.001 5 }
		export	none
		parmtag	{ "spare_category" "Shading" }
	    }
	    parm {
		name	"vm_matte"
		label	"Matte shading"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Shading" }
	    }
	    parm {
		name	"vm_rayshade"
		label	"Raytrace Shading"
		type	toggle
		default	{ "0" }
		help	"Shade every sample rather than shading micropolygon vertices.  This setting enables the raytrace rendering engine on a per-object basis."
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Shading" }
	    }
	}

	group {
	    name	"folder0_1"
	    label	"Sampling"

	    parm {
		name	"geo_velocityblur"
		label	"Geometry Velocity Blur"
		type	toggle
		default	{ "0" }
		disablewhen	"{ allowmotionblur == 0 }"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Sampling" }
	    }
	}

	group {
	    name	"folder0_2"
	    label	"Dicing"

	    parm {
		name	"vm_shadingquality"
		label	"Shading Quality"
		type	float
		default	{ "1" }
		disablewhen	"{ vm_renderengine != micropoly vm_renderengine != pbrmicropoly }"
		range	{ 0 10 }
		export	none
		parmtag	{ "spare_category" "Dicing" }
	    }
	    parm {
		name	"vm_rayshadingquality"
		label	"Ray Shading Quality"
		type	float
		default	{ "1" }
		range	{ 0 10 }
		export	none
		parmtag	{ "spare_category" "Dicing" }
	    }
	    parm {
		name	"vm_flatness"
		label	"Dicing Flatness"
		type	float
		default	{ "0.05" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Dicing" }
	    }
	    parm {
		name	"vm_raypredice"
		label	"Ray Predicing"
		type	integer
		default	{ "0" }
		menu	{
		    "off"	"Disable Predicing"
		    "on"	"Full Predicing"
		    "bounds"	"Precompute Bounds"
		}
		range	{ 0 10 }
		export	none
		parmtag	{ "spare_category" "Dicing" }
	    }
	    parm {
		name	"vm_curvesurface"
		label	"Shade Curves As Surfaces"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Dicing" }
	    }
	}

	group {
	    name	"folder0_3"
	    label	"Geometry"

	    parm {
		name	"vm_rmbackface"
		label	"Backface Removal (Mantra)"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Geometry" }
	    }
	    parm {
		name	"shop_geometrypath"
		label	"Procedural Shader"
		type	oppath
		default	{ "" }
		range	{ 0 1 }
		export	none
		parmtag	{ "oprelative" "." }
		parmtag	{ "opfilter" "!!SHOP/GEOMETRY!!" }
		parmtag	{ "spare_category" "Geometry" }
	    }
	    parm {
		name	"vm_forcegeometry"
		label	"Force Procedural Geometry Output"
		type	toggle
		default	{ "1" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Geometry" }
	    }
	    parm {
		name	"vm_rendersubd"
		label	"Polygons As Subdivision (Mantra)"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Geometry" }
	    }
	    parm {
		name	"vm_renderpoints"
		label	"Render As Points (Mantra)"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Geometry" }
	    }
	    parm {
		name	"vm_usenforpoints"
		label	"Use N For Point Rendering"
		type	toggle
		default	{ "0" }
		disablewhen	"{ vm_renderpoints == 0 }"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Geometry" }
	    }
	    parm {
		name	"vm_metavolume"
		label	"Metaballs as Volume"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
		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 }
		export	none
		parmtag	{ "spare_category" "Geometry" }
	    }
	    parm {
		name	"vm_computeN"
		label	"Automatically Compute Normals"
		type	toggle
		default	{ "1" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Geometry" }
	    }
	    parm {
		name	"vm_overridedetail"
		label	"Ignore Geometry Attribute Shaders"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Geometry" }
	    }
	}

    }

    group {
	name	"stdswitcher5_3"
	label	"Misc"

	parm {
	    name	"use_dcolor"
	    baseparm
	    export	none
	}
	parm {
	    name	"dcolor"
	    baseparm
	    export	none
	}
	parm {
	    name	"picking"
	    baseparm
	    export	none
	}
	parm {
	    name	"pickscript"
	    baseparm
	    export	none
	}
	parm {
	    name	"caching"
	    baseparm
	    export	none
	}
	parm {
	    name	"vport_shadeopen"
	    baseparm
	    export	none
	}
	parm {
	    name	"vport_displayassubdiv"
	    baseparm
	    invisible
	    export	none
	}
    }

0707070000010000000006660000000000000000010000001147726722100002600000003710obj/grid_object1.parm {
version 0.8
stdswitcher	[ 0	locks=0 ]	(	0	0	0	0	)
keeppos	[ 0	locks=0 ]	(	"off"	)
pre_xform	[ 0	locks=0 ]	(	0	)
xOrd	[ 0	locks=0 ]	(	"srt"	)
rOrd	[ 0	locks=0 ]	(	"xyz"	)
t	[ 0	locks=0 ]	(	0	0	0	)
r	[ 0	locks=0 ]	(	0	0	0	)
s	[ 0	locks=0 ]	(	1	1	1	)
p	[ 0	locks=0 ]	(	0	0	0	)
scale	[ 0	locks=0 ]	(	1	)
lookatpath	[ 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 ]	(	""	)
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 ]	(	"off"	)
vport_shadeopen	[ 0	locks=0 ]	(	"off"	)
vport_displayassubdiv	[ 0	locks=0 ]	(	"off"	)
stdswitcher5	[ 0	locks=0 ]	(	0	0	0	0	)
vm_phantom	[ 0	locks=0 ]	(	"off"	)
vm_renderable	[ 0	locks=0 ]	(	"on"	)
folder0	[ 0	locks=0 ]	(	0	0	0	0	)
categories	[ 0	locks=0 ]	(	""	)
reflectmask	[ 0	locks=0 ]	(	*	)
refractmask	[ 0	locks=0 ]	(	*	)
lightmask	[ 0	locks=0 ]	(	*	)
vm_volumefilter	[ 0	locks=0 ]	(	gaussian	)
vm_volumefilterwidth	[ 0	locks=0 ]	(	1.5	)
vm_matte	[ 0	locks=0 ]	(	"off"	)
vm_rayshade	[ 0	locks=0 ]	(	"off"	)
geo_velocityblur	[ 0	locks=0 ]	(	"off"	)
vm_shadingquality	[ 0	locks=0 ]	(	1	)
vm_rayshadingquality	[ 0	locks=0 ]	(	1	)
vm_flatness	[ 0	locks=0 ]	(	0.0500000007	)
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_rendersubd	[ 0	locks=0 ]	(	"off"	)
vm_renderpoints	[ 0	locks=0 ]	(	"off"	)
vm_usenforpoints	[ 0	locks=0 ]	(	"off"	)
vm_metavolume	[ 0	locks=0 ]	(	"off"	)
vm_coving	[ 0	locks=0 ]	(	1	)
vm_computeN	[ 0	locks=0 ]	(	"on"	)
vm_overridedetail	[ 0	locks=0 ]	(	"off"	)
}
0707070000010000000006660000000000000000010000001147726722100003200000000070obj/grid_object1.userdata     ___toolcount___    2 ___toolid___    sop_grid0707070000010000000006660000000000000000010000001147726722100003400000000033obj/grid_object1/grid1.init type = grid
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100003300000000612obj/grid_object1/grid1.def sopflags sopflags = 
comment ""
position 0 0
cachesize 1
flags =  lock off model off template off footprint off xray off bypass off display on render on highlight on unload off savedata off compress off exposed on
inputs
{
}
stat
{
  create 1291674797
  modify 1291674806
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100003400000000516obj/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 ]	(	50	50	)
t	[ 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"	)
}
0707070000010000000006660000000000000000010000001147726722100004000000000070obj/grid_object1/grid1.userdata     ___toolcount___    2 ___toolid___    sop_grid0707070000010000000006660000000000000000010000001147726722100002500000000002obj/grid_object1.net 1
0707070000010000000006660000000000000000010000001147726722100002500000000035obj/pointlight1.init type = hlight
matchesdef = 1
0707070000010000000006660000000000000000010000001147726722100002400000000754obj/pointlight1.def objflags 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.74024 0.787248
cachesize 1
flags =  lock off model off template off footprint off xray off bypass off display on render off highlight off unload off savedata off compress off exposed on selectable on
inputs
{
}
stat
{
  create 1291674823
  modify 1291675669
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100002400000013324obj/pointlight1.chn {
    channel focal {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 value = 50 50 expr = lock(1) }
    }
    channel aperture {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 value = 41.421398162841797 41.421398162841797 expr = "if(strcmp(chs('light_type'), 'distant') == 0 ||
   strcmp(chs('light_type'), 'sun') == 0,
   1,
   if(ch('coneenable')==0 || ch('light_conefov')==0,
       2*tan(0.5*ch('light_fov')),
       2*tan(0.5*ch('coneangle')+ch('conedelta'))))" }
    }
    channel projection {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = "if(strcmp(chs('light_type'), 'distant')==0 || strcmp(chs('light_type'), 'sun')==0, 1, 0)" }
    }
    channel keeppos {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = ch(\"./l_keeppos\") }
    }
    channel pre_xform {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = ch(\"./l_pre_xform\") }
    }
    channel xOrd {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = ch(\"./l_xOrd\") }
    }
    channel rOrd {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = ch(\"./l_rOrd\") }
    }
    channel tx {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = ch(\"./l_tx\") }
    }
    channel ty {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = ch(\"./l_ty\") }
    }
    channel tz {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = ch(\"./l_tz\") }
    }
    channel rx {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = ch(\"./l_rx\") }
    }
    channel ry {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = ch(\"./l_ry\") }
    }
    channel rz {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = ch(\"./l_rz\") }
    }
    channel lookatpath {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = chsop(\"./l_lookatpath\") }
    }
    channel lookup {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = chs(\"./l_lookup\") }
    }
    channel pathobjpath {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = chsop(\"./l_pathobjpath\") }
    }
    channel pos {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = ch(\"./l_pathpos\") }
    }
    channel uparmtype {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 value = 1 1 expr = ch(\"./l_pathparmtype\") }
    }
    channel pathorient {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 value = 1 1 expr = ch(\"./l_pathorient\") }
    }
    channel bank {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 value = 1 1 expr = ch(\"./l_pathbank\") }
    }
    channel tdisplay {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = ch(\"./l_enabledisplay\") }
    }
    channel display {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 value = 1 1 expr = ch(\"./l_display\") }
    }
    channel picking {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 value = 1 1 expr = ch(\"./l_picking\") }
    }
    channel pickscript {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = chs(\"./l_pickscript\") }
    }
    channel caching {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = ch(\"./l_caching\") }
    }
    channel sx {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 value = 1 1 expr = lock(1) }
    }
    channel sy {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 value = 1 1 expr = lock(1) }
    }
    channel sz {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 value = 1 1 expr = lock(1) }
    }
    channel px {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = lock(0) }
    }
    channel py {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = lock(0) }
    }
    channel pz {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = lock(0) }
    }
    channel scale {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 value = 1 1 expr = lock(1) }
    }
    channel dimmer {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = "if(ch('./light_enable'), ch(\"./light_intensity\"), 0)" }
    }
    channel roll {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = ch(\"./l_pathroll\") }
    }
    channel upx {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = ch(\"./l_pathupx\") }
    }
    channel upy {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = ch(\"./l_pathupy\") }
    }
    channel upz {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = ch(\"./l_pathupz\") }
    }
  }
0707070000010000000006660000000000000000010000001147726722100002500000014512obj/pointlight1.parm {
version 0.8
stdswitcher	[ 0	locks=0	autoscope=0 ]	(	3	3	3	)
keeppos	[ 0	locks=0	autoscope=0 ]	(	[ keeppos	0 ] 	)
pre_xform	[ 0	locks=0 ]	(	[ pre_xform	0 ] 	)
xOrd	[ 0	locks=0	autoscope=0 ]	(	[ xOrd	0 ] 	)
rOrd	[ 0	locks=0	autoscope=0 ]	(	[ rOrd	0 ] 	)
t	[ 0	locks=0	autoscope=7 ]	(	[ tx	7.54946232 ] 	[ ty	7.71305847 ] 	[ tz	4.01423216 ] 	)
r	[ 0	locks=0	autoscope=7 ]	(	[ rx	-68.4070053 ] 	[ ry	61.2471008 ] 	[ rz	-25.1936626 ] 	)
s	[ 0	locks=0	autoscope=7 ]	(	[ sx	1 ] 	[ sy	1 ] 	[ sz	1 ] 	)
p	[ 0	locks=0	autoscope=0 ]	(	[ px	0 ] 	[ py	0 ] 	[ pz	0 ] 	)
scale	[ 0	locks=0	autoscope=0 ]	(	[ scale	1 ] 	)
lookatpath	[ 0	locks=0	autoscope=0 ]	(	[ lookatpath	"" ] 	)
lookup	[ 0	locks=0	autoscope=0 ]	(	[ lookup	on ] 	)
pathobjpath	[ 0	locks=0	autoscope=0 ]	(	[ pathobjpath	"" ] 	)
roll	[ 0	locks=0	autoscope=0 ]	(	[ roll	0 ] 	)
pos	[ 0	locks=0	autoscope=0 ]	(	[ pos	0 ] 	)
uparmtype	[ 0	locks=0	autoscope=0 ]	(	[ uparmtype	1 ] 	)
pathorient	[ 0	locks=0	autoscope=0 ]	(	[ pathorient	1 ] 	)
up	[ 0	locks=0	autoscope=0 ]	(	[ upx	0 ] 	[ upy	1 ] 	[ upz	0 ] 	)
bank	[ 0	locks=0	autoscope=0 ]	(	[ bank	1 ] 	)
tdisplay	[ 0	locks=0	autoscope=0 ]	(	[ tdisplay	0 ] 	)
display	[ 0	locks=0	autoscope=0 ]	(	[ display	1 ] 	)
dimmer	[ 0	locks=0	autoscope=1 ]	(	[ dimmer	1 ] 	)
picking	[ 0	locks=0	autoscope=0 ]	(	[ picking	1 ] 	)
pickscript	[ 0	locks=0	autoscope=0 ]	(	[ pickscript	"" ] 	)
caching	[ 0	locks=0	autoscope=0 ]	(	[ caching	0 ] 	)
use_dcolor	[ 0	locks=0	autoscope=0 ]	(	"on"	)
dcolor	[ 0	locks=0	autoscope=0 ]	(	1	1	1	)
stdswitcher4	[ 0	locks=0	autoscope=0 ]	(	0	0	0	)
folder0	[ 0	locks=0	autoscope=0 ]	(	1	1	1	1	)
l_keeppos	[ 0	locks=0	autoscope=0 ]	(	"off"	)
l_pre_xform	[ 0	locks=0 ]	(	0	)
l_xOrd	[ 0	locks=0	autoscope=0 ]	(	"srt"	)
l_rOrd	[ 0	locks=0	autoscope=0 ]	(	"xyz"	)
l_t	[ 0	locks=0	autoscope=7 ]	(	7.54946232	7.71305847	4.01423216	)
l_r	[ 0	locks=0	autoscope=7 ]	(	-68.4070053	61.2471008	-25.1936626	)
folder1_2	[ 0	locks=0	autoscope=0 ]	(	0	0	0	)
l_enabledisplay	[ 0	locks=0	autoscope=0 ]	(	"off"	)
l_display	[ 0	locks=0	autoscope=0 ]	(	1	)
l_iconscale	[ 0	locks=0	autoscope=0 ]	(	1	)
l_caching	[ 0	locks=0	autoscope=0 ]	(	"off"	)
l_picking	[ 0	locks=0	autoscope=0 ]	(	"on"	)
l_pickscript	[ 0	locks=0	autoscope=0 ]	(	""	)
l_lookatpath	[ 0	locks=0	autoscope=0 ]	(	""	)
l_lookup	[ 0	locks=0	autoscope=0 ]	(	on	)
l_pathobjpath	[ 0	locks=0	autoscope=0 ]	(	""	)
l_pathroll	[ 0	locks=0	autoscope=0 ]	(	0	)
l_pathpos	[ 0	locks=0	autoscope=0 ]	(	0	)
l_pathparmtype	[ 0	locks=0	autoscope=0 ]	(	"arc"	)
l_pathorient	[ 0	locks=0	autoscope=0 ]	(	1	)
l_pathup	[ 0	locks=0	autoscope=0 ]	(	0	1	0	)
l_pathbank	[ 0	locks=0	autoscope=0 ]	(	1	)
light_type	[ 0	locks=0	autoscope=0 ]	(	"point"	)
light_color	[ 0	locks=0	autoscope=0 ]	(	1	1	1	)
light_intensity	[ 0	locks=0	autoscope=1 ]	(	1	)
light_enable	[ 0	locks=0	autoscope=0 ]	(	"on"	)
ogl_enablelight	[ 0	locks=0	autoscope=0 ]	(	"on"	)
light_contribdiff	[ 0	locks=0	autoscope=0 ]	(	"on"	)
light_contribspec	[ 0	locks=0	autoscope=0 ]	(	"on"	)
categories	[ 0	locks=0	autoscope=0 ]	(	""	)
vm_samplingquality	[ 0	locks=0	autoscope=0 ]	(	1	)
light_contribprimary	[ 0	locks=0	autoscope=0 ]	(	"off"	)
atten_folder_1	[ 0	locks=0	autoscope=0 ]	(	0	0	0	0	)
coneenable	[ 0	locks=0	autoscope=0 ]	(	"on"	)
light_conefov	[ 0	locks=0	autoscope=0 ]	(	"on"	)
light_fov	[ 0	locks=0	autoscope=0 ]	(	45	)
coneangle	[ 0	locks=0	autoscope=0 ]	(	45	)
conedelta	[ 0	locks=0	autoscope=0 ]	(	10	)
coneroll	[ 0	locks=0	autoscope=0 ]	(	1	)
sepparm2	[ 0	locks=0 ]	(	)
projmap	[ 0	locks=0	autoscope=0 ]	(	$HFS/houdini/pic/leopardfur.rat	)
near	[ 0	locks=0	autoscope=0 ]	(	0.100000001	)
far	[ 0	locks=0	autoscope=0 ]	(	32024.9707	)
areasize	[ 0	locks=0	autoscope=0 ]	(	1	1	)
normalizearea	[ 0	locks=0	autoscope=0 ]	(	"on"	)
singlesided	[ 0	locks=0	autoscope=0 ]	(	"off"	)
reverse	[ 0	locks=0	autoscope=0 ]	(	"off"	)
areamap	[ 0	locks=0	autoscope=0 ]	(	""	)
areamapspace	[ 0	locks=0	autoscope=0 ]	(	space:object	)
areamapnull	[ 0	locks=0	autoscope=0 ]	(	""	)
light_texture	[ 0	locks=0	autoscope=0 ]	(	""	)
edgeenable	[ 0	locks=0	autoscope=0 ]	(	"off"	)
edgewidth	[ 0	locks=0	autoscope=0 ]	(	0.100000001	)
edgerolloff	[ 0	locks=0	autoscope=0 ]	(	1	)
areageometry	[ 0	locks=0	autoscope=0 ]	(	""	)
intothisobject	[ 0	locks=0	autoscope=0 ]	(	"off"	)
orthowidth	[ 0	locks=0	autoscope=0 ]	(	25.141573	)
vm_envangle	[ 0	locks=0	autoscope=0 ]	(	5	)
atten_type	[ 0	locks=0	autoscope=0 ]	(	"none"	)
atten_dist	[ 0	locks=0	autoscope=0 ]	(	10	)
atten_start	[ 0	locks=0	autoscope=0 ]	(	0	)
activeradiusenable	[ 0	locks=0	autoscope=0 ]	(	"off"	)
activeradius	[ 0	locks=0	autoscope=0 ]	(	100	)
attenrampenable	[ 0	locks=0	autoscope=0 ]	(	"off"	)
atten_rampstart	[ 0	locks=0	autoscope=0 ]	(	0	)
atten_rampend	[ 0	locks=0	autoscope=0 ]	(	100	)
attenramp	[ 0	locks=0	autoscope=0 ]	(	3	)
shadow_type	[ 0	locks=0	autoscope=0 ]	(	"raytrace"	)
shadowmask	[ 0	locks=0	autoscope=0 ]	(	*	)
shadow_intensity	[ 0	locks=0	autoscope=0 ]	(	1	)
shadow_transparent	[ 0	locks=0	autoscope=0 ]	(	"on"	)
sepparm	[ 0	locks=0 ]	(	)
shadow_bias	[ 0	locks=0	autoscope=0 ]	(	0.0500000007	)
shadow_quality	[ 0	locks=0	autoscope=0 ]	(	1	)
shadow_softness	[ 0	locks=0	autoscope=0 ]	(	1	)
shadow_blur	[ 0	locks=0	autoscope=0 ]	(	0	)
render_shadowmap	[ 0	locks=0	autoscope=0 ]	(	"on"	)
labelparm	[ 0	locks=0	autoscope=0 ]	(	"See spot light options (in light tab) for view controls"	)
shadowmap_file	[ 0	locks=0	autoscope=0 ]	(	temp:$OS.rat	)
res	[ 0	locks=0	autoscope=0 ]	(	512	512	)
shadowmap_resMenu	[ 0	locks=0 ]	(	0	)
shadowmap_samples	[ 0	locks=0	autoscope=0 ]	(	1	1	)
shadowmotionblur	[ 0	locks=0	autoscope=0 ]	(	"off"	)
shop_materialpath	[ 0	locks=0	autoscope=0 ]	(	""	)
focal	[ 0	locks=0	autoscope=0 ]	(	[ focal	1 ] 	)
aperture	[ 0	locks=0	autoscope=0 ]	(	[ aperture	1.27414048 ] 	)
projection	[ 0	locks=0	autoscope=0 ]	(	[ projection	0 ] 	)
focus	[ 0	locks=0	autoscope=0 ]	(	10	)
light_wrangler	[ 0	locks=0	autoscope=0 ]	(	HoudiniLight	)
clampprojmap	[ 0	locks=0	autoscope=0 ]	(	"on"	)
areafullsphere	[ 0	locks=0	autoscope=0 ]	(	"off"	)
attenramp1pos	[ 0	locks=0	autoscope=0 ]	(	0	)
attenramp1c	[ 0	locks=0	autoscope=0 ]	(	1	1	1	)
attenramp1interp	[ 0	locks=0	autoscope=0 ]	(	"linear"	)
attenramp2pos	[ 0	locks=0	autoscope=0 ]	(	0.899999976	)
attenramp2c	[ 0	locks=0	autoscope=0 ]	(	1	1	1	)
attenramp2interp	[ 0	locks=0	autoscope=0 ]	(	"linear"	)
attenramp3pos	[ 0	locks=0	autoscope=0 ]	(	1	)
attenramp3c	[ 0	locks=0	autoscope=0 ]	(	0	0	0	)
attenramp3interp	[ 0	locks=0	autoscope=0 ]	(	"linear"	)
}
0707070000010000000006660000000000000000010000001147726722100003100000000101obj/pointlight1.userdata     ___toolcount___    3 ___toolid___    object_pointlight0707070000010000000006660000000000000000010000001147726722100001600000000032obj/cam1.init type = cam
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100001500000000755obj/cam1.def objflags objflags =  origin off
pretransform UT_DMatrix4 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1
comment ""
position 0.977846 -0.137509
cachesize 1
flags =  lock off model off template off footprint off xray off bypass off display on render off highlight off unload off savedata off compress off exposed on selectable on
inputs
{
}
stat
{
  create 1291674830
  modify 1291675025
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100002600000015004obj/cam1.spareparmdef     group {
	name	"stdswitcher3"
	label	"Transform"

	parm {
	    name	"keeppos"
	    baseparm
	    joinnext
	    export	none
	}
	parm {
	    name	"pre_xform"
	    baseparm
	    export	none
	}
	parm {
	    name	"xOrd"
	    baseparm
	    joinnext
	    export	none
	}
	parm {
	    name	"rOrd"
	    baseparm
	    export	none
	}
	parm {
	    name	"t"
	    baseparm
	    export	all
	}
	parm {
	    name	"r"
	    baseparm
	    export	all
	}
	parm {
	    name	"s"
	    baseparm
	    invisible
	    export	none
	}
	parm {
	    name	"p"
	    baseparm
	    export	none
	}
	parm {
	    name	"scale"
	    baseparm
	    invisible
	    export	none
	}
	parm {
	    name	"lookatpath"
	    baseparm
	    export	none
	}
	parm {
	    name	"lookup"
	    baseparm
	    export	none
	}
	parm {
	    name	"pathobjpath"
	    baseparm
	    export	none
	}
	parm {
	    name	"roll"
	    baseparm
	    export	none
	}
	parm {
	    name	"pos"
	    baseparm
	    export	none
	}
	parm {
	    name	"uparmtype"
	    baseparm
	    export	none
	}
	parm {
	    name	"pathorient"
	    baseparm
	    export	none
	}
	parm {
	    name	"up"
	    baseparm
	    export	none
	}
	parm {
	    name	"bank"
	    baseparm
	    export	none
	}
    }

    group {
	name	"stdswitcher3_1"
	label	"Render"

	parm {
	    name	"tdisplay"
	    baseparm
	    joinnext
	    export	none
	}
	parm {
	    name	"display"
	    baseparm
	    export	none
	}
	parm {
	    name	"use_dcolor"
	    baseparm
	    export	none
	}
	parm {
	    name	"dcolor"
	    baseparm
	    export	none
	}
	parm {
	    name	"picking"
	    baseparm
	    export	none
	}
	parm {
	    name	"pickscript"
	    baseparm
	    export	none
	}
	parm {
	    name	"caching"
	    baseparm
	    export	none
	}
    }

    group {
	name	"stdswitcher3_2"
	label	"View"

	parm {
	    name	"iconscale"
	    label	"Icon Scale"
	    type	float
	    default	{ "1" }
	    range	{ 0.001 10 }
	    export	none
	    parmtag	{ "spare_category" "View" }
	}
	parm {
	    name	"res"
	    label	"Resolution"
	    type	intvector2
	    joinnext
	    size	2
	    default	{ "640" "480" }
	    range	{ -1 1 }
	    export	none
	    parmtag	{ "cook_dependent" "1" }
	    parmtag	{ "spare_category" "View" }
	}
	parm {
	    name	"resMenu"
	    label	"Choose Resolution"
	    type	button
	    nolabel
	    default	{ "0" }
	    menumini	{
		[ "echo `pythonexprs(\"__import__('toolutils').parseDialogScriptMenu('FBres')\")`" ]
	    }
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "spare_category" "View" }
	    parmtag	{ "script_callback" "opparm . res ( `arg(\"$script_value\", 0)` `arg(\"$script_value\", 1)` aspect ( `arg(\"$script_value\", 2)` )" }
	}
	parm {
	    name	"aspect"
	    label	"Pixel Aspect Ratio"
	    type	float
	    default	{ "1" }
	    range	{ 0.05 2 }
	    export	none
	    parmtag	{ "spare_category" "View" }
	}
	parm {
	    name	"projection"
	    label	"Projection"
	    type	ordinal
	    default	{ "perspective" }
	    menu	{
		"perspective"	"Perspective"
		"ortho"	"Orthographic"
		"sphere"	"Polar (panoramic)"
		"cylinder"	"Cylindrical (panoramic)"
	    }
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "spare_category" "View" }
	}
	parm {
	    name	"focal"
	    label	"Focal Length"
	    type	float
	    joinnext
	    default	{ "50" }
	    range	{ 1 100 }
	    export	none
	}
	parm {
	    name	"focalunits"
	    label	"Focal Units"
	    type	string
	    default	{ "mm" }
	    menu	{
		"mm"	"millimeters"
		"m"	"meters"
		"nm"	"nanometers"
		"in"	"inches"
		"ft"	"feet"
	    }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"aperture"
	    label	"Aperture"
	    type	float
	    default	{ "41.2136" }
	    range	{ 1 100 }
	    export	none
	    parmtag	{ "spare_category" "View" }
	}
	parm {
	    name	"orthowidth"
	    label	"Ortho Width"
	    type	float
	    default	{ "2" }
	    disablewhen	"{ projection != ortho }"
	    range	{ 0.001 10 }
	    export	none
	    parmtag	{ "spare_category" "View" }
	}
	parm {
	    name	"near"
	    label	"Near Clipping"
	    type	float
	    default	{ "0.001" }
	    range	{ 0 10 }
	    export	none
	    parmtag	{ "spare_category" "View" }
	}
	parm {
	    name	"far"
	    label	"Far Clipping"
	    type	float
	    default	{ "10000" }
	    range	{ 1 10000 }
	    export	none
	    parmtag	{ "spare_category" "View" }
	}
	parm {
	    name	"vm_bgenable"
	    label	"Enable Background Image"
	    type	toggle
	    default	{ "1" }
	    help	"Enable background image"
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "spare_category" "View" }
	}
	parm {
	    name	"vm_background"
	    label	"Background Image"
	    type	file
	    default	{ "" }
	    help	"An map image used to set the background color on primary rays (may be a deep camera/shadow map)."
	    disablewhen	"{ vm_bgenable == 0 }"
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "filechooser_mode" "read" }
	    parmtag	{ "spare_category" "View" }
	}
	parm {
	    name	"win"
	    label	"Screen Window X/Y"
	    type	vector2
	    size	2
	    default	{ "0" "0" }
	    range	{ -1 1 }
	    export	none
	}
	parm {
	    name	"winsize"
	    label	"Screen Window Size"
	    type	vector2
	    size	2
	    default	{ "1" "1" }
	    range	{ 0.01 10 }
	    export	none
	}
	parm {
	    name	"cropl"
	    label	"Left Crop"
	    type	float
	    default	{ "0" }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"cropr"
	    label	"Right Crop"
	    type	float
	    default	{ "1" }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"cropb"
	    label	"Bottom Crop"
	    type	float
	    default	{ "0" }
	    range	{ 0 1 }
	    export	none
	}
	parm {
	    name	"cropt"
	    label	"Top Crop"
	    type	float
	    default	{ "1" }
	    range	{ 0 1 }
	    export	none
	}
    }

    group {
	name	"stdswitcher3_3"
	label	"Sampling"

	parm {
	    name	"shutter"
	    label	"Shutter Time"
	    type	float
	    default	{ "0.5" }
	    disablewhen	"{ allowmotionblur == 0 }"
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "spare_category" "Sampling" }
	}
	parm {
	    name	"focus"
	    label	"Focus Distance"
	    type	float
	    default	{ "5" }
	    disablewhen	"{ vm_dof == 0 }"
	    range	{ 0.001 1000 }
	    export	none
	    parmtag	{ "spare_category" "Sampling" }
	}
	parm {
	    name	"fstop"
	    label	"F-Stop"
	    type	float
	    default	{ "5.6" }
	    disablewhen	"{ vm_dof == 0 }"
	    range	{ 1.4 22 }
	    export	none
	    parmtag	{ "spare_category" "Sampling" }
	}
	parm {
	    name	"vm_bokeh"
	    label	"Bokeh"
	    type	string
	    default	{ "radial" }
	    menureplace	{
		"radial"	"Radial Bokeh"
		"box"	"Box Filter Bokeh"
		"null"	"Disable Bokeh"
	    }
	    range	{ 0 1 }
	    export	none
	    parmtag	{ "spare_category" "Sampling" }
	}
    }

0707070000010000000006660000000000000000010000001147726722100001500000001221obj/cam1.chn {
    channel sx {
      lefttype = extend
      righttype = extend
      default = 1
      flags = 0
      segment { length = 0 value = 1 1 expr = lock(1) }
    }
    channel sy {
      lefttype = extend
      righttype = extend
      default = 1
      flags = 0
      segment { length = 0 value = 1 1 expr = lock(1) }
    }
    channel sz {
      lefttype = extend
      righttype = extend
      default = 1
      flags = 0
      segment { length = 0 value = 1 1 expr = lock(1) }
    }
    channel scale {
      lefttype = extend
      righttype = extend
      default = 1
      flags = 0
      segment { length = 0 value = 1 1 expr = lock(1) }
    }
  }
0707070000010000000006660000000000000000010000001147726722100001600000003133obj/cam1.parm {
version 0.8
stdswitcher	[ 0	locks=0 ]	(	0	0	)
keeppos	[ 0	locks=0 ]	(	"off"	)
pre_xform	[ 0	locks=0 ]	(	0	)
xOrd	[ 0	locks=0 ]	(	"srt"	)
rOrd	[ 0	locks=0 ]	(	"xyz"	)
t	[ 0	locks=0 ]	(	2.43736124	8.08282948	23.9850254	)
r	[ 0	locks=0 ]	(	-13.0300379	3.25929666	-2.90911627	)
s	[ 0	locks=0 ]	(	[ sx	1 ] 	[ sy	1 ] 	[ sz	1 ] 	)
p	[ 0	locks=0 ]	(	0	0	0	)
scale	[ 0	locks=0 ]	(	[ scale	1 ] 	)
lookatpath	[ 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	)
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 ]	(	"off"	)
stdswitcher3	[ 0	locks=0 ]	(	2	2	2	2	)
iconscale	[ 0	locks=0 ]	(	1	)
res	[ 0	locks=0 ]	(	640	480	)
resMenu	[ 0	locks=0 ]	(	0	)
aspect	[ 0	locks=0 ]	(	1	)
projection	[ 0	locks=0 ]	(	"perspective"	)
focal	[ 0	locks=0 ]	(	1	)
focalunits	[ 0	locks=0 ]	(	mm	)
aperture	[ 0	locks=0 ]	(	0.828427136	)
orthowidth	[ 0	locks=0 ]	(	25.141573	)
near	[ 0	locks=0 ]	(	0.100000001	)
far	[ 0	locks=0 ]	(	32024.9707	)
vm_bgenable	[ 0	locks=0 ]	(	"on"	)
vm_background	[ 0	locks=0 ]	(	""	)
win	[ 0	locks=0 ]	(	0	0	)
winsize	[ 0	locks=0 ]	(	1	1	)
cropl	[ 0	locks=0 ]	(	0	)
cropr	[ 0	locks=0 ]	(	1	)
cropb	[ 0	locks=0 ]	(	0	)
cropt	[ 0	locks=0 ]	(	1	)
shutter	[ 0	locks=0 ]	(	0.5	)
focus	[ 0	locks=0 ]	(	5	)
fstop	[ 0	locks=0 ]	(	5.5999999	)
vm_bokeh	[ 0	locks=0 ]	(	radial	)
}
0707070000010000000006660000000000000000010000001147726722100002200000000072obj/cam1.userdata     ___toolcount___    4 ___toolid___    
object_cam0707070000010000000006660000000000000000010000001147726722100003000000000032obj/cam1/camOrigin.init type = add
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100002700000000615obj/cam1/camOrigin.def sopflags sopflags = 
comment ""
position 2 3
cachesize 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 off exposed on
inputs
{
}
stat
{
  create 1291674830
  modify 1291674836
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100003000000001061obj/cam1/camOrigin.parm {
version 0.8
stdswitcher	[ 0	locks=0 ]	(	0	0	0	)
keep	[ 0	locks=0 ]	(	"off"	)
points	[ 0	locks=0 ]	(	1	)
remove	[ 0	locks=0 ]	(	"off"	)
switcher	[ 0	locks=0 ]	(	0	0	)
prims	[ 0	locks=0 ]	(	1	)
group	[ 0	locks=0 ]	(	""	)
add	[ 0	locks=0 ]	(	"all"	)
inc	[ 0	locks=0 ]	(	2	)
attrname	[ 0	locks=0 ]	(	""	)
closedall	[ 0	locks=0 ]	(	"off"	)
addparticlesystem	[ 0	locks=0 ]	(	"off"	)
particlegroup	[ 0	locks=0 ]	(	""	)
usept0	[ 0	locks=0 ]	(	"on"	)
pt0	[ 0	locks=0 ]	(	0	0	0	)
weight0	[ 0	locks=0 ]	(	1	)
prim0	[ 0	locks=0 ]	(	""	)
closed0	[ 0	locks=0 ]	(	"off"	)
}
0707070000010000000006660000000000000000010000001147726722100002400000000033obj/cam1/file1.init type = file
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100002300000000620obj/cam1/file1.def sopflags sopflags = 
comment ""
position 0.18 3
cachesize 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 off exposed on
inputs
{
}
stat
{
  create 1291674830
  modify 1291674848
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100002400000000327obj/cam1/file1.parm {
version 0.8
filemode	[ 0	locks=0 ]	(	"read"	)
file	[ 0	locks=0 ]	(	defcam.bgeo	)
reload	[ 0	locks=0 ]	(	0	)
objpattern	[ 0	locks=0 ]	(	*	)
geodatapath	[ 0	locks=0 ]	(	""	)
missingframe	[ 0	locks=0 ]	(	"error"	)
}
0707070000010000000006660000000000000000010000001147726722100002500000000034obj/cam1/xform1.init type = xform
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100002400000000635obj/cam1/xform1.def sopflags sopflags = 
comment ""
position 0.18 1.5
cachesize 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 off exposed on
inputs
{
0 	file1 0 1
}
stat
{
  create 1291674830
  modify 1291674866
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100002400000000245obj/cam1/xform1.chn {
    channel scale {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = "property(\"../iconscale\", 1)" }
    }
  }
0707070000010000000006660000000000000000010000001147726722100002500000000631obj/cam1/xform1.parm {
version 0.8
group	[ 0	locks=0 ]	(	""	)
grouptype	[ 0	locks=0 ]	(	"guess"	)
xOrd	[ 0	locks=0 ]	(	"srt"	)
rOrd	[ 0	locks=0 ]	(	"xyz"	)
t	[ 0	locks=0 ]	(	0	0	0	)
r	[ 0	locks=0 ]	(	0	0	0	)
s	[ 0	locks=0 ]	(	1	1	1	)
shear	[ 0	locks=0 ]	(	0	0	0	)
p	[ 0	locks=0 ]	(	0	0	0	)
scale	[ 0	locks=0 ]	(	[ scale	1 ] 	)
updatenmls	[ 0	locks=0 ]	(	"on"	)
vlength	[ 0	locks=0 ]	(	"on"	)
invertxform	[ 0	locks=0 ]	(	"off"	)
}
0707070000010000000006660000000000000000010000001147726722100001700000000031obj/cam1.order 3
camOrigin
file1
xform1
0707070000010000000006660000000000000000010000001147726722100001500000000002obj/cam1.net 1
0707070000010000000006660000000000000000010000001147726722100002500000000035obj/fog/volume1.init type = volume
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100002400000000623obj/fog/volume1.def sopflags sopflags = 
comment ""
position -1.0974 1
cachesize 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 off exposed on
inputs
{
}
stat
{
  create 1291674896
  modify 1291675915
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100002500000001776obj/fog/volume1.parm {
version 0.8
rank	[ 0	locks=0 ]	(	"scalar"	)
name	[ 0	locks=0 ]	(	density	)
initialval	[ 0	locks=0 ]	(	1	0	0	)
stdswitcher	[ 0	locks=0 ]	(	0	0	)
dimensionsource	[ 0	locks=0 ]	(	1	1	)
size	[ 0	locks=0 ]	(	1	1	1	)
t	[ 0	locks=0 ]	(	0	0	0	)
taper	[ 0	locks=0 ]	(	1	1	)
twod	[ 0	locks=0 ]	(	"off"	)
voxelplane	[ 0	locks=0 ]	(	"xy"	)
camera	[ 0	locks=0 ]	(	/obj/pointlight1	)
zmin	[ 0	locks=0 ]	(	0	)
zmax	[ 0	locks=0 ]	(	20	)
usecamwindow	[ 0	locks=0 ]	(	"on"	)
winx	[ 0	locks=0 ]	(	-0.100000001	1.10000002	)
winy	[ 0	locks=0 ]	(	-0.100000001	1.10000002	)
uniformsamples	[ 0	locks=0 ]	(	"max"	)
samplediv	[ 0	locks=0 ]	(	100	)
divs	[ 0	locks=0 ]	(	10	10	10	)
divsize	[ 0	locks=0 ]	(	0.100000001	)
zscale	[ 0	locks=0 ]	(	1	)
volborder	[ 0	locks=0 ]	(	"constant"	)
volborderval	[ 0	locks=0 ]	(	0	0	0	)
voltol	[ 0	locks=0 ]	(	0	)
quantizetol	[ 0	locks=0 ]	(	0	)
dither	[ 0	locks=0 ]	(	"ordered"	)
usefp16	[ 0	locks=0 ]	(	"off"	)
volvis	[ 0	locks=0 ]	(	"smoke"	)
volvisiso	[ 0	locks=0 ]	(	0	)
volvisdensity	[ 0	locks=0 ]	(	1	)
}
0707070000010000000006660000000000000000010000001147726722100003100000000142obj/fog/volumevop1.order 11
volumevopglobal1
volumevopoutput1
multiply1
add1
aanoise1
freq
offset
amp
rough
maxoctave
fit1
0707070000010000000006660000000000000000010000001147726722100002700000000002obj/fog/volumevop1.net 1
0707070000010000000006660000000000000000010000001147726722100001600000000025obj/fog.order 2
volume1
volumevop1
0707070000010000000006660000000000000000010000001147726722100001400000000002obj/fog.net 1
0707070000010000000006660000000000000000010000001147726722100004600000000043obj/dust/object_merge__volume_in.init type = object_merge
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100004500000000633obj/dust/object_merge__volume_in.def sopflags sopflags = 
comment ""
position -0.616883 1.02597
cachesize 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 off exposed on
inputs
{
}
stat
{
  create 1291676423
  modify 1291677165
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100004600000001063obj/dust/object_merge__volume_in.parm {
version 0.8
xformtype	[ 0	locks=0 ]	(	"local"	)
xformpath	[ 0	locks=0 ]	(	""	)
invertxform	[ 0	locks=0 ]	(	"off"	)
createptgroups	[ 0	locks=0 ]	(	"off"	)
ptgroupprefix	[ 0	locks=0 ]	(	_ptgrp_	)
createprimgroups	[ 0	locks=0 ]	(	"off"	)
primgroupprefix	[ 0	locks=0 ]	(	_primgrp_	)
verbosegroups	[ 0	locks=0 ]	(	"off"	)
createptstring	[ 0	locks=0 ]	(	"off"	)
createprimstring	[ 0	locks=0 ]	(	"off"	)
numobj	[ 0	locks=0 ]	(	1	)
enable1	[ 0	locks=0 ]	(	"on"	)
objpath1	[ 0	locks=0 ]	(	/obj/fog/volume1	)
group1	[ 0	locks=0 ]	(	""	)
expand1	[ 0	locks=0 ]	(	"off"	)
}
0707070000010000000006660000000000000000010000001147726722100005400000000036obj/dust/scatter__points_in_volume_box.init type = scatter
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100005300000000672obj/dust/scatter__points_in_volume_box.def sopflags sopflags = 
comment ""
position -0.616883 0.14026
cachesize 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 off exposed on
inputs
{
0 	object_merge__volume_in 0 1
}
stat
{
  create 1291676439
  modify 1291677155
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100005400000001024obj/dust/scatter__points_in_volume_box.parm {
version 0.8
group	[ 0	locks=0 ]	(	""	)
keep	[ 0	locks=0 ]	(	"off"	)
ptsperarea	[ 0	locks=0 ]	(	"off"	)
npts	[ 0	locks=0 ]	(	10000	)
nptsperarea	[ 0	locks=0 ]	(	10	)
usedensity	[ 0	locks=0 ]	(	"on"	)
seed	[ 0	locks=0 ]	(	0	)
area	[ 0	locks=0 ]	(	"on"	)
attrib	[ 0	locks=0 ]	(	""	)
blend	[ 0	locks=0 ]	(	lerp	)
bias	[ 0	locks=0 ]	(	0.5	)
donear	[ 0	locks=0 ]	(	off	)
nearcount	[ 0	locks=0 ]	(	4	)
nearname	[ 0	locks=0 ]	(	ptarea	)
dogroup	[ 0	locks=0 ]	(	"off"	)
sgroup	[ 0	locks=0 ]	(	scatter	)
intattrib	[ 0	locks=0 ]	(	"off"	)
}
0707070000010000000006660000000000000000010000001147726722100005300000000034obj/dust/point__add_pscale_point_size.init type = point
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100005200000000740obj/dust/point__add_pscale_point_size.def sopflags sopflags = 
comment ""
position -0.616883 -1.94805
cachesize 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 off exposed on
inputs
{
0 	add_convert_to_particles_so_you_can_see_them_in_the_viewport 0 1
}
stat
{
  create 1291676468
  modify 1291677236
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100005200000006025obj/dust/point__add_pscale_point_size.chn {
    channel tx {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = $TX }
    }
    channel ty {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = $TY }
    }
    channel tz {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = $TZ }
    }
    channel weight {
      lefttype = extend
      righttype = extend
      default = 1
      flags = 0
      segment { length = 0 value = 1 1 expr = $WEIGHT }
    }
    channel diffr {
      lefttype = extend
      righttype = extend
      default = 1
      flags = 0
      segment { length = 0 value = 1 1 expr = $CR }
    }
    channel diffg {
      lefttype = extend
      righttype = extend
      default = 1
      flags = 0
      segment { length = 0 value = 1 1 expr = $CG }
    }
    channel diffb {
      lefttype = extend
      righttype = extend
      default = 1
      flags = 0
      segment { length = 0 value = 1 1 expr = $CB }
    }
    channel alpha {
      lefttype = extend
      righttype = extend
      default = 1
      flags = 0
      segment { length = 0 value = 1 1 expr = $CA }
    }
    channel nx {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = $NX }
    }
    channel ny {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = $NY }
    }
    channel nz {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = $NZ }
    }
    channel mapu {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = $MAPU }
    }
    channel mapv {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = $MAPV }
    }
    channel mapw {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = $MAPW }
    }
    channel tension {
      lefttype = extend
      righttype = extend
      default = 1
      flags = 0
      segment { length = 0 value = 1 1 expr = $TENSION }
    }
    channel springk {
      lefttype = extend
      righttype = extend
      default = 30
      flags = 0
      segment { length = 0 value = 30 30 expr = $SPRINGK }
    }
    channel vx {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = $VX }
    }
    channel vy {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = $VY }
    }
    channel vz {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = $VZ }
    }
    channel upx {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = $UPX }
    }
    channel upy {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = $UPY }
    }
    channel upz {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = $UPZ }
    }
  }
0707070000010000000006660000000000000000010000001147726722100005300000003164obj/dust/point__add_pscale_point_size.parm {
version 0.8
group	[ 0	locks=0 ]	(	""	)
matchbyattribute	[ 0	locks=0 ]	(	"off"	)
attributetomatch	[ 0	locks=0 ]	(	id	)
stdswitcher	[ 0	locks=0 ]	(	1	1	1	1	)
t	[ 8	locks=0 ]	(	[ tx	0 ] 	[ ty	0 ] 	[ tz	0 ] 	)
doweight	[ 0	locks=0 ]	(	"off"	)
weight	[ 8	locks=0 ]	(	[ weight	0 ] 	)
doclr	[ 0	locks=0 ]	(	"off"	)
diff	[ 8	locks=0 ]	(	[ diffr	0 ] 	[ diffg	0 ] 	[ diffb	0 ] 	)
doalpha	[ 0	locks=0 ]	(	"off"	)
alpha	[ 8	locks=0 ]	(	[ alpha	0 ] 	)
donml	[ 0	locks=0 ]	(	"off"	)
n	[ 8	locks=0 ]	(	[ nx	0 ] 	[ ny	0 ] 	[ nz	0 ] 	)
douvw	[ 0	locks=0 ]	(	"off"	)
map	[ 8	locks=0 ]	(	[ mapu	0 ] 	[ mapv	0 ] 	[ mapw	0 ] 	)
domass	[ 0	locks=0 ]	(	"off"	)
mass	[ 0	locks=0 ]	(	1	)
drag	[ 0	locks=0 ]	(	1	)
dotension	[ 0	locks=0 ]	(	"off"	)
tension	[ 8	locks=0 ]	(	[ tension	0 ] 	)
dospringk	[ 0	locks=0 ]	(	"off"	)
springk	[ 8	locks=0 ]	(	[ springk	0 ] 	)
dovel	[ 0	locks=0 ]	(	"off"	)
v	[ 8	locks=0 ]	(	[ vx	0 ] 	[ vy	0 ] 	[ vz	0 ] 	)
doup	[ 0	locks=0 ]	(	"off"	)
up	[ 8	locks=0 ]	(	[ upx	0 ] 	[ upy	0 ] 	[ upz	0 ] 	)
dopscale	[ 0	locks=0 ]	(	"on"	)
pscale	[ 0	locks=0 ]	(	0.0250000004	)
doinstance	[ 0	locks=0 ]	(	"off"	)
instancepath	[ 0	locks=0 ]	(	""	)
doradius	[ 0	locks=0 ]	(	"off"	)
radiusf	[ 0	locks=0 ]	(	1	)
doscale	[ 0	locks=0 ]	(	"off"	)
scalef	[ 0	locks=0 ]	(	1	)
doradialf	[ 0	locks=0 ]	(	"off"	)
radialf	[ 0	locks=0 ]	(	0	)
donormalf	[ 0	locks=0 ]	(	"off"	)
normalf	[ 0	locks=0 ]	(	0	)
doedgef	[ 0	locks=0 ]	(	"off"	)
edgef	[ 0	locks=0 ]	(	0	)
dodirf	[ 0	locks=0 ]	(	"off"	)
dirf	[ 0	locks=0 ]	(	0	0	0	)
numcustom	[ 0	locks=0 ]	(	1	)
apply1	[ 0	locks=0 ]	(	"on"	)
name1	[ 0	locks=0 ]	(	""	)
val1i	[ 0	locks=0 ]	(	0	0	0	0	)
sval1	[ 0	locks=0 ]	(	""	)
}
0707070000010000000006660000000000000000010000001147726722100004400000000100obj/dust/vopsop__add_movement.order 9
global1
output1
aanoise1
freq
offset
amp
rough
maxoctave
add1
0707070000010000000006660000000000000000010000001147726722100004200000000002obj/dust/vopsop__add_movement.net 1
0707070000010000000006660000000000000000010000001147726722100011300000000032obj/dust/add_convert_to_particles_so_you_can_see_them_in_the_viewport.init type = add
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100011200000000702obj/dust/add_convert_to_particles_so_you_can_see_them_in_the_viewport.def sopflags sopflags = 
comment ""
position -0.616883 -0.792208
cachesize 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 off exposed on
inputs
{
0 	scatter__points_in_volume_box 0 1
}
stat
{
  create 1291676614
  modify 1291677147
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100011300000001061obj/dust/add_convert_to_particles_so_you_can_see_them_in_the_viewport.parm {
version 0.8
stdswitcher	[ 0	locks=0 ]	(	2	2	2	)
keep	[ 0	locks=0 ]	(	"off"	)
points	[ 0	locks=0 ]	(	1	)
remove	[ 0	locks=0 ]	(	"off"	)
switcher	[ 0	locks=0 ]	(	0	0	)
prims	[ 0	locks=0 ]	(	1	)
group	[ 0	locks=0 ]	(	""	)
add	[ 0	locks=0 ]	(	"all"	)
inc	[ 0	locks=0 ]	(	2	)
attrname	[ 0	locks=0 ]	(	""	)
closedall	[ 0	locks=0 ]	(	"off"	)
addparticlesystem	[ 0	locks=0 ]	(	"on"	)
particlegroup	[ 0	locks=0 ]	(	""	)
usept0	[ 0	locks=0 ]	(	"off"	)
pt0	[ 0	locks=0 ]	(	0	0	0	)
weight0	[ 0	locks=0 ]	(	1	)
prim0	[ 0	locks=0 ]	(	""	)
closed0	[ 0	locks=0 ]	(	"off"	)
}
0707070000010000000006660000000000000000010000001147726722100005200000000036obj/dust/texture__add_uvs_from_light.init type = texture
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100005100000000700obj/dust/texture__add_uvs_from_light.def sopflags sopflags = 
comment ""
position -0.616883 -2.76487
cachesize 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 off exposed on
inputs
{
0 	point__add_pscale_point_size 0 1
}
stat
{
  create 1291676772
  modify 1291677116
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100005200000000444obj/dust/texture__add_uvs_from_light.parm {
version 0.8
group	[ 0	locks=0 ]	(	""	)
type	[ 0	locks=0 ]	(	"persp"	)
axis	[ 0	locks=0 ]	(	"y"	)
campath	[ 0	locks=0 ]	(	/obj/pointlight1	)
coord	[ 0	locks=0 ]	(	"point"	)
s	[ 0	locks=0 ]	(	1	1	1	)
offset	[ 0	locks=0 ]	(	0	0	0	)
angle	[ 0	locks=0 ]	(	0	)
fixseams	[ 0	locks=0 ]	(	"off"	)
}
0707070000010000000006660000000000000000010000001147726722100007500000000035obj/dust/delete__points_outside_light_frustum_using_uvs.init type = delete
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100007400000000677obj/dust/delete__points_outside_light_frustum_using_uvs.def sopflags sopflags = 
comment ""
position -0.616883 -3.63768
cachesize 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 off exposed on
inputs
{
0 	texture__add_uvs_from_light 0 1
}
stat
{
  create 1291676788
  modify 1291677185
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100007400000000542obj/dust/delete__points_outside_light_frustum_using_uvs.chn {
    channel rangeend {
      lefttype = extend
      righttype = extend
      flags = 0
      segment { length = 0 expr = $N }
    }
    channel filter {
      lefttype = extend
      righttype = extend
      default = 1
      flags = 0
      segment { length = 0 value = 1 1 expr = "$MAPU < 0.01 || $MAPU > 1 || $MAPV < 0.01 || $MAPV > 1" }
    }
  }
0707070000010000000006660000000000000000010000001147726722100007500000001565obj/dust/delete__points_outside_light_frustum_using_uvs.parm {
version 0.8
group	[ 0	locks=0 ]	(	""	)
negate	[ 0	locks=0 ]	(	"dele"	)
entity	[ 0	locks=0 ]	(	"point"	)
geotype	[ 0	locks=0 ]	(	"all"	)
stdswitcher	[ 0	locks=0 ]	(	0	0	0	0	)
affectnumber	[ 0	locks=0 ]	(	"on"	)
groupop	[ 0	locks=0 ]	(	"filter"	)
filter	[ 8	locks=0 ]	(	[ filter	1 ] 	)
pattern	[ 0	locks=0 ]	(	!*	)
range	[ 8	locks=0 ]	(	0	[ rangeend	9999 ] 	)
select	[ 0	locks=0 ]	(	1	2	)
affectvolume	[ 0	locks=0 ]	(	"off"	)
boundtype	[ 0	locks=0 ]	(	"usebbox"	)
size	[ 0	locks=0 ]	(	1	1	1	)
t	[ 0	locks=0 ]	(	0	0	0	)
affectnormal	[ 0	locks=0 ]	(	"off"	)
dir	[ 0	locks=0 ]	(	0	0	1	)
angle	[ 0	locks=0 ]	(	180	)
camerapath	[ 0	locks=0 ]	(	""	)
affectdegenerate	[ 0	locks=0 ]	(	"off"	)
degenerate	[ 0	locks=0 ]	(	"off"	)
zaf	[ 0	locks=0 ]	(	"off"	)
doopen	[ 0	locks=0 ]	(	"off"	)
tol	[ 0	locks=0 ]	(	0.00100000005	)
removegrp	[ 0	locks=0 ]	(	"on"	)
keeppoints	[ 0	locks=0 ]	(	"off"	)
}
0707070000010000000006660000000000000000010000001147726722100001700000000362obj/dust.order 7
object_merge__volume_in
scatter__points_in_volume_box
point__add_pscale_point_size
vopsop__add_movement
add_convert_to_particles_so_you_can_see_them_in_the_viewport
texture__add_uvs_from_light
delete__points_outside_light_frustum_using_uvs
0707070000010000000006660000000000000000010000001147726722100001500000000002obj/dust.net 1
0707070000010000000006660000000000000000010000001147726722100001200000000070obj.order 6
sphere_object1
grid_object1
pointlight1
cam1
fog
dust
0707070000010000000006660000000000000000010000001147726722100001000000000002obj.net 1
0707070000010000000006660000000000000000010000001147726722100001000000000572out.def comment ""
position 5 0.5
cachesize 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 off exposed on
inputs
{
}
stat
{
  create 1291674342
  modify 1291675033
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100001100000000020out.parm {
version 0.8
}
0707070000010000000006660000000000000000010000001147726722100002100000000032out/mantra1.init type = ifd
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100002000000000600out/mantra1.def comment ""
position 0.0259738 0
cachesize 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 off exposed on
inputs
{
}
stat
{
  create 1291675033
  modify 1291677245
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100003100000104407out/mantra1.spareparmdef     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	"main5"
	label	"Main"

	parm {
	    name	"soho_program"
	    baseparm
	    invisible
	    export	none
	}
	parm {
	    name	"soho_shopstyle"
	    baseparm
	    invisible
	    export	none
	}
	parm {
	    name	"target"
	    baseparm
	    export	none
	}
	parm {
	    name	"camera"
	    baseparm
	    export	none
	}
	parm {
	    name	"soho_pipecmd"
	    baseparm
	    export	none
	}
	parm {
	    name	"soho_outputmode"
	    baseparm
	    joinnext
	    export	none
	}
	parm {
	    name	"soho_diskfile"
	    baseparm
	    export	none
	}
	parm {
	    name	"soho_foreground"
	    baseparm
	    export	none
	}
	parm {
	    name	"soho_initsim"
	    baseparm
	    export	none
	}
	parm {
	    name	"soho_viewport_menu"
	    baseparm
	    export	none
	}
    }

    group {
	name	"main5_1"
	label	"Objects"

	parm {
	    name	"vobject"
	    baseparm
	    export	none
	}
	parm {
	    name	"forceobject"
	    baseparm
	    export	none
	}
	parm {
	    name	"matte_objects"
	    baseparm
	    export	none
	}
	parm {
	    name	"phantom_objects"
	    baseparm
	    export	none
	}
	parm {
	    name	"excludeobject"
	    baseparm
	    export	none
	}
	parm {
	    name	"obj_light_sep"
	    baseparm
	    export	none
	}
	parm {
	    name	"sololight"
	    baseparm
	    export	none
	}
	parm {
	    name	"alights"
	    baseparm
	    export	none
	}
	parm {
	    name	"forcelights"
	    baseparm
	    export	none
	}
	parm {
	    name	"excludelights"
	    baseparm
	    export	none
	}
	parm {
	    name	"soho_autoheadlight"
	    baseparm
	    export	none
	}
	parm {
	    name	"light_fog_sep"
	    baseparm
	    export	none
	}
	parm {
	    name	"vfog"
	    baseparm
	    export	none
	}
    }

    group {
	name	"main5_2"
	label	"Properties"

	parm {
	    name	"shop_propertiespath"
	    baseparm
	    export	none
	}
	group {
	    name	"folder0"
	    label	"Output"

	    parm {
		name	"vm_picture"
		label	"Output Picture"
		type	file
		default	{ "ip" }
		menureplace	{
		    [ "echo `pythonexprs(\"__import__('toolutils').parseDialogScriptMenu('FBrender')\")`" ]
		}
		range	{ 0 1 }
		export	none
		parmtag	{ "filechooser_mode" "write" }
		parmtag	{ "spare_category" "Output" }
	    }
	    parm {
		name	"vm_device"
		label	"Output Device"
		type	string
		default	{ "" }
		menu	{
		    ""	"Infer from filename"
		    "Houdini"	"Houdini .pic format"
		    "TIFF"	"Tagged Image File Format (TIFF)"
		    "OpenEXR"	"Open EXR"
		    "PNG"	"Portable Network Graphics (PNG)"
		    "JPEG"	"JPEG"
		    "RAT"	"Random Access Texture (RAT)"
		}
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Output" }
	    }
	    parm {
		name	"vm_pfilter"
		label	"Pixel Filter"
		type	string
		default	{ "gaussian 2 2" }
		menureplace	{
		    "box 1 1"	"Unit Box Filter"
		    "gaussian 2 2"	"Gaussian 2x2"
		    "gaussian 3 3"	"Gaussian 3x3 (softer)"
		    "bartlett 2 2"	"Bartlett (triangle)"
		    "catrom 2 2"	"Catmull-Rom"
		    "hanning 2 2"	"Hanning"
		    "blackman 2 2"	"Blackman"
		    "sinc 2 2"	"Sinc (sharpening)"
		    "minmax min"	"Closest Sample Filtering"
		    "minmax max"	"Farthest Sample Filtering"
		    "minmax edge"	"Disable Edge Antialiasing"
		    "minmax ocover"	"Object With Most Pixel Coverage"
		    "minmax idcover"	"Object With Most Pixel Coverage (no filtering)"
		}
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Output" }
	    }
	    parm {
		name	"vm_sfilter"
		label	"Sample Filter"
		type	string
		default	{ "alpha" }
		menu	{
		    "alpha"	"Opacity Filtering"
		    "closest"	"Closest Surface"
		}
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Output" }
	    }
	    parm {
		name	"vm_quantize"
		label	"Quantization"
		type	string
		default	{ "half" }
		menu	{
		    "8"	"8 bit integer"
		    "16"	"16 bit integer"
		    "half"	"16 bit float"
		    "float"	"32 bit float"
		}
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Output" }
	    }
	    parm {
		name	"vm_whitepoint"
		label	"White Point"
		type	float
		default	{ "1" }
		range	{ 0 10 }
		export	none
		parmtag	{ "spare_category" "Output" }
	    }
	    parm {
		name	"vm_subpixel"
		label	"Sub-Pixel Output"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Output" }
	    }
	    parm {
		name	"override_camerares"
		label	"Override Camera Resolution"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Output" }
	    }
	    parm {
		name	"res_fraction"
		label	"Resolution Scale"
		type	string
		default	{ "specific" }
		disablewhen	"{ 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"
		}
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Output" }
	    }
	    parm {
		name	"res_override"
		label	"Resolution"
		type	intvector2
		joinnext
		size	2
		default	{ "640" "480" }
		disablewhen	"{ override_camerares == 0 } { res_fraction != specific }"
		range	{ -1 1 }
		export	none
		parmtag	{ "spare_category" "Output" }
	    }
	    parm {
		name	"res_overrideMenu"
		label	"Choose Resolution"
		type	button
		nolabel
		default	{ "0" }
		disablewhen	"{ override_camerares == 0 } { res_fraction != specific }"
		menumini	{
		    [ "echo `pythonexprs(\"__import__('toolutils').parseDialogScriptMenu('FBres')\")`" ]
		}
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Output" }
		parmtag	{ "script_callback" "opparm . res_override ( `arg(\"$script_value\", 0)` `arg(\"$script_value\", 1)` aspect_override ( `arg(\"$script_value\", 2)` )" }
	    }
	    parm {
		name	"aspect_override"
		label	"Pixel Aspect Ratio"
		type	float
		default	{ "1" }
		disablewhen	"{ override_camerares == 0 }"
		range	{ 0.05 2 }
		export	none
		parmtag	{ "spare_category" "Output" }
	    }
	    parm {
		name	"vm_deepresolver"
		label	"Deep Resolver"
		type	string
		default	{ "null" }
		menu	{
		    "null"	"No Deep Resolver"
		    "shadow"	"Deep Shadow Map"
		    "camera"	"Deep Camera Map"
		}
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Output" }
	    }
	    parm {
		name	"vm_dcmfilename"
		label	"DCM Filename"
		type	file
		default	{ "$HIP/dcm.rat" }
		disablewhen	"{ vm_deepresolver != camera }"
		range	{ 0 1 }
		export	none
		parmtag	{ "filechooser_mode" "read_and_write" }
		parmtag	{ "spare_category" "Output" }
	    }
	    multiparm {
		name	"vm_numaux"
		label	"Extra Image Planes"
		parmtag	{ "spare_category" "Output" }

		parm {
		    name	"vm_disable_plane#"
		    label	"Disable Plane #"
		    type	toggle
		    default	{ "0" }
		    range	{ 0 1 }
		    export	none
		    parmtag	{ "spare_category" "Output" }
		}
		parm {
		    name	"vm_variable_plane#"
		    label	"VEX Variable"
		    type	string
		    default	{ "" }
		    help	"The VEX variable (global or output parameter)"
		    disablewhen	"{ vm_disable_plane# == 1 }"
		    menureplace	{
			"Cf"	"Cf (color)"
			"Of"	"Of (opacity)"
			"Af"	"Af (alpha)"
			"P"	"P (position)"
			"Pz"	"Pz (position-z)"
			"N"	"N (normal)"
			"Render_Time"	"Diagnostic: Render Time"
			"Op_Id"	"Diagnostic: Node Id"
			"Prim_Id"	"Diagnostic: Primitive Id"
			"direct_diffuse"	"Direct diffuse"
			"direct_specular"	"Direct specular"
			"direct_reflect"	"Direct reflect"
			"direct_refract"	"Direct refract"
			"direct_volume"	"Direct volume"
			"direct_emission"	"Direct emission"
			"direct_noshadow"	"Direct unshadowed"
			"direct_shadow"	"Direct shadow matte"
			"indirect_diffuse"	"Indirect diffuse"
			"indirect_specular"	"Indirect specular"
			"indirect_reflect"	"Indirect reflect"
			"indirect_refract"	"Indirect refract"
			"indirect_volume"	"Indirect volume"
			"indirect_emission"	"Indirect emission"
			"indirect_noshadow"	"Indirect unshadowed"
			"indirect_shadow"	"Indirect shadow matte"
			"all_diffuse"	"Combined diffuse"
			"all_specular"	"Combined specular"
			"all_reflect"	"Combined reflect"
			"all_refract"	"Combined refract"
			"all_volume"	"Combined volume"
			"all_emission"	"Combined emission"
			"direct"	"Combined direct"
			"indirect"	"Combined indirect"
			"sss_single"	"Single scattering"
			"sss_multi"	"Multi scattering"
			"level"	"Ray-level"
			"diffuselevel"	"Diffuse ray-level"
			"specularlevel"	"Specular ray-level"
			"volumelevel"	"Volume ray-level"
			"direct_samples"	"Direct ray samples"
			"indirect_samples"	"Indirect ray samples"
		    }
		    range	{ 0 1 }
		    export	none
		    parmtag	{ "spare_category" "Output" }
		    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\")` )" }
		}
		parm {
		    name	"vm_vextype_plane#"
		    label	"VEX Type"
		    type	string
		    default	{ "vector" }
		    help	"The type associated with the VEX variable"
		    disablewhen	"{ vm_disable_plane# == 1 }"
		    menu	{
			"float"	"Float Type"
			"vector"	"Vector Type"
			"vector4"	"Vector4 Type"
		    }
		    range	{ 0 1 }
		    export	none
		    parmtag	{ "spare_category" "Output" }
		}
		parm {
		    name	"vm_channel_plane#"
		    label	"Channel Name #"
		    type	string
		    default	{ "" }
		    help	"The channel name -- if left blank, this will use the variable name"
		    disablewhen	"{ vm_disable_plane# == 1 } { vm_variable_plane# == \"\" }"
		    range	{ 0 1 }
		    export	none
		    parmtag	{ "spare_category" "Output" }
		}
		parm {
		    name	"vm_usefile_plane#"
		    label	"Different File"
		    type	toggle
		    nolabel
		    joinnext
		    default	{ "0" }
		    help	"Save this deep raster plane to a different disk file than the main image.\\nThis does *not* work when rendering to mplay."
		    disablewhen	"{ vm_disable_plane# == 1 } { vm_variable_plane# == \"\" } { vm_picture == ip }"
		    range	{ 0 1 }
		    export	none
		    parmtag	{ "spare_category" "Output" }
		}
		parm {
		    name	"vm_filename_plane#"
		    label	"Different 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	"{ vm_disable_plane# == 1 } { vm_variable_plane# == \"\" } { vm_picture == ip } { vm_usefile_plane# == 0 }"
		    menureplace	{
			[ "echo `pythonexprs(\"__import__('toolutils').parseDialogScriptMenu('FBrender')\")`" ]
		    }
		    range	{ 0 1 }
		    export	none
		    parmtag	{ "filechooser_mode" "write" }
		    parmtag	{ "spare_category" "Output" }
		}
		parm {
		    name	"vm_quantize_plane#"
		    label	"Quantize"
		    type	string
		    default	{ "float" }
		    help	"image:quantize"
		    disablewhen	"{ vm_disable_plane# == 1 } { vm_variable_plane# == \"\" }"
		    menu	{
			"8"	"8 bit integer"
			"16"	"16 bit integer"
			"half"	"16 bit float"
			"float"	"32 bit float"
		    }
		    range	{ 0 1 }
		    export	none
		    parmtag	{ "spare_category" "Output" }
		}
		parm {
		    name	"vm_sfilter_plane#"
		    label	"Sample Filter"
		    type	string
		    default	{ "alpha" }
		    help	"image:sfilter"
		    disablewhen	"{ vm_disable_plane# == 1 } { vm_variable_plane# == \"\" }"
		    menu	{
			"alpha"	"Opacity Filtering"
			"closest"	"Closest Surface"
		    }
		    range	{ 0 1 }
		    export	none
		    parmtag	{ "spare_category" "Output" }
		}
		parm {
		    name	"vm_pfilter_plane#"
		    label	"Pixel Filter"
		    type	string
		    default	{ "" }
		    help	"image:pfilter"
		    disablewhen	"{ vm_disable_plane# == 1 } { vm_variable_plane# == \"\" }"
		    menureplace	{
			""	"Inherit from main plane"
			"box 1 1"	"Unit Box Filter"
			"gaussian 2 2"	"Gaussian 2x2"
			"gaussian 3 3"	"Gaussian 3x3 (softer)"
			"bartlett 2 2"	"Bartlett (triangle)"
			"catrom 2 2"	"Catmull-Rom"
			"hanning 2 2"	"Hanning"
			"blackman 2 2"	"Blackman"
			"sinc 2 2"	"Sinc (sharpening)"
			"minmax min"	"Closest Sample Filtering"
			"minmax max"	"Farthest Sample Filtering"
			"minmax edge"	"Disable Edge Antialiasing"
			"minmax ocover"	"Object With Most Pixel Coverage"
			"minmax idcover"	"Object With Most Pixel Coverage (no filtering)"
		    }
		    range	{ 0 1 }
		    export	none
		    parmtag	{ "spare_category" "Output" }
		}
		parm {
		    name	"vm_gamma_plane#"
		    label	"Gamma"
		    type	float
		    default	{ "1" }
		    help	"image:gamma"
		    disablewhen	"{ vm_disable_plane# == 1 } { vm_variable_plane# == \"\" }"
		    range	{ 0.001 3 }
		    export	none
		    parmtag	{ "spare_category" "Output" }
		}
		parm {
		    name	"vm_gain_plane#"
		    label	"Gain"
		    type	float
		    default	{ "1" }
		    help	"image:gain"
		    disablewhen	"{ vm_disable_plane# == 1 } { vm_variable_plane# == \"\" }"
		    range	{ 0.001 10 }
		    export	none
		    parmtag	{ "spare_category" "Output" }
		}
		parm {
		    name	"vm_dither_plane#"
		    label	"Dither"
		    type	float
		    default	{ "0.5" }
		    help	"image:dither"
		    disablewhen	"{ vm_disable_plane# == 1 } { vm_variable_plane# == \"\" }"
		    range	{ 0 1 }
		    export	none
		    parmtag	{ "spare_category" "Output" }
		}
		parm {
		    name	"vm_whitepoint_plane#"
		    label	"White Point"
		    type	float
		    default	{ "1" }
		    help	"image:whitepoint"
		    disablewhen	"{ vm_disable_plane# == 1 } { vm_variable_plane# == \"\" }"
		    range	{ 0 1 }
		    export	none
		    parmtag	{ "spare_category" "Output" }
		}
		parm {
		    name	"vm_lightexport#"
		    label	"Light Exports"
		    type	integer
		    default	{ "0" }
		    disablewhen	"{ vm_disable_plane# == 1 } { vm_variable_plane# == \"\" }"
		    menu	{
			"0"	"No light exports"
			"1"	"Export variable for each light"
			"2"	"Merge all lights into single channel"
		    }
		    range	{ 0 10 }
		    export	none
		}
		parm {
		    name	"vm_lightexport_scope#"
		    label	"Light Mask"
		    type	oplist
		    default	{ "*" }
		    disablewhen	"{ vm_disable_plane# == 1 } { vm_variable_plane# == \"\" } { vm_lightexport# == 0 }"
		    range	{ 0 1 }
		    export	none
		    parmtag	{ "oprelative" "/" }
		    parmtag	{ "opfilter" "!!OBJ/LIGHT!!" }
		    parmtag	{ "opexpand" "1" }
		}
		parm {
		    name	"vm_lightexport_select#"
		    label	"Light Selection"
		    type	string
		    default	{ "*" }
		    disablewhen	"{ vm_disable_plane# == 1 } { vm_variable_plane# == \"\" } { vm_lightexport# == 0 }"
		    range	{ 0 1 }
		    export	none
		}
	    }

	}

	group {
	    name	"folder0_1"
	    label	"Output Options"

	    parm {
		name	"vm_image_artist"
		label	"Artist"
		type	string
		default	{ "" }
		help	"Used by many image formats to store the artist"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Output Options" }
	    }
	    parm {
		name	"vm_image_comment"
		label	"Comment"
		type	string
		default	{ "" }
		help	"Used by many image formats to store a comment"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Output Options" }
	    }
	    parm {
		name	"vm_image_hostname"
		label	"Hostname"
		type	string
		default	{ "" }
		help	"Used by many image formats to store the rendering host"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Output Options" }
	    }
	    parm {
		name	"vm_image_mplay_direction"
		label	"MPlay Tile Order"
		type	string
		default	{ "middle" }
		menu	{
		    "middle"	"Interactive (starting in middle)"
		    "top"	"Top down"
		    "bottom"	"Bottom up"
		}
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Output Options" }
	    }
	    parm {
		name	"vm_image_mplay_gamma"
		label	"MPlay Gamma"
		type	float
		default	{ "1" }
		range	{ 0.001 4 }
		export	none
		parmtag	{ "spare_category" "Output Options" }
	    }
	    parm {
		name	"vm_image_jpeg_quality"
		label	"JPEG Quality"
		type	integer
		default	{ "100" }
		range	{ 20 100 }
		export	none
		parmtag	{ "spare_category" "Output Options" }
	    }
	    parm {
		name	"vm_image_tiff_compression"
		label	"TIFF Compression"
		type	string
		default	{ "LZW" }
		menu	{
		    "None"	"No compression"
		    "LZW"	"LZW Compression"
		    "AdobeDeflate"	"Adobe Deflate"
		    "PackBits"	"PackBits"
		    "JPEG"	"JPEG"
		    "PixarLog"	"Pixar Log"
		    "SGILog"	"LogLuv"
		    "SGILog24"	"LogLuv (24 bit)"
		}
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Output Options" }
	    }
	    parm {
		name	"vm_image_exr_compression"
		label	"EXR Compression"
		type	string
		default	{ "piz" }
		menu	{
		    "none"	"No compression"
		    "rle"	"Runlength Encoding"
		    "zips"	"ZIP, Single scanline"
		    "zip"	"ZIP, Multi-scanline blocks"
		    "piz"	"PIZ Wavelet"
		    "pix"	"PXR24 (32 bit float compression, lossy)"
		}
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Output Options" }
	    }
	}

	group {
	    name	"folder0_2"
	    label	"Render"

	    parm {
		name	"vm_renderengine"
		label	"Rendering Engine"
		type	string
		default	{ "micropoly" }
		menu	{
		    "micropoly"	"Micropolygon Rendering"
		    "raytrace"	"Ray Tracing"
		    "pbrmicropoly"	"Micropolygon Physically Based Rendering"
		    "pbrraytrace"	"Physically Based Rendering"
		    "photon"	"Photon Map Generation"
		}
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Render" }
	    }
	    parm {
		name	"vm_bucketsize"
		label	"Tile Size"
		type	integer
		default	{ "16" }
		range	{ 1 64 }
		export	none
		parmtag	{ "spare_category" "Render" }
	    }
	    parm {
		name	"vm_opacitylimit"
		label	"Opacity Limit"
		type	float
		default	{ "0.995" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Render" }
	    }
	    parm {
		name	"vm_usemaxthreads"
		label	"Use Max Processors"
		type	toggle
		default	{ "1" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Render" }
	    }
	    parm {
		name	"vm_threadcount"
		label	"Thread Count"
		type	integer
		default	{ "1" }
		disablewhen	"{ vm_usemaxthreads == 1 }"
		range	{ 1 4 }
		export	none
		parmtag	{ "spare_category" "Render" }
	    }
	    parm {
		name	"vm_octreestyle"
		label	"Ray Tracing Accelerator"
		type	string
		default	{ "kdtree" }
		menu	{
		    "kdtree"	"KD-Tree"
		    "bboxtree"	"Bounding Volume Hierarchy"
		}
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Render" }
	    }
	    parm {
		name	"vm_kdmemfactor"
		label	"KD-Tree Memory Factor"
		type	float
		default	{ "1" }
		disablewhen	"{ vm_octreestyle != kdtree }"
		range	{ 0.001 2 }
		export	none
		parmtag	{ "spare_category" "Render" }
	    }
	    parm {
		name	"vm_geocachesize"
		label	"Geometry Cache Size (Mb)"
		type	integer
		default	{ "256" }
		range	{ 16 1024 }
		export	none
		parmtag	{ "spare_category" "Render" }
	    }
	    parm {
		name	"vm_texcachesize"
		label	"Texture Cache Size (Mb)"
		type	integer
		default	{ "256" }
		range	{ 16 1024 }
		export	none
		parmtag	{ "spare_category" "Render" }
	    }
	    parm {
		name	"vm_uvobject"
		label	"UV Render Object"
		type	oppath
		default	{ "" }
		range	{ 0 1 }
		export	none
		parmtag	{ "oprelative" "/obj" }
		parmtag	{ "opfilter" "!!OBJ/GEOMETRY!!" }
		parmtag	{ "spare_category" "Render" }
	    }
	    parm {
		name	"vm_uvattribute"
		label	"UV Attribute"
		type	string
		default	{ "uv" }
		disablewhen	"{ vm_uvobject == \"\" }"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Render" }
	    }
	    parm {
		name	"vm_hidden"
		label	"Enable Hiding"
		type	toggle
		default	{ "1" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Render" }
	    }
	    parm {
		name	"render_viewcamera"
		label	"Create Image From Viewing Camera"
		type	toggle
		default	{ "1" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Render" }
	    }
	    parm {
		name	"render_any_shadowmap"
		label	"Auto-Generate Shadow Maps"
		type	toggle
		default	{ "1" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Render" }
	    }
	    parm {
		name	"render_any_envmap"
		label	"Auto-Generate Environment Maps"
		type	toggle
		default	{ "1" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Render" }
	    }
	    parm {
		name	"render_any_photonmap"
		label	"Auto-Generate Photon Maps"
		type	toggle
		default	{ "1" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Render" }
	    }
	    parm {
		name	"vm_otlfullpath"
		label	"Output OTLs with full paths"
		type	toggle
		default	{ "0" }
		help	"Toggling this parameter on will expand any variables in OTL paths, breaking the dependency on Houdini environment variables, but possibly making the IFD less portable"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Render" }
	    }
	    parm {
		name	"vm_embedvex"
		label	"Force VEX Shader Embedding"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Render" }
	    }
	}

	group {
	    name	"folder0_3"
	    label	"Sampling"

	    parm {
		name	"vm_dof"
		label	"Enable Depth Of Field"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Sampling" }
	    }
	    parm {
		name	"allowmotionblur"
		label	"Allow Motion Blur"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Sampling" }
	    }
	    parm {
		name	"vm_traceblur"
		label	"Raytrace Motion Blur"
		type	toggle
		default	{ "0" }
		help	"Enables raytraced motion blur in micropolygon rendering"
		disablewhen	"{ allowmotionblur == 0 } { vm_renderengine != micropoly vm_renderengine != pbrmicropoly }"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Sampling" }
	    }
	    parm {
		name	"vm_motionfactor"
		label	"Motion Factor"
		type	float
		default	{ "0" }
		disablewhen	"{ allowmotionblur == 0 vm_dof == 0 }"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Sampling" }
	    }
	    parm {
		name	"xform_motionsamples"
		label	"Xform Time Samples"
		type	integer
		default	{ "2" }
		disablewhen	"{ allowmotionblur == 0 }"
		range	{ 1 10 }
		export	none
		parmtag	{ "spare_category" "Sampling" }
	    }
	    parm {
		name	"geo_motionsamples"
		label	"Geo Time Samples"
		type	integer
		default	{ "1" }
		disablewhen	"{ allowmotionblur == 0 }"
		range	{ 1 10 }
		export	none
		parmtag	{ "spare_category" "Sampling" }
	    }
	    parm {
		name	"motionstyle"
		label	"Motion Blur Style"
		type	string
		default	{ "trailing" }
		disablewhen	"{ allowmotionblur == 0 }"
		menu	{
		    "leading"	"Leading Blur"
		    "centered"	"Frame Centered Blur"
		    "trailing"	"Trailing Blur"
		}
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Sampling" }
	    }
	    parm {
		name	"vm_imageblur"
		label	"Allow Image Motion Blur"
		type	toggle
		default	{ "1" }
		help	"This setting controls whether mantra computes motion blur for direct visibility.  When disabled, mantra will render without motion blur but still compute motion blurred positions so that you can use getBlurP() in shaders to export motion vectors."
		disablewhen	"{ allowmotionblur == 0 }"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Sampling" }
	    }
	    parm {
		name	"vm_samples"
		label	"Pixel Samples"
		type	intvector2
		size	2
		default	{ "3" "3" }
		range	{ 1 32 }
		export	none
		parmtag	{ "spare_category" "Sampling" }
	    }
	    parm {
		name	"vm_jitter"
		label	"Jitter"
		type	float
		default	{ "1" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Sampling" }
	    }
	    parm {
		name	"vm_samplelock"
		label	"Sample Lock"
		type	toggle
		default	{ "1" }
		help	"When enabled, mantra will use the same pixel sampling pattern across frames in an animation to eliminate flicker.  If the static noise pattern produced by locked samples is visually distracting, this parameter can be disabled to produce a varying sampling pattern between frames"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Sampling" }
	    }
	    parm {
		name	"vm_dorayvariance"
		label	"Ray Variance Antialiasing"
		type	toggle
		default	{ "1" }
		help	"Enables variance antialiasing for raytracing."
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Sampling" }
	    }
	    parm {
		name	"vm_minraysamples"
		label	"Min Ray Samples"
		type	integer
		default	{ "1" }
		help	"Minimum number of raytracing samples per micropolygon or pixel sample"
		range	{ 1 64 }
		export	none
		parmtag	{ "spare_category" "Sampling" }
	    }
	    parm {
		name	"vm_maxraysamples"
		label	"Max Ray Samples"
		type	integer
		default	{ "9" }
		help	"Maximum number of raytracing samples per micropolygon or pixel sample"
		disablewhen	"{ vm_dorayvariance == 0 }"
		range	{ 1 64 }
		export	none
		parmtag	{ "spare_category" "Sampling" }
	    }
	    parm {
		name	"vm_variance"
		label	"Noise Level"
		type	float
		default	{ "0.05" }
		help	"Noise threshold used for ray variance antialiasing.  Lower values produce less noisy images."
		disablewhen	"{ vm_dorayvariance == 0 }"
		range	{ 0 0.1 }
		export	none
		parmtag	{ "spare_category" "Sampling" }
	    }
	    parm {
		name	"vm_volumestepsize"
		label	"Volume Step Size"
		type	float
		default	{ "0.1" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Sampling" }
	    }
	    parm {
		name	"vm_volumeshadowquality"
		label	"Volume Shadow Quality"
		type	float
		default	{ "1" }
		help	"A factor to proportionally decrease the sampling quality for volume shadows.  Smaller values will cause mantra to use a larger step size for shadow rays.  A value of 1 will produce equal quality for shadow rays and shading rays."
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Sampling" }
	    }
	    parm {
		name	"vm_randomseed"
		label	"Random Seed"
		type	integer
		default	{ "0" }
		range	{ 0 10 }
		export	none
		parmtag	{ "spare_category" "Sampling" }
	    }
	}

	group {
	    name	"folder0_4"
	    label	"Shading"

	    parm {
		name	"vm_reflectlimit"
		label	"Reflect Limit"
		type	integer
		default	{ "10" }
		range	{ 0 10 }
		export	none
		parmtag	{ "spare_category" "Shading" }
	    }
	    parm {
		name	"vm_refractlimit"
		label	"Refract Limit"
		type	integer
		default	{ "10" }
		range	{ 0 10 }
		export	none
		parmtag	{ "spare_category" "Shading" }
	    }
	    parm {
		name	"vm_diffuselimit"
		label	"Diffuse Limit"
		type	integer
		default	{ "0" }
		range	{ 0 10 }
		export	none
		parmtag	{ "spare_category" "Shading" }
	    }
	    parm {
		name	"vm_volumelimit"
		label	"Volume Limit"
		type	integer
		default	{ "0" }
		range	{ 0 10 }
		export	none
		parmtag	{ "spare_category" "Shading" }
	    }
	    parm {
		name	"vm_raybias"
		label	"Raytracing Bias"
		type	float
		default	{ "0.01" }
		range	{ 0 10 }
		export	none
		parmtag	{ "spare_category" "Shading" }
	    }
	    parm {
		name	"vm_biasnormal"
		label	"Bias Along Normal"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Shading" }
	    }
	    parm {
		name	"vm_colorspace"
		label	"Color Space"
		type	string
		default	{ "linear" }
		help	"Sampling color space for variance antialiasing.  Setting this to Gamma 2.2 will cause darker parts of the image to receive more samples."
		menu	{
		    "linear"	"Linear"
		    "gamma"	"Gamma 2.2"
		}
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Shading" }
	    }
	    parm {
		name	"vm_raylimiteval"
		label	"At Ray Limit"
		type	string
		default	{ "none" }
		menu	{
		    "none"	"Use Black Background"
		    "direct"	"Use Direct Lighting as Background Color"
		}
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Shading" }
	    }
	    parm {
		name	"vm_smoothcolor"
		label	"Smooth Grid Colors"
		type	toggle
		default	{ "1" }
		disablewhen	"{ vm_renderengine != micropoly vm_renderengine != pbrmicropoly }"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Shading" }
	    }
	}

	group {
	    name	"folder0_5"
	    label	"PBR"

	    parm {
		name	"vm_pbrshader"
		label	"PBR Shader"
		type	oppath
		default	{ "" }
		disablewhen	"{ vm_renderengine == micropoly } { vm_renderengine == raytrace }"
		range	{ 0 1 }
		export	none
		parmtag	{ "oprelative" "." }
		parmtag	{ "opfilter" "!!SHOP/ATMOSPHERE!!" }
		parmtag	{ "spare_category" "PBR" }
	    }
	    parm {
		name	"vm_pbrphotonshader"
		label	"PBR Photon Shader"
		type	oppath
		default	{ "" }
		disablewhen	"{ vm_renderengine == micropoly } { vm_renderengine == raytrace }"
		range	{ 0 1 }
		export	none
		parmtag	{ "oprelative" "." }
		parmtag	{ "opfilter" "!!SHOP/ATMOSPHERE!!" }
		parmtag	{ "spare_category" "PBR" }
	    }
	    parm {
		name	"vm_pbrpathtype"
		label	"Allowable Paths"
		type	string
		default	{ "diffuse" }
		disablewhen	"{ vm_renderengine == micropoly } { vm_renderengine == raytrace }"
		menu	{
		    "diffuse"	"Specular, Diffuse Paths"
		    "all"	"All Paths"
		}
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "PBR" }
	    }
	    parm {
		name	"vm_colorlimit"
		label	"Color Limit"
		type	float
		default	{ "10" }
		disablewhen	"{ vm_renderengine != pbrraytrace vm_renderengine != pbrmicropoly }"
		range	{ 0 20 }
		export	none
		parmtag	{ "spare_category" "PBR" }
	    }
	    parm {
		name	"vm_pbrreflectratio"
		label	"Min Reflection Ratio"
		type	float
		default	{ "0" }
		disablewhen	"{ vm_renderengine == micropoly } { vm_renderengine == raytrace }"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "PBR" }
	    }
	}

	group {
	    name	"folder0_6"
	    label	"Statistics"

	    parm {
		name	"vm_verbose"
		label	"Verbose Level"
		type	integer
		default	{ "0" }
		range	{ 0 5 }
		export	none
		parmtag	{ "spare_category" "Statistics" }
	    }
	    parm {
		name	"vm_vexprofile"
		label	"VEX Profiling"
		type	integer
		default	{ "0" }
		menu	{
		    "0"	"No VEX Profiling"
		    "1"	"Execution profiling"
		    "2"	"Profiling and NAN detection"
		}
		range	{ 0 10 }
		export	none
		parmtag	{ "spare_category" "Statistics" }
	    }
	    parm {
		name	"vm_alfprogress"
		label	"Alfred Style Progress"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Statistics" }
	    }
	    parm {
		name	"vm_tilecallback"
		label	"Python Tile Callback"
		type	file
		default	{ "" }
		range	{ 0 1 }
		export	none
		parmtag	{ "filechooser_mode" "read" }
		parmtag	{ "spare_category" "Statistics" }
	    }
	}

	group {
	    name	"folder0_7"
	    label	"Dicing"

	    parm {
		name	"vm_shadingfactor"
		label	"Shading Quality Multiplier"
		type	float
		default	{ "1" }
		disablewhen	"{ vm_renderengine != micropoly vm_renderengine != pbrmicropoly }"
		range	{ 0 10 }
		export	none
		parmtag	{ "spare_category" "Dicing" }
	    }
	    parm {
		name	"vm_rayshadingfactor"
		label	"Ray Shading Quality Multiplier"
		type	float
		default	{ "1" }
		range	{ 0 10 }
		export	none
		parmtag	{ "spare_category" "Dicing" }
	    }
	    parm {
		name	"vm_measure"
		label	"Micropolygon Measuring"
		type	string
		default	{ "nonraster" }
		disablewhen	"{ vm_renderengine != micropoly vm_renderengine != pbrmicropoly }"
		menu	{
		    "nonraster"	"Non-Raster Measuring"
		    "raster"	"Raster Space Measuring"
		    "uniform"	"Uniform Measuring"
		}
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Dicing" }
	    }
	    parm {
		name	"vm_measurezimportance"
		label	"Z-Importance"
		type	float
		default	{ "0" }
		disablewhen	"{ vm_renderengine != micropoly vm_renderengine != pbrmicropoly } { vm_measure != nonraster }"
		range	{ 0 10 }
		export	none
		parmtag	{ "spare_category" "Dicing" }
	    }
	    parm {
		name	"vm_raymeasure"
		label	"Ray Measuring"
		type	string
		default	{ "nonraster" }
		menu	{
		    "nonraster"	"Non-Raster Measuring"
		    "raster"	"Raster Space Measuring"
		    "uniform"	"Uniform Measuring"
		}
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Dicing" }
	    }
	    parm {
		name	"vm_raymeasurezimportance"
		label	"Ray Z-Importance"
		type	float
		default	{ "1" }
		disablewhen	"{ vm_raymeasure != nonraster }"
		range	{ 0 10 }
		export	none
		parmtag	{ "spare_category" "Dicing" }
	    }
	}

	group {
	    name	"folder0_8"
	    label	"Geometry"

	    parm {
		name	"vm_binarygeometry"
		label	"Save Binary Geometry"
		type	toggle
		default	{ "1" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Geometry" }
	    }
	    parm {
		name	"vm_savegroups"
		label	"Save Geometry Groups"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Geometry" }
	    }
	}

	group {
	    name	"folder0_9"
	    label	"Irradiance"

	    parm {
		name	"vm_gienable"
		label	"Enable Irradiance Cache"
		type	toggle
		default	{ "0" }
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Irradiance" }
	    }
	    parm {
		name	"vm_gierror"
		label	"Irradiance Error"
		type	float
		default	{ "0.1" }
		disablewhen	"{ vm_gienable != 1 }"
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Irradiance" }
	    }
	    parm {
		name	"vm_gimaxspacing"
		label	"Max Spacing (Pixels)"
		type	float
		default	{ "20" }
		disablewhen	"{ vm_gienable != 1 }"
		range	{ 0 20 }
		export	none
		parmtag	{ "spare_category" "Irradiance" }
	    }
	    parm {
		name	"vm_giminspacing"
		label	"Min Spacing (Pixels)"
		type	float
		default	{ "1.5" }
		disablewhen	"{ vm_gienable != 1 }"
		range	{ 0 20 }
		export	none
		parmtag	{ "spare_category" "Irradiance" }
	    }
	    parm {
		name	"vm_gifile"
		label	"Irradiance Cache File"
		type	file
		default	{ "" }
		disablewhen	"{ vm_gienable != 1 }"
		range	{ 0 1 }
		export	none
		parmtag	{ "filechooser_mode" "read_and_write" }
		parmtag	{ "spare_category" "Irradiance" }
	    }
	    parm {
		name	"vm_gifilemode"
		label	"Read/Write Mode"
		type	string
		default	{ "" }
		disablewhen	"{ vm_gienable != 1 }"
		menu	{
		    ""	"None"
		    "r"	"Read"
		    "w"	"Write"
		    "rw"	"Read/Write"
		}
		range	{ 0 1 }
		export	none
		parmtag	{ "spare_category" "Irradiance" }
	    }
	}

    }

    group {
	name	"main5_3"
	label	"Scripts"

	parm {
	    name	"tprerender"
	    baseparm
	    joinnext
	    export	none
	}
	parm {
	    name	"prerender"
	    baseparm
	    joinnext
	    export	none
	}
	parm {
	    name	"lprerender"
	    baseparm
	    export	none
	}
	parm {
	    name	"tpreframe"
	    baseparm
	    joinnext
	    export	none
	}
	parm {
	    name	"preframe"
	    baseparm
	    joinnext
	    export	none
	}
	parm {
	    name	"lpreframe"
	    baseparm
	    export	none
	}
	parm {
	    name	"tpostframe"
	    baseparm
	    joinnext
	    export	none
	}
	parm {
	    name	"postframe"
	    baseparm
	    joinnext
	    export	none
	}
	parm {
	    name	"lpostframe"
	    baseparm
	    export	none
	}
	parm {
	    name	"tpostrender"
	    baseparm
	    joinnext
	    export	none
	}
	parm {
	    name	"postrender"
	    baseparm
	    joinnext
	    export	none
	}
	parm {
	    name	"lpostrender"
	    baseparm
	    export	none
	}
    }

0707070000010000000006660000000000000000010000001147726722100002100000011653out/mantra1.parm {
version 0.8
execute	[ 0	locks=0 ]	(	0	)
renderdialog	[ 0	locks=0 ]	(	0	)
trange	[ 0	locks=0 ]	(	"off"	)
f	[ 0	locks=0 ]	(	1	240	1	)
take	[ 0	locks=0 ]	(	_current_	)
main	[ 0	locks=0 ]	(	0	0	0	0	)
soho_program	[ 0	locks=0 ]	(	IFD.py	)
soho_shopstyle	[ 0	locks=0 ]	(	VMantra	)
target	[ 0	locks=0 ]	(	current	)
camera	[ 0	locks=0 ]	(	/obj/cam1	)
soho_pipecmd	[ 0	locks=0 ]	(	mantra	)
soho_outputmode	[ 0	locks=0 ]	(	"off"	)
soho_diskfile	[ 0	locks=0 ]	(	$HIP/test.ifd	)
soho_foreground	[ 0	locks=0 ]	(	"off"	)
soho_initsim	[ 0	locks=0 ]	(	"off"	)
soho_viewport_menu	[ 0	locks=0 ]	(	"on"	)
vobject	[ 0	locks=0 ]	(	*	)
forceobject	[ 0	locks=0 ]	(	""	)
matte_objects	[ 0	locks=0 ]	(	""	)
phantom_objects	[ 0	locks=0 ]	(	""	)
excludeobject	[ 0	locks=0 ]	(	""	)
obj_light_sep	[ 0	locks=0 ]	(	)
sololight	[ 0	locks=0 ]	(	""	)
alights	[ 0	locks=0 ]	(	*	)
forcelights	[ 0	locks=0 ]	(	""	)
excludelights	[ 0	locks=0 ]	(	""	)
soho_autoheadlight	[ 0	locks=0 ]	(	"on"	)
light_fog_sep	[ 0	locks=0 ]	(	)
vfog	[ 0	locks=0 ]	(	*	)
shop_propertiespath	[ 0	locks=0 ]	(	""	)
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"	)
main5	[ 0	locks=0 ]	(	2	2	2	2	)
folder0	[ 0	locks=0 ]	(	3	3	3	3	3	3	3	3	3	3	)
vm_picture	[ 0	locks=0 ]	(	ip	)
vm_device	[ 0	locks=0 ]	(	""	)
vm_pfilter	[ 0	locks=0 ]	(	"gaussian 2 2"	)
vm_sfilter	[ 0	locks=0 ]	(	alpha	)
vm_quantize	[ 0	locks=0 ]	(	half	)
vm_whitepoint	[ 0	locks=0 ]	(	1	)
vm_subpixel	[ 0	locks=0 ]	(	"off"	)
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	)
vm_deepresolver	[ 0	locks=0 ]	(	null	)
vm_dcmfilename	[ 0	locks=0 ]	(	$HIP/dcm.rat	)
vm_numaux	[ 0	locks=0 ]	(	0	)
vm_image_artist	[ 0	locks=0 ]	(	""	)
vm_image_comment	[ 0	locks=0 ]	(	""	)
vm_image_hostname	[ 0	locks=0 ]	(	""	)
vm_image_mplay_direction	[ 0	locks=0 ]	(	middle	)
vm_image_mplay_gamma	[ 0	locks=0 ]	(	1	)
vm_image_jpeg_quality	[ 0	locks=0 ]	(	100	)
vm_image_tiff_compression	[ 0	locks=0 ]	(	LZW	)
vm_image_exr_compression	[ 0	locks=0 ]	(	piz	)
vm_renderengine	[ 0	locks=0 ]	(	micropoly	)
vm_bucketsize	[ 0	locks=0 ]	(	16	)
vm_opacitylimit	[ 0	locks=0 ]	(	0.995000005	)
vm_usemaxthreads	[ 0	locks=0 ]	(	"on"	)
vm_threadcount	[ 0	locks=0 ]	(	1	)
vm_octreestyle	[ 0	locks=0 ]	(	kdtree	)
vm_kdmemfactor	[ 0	locks=0 ]	(	1	)
vm_geocachesize	[ 0	locks=0 ]	(	256	)
vm_texcachesize	[ 0	locks=0 ]	(	256	)
vm_uvobject	[ 0	locks=0 ]	(	""	)
vm_uvattribute	[ 0	locks=0 ]	(	uv	)
vm_hidden	[ 0	locks=0 ]	(	"on"	)
render_viewcamera	[ 0	locks=0 ]	(	"on"	)
render_any_shadowmap	[ 0	locks=0 ]	(	"on"	)
render_any_envmap	[ 0	locks=0 ]	(	"on"	)
render_any_photonmap	[ 0	locks=0 ]	(	"on"	)
vm_otlfullpath	[ 0	locks=0 ]	(	"off"	)
vm_embedvex	[ 0	locks=0 ]	(	"off"	)
vm_dof	[ 0	locks=0 ]	(	"off"	)
allowmotionblur	[ 0	locks=0 ]	(	"off"	)
vm_traceblur	[ 0	locks=0 ]	(	"off"	)
vm_motionfactor	[ 0	locks=0 ]	(	0	)
xform_motionsamples	[ 0	locks=0 ]	(	2	)
geo_motionsamples	[ 0	locks=0 ]	(	1	)
motionstyle	[ 0	locks=0 ]	(	trailing	)
vm_imageblur	[ 0	locks=0 ]	(	"on"	)
vm_samples	[ 0	locks=0 ]	(	3	3	)
vm_jitter	[ 0	locks=0 ]	(	1	)
vm_samplelock	[ 0	locks=0 ]	(	"on"	)
vm_dorayvariance	[ 0	locks=0 ]	(	"on"	)
vm_minraysamples	[ 0	locks=0 ]	(	1	)
vm_maxraysamples	[ 0	locks=0 ]	(	9	)
vm_variance	[ 0	locks=0 ]	(	0.0500000007	)
vm_volumestepsize	[ 0	locks=0 ]	(	0.5	)
vm_volumeshadowquality	[ 0	locks=0 ]	(	1	)
vm_randomseed	[ 0	locks=0 ]	(	0	)
vm_reflectlimit	[ 0	locks=0 ]	(	10	)
vm_refractlimit	[ 0	locks=0 ]	(	10	)
vm_diffuselimit	[ 0	locks=0 ]	(	0	)
vm_volumelimit	[ 0	locks=0 ]	(	0	)
vm_raybias	[ 0	locks=0 ]	(	0.00999999978	)
vm_biasnormal	[ 0	locks=0 ]	(	"off"	)
vm_colorspace	[ 0	locks=0 ]	(	linear	)
vm_raylimiteval	[ 0	locks=0 ]	(	none	)
vm_smoothcolor	[ 0	locks=0 ]	(	"on"	)
vm_pbrshader	[ 0	locks=0 ]	(	""	)
vm_pbrphotonshader	[ 0	locks=0 ]	(	""	)
vm_pbrpathtype	[ 0	locks=0 ]	(	diffuse	)
vm_colorlimit	[ 0	locks=0 ]	(	10	)
vm_pbrreflectratio	[ 0	locks=0 ]	(	0	)
vm_verbose	[ 0	locks=0 ]	(	0	)
vm_vexprofile	[ 0	locks=0 ]	(	0	)
vm_alfprogress	[ 0	locks=0 ]	(	"off"	)
vm_tilecallback	[ 0	locks=0 ]	(	""	)
vm_shadingfactor	[ 0	locks=0 ]	(	1	)
vm_rayshadingfactor	[ 0	locks=0 ]	(	1	)
vm_measure	[ 0	locks=0 ]	(	nonraster	)
vm_measurezimportance	[ 0	locks=0 ]	(	0	)
vm_raymeasure	[ 0	locks=0 ]	(	nonraster	)
vm_raymeasurezimportance	[ 0	locks=0 ]	(	1	)
vm_binarygeometry	[ 0	locks=0 ]	(	"on"	)
vm_savegroups	[ 0	locks=0 ]	(	"off"	)
vm_gienable	[ 0	locks=0 ]	(	"off"	)
vm_gierror	[ 0	locks=0 ]	(	0.100000001	)
vm_gimaxspacing	[ 0	locks=0 ]	(	20	)
vm_giminspacing	[ 0	locks=0 ]	(	1.5	)
vm_gifile	[ 0	locks=0 ]	(	""	)
vm_gifilemode	[ 0	locks=0 ]	(	""	)
}
0707070000010000000006660000000000000000010000001147726722100001000000000002out.net 1
0707070000010000000006660000000000000000010000001147726722100001100000000574part.def comment ""
position 5.5 1.5
cachesize 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 off exposed on
inputs
{
}
stat
{
  create 1291674342
  modify 1291674343
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100001200000000020part.parm {
version 0.8
}
0707070000010000000006660000000000000000010000001147726722100001100000000002part.net 1
0707070000010000000006660000000000000000010000001147726722100000700000000572ch.def comment ""
position 4.5 1
cachesize 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 off exposed on
inputs
{
}
stat
{
  create 1291674342
  modify 1291674343
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100001000000000020ch.parm {
version 0.8
}
0707070000010000000006660000000000000000010000001147726722100000700000000002ch.net 1
0707070000010000000006660000000000000000010000001147726722100010200000000037shop/basicsmoke/if_densityNotZero/illuminance1/if_doShadows.order 3
suboutput1
subinput1
shadow1
0707070000010000000006660000000000000000010000001147726722100010000000000002shop/basicsmoke/if_densityNotZero/illuminance1/if_doShadows.net 1
0707070000010000000006660000000000000000010000001147726722100006500000000054shop/basicsmoke/if_densityNotZero/illuminance1.order 5
suboutput1
subinput1
Cl
add1
if_doShadows
0707070000010000000006660000000000000000010000001147726722100006300000000002shop/basicsmoke/if_densityNotZero/illuminance1.net 1
0707070000010000000006660000000000000000010000001147726722100006700000000171shop/basicsmoke/if_densityNotZero/calcOpacSubNet.order 13
twoway1
den_x_smokeDen
den_x_shadDen
isshadow1
max0
zero
exp1
multiply1
negate1
suboutput1
subinput1
complement1
dPdz
0707070000010000000006660000000000000000010000001147726722100006500000000002shop/basicsmoke/if_densityNotZero/calcOpacSubNet.net 1
0707070000010000000006660000000000000000010000001147726722100005000000000162shop/basicsmoke/if_densityNotZero.order 11
suboutput1
subinput1
illuminance1
Y_axis
multiply2
P
calcOpacSubNet
float2color
illumAngle
degtorad1
lighting1
0707070000010000000006660000000000000000010000001147726722100004600000000002shop/basicsmoke/if_densityNotZero.net 1
0707070000010000000006660000000000000000010000001147726722100002600000000242shop/basicsmoke.order 16
outpupt1
newCf
receiveshadows
density
clouddensity
shadowdensity
diff
GT_Zero
if_densityNotZero
newOf
usePointColor
chooseCd
Cd
multiply1
newAf
output_collect
0707070000010000000006660000000000000000010000001147726722100002400000000002shop/basicsmoke.net 1
0707070000010000000006660000000000000000010000001147726722100003200000000136shop/clay/uvcoords1.order 9
s_global
t_global
shadingAttriUV
choose_S
vec2float
choose_T
float2vec
suboutput1
subinput1
0707070000010000000006660000000000000000010000001147726722100003000000000002shop/clay/uvcoords1.net 1
0707070000010000000006660000000000000000010000001147726722100002000000000310shop/clay.order 17
surface_output
uvcoords1
surfaceColor
useColorMap
baseColorMap
colorMapWrap
colorMapfilter
colorMapWidth
colorMapBorder
Kd
drough
opacity
useBaseColor
baseColor
usePointColor
surfacemodel2
collect
0707070000010000000006660000000000000000010000001147726722100001600000000002shop/clay.net 1
0707070000010000000006660000000000000000010000001147726722100001300000000022shop.order 2
basicsmoke
clay
0707070000010000000006660000000000000000010000001147726722100001100000000002shop.net 1
0707070000010000000006660000000000000000010000001147726722100001000000000574img.def comment ""
position 4.5 2.5
cachesize 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 off exposed on
inputs
{
}
stat
{
  create 1291674342
  modify 1291674344
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100001100000000020img.parm {
version 0.8
}
0707070000010000000006660000000000000000010000001147726722100001700000000032img/comp1.init type = img
matchesdef = 0
0707070000010000000006660000000000000000010000001147726722100001600000000570img/comp1.def comment ""
position 0 0
cachesize 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 off exposed on
inputs
{
}
stat
{
  create 1291674343
  modify 1291674343
  author jeffwagner@lorient-3.local
  access 0777
}
color UT_Color RGB 0.8 0.8 0.8 
delscript ""
exprlanguage hscript
end
0707070000010000000006660000000000000000010000001147726722100001700000000020img/comp1.parm {
version 0.8
}
0707070000010000000006660000000000000000010000001147726722100001600000000002img/comp1.net 1
0707070000010000000006660000000000000000010000001147726722100001000000000002img.net 1
0707070000010000000006660000000000000000010000001147726722100001000000000002vex.net 1
0707070000010000000006660000000000000000010000001147726722100002400000000000.userdisplayoptions 0707070000010000000006660000000000000000010000001147726722100001500000051737.application neteditor -d Technical -b 0 -l 0 -f '' -q 1.000000 -v /out -2.35078  -2.06506 1 panetab11
neteditor -d Technical -b 0 -l 0 -f '' -q 1.000000 -v /obj -4.29944  -1.56971 0.85 panetab11
neteditor -d Technical -b 0 -l 0 -f '' -q 1.000000 -v /obj/dust/vopsop1 3.64859  1.2933 1.07565 panetab11
neteditor -d Technical -b 0 -l 0 -f '' -q 1.000000 -v /obj/fog/volumevop1 3.30819  2.69003 1.12084 panetab11
neteditor -d Technical -b 0 -l 0 -f '' -q 1.000000 -v /obj/dust -2.58189  -5.71824 1 panetab11
neteditor -d Technical -b 0 -l 0 -f '' -q 1.000000 -v /shop -2.58455  -1.40272 1 panetab11
neteditor -d Technical -b 0 -l 0 -f '' -q 1.000000 -v /obj/fog -2.84407  -1.0279 1.0184 panetab11
chopview -a 0 -c "" -k 0 -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 Technical.panetab14
imgdispopt -m 10 -P on -M on -A on -g 1 -G C -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 1 1 0 -R 6 -F dc -D "" -I "" -f "" -s off -r 256 256 -p on -l off
imgview -z 1 -p (none) 0 -c 0 -l on -s off -i imgview3
imgview2d  -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 1 -d "" -c -1 -t off -i on -X on imgview3 1
imgview2d  -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 1 -d "" -c -1 -t off -i on -X on imgview3 2
imgview2d  -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 1 -d "" -c -1 -t off -i on -X on imgview3 3
imgview2d  -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 1 -d "" -c -1 -t off -i on -X on imgview3 4
imgview2d  -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 1 -d "" -c -1 -t off -i on -X on imgview3 5
imgview2d  -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 1 -d "" -c -1 -t off -i on -X on imgview3 6
imgview2d  -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 1 -d "" -c -1 -t off -i on -X on imgview3 7
imgview2d  -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 1 -d "" -c -1 -t off -i on -X on imgview3 8
imgview2d  -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 1 -d "" -c -1 -t off -i on -X on imgview3 9
imgview2d  -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 1 -d "" -c -1 -t off -i on -X on imgview3 10
imgview2d  -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 1 -d "" -c -1 -t off -i on -X on imgview3 11
imgview2d  -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 1 -d "" -c -1 -t off -i on -X on imgview3 12
imgview2d  -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 1 -d "" -c -1 -t off -i on -X on imgview3 13
imgview2d  -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 1 -d "" -c -1 -t off -i on -X on imgview3 14
imgview2d  -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 1 -d "" -c -1 -t off -i on -X on imgview3 15
imgview2d  -V on -L on -G on -H on -P off -m 0 -p 0 1 -b 1 1 0 -g 1 -d "" -c -1 -t off -i on -X on imgview3 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 imgview3
imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview3 1
imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview3 2
imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview3 3
imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview3 4
imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview3 5
imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview3 6
imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview3 7
imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview3 8
imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview3 9
imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview3 10
imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview3 11
imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview3 12
imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview3 13
imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview3 14
imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview3 15
imgviewhist -V on -L on -G on -H on -P off -c -1 -h 0 -i on imgview3 16
viewerstow -b open -x open -l open -m hide -c hide -d open Technical.panetab2.world
vieweroption -a 2 -h 0 -m 1 -r 'mantra1' Technical.panetab2.world
viewlayout -s 2 Technical.panetab2.world
viewtype -t perspective Technical.panetab2.world.`vpname("Technical.panetab2.world",2)`
viewtype -t ortho_top Technical.panetab2.world.`vpname("Technical.panetab2.world",1)`
viewtype -t ortho_front Technical.panetab2.world.`vpname("Technical.panetab2.world",3)`
viewtype -t ortho_right Technical.panetab2.world.`vpname("Technical.panetab2.world",4)`
viewname -l on -n aaaa3 Technical.panetab2.world.`vpname("Technical.panetab2.world",2)`
viewname -l on -n aaaa2 Technical.panetab2.world.`vpname("Technical.panetab2.world",1)`
viewname -l on -n aaaa1 Technical.panetab2.world.`vpname("Technical.panetab2.world",3)`
viewname -l on -n aaaa0 Technical.panetab2.world.`vpname("Technical.panetab2.world",4)`
viewname -l off -n persp1 Technical.panetab2.world.`vpname("Technical.panetab2.world",2)`
viewname -l off -n top1 Technical.panetab2.world.`vpname("Technical.panetab2.world",1)`
viewname -l off -n front1 Technical.panetab2.world.`vpname("Technical.panetab2.world",3)`
viewname -l off -n right1 Technical.panetab2.world.`vpname("Technical.panetab2.world",4)`
viewdisplay -a on Technical.panetab2.world.persp1
viewdisplay -M unsel shade -N unsel n off -E unsel n off -I unsel n off Technical.panetab2.world.persp1
viewdisplay -N unsel t off -E unsel t off -I unsel t on Technical.panetab2.world.persp1
viewdisplay -N unsel l off -E unsel g off -I unsel l off Technical.panetab2.world.persp1
viewdisplay -N unsel p off -I unsel p off Technical.panetab2.world.persp1
viewdisplay -N unsel m off -I unsel h off Technical.panetab2.world.persp1
viewdisplay -I unsel b off Technical.panetab2.world.persp1
viewdisplay -I unsel f off Technical.panetab2.world.persp1
viewdisplay -M templ wire -N templ n off -E templ n off -I templ n off Technical.panetab2.world.persp1
viewdisplay -N templ t off -E templ t off -I templ t off Technical.panetab2.world.persp1
viewdisplay -N templ l off -E templ g off -I templ l off Technical.panetab2.world.persp1
viewdisplay -N templ p off -I templ p off Technical.panetab2.world.persp1
viewdisplay -N templ m off -I templ h off Technical.panetab2.world.persp1
viewdisplay -I templ b off Technical.panetab2.world.persp1
viewdisplay -I templ f off Technical.panetab2.world.persp1
viewdisplay -M curr_unsel wire -N curr_unsel n off -E curr_unsel n off -I curr_unsel n off Technical.panetab2.world.persp1
viewdisplay -N curr_unsel t off -E curr_unsel t off -I curr_unsel t on Technical.panetab2.world.persp1
viewdisplay -N curr_unsel l off -E curr_unsel g off -I curr_unsel l off Technical.panetab2.world.persp1
viewdisplay -N curr_unsel p off -I curr_unsel p off Technical.panetab2.world.persp1
viewdisplay -N curr_unsel m off -I curr_unsel h off Technical.panetab2.world.persp1
viewdisplay -I curr_unsel b off Technical.panetab2.world.persp1
viewdisplay -I curr_unsel f off Technical.panetab2.world.persp1
viewdisplay -A templ on -B wb -b off -d off -C 0 -e 1 -F off -f off -g on -G '*' -h off -H on -j off -J off Technical.panetab2.world.persp1
viewdisplay -A curr_all on -l 1 -L on -n 0.2 -o on -O on -q on -r on -s off -S on -t on Technical.panetab2.world.persp1
viewdisplay -V 2 -z off -y off -x off -X off -U 4 -Y 4 -T on -R on -i on -D on -k off Technical.panetab2.world.persp1
viewdisplay -Q on -m on -v on Technical.panetab2.world.persp1
viewdisplay -W  off bound_box_wire 0 Technical.panetab2.world.persp1
viewdisplay -c off -K on -P points -p 3 Technical.panetab2.world.persp1
vieweffect -a 0 -A 4 -b on -B 0 -d on -D on off -g 1 -h 1 -H off -L off -l '' -m on -M 512 -o off -n 8 -O 2 -q 1 -Q 2 -r 1024 1024 -s 1 -S off -t 100 -T 100 -u off -U off -v 128 128 128 Technical.panetab2.world.persp1
viewbackground -b off -q 1 -S file -F '' -O off -r 1 1 -C '' -p '(Default Color)' 0 -t on -a on -o 0 0 -s 1 1 -i off -m 0 0 -M 1 1 Technical.panetab2.world.persp1
viewtransform Technical.panetab2.world.persp1 version ( 3 )  flag ( Fx )  orthowidth ( 25.1416 )  focal ( 1 )  aperture ( 0.828427 )  window ( 0 1 0 1 )  winroll ( 0 )  clear ( 1 )  nearfar ( 0.1 32025 )  resxy ( 1 1 )  aspect ( 1.33333 )  pixelaspect ( 1 )  txyz ( 0.748052 2.64685 24.9461 )  pxyz ( -0.959177 1.83484 0.0141007 )  rotation ( 0.997096 0.036643 0.0667621 -0.0506698 0.973647 0.22236 -0.0568548 -0.225097 0.972676  )  homedistance ( 24.9722 )  homeadjboxwidth ( 12.5708 )  homeorthowidth ( 25.1416 )  homeradius ( 32 )  homeaxis ( 0 )  homecustom ( 0.707107 -0.353553 0.612372 0 0.866025 0.5 -0.707107 -0.353553 0.612372  )  adjustlimits ( 3 )  
viewcamera -c /obj/cam1 Technical.panetab2.world.persp1
vieworthogrid -d on -o 0 0 0 -s 0.5 0.5 -r 8 8 Technical.panetab2.world.persp1
viewuvgrid -r off -s 0.1 0.1 -P on -S 1 1 -O 0 0 -C on -t on Technical.panetab2.world.persp1
viewdisplay -a on Technical.panetab2.world.top1
viewdisplay -M unsel shade -N unsel n off -E unsel n off -I unsel n off Technical.panetab2.world.top1
viewdisplay -N unsel t off -E unsel t off -I unsel t on Technical.panetab2.world.top1
viewdisplay -N unsel l off -E unsel g off -I unsel l off Technical.panetab2.world.top1
viewdisplay -N unsel p off -I unsel p off Technical.panetab2.world.top1
viewdisplay -N unsel m off -I unsel h off Technical.panetab2.world.top1
viewdisplay -I unsel b off Technical.panetab2.world.top1
viewdisplay -I unsel f off Technical.panetab2.world.top1
viewdisplay -M templ wire -N templ n off -E templ n off -I templ n off Technical.panetab2.world.top1
viewdisplay -N templ t off -E templ t off -I templ t off Technical.panetab2.world.top1
viewdisplay -N templ l off -E templ g off -I templ l off Technical.panetab2.world.top1
viewdisplay -N templ p off -I templ p off Technical.panetab2.world.top1
viewdisplay -N templ m off -I templ h off Technical.panetab2.world.top1
viewdisplay -I templ b off Technical.panetab2.world.top1
viewdisplay -I templ f off Technical.panetab2.world.top1
viewdisplay -M curr_unsel wire -N curr_unsel n off -E curr_unsel n off -I curr_unsel n off Technical.panetab2.world.top1
viewdisplay -N curr_unsel t off -E curr_unsel t off -I curr_unsel t on Technical.panetab2.world.top1
viewdisplay -N curr_unsel l off -E curr_unsel g off -I curr_unsel l off Technical.panetab2.world.top1
viewdisplay -N curr_unsel p off -I curr_unsel p off Technical.panetab2.world.top1
viewdisplay -N curr_unsel m off -I curr_unsel h off Technical.panetab2.world.top1
viewdisplay -I curr_unsel b off Technical.panetab2.world.top1
viewdisplay -I curr_unsel f off Technical.panetab2.world.top1
viewdisplay -A templ on -B wb -b off -d off -C 0 -e 1 -F off -f off -g on -G '*' -h off -H on -j off -J off Technical.panetab2.world.top1
viewdisplay -A curr_all on -l 1 -L on -n 0.2 -o on -O on -q on -r on -s off -S on -t on Technical.panetab2.world.top1
viewdisplay -V 2 -z off -y off -x off -X off -U 4 -Y 4 -T on -R on -i on -D on -k off Technical.panetab2.world.top1
viewdisplay -Q on -m on -v on Technical.panetab2.world.top1
viewdisplay -W  off bound_box_wire 0 Technical.panetab2.world.top1
viewdisplay -c off -K on -P points -p 3 Technical.panetab2.world.top1
vieweffect -a 0 -A 4 -b on -B 0 -d on -D on off -g 1 -h 1 -H off -L off -l '' -m on -M 512 -o off -n 8 -O 2 -q 1 -Q 2 -r 1024 1024 -s 1 -S off -t 100 -T 100 -u off -U off -v 128 128 128 Technical.panetab2.world.top1
viewbackground -b off -q 1 -S file -F '' -O off -r 1 1 -C '' -p '(Default Color)' 0 -t on -a on -o 0 0 -s 1 1 -i off -m 0 0 -M 1 1 Technical.panetab2.world.top1
viewtransform Technical.panetab2.world.top1 version ( 3 )  flag ( Fo )  orthowidth ( 2.22222 )  focal ( 50 )  aperture ( 41.4214 )  window ( 0 1 0 1 )  winroll ( 0 )  clear ( 1 )  nearfar ( 0.1 3467.78 )  resxy ( 1 1 )  aspect ( 1.33333 )  pixelaspect ( 1 )  txyz ( 0 0 3.68246 )  pxyz ( 0 0 0 )  rotation ( 1 0 0 0 7.54979e-08 1 0 -1 7.54979e-08  )  homedistance ( 3.68246 )  homeadjboxwidth ( 2.22222 )  homeorthowidth ( 2.22222 )  homeradius ( 3.4641 )  homeaxis ( 0 )  homecustom ( 0.707107 -0.353553 0.612372 0 0.866025 0.5 -0.707107 -0.353553 0.612372  )  adjustlimits ( 3 )  
vieworthogrid -d on -o 0 0 0 -s 0.5 0.5 -r 8 8 Technical.panetab2.world.top1
viewuvgrid -r off -s 0.1 0.1 -P on -S 1 1 -O 0 0 -C on -t on Technical.panetab2.world.top1
viewdisplay -a on Technical.panetab2.world.front1
viewdisplay -M unsel shade -N unsel n off -E unsel n off -I unsel n off Technical.panetab2.world.front1
viewdisplay -N unsel t off -E unsel t off -I unsel t on Technical.panetab2.world.front1
viewdisplay -N unsel l off -E unsel g off -I unsel l off Technical.panetab2.world.front1
viewdisplay -N unsel p off -I unsel p off Technical.panetab2.world.front1
viewdisplay -N unsel m off -I unsel h off Technical.panetab2.world.front1
viewdisplay -I unsel b off Technical.panetab2.world.front1
viewdisplay -I unsel f off Technical.panetab2.world.front1
viewdisplay -M templ wire -N templ n off -E templ n off -I templ n off Technical.panetab2.world.front1
viewdisplay -N templ t off -E templ t off -I templ t off Technical.panetab2.world.front1
viewdisplay -N templ l off -E templ g off -I templ l off Technical.panetab2.world.front1
viewdisplay -N templ p off -I templ p off Technical.panetab2.world.front1
viewdisplay -N templ m off -I templ h off Technical.panetab2.world.front1
viewdisplay -I templ b off Technical.panetab2.world.front1
viewdisplay -I templ f off Technical.panetab2.world.front1
viewdisplay -M curr_unsel wire -N curr_unsel n off -E curr_unsel n off -I curr_unsel n off Technical.panetab2.world.front1
viewdisplay -N curr_unsel t off -E curr_unsel t off -I curr_unsel t on Technical.panetab2.world.front1
viewdisplay -N curr_unsel l off -E curr_unsel g off -I curr_unsel l off Technical.panetab2.world.front1
viewdisplay -N curr_unsel p off -I curr_unsel p off Technical.panetab2.world.front1
viewdisplay -N curr_unsel m off -I curr_unsel h off Technical.panetab2.world.front1
viewdisplay -I curr_unsel b off Technical.panetab2.world.front1
viewdisplay -I curr_unsel f off Technical.panetab2.world.front1
viewdisplay -A templ on -B wb -b off -d off -C 0 -e 1 -F off -f off -g on -G '*' -h off -H on -j off -J off Technical.panetab2.world.front1
viewdisplay -A curr_all on -l 1 -L on -n 0.2 -o on -O on -q on -r on -s off -S on -t on Technical.panetab2.world.front1
viewdisplay -V 2 -z off -y off -x off -X off -U 4 -Y 4 -T on -R on -i on -D on -k off Technical.panetab2.world.front1
viewdisplay -Q on -m on -v on Technical.panetab2.world.front1
viewdisplay -W  off bound_box_wire 0 Technical.panetab2.world.front1
viewdisplay -c off -K on -P points -p 3 Technical.panetab2.world.front1
vieweffect -a 0 -A 4 -b on -B 0 -d on -D on off -g 1 -h 1 -H off -L off -l '' -m on -M 512 -o off -n 8 -O 2 -q 1 -Q 2 -r 1024 1024 -s 1 -S off -t 100 -T 100 -u off -U off -v 128 128 128 Technical.panetab2.world.front1
viewbackground -b off -q 1 -S file -F '' -O off -r 1 1 -C '' -p '(Default Color)' 0 -t on -a on -o 0 0 -s 1 1 -i off -m 0 0 -M 1 1 Technical.panetab2.world.front1
viewtransform Technical.panetab2.world.front1 version ( 3 )  flag ( Fo )  orthowidth ( 2.22222 )  focal ( 50 )  aperture ( 41.4214 )  window ( 0 1 0 1 )  winroll ( 0 )  clear ( 1 )  nearfar ( 0.1 3467.78 )  resxy ( 1 1 )  aspect ( 1.33333 )  pixelaspect ( 1 )  txyz ( 0 0 3.68246 )  pxyz ( 0 0 0 )  rotation ( 1 0 0 0 1 0 0 0 1  )  homedistance ( 3.68246 )  homeadjboxwidth ( 2.22222 )  homeorthowidth ( 2.22222 )  homeradius ( 3.4641 )  homeaxis ( 0 )  homecustom ( 0.707107 -0.353553 0.612372 0 0.866025 0.5 -0.707107 -0.353553 0.612372  )  adjustlimits ( 3 )  
vieworthogrid -d on -o 0 0 0 -s 0.5 0.5 -r 8 8 Technical.panetab2.world.front1
viewuvgrid -r off -s 0.1 0.1 -P on -S 1 1 -O 0 0 -C on -t on Technical.panetab2.world.front1
viewdisplay -a on Technical.panetab2.world.right1
viewdisplay -M unsel shade -N unsel n off -E unsel n off -I unsel n off Technical.panetab2.world.right1
viewdisplay -N unsel t off -E unsel t off -I unsel t on Technical.panetab2.world.right1
viewdisplay -N unsel l off -E unsel g off -I unsel l off Technical.panetab2.world.right1
viewdisplay -N unsel p off -I unsel p off Technical.panetab2.world.right1
viewdisplay -N unsel m off -I unsel h off Technical.panetab2.world.right1
viewdisplay -I unsel b off Technical.panetab2.world.right1
viewdisplay -I unsel f off Technical.panetab2.world.right1
viewdisplay -M templ wire -N templ n off -E templ n off -I templ n off Technical.panetab2.world.right1
viewdisplay -N templ t off -E templ t off -I templ t off Technical.panetab2.world.right1
viewdisplay -N templ l off -E templ g off -I templ l off Technical.panetab2.world.right1
viewdisplay -N templ p off -I templ p off Technical.panetab2.world.right1
viewdisplay -N templ m off -I templ h off Technical.panetab2.world.right1
viewdisplay -I templ b off Technical.panetab2.world.right1
viewdisplay -I templ f off Technical.panetab2.world.right1
viewdisplay -M curr_unsel wire -N curr_unsel n off -E curr_unsel n off -I curr_unsel n off Technical.panetab2.world.right1
viewdisplay -N curr_unsel t off -E curr_unsel t off -I curr_unsel t on Technical.panetab2.world.right1
viewdisplay -N curr_unsel l off -E curr_unsel g off -I curr_unsel l off Technical.panetab2.world.right1
viewdisplay -N curr_unsel p off -I curr_unsel p off Technical.panetab2.world.right1
viewdisplay -N curr_unsel m off -I curr_unsel h off Technical.panetab2.world.right1
viewdisplay -I curr_unsel b off Technical.panetab2.world.right1
viewdisplay -I curr_unsel f off Technical.panetab2.world.right1
viewdisplay -A templ on -B wb -b off -d off -C 0 -e 1 -F off -f off -g on -G '*' -h off -H on -j off -J off Technical.panetab2.world.right1
viewdisplay -A curr_all on -l 1 -L on -n 0.2 -o on -O on -q on -r on -s off -S on -t on Technical.panetab2.world.right1
viewdisplay -V 2 -z off -y off -x off -X off -U 4 -Y 4 -T on -R on -i on -D on -k off Technical.panetab2.world.right1
viewdisplay -Q on -m on -v on Technical.panetab2.world.right1
viewdisplay -W  off bound_box_wire 0 Technical.panetab2.world.right1
viewdisplay -c off -K on -P points -p 3 Technical.panetab2.world.right1
vieweffect -a 0 -A 4 -b on -B 0 -d on -D on off -g 1 -h 1 -H off -L off -l '' -m on -M 512 -o off -n 8 -O 2 -q 1 -Q 2 -r 1024 1024 -s 1 -S off -t 100 -T 100 -u off -U off -v 128 128 128 Technical.panetab2.world.right1
viewbackground -b off -q 1 -S file -F '' -O off -r 1 1 -C '' -p '(Default Color)' 0 -t on -a on -o 0 0 -s 1 1 -i off -m 0 0 -M 1 1 Technical.panetab2.world.right1
viewtransform Technical.panetab2.world.right1 version ( 3 )  flag ( Fo )  orthowidth ( 2.22222 )  focal ( 50 )  aperture ( 41.4214 )  window ( 0 1 0 1 )  winroll ( 0 )  clear ( 1 )  nearfar ( 0.1 3467.78 )  resxy ( 1 1 )  aspect ( 1.33333 )  pixelaspect ( 1 )  txyz ( 0 0 3.68246 )  pxyz ( 0 0 0 )  rotation ( -4.37114e-08 0 1 0 1 0 -1 0 -4.37114e-08  )  homedistance ( 3.68246 )  homeadjboxwidth ( 2.22222 )  homeorthowidth ( 2.22222 )  homeradius ( 3.4641 )  homeaxis ( 0 )  homecustom ( 0.707107 -0.353553 0.612372 0 0.866025 0.5 -0.707107 -0.353553 0.612372  )  adjustlimits ( 3 )  
vieworthogrid -d on -o 0 0 0 -s 0.5 0.5 -r 8 8 Technical.panetab2.world.right1
viewuvgrid -r off -s 0.1 0.1 -P on -S 1 1 -O 0 0 -C on -t on Technical.panetab2.world.right1
viewsnapshotoption -s off -h off -a 1 -v '*' Technical.panetab2.world
cplane -o -8 0 -8 -n 0 1 0 -x 0 0 1 -l n -s 0.5 0.5 -c 32 32 -r 8 8 -d on Technical.panetab2.world
glcache -M 1024
omparm "Follow Path" followpath /obj/sphere_object1 "invisible(1)"
omparm Light light /obj/pointlight1 "camera_handletype(0) camera_gimbal(0) camera_anchor(0) keep_world_aligned(1) keep_world_aligned_2(1) globalxformdefault(0) parm_transform(0) focus_handle(1) link_cone(1)"
omparm "Follow Path" followpath /obj/grid_object1 "invisible(1)"
omparm "Camera Manipulator" camera /obj/cam1 "camera_handletype(0) camera_gimbal(0) camera_anchor(1) keep_world_aligned(0) keep_world_aligned_2(0) globalxformdefault(0) parm_transform(0) focus_handle(1) camera_clip(0)"
panepath -d Technical -f -p panetab1 /obj/dust
panepath -d Technical -f -p panetab15 /obj/dust
panepath -d Technical -f -p panetab2 /obj/dust
panepath -d Technical -f -p panetab3 /obj/dust
panepath -d Technical -f -p panetab4 /obj/dust
panepath -d Technical -f -p panetab5 /img/comp1/
panepath -d Technical -f -p panetab14 /ch/
panepath -d Technical -f -p panetab6 /obj/dust
panepath -d Technical -f -p panetab7 /obj/dust
panepath -d Technical -f -p panetab13 /obj/
panepath -d Technical -f -p panetab11 /obj/dust
panepath -d Technical -f -p panetab12 /obj/
panepath -d Technical -f -p panetab8 /obj/dust
panepath -d Technical -f -p panetab9 /obj/
panepath -d Technical -f -p panetab10 /obj/
desk set Technical
performance -l window -c on -g off -o on -v on -f on -m off -r on -i on -h off -p off -s off -e off -F off -U ms -T 500
viewupdate -u always
audiopanel -s p ''
audiopanel -s r off
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 1 -l ""
compproject -r 640 480 -a 1 -d i8 -p 0 255 -P full -f 0 -F 0 -l on
texcache  -a off -r 2048 2048 -m 10000 -M 1
shopvisible +OGL +OGL2 +I3D +VMantra +MI +RIB
0707070000010000000006660000000000000000010000001147726722100000700000000060.takes HoudiniTakeFile 1.0
take name Main kids 0
   e
0707070000010000000006660000000000000000010000001147726722100000500000000024.cwd opcf /
takeset Main
0707070000010000000006660000000000000000010000001147726722100001600000000000.custompanels 0707070000010000000006660000000000000000010000001147726722100001300000000000TRAILER!!! 