<?xml version="1.0" encoding="utf-8"?>
<scenedata>
	<material>
		<name>boulder</name>
		<phong>
		<shared_shader_info>
				<param>
					<real>
						<name>ClipValue</name>
						<description></description>
						<min>0</min>
						<max>1</max>
						<value>0.29</value>
					</real>
				</param>
				<param>
					<real>
						<name>Disorder</name>
						<description></description>
						<min>0</min>
						<max>2</max>
						<value>1.51</value>
					</real>
				</param>
				<param>
					<real>
						<name>Scale</name>
						<description></description>
						<min>0</min>
						<max>1000</max>
						<value>80</value>
					</real>
				</param>
				<shader><![CDATA[]]></shader>
		</shared_shader_info>
			<diffuse_albedo>
				<shader>
						<param>
							<colour3>
								<name>Col1</name>
								<description></description>
								<value>0.02775527909398079 0.026548683643341064 0.022012995555996895</value>
							</colour3>
						</param>
						<param>
							<colour3>
								<name>Col2</name>
								<description></description>
								<value>0.3066347539424896 0.2758328318595886 0.24279634654521942</value>
							</colour3>
						</param>
						<shader><![CDATA[def eval(vec3 pos) vec3 :


#0.1

let

pos = posOS()

NoiseLevel = 1.0
noiseXYZ = fbm3Valued(pos, 8) * NoiseLevel

disorder = paramDisorder()
scale = paramScale()

Vo = voronoi3d(pos * scale, disorder)	#vec3
D = dist(pos * scale, Vo)	#float

pos2 = vec3(pos.x + 5.0, pos.y + 5.0, pos.z + 5.0)
Vo2 = voronoi3d(pos2 * scale * 2.0, disorder)	#vec3
D2 = dist(pos2 * scale * 2.0, Vo2)	#float

pos3 = vec3(pos.x + 10.0, pos.y + 10.0, pos.z + 10.0)
Vo3 = voronoi3d(pos3 * scale * 4.0, disorder)	#vec3
D3 = dist(pos3 * scale * 4.0, Vo3)	#float

pos4 = vec3(pos.x + 15.0, pos.y + 15.0, pos.z + 15.0)
Vo4 = voronoi3d(pos4 * scale * 8.0, disorder)	#vec3
D4 = dist(pos4 * scale * 8.0, Vo4)	#float

#compute =  D - (D2*0.5) - (D3*0.25) - (D4*0.125)
compute =  D + (D2*0.5) + (D3*0.25) + (D4*0.125)
#compute =  D * (D2*0.5) * (D3*0.25) * (D4*0.125)
#compute =  D / (D2*0.5) / (D3*0.25) / (D4*0.125)
output = compute * 0.5 +0.5

in
lerp(paramCol1(), paramCol2(),
pow(
	output
, 2.5)

)
]]></shader>
				</shader>
			</diffuse_albedo>
			<exponent>
					<constant>4</constant>
			</exponent>
			<bump>
				<shader>
						<shader><![CDATA[def eval() real :


#0.1

let

pos = posOS()

NoiseLevel = 1.0
noiseXYZ = fbm3Valued(pos, 8) * NoiseLevel

disorder = paramDisorder()
scale = paramScale()

Vo = voronoi3d(pos * scale, disorder)	#vec3
D = dist(pos * scale, Vo)	#float

pos2 = vec3(pos.x + 5.0, pos.y + 5.0, pos.z + 5.0)
Vo2 = voronoi3d(pos2 * scale * 2.0, disorder)	#vec3
D2 = dist(pos2 * scale * 2.0, Vo2)	#float

pos3 = vec3(pos.x + 10.0, pos.y + 10.0, pos.z + 10.0)
Vo3 = voronoi3d(pos3 * scale * 4.0, disorder)	#vec3
D3 = dist(pos3 * scale * 4.0, Vo3)	#float

pos4 = vec3(pos.x + 15.0, pos.y + 15.0, pos.z + 15.0)
Vo4 = voronoi3d(pos4 * scale * 8.0, disorder)	#vec3
D4 = dist(pos4 * scale * 8.0, Vo4)	#float

#compute =  D - (D2*0.5) - (D3*0.25) - (D4*0.125)
compute =  D + (D2*0.5) + (D3*0.25) + (D4*0.125)
#compute =  D * (D2*0.5) * (D3*0.25) * (D4*0.125)
#compute =  D / (D2*0.5) / (D3*0.25) / (D4*0.125)
output = compute * 0.25 +0.25

in

pow(
	output
, 2.5)

#D, D2, D3
#1.0 - D, 1.0 - D2, 1.0 - D3

#1.0 - clip1, 1.0 - clip2, 1.0 - clip3
#clip1, clip2, clip3
/ scale #* 0.5
]]></shader>
				</shader>
			</bump>
			<displacement>
				<shader>
						<shader><![CDATA[def eval() real :


#0.1

let

pos = posOS()

NoiseLevel = 1.0
noiseXYZ = fbm3Valued(pos, 8) * NoiseLevel

disorder = paramDisorder()
scale = paramScale()

Vo = voronoi3d(pos * scale, disorder)	#vec3
D = dist(pos * scale, Vo)	#float

pos2 = vec3(pos.x + 5.0, pos.y + 5.0, pos.z + 5.0)
Vo2 = voronoi3d(pos2 * scale * 2.0, disorder)	#vec3
D2 = dist(pos2 * scale * 2.0, Vo2)	#float

pos3 = vec3(pos.x + 10.0, pos.y + 10.0, pos.z + 10.0)
Vo3 = voronoi3d(pos3 * scale * 4.0, disorder)	#vec3
D3 = dist(pos3 * scale * 4.0, Vo3)	#float

pos4 = vec3(pos.x + 15.0, pos.y + 15.0, pos.z + 15.0)
Vo4 = voronoi3d(pos4 * scale * 8.0, disorder)	#vec3
D4 = dist(pos4 * scale * 8.0, Vo4)	#float

#compute =  D - (D2*0.5) - (D3*0.25) - (D4*0.125)
compute =  D + (D2*0.5) + (D3*0.25) + (D4*0.125)
#compute =  D * (D2*0.5) * (D3*0.25) * (D4*0.125)
#compute =  D / (D2*0.5) / (D3*0.25) / (D4*0.125)
output = compute * 0.25 +0.25

in

(pow(
	output - 0.45
, 1.0))

#D, D2, D3
#1.0 - D, 1.0 - D2, 1.0 - D3

#1.0 - clip1, 1.0 - clip2, 1.0 - clip3
#clip1, clip2, clip3
 / scale 
]]></shader>
				</shader>
			</displacement>
			<fresnel_scale>
					<constant>0.3</constant>
			</fresnel_scale>
			<layer>0</layer>
			<ior>1.2</ior>
			<nk_data></nk_data>
		</phong>
	</material>
</scenedata>
