<?xml version="1.0" encoding="utf-8"?>
<PropertyList>
	<name>Effects/planet</name>
	<parameters>
		<texture n ="0">
			<type>white</type>
		</texture>
		<texture n="1">
			<image>Textures/Terrain/void.png</image>
			<type>2d</type>
			<filter>linear-mipmap-linear</filter>
			<wrap-s>repeat</wrap-s>
			<wrap-t>repeat</wrap-t>
			<internal-format>normalized</internal-format>
		</texture>
		<texture n="2">
      			<image>Textures/Terrain/grain_texture.png</image>
	  		<type>2d</type>
      			<filter>linear-mipmap-linear</filter>
      			<wrap-s>repeat</wrap-s>
      			<wrap-t>repeat</wrap-t>
     			 <internal-format>normalized</internal-format>
    		</texture>
		<texture n ="3">
			<image>Textures/Terrain/void.png</image>
			<type>2d</type>
			<filter>linear-mipmap-linear</filter>
			<wrap-s>repeat</wrap-s>
			<wrap-t>repeat</wrap-t>
			<internal-format>normalized</internal-format>
		</texture>
		<vertex-program-two-side type="bool">false</vertex-program-two-side>
		<material>
			<color-mode-uniform>1</color-mode-uniform>
			<!-- DIFFUSE -->
		</material>
		<visibility><use>/environment/visibility-m</use></visibility>
		<use-clouds><use>/earthview/cloudsphere-flag</use></use-clouds>
		<use-cloud-shadows><use>/earthview/cloud-shadow-flag</use></use-cloud-shadows>
		<use-overlay-textures><use>/earthview/overlay-texture-flag</use></use-overlay-textures>
		<sun-angle><use>/sim/time/sun-angle-rad</use></sun-angle>
		<use_filtering><use>/sim/rendering/als-filters/use-filtering</use></use_filtering>
    		<gamma><use>/sim/rendering/als-filters/gamma</use></gamma>
    		<brightness><use>/sim/rendering/als-filters/brightness</use></brightness>
    		<delta_T><use>/environment/surface/delta-T-cloud</use></delta_T>
    		<use_night_vision><use>/sim/rendering/als-filters/use-night-vision</use></use_night_vision>
    		<use_IR_vision><use>/sim/rendering/als-filters/use-IR-vision</use></use_IR_vision>
    		<display_xsize><use>/sim/startup/xsize</use></display_xsize>
    		<display_ysize><use>/sim/startup/ysize</use></display_ysize>
	</parameters>
	<generate>
		<normal type="int">15</normal>
		<tangent type="int">6</tangent>
	</generate>

	<technique n="9">
		<predicate>
			<and>
				<or>
					<less-equal>
						<value type="float">2.0</value>
						<glversion/>
					</less-equal>
					<and>
						<extension-supported>GL_ARB_shader_objects</extension-supported>
						<extension-supported>GL_ARB_shading_language_100</extension-supported>
						<extension-supported>GL_ARB_vertex_shader</extension-supported>
						<extension-supported>GL_ARB_fragment_shader</extension-supported>
					</and>
				</or>
			<property>/earthview/normal-flag</property>
			</and>
		</predicate>
		<pass>
			<lighting>true</lighting>
			<material>
				<active>
					<use>material/active</use>
				</active>
				<ambient>
					<use>material/ambient</use>
				</ambient>
				<diffuse>
					<use>material/diffuse</use>
				</diffuse>
				<specular>
					<use>material/specular</use>
				</specular>
				<emissive>
					<use>material/emissive</use>
				</emissive>
				<shininess>
					<use>material/shininess</use>
				</shininess>
				<color-mode>
					<use>material/color-mode</use>
				</color-mode>
			</material>
			<blend><use>transparent</use></blend>
			<alpha-test>
				<active type="bool">false</active>
			</alpha-test>
			<shade-model>
				<use>shade-model</use>
			</shade-model>
			<cull-face>
				<use>cull-face</use>
			</cull-face>
			<rendering-hint>
				<use>rendering-hint</use>
			</rendering-hint>
			<texture-unit>
				<unit>0</unit>
				<type><use>texture[0]/type</use></type>
				<image><use>texture[0]/image</use></image>
				<filter><use>texture[0]/filter</use></filter>
				<wrap-s><use>texture[0]/wrap-s</use></wrap-s>
				<wrap-t><use>texture[0]/wrap-t</use></wrap-t>
			</texture-unit>
			<texture-unit>
				<unit>1</unit>
				<image><use>texture[1]/image</use></image>
				<type><use>texture[1]/type</use></type>
				<filter><use>texture[1]/filter</use></filter>
				<wrap-s><use>texture[1]/wrap-s</use></wrap-s>
				<wrap-t><use>texture[1]/wrap-t</use></wrap-t>
				<internal-format><use>texture[1]/internal-format</use></internal-format>
			</texture-unit>
			<texture-unit>
				<unit>2</unit>
				<image><use>texture[2]/image</use></image>
				<type><use>texture[2]/type</use></type>
				<filter><use>texture[2]/filter</use></filter>
				<wrap-s><use>texture[2]/wrap-s</use></wrap-s>
				<wrap-t><use>texture[2]/wrap-t</use></wrap-t>
				<internal-format><use>texture[2]/internal-format</use></internal-format>
			</texture-unit>
			<texture-unit>
				<unit>3</unit>
				<image><use>texture[3]/image</use></image>
				<type><use>texture[3]/type</use></type>
				<filter><use>texture[3]/filter</use></filter>
				<wrap-s><use>texture[3]/wrap-s</use></wrap-s>
				<wrap-t><use>texture[3]/wrap-t</use></wrap-t>
				<internal-format><use>texture[3]/internal-format</use></internal-format>
			</texture-unit>

			<program>
				<vertex-shader>Shaders/planet.vert</vertex-shader>
				<fragment-shader>Shaders/planet-high.frag</fragment-shader>
				<fragment-shader>Shaders/noise.frag</fragment-shader>
        			<fragment-shader>Shaders/filters-ALS.frag</fragment-shader>
			<attribute>
				<name>tangent</name>
				<index>6</index>
			</attribute>
			<attribute>
				<name>normal</name>
				<index>15</index>
			</attribute>
			</program>
			
			<uniform>
				<name>texture</name>
				<type>sampler-2d</type>
				<value type="int">0</value>
			</uniform>
			<uniform>
				<name>shadowtex</name>
				<type>sampler-2d</type>
				<value type="int">1</value>
			</uniform>
			<uniform>
				<name>grain_texture</name>
				<type>sampler-2d</type>
				<value type="int">2</value>
			</uniform>
			<uniform>
				<name>normal_texture</name>
				<type>sampler-2d</type>
				<value type="int">3</value>
			</uniform>
			<uniform>
				<name>colorMode</name>
				<type>int</type>
				<value>
					<use>material/color-mode-uniform</use>
				</value>
			</uniform>
			<uniform>
				<name>visibility</name>
				<type>float</type>
				<value>
					<use>visibility</use>
				</value>
			</uniform>
			<uniform>
				<name>sun_angle</name>
				<type>float</type>
				<value>
					<use>sun-angle</use>
				</value>
			</uniform>
			<uniform>
				<name>use_clouds</name>
				<type>bool</type>
				<value>
					<use>use-clouds</use>
				</value>
			</uniform>
			<uniform>
				<name>use_overlay</name>
				<type>bool</type>
				<value>
					<use>use-overlay-textures</use>
				</value>
			</uniform>
			<uniform>
				<name>use_cloud_shadows</name>
				<type>bool</type>
				<value>
					<use>use-cloud-shadows</use>
				</value>
			</uniform>
			<uniform>
				<name>gamma</name>
				<type>float</type>
				<value><use>gamma</use></value>
			      </uniform>
			      <uniform>
				<name>brightness</name>
				<type>float</type>
				<value><use>brightness</use></value>
			      </uniform>
			      <uniform>
				<name>use_filtering</name>
				<type>bool</type>
				<value><use>use_filtering</use></value>
			      </uniform>
			      <uniform>
				<name>use_night_vision</name>
				<type>bool</type>
				<value><use>use_night_vision</use></value>
			      </uniform>
			      <uniform>
				<name>use_IR_vision</name>
				<type>bool</type>
				<value><use>use_IR_vision</use></value>
			      </uniform>
			      <uniform>
				<name>delta_T</name>
				<type>float</type>
				<value><use>delta_T</use></value>
			      </uniform>
			      <uniform>
				<name>display_xsize</name>
				<type>int</type>
				<value><use>display_xsize</use></value>
			      </uniform>
			      <uniform>
				<name>display_ysize</name>
				<type>int</type>
				<value><use>display_ysize</use></value>
			      </uniform>  
		</pass>
	</technique>
 


	<technique n="10">
		<predicate>
			<or>
				<less-equal>
					<value type="float">2.0</value>
					<glversion/>
				</less-equal>
				<and>
					<extension-supported>GL_ARB_shader_objects</extension-supported>
					<extension-supported>GL_ARB_shading_language_100</extension-supported>
					<extension-supported>GL_ARB_vertex_shader</extension-supported>
					<extension-supported>GL_ARB_fragment_shader</extension-supported>
				</and>
			</or>
		</predicate>
		<pass>
			<lighting>true</lighting>
			<material>
				<active>
					<use>material/active</use>
				</active>
				<ambient>
					<use>material/ambient</use>
				</ambient>
				<diffuse>
					<use>material/diffuse</use>
				</diffuse>
				<specular>
					<use>material/specular</use>
				</specular>
				<emissive>
					<use>material/emissive</use>
				</emissive>
				<shininess>
					<use>material/shininess</use>
				</shininess>
				<color-mode>
					<use>material/color-mode</use>
				</color-mode>
			</material>
			<blend><use>transparent</use></blend>
			<alpha-test>
				<active type="bool">false</active>
			</alpha-test>
			<shade-model>
				<use>shade-model</use>
			</shade-model>
			<cull-face>
				<use>cull-face</use>
			</cull-face>
			<rendering-hint>
				<use>rendering-hint</use>
			</rendering-hint>
			<texture-unit>
				<unit>0</unit>
				<type><use>texture[0]/type</use></type>
				<image><use>texture[0]/image</use></image>
				<filter><use>texture[0]/filter</use></filter>
				<wrap-s><use>texture[0]/wrap-s</use></wrap-s>
				<wrap-t><use>texture[0]/wrap-t</use></wrap-t>
			</texture-unit>
			<texture-unit>
				<unit>1</unit>
				<image><use>texture[1]/image</use></image>
				<type><use>texture[1]/type</use></type>
				<filter><use>texture[1]/filter</use></filter>
				<wrap-s><use>texture[1]/wrap-s</use></wrap-s>
				<wrap-t><use>texture[1]/wrap-t</use></wrap-t>
				<internal-format><use>texture[1]/internal-format</use></internal-format>
			</texture-unit>
			<texture-unit>
				<unit>2</unit>
				<image><use>texture[2]/image</use></image>
				<type><use>texture[2]/type</use></type>
				<filter><use>texture[2]/filter</use></filter>
				<wrap-s><use>texture[2]/wrap-s</use></wrap-s>
				<wrap-t><use>texture[2]/wrap-t</use></wrap-t>
				<internal-format><use>texture[2]/internal-format</use></internal-format>
			</texture-unit>
			<texture-unit>
				<unit>3</unit>
				<image><use>texture[3]/image</use></image>
				<type><use>texture[3]/type</use></type>
				<filter><use>texture[3]/filter</use></filter>
				<wrap-s><use>texture[3]/wrap-s</use></wrap-s>
				<wrap-t><use>texture[3]/wrap-t</use></wrap-t>
				<internal-format><use>texture[3]/internal-format</use></internal-format>
			</texture-unit>

			<program>
				<vertex-shader>Shaders/planet.vert</vertex-shader>
				<fragment-shader>Shaders/planet.frag</fragment-shader>
				<fragment-shader>Shaders/noise.frag</fragment-shader>
        			<fragment-shader>Shaders/filters-ALS.frag</fragment-shader>
			<attribute>
				<name>tangent</name>
				<index>6</index>
			</attribute>
			<attribute>
				<name>normal</name>
				<index>15</index>
			</attribute>
			</program>
				
			<uniform>
				<name>texture</name>
				<type>sampler-2d</type>
				<value type="int">0</value>
			</uniform>
			<uniform>
				<name>shadowtex</name>
				<type>sampler-2d</type>
				<value type="int">1</value>
			</uniform>
			<uniform>
				<name>grain_texture</name>
				<type>sampler-2d</type>
				<value type="int">2</value>
			</uniform>
			<uniform>
				<name>colorMode</name>
				<type>int</type>
				<value>
					<use>material/color-mode-uniform</use>
				</value>
			</uniform>
			<uniform>
				<name>visibility</name>
				<type>float</type>
				<value>
					<use>visibility</use>
				</value>
			</uniform>
			<uniform>
				<name>sun_angle</name>
				<type>float</type>
				<value>
					<use>sun-angle</use>
				</value>
			</uniform>
			<uniform>
				<name>use_clouds</name>
				<type>bool</type>
				<value>
					<use>use-clouds</use>
				</value>
			</uniform>
			<uniform>
				<name>use_overlay</name>
				<type>bool</type>
				<value>
					<use>use-overlay-textures</use>
				</value>
			</uniform>
			<uniform>
				<name>use_cloud_shadows</name>
				<type>bool</type>
				<value><use>use-cloud-shadows</use></value>
			</uniform>
			<uniform>
				<name>gamma</name>
				<type>float</type>
				<value><use>gamma</use></value>
			</uniform>
			<uniform>
				<name>brightness</name>
				<type>float</type>
				<value><use>brightness</use></value>
			</uniform>
			<uniform>
				<name>use_filtering</name>
				<type>bool</type>
				<value><use>use_filtering</use></value>
			</uniform>
			<uniform>
				<name>use_night_vision</name>
				<type>bool</type>
				<value><use>use_night_vision</use></value>
			</uniform>
			<uniform>
				<name>use_IR_vision</name>
				<type>bool</type>
				<value><use>use_IR_vision</use></value>
			 </uniform>
			 <uniform>
				<name>delta_T</name>
				<type>float</type>
				<value><use>delta_T</use></value>
			 </uniform>
			 <uniform>
				<name>display_xsize</name>
				<type>int</type>
				<value><use>display_xsize</use></value>
			 </uniform>
			 <uniform>
				<name>display_ysize</name>
				<type>int</type>
				<value><use>display_ysize</use></value>
			 </uniform>  
		</pass>
	</technique>

<technique n="11">
		<pass>
			<lighting>true</lighting>
			<material>
				<active>
					<use>material/active</use>
				</active>
				<ambient>
					<use>material/ambient</use>
				</ambient>
				<diffuse>
					<use>material/diffuse</use>
				</diffuse>
				<specular>
					<use>material/specular</use>
				</specular>
				<emissive>
					<use>material/emissive</use>
				</emissive>
				<shininess>
					<use>material/shininess</use>
				</shininess>
				<color-mode>
					<use>material/color-mode</use>
				</color-mode>
			</material>
			<blend>
				<active>
					<use>blend/active</use>
				</active>
				<source>
					<use>blend/source</use>
				</source>
				<destination>
					<use>blend/destination</use>
				</destination>
			</blend>
			<shade-model>
				<use>shade-model</use>
			</shade-model>
			<cull-face>
				<use>cull-face</use>
			</cull-face>
			<rendering-hint>
				<use>rendering-hint</use>
			</rendering-hint>
			<texture-unit>
				<active>
					<use>texture[0]/active</use>
				</active>
				<unit>0</unit>
				<image>
					<use>texture[0]/image</use>
				</image>
				<filter>
					<use>texture[0]/filter</use>
				</filter>
				<wrap-s>
					<use>texture[0]/wrap-s</use>
				</wrap-s>
				<wrap-t>
					<use>texture[0]/wrap-t</use>
				</wrap-t>
				<!--
          <internal-format>
            <use>texture[0]/internal-format</use>
          </internal-format>
          -->
				<environment>
					<mode>modulate</mode>
				</environment>
			</texture-unit>
			<!-- A two-sided lighting model is set by default near the root
           of the scene graph. Perhaps that ought to be set in this
           effect?
        -->
		</pass>
	</technique>
	
</PropertyList>