<?xml version="1.0" encoding="utf-8"?> <PropertyList> <name>Effects/planet-cloudlayer</name> <parameters> <texture n ="0"> <type>white</type> </texture> <texture n="1"> <image>Models/Astro/cloud_structure.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-overlay-textures><use>/earthview/overlay-texture-flag</use></use-overlay-textures> <use-cloud-normals><use>/earthview/cloud-normal-flag</use></use-cloud-normals> <shade-effect><use>/earthview/shade-effect</use></shade-effect> <cloudcover-bias><use>/earthview/cloudcover-bias</use></cloudcover-bias> <sun-angle><use>/sim/time/sun-angle-rad</use></sun-angle> <moonlight><use>/environment/moonlight</use></moonlight> <air_pollution><use>/environment/air-pollution-norm</use></air_pollution> <roi_x1><use>/earthview/roi-x1</use></roi_x1> <roi_y1><use>/earthview/roi-y1</use></roi_y1> <lightning><use>/earthview/lightning</use></lightning> <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> <fact_grey><use>/sim/rendering/als-filters/grey-factor</use></fact_grey> <fact_black><use>/sim/rendering/als-filters/black-factor</use></fact_black> <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="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> <source>src-alpha</source> <destination>one-minus-src-alpha</destination> </blend> <shade-model>smooth</shade-model> <cull-face> <use>cull-face</use> </cull-face> <rendering-hint>transparent</rendering-hint> <render-bin> <bin-number>110</bin-number> <bin-name>DepthSortedBin</bin-name> </render-bin> <texture-unit> <!-- The texture unit is always active because the shaders expect that. --> <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> <program> <vertex-shader>Shaders/planet.vert</vertex-shader> <fragment-shader>Shaders/planet-cloudlayer.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>structure_texture</name> <type>sampler-2d</type> <value type="int">1</value> </uniform> <uniform> <name>use_overlay</name> <type>bool</type> <value> <use>use-overlay-textures</use> </value> </uniform> <uniform> <name>use_cloud_normals</name> <type>bool</type> <value> <use>use-cloud-normals</use> </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>shade_effect</name> <type>float</type> <value> <use>shade-effect</use> </value> </uniform> <uniform> <name>cloudcover_bias</name> <type>float</type> <value><use>cloudcover-bias</use></value> </uniform> <uniform> <name>air_pollution</name> <type>float</type> <value><use>air_pollution</use></value> </uniform> <uniform> <name>sun_angle</name> <type>float</type> <value> <use>sun-angle</use> </value> </uniform> <uniform> <name>moonlight</name> <type>float</type> <value> <use>moonlight</use> </value> </uniform> <uniform> <name>lightning</name> <type>float</type> <value> <use>lightning</use> </value> </uniform> <uniform> <name>roi_x1</name> <type>float</type> <value> <use>roi_x1</use> </value> </uniform> <uniform> <name>roi_y1</name> <type>float</type> <value> <use>roi_y1</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>fact_grey</name> <type>float</type> <value><use>fact_grey</use></value> </uniform> <uniform> <name>fact_black</name> <type>float</type> <value><use>fact_black</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>