<?xml version="1.0" encoding="utf-8"?> <!-- Reflections + Bumpmapping + specular+Lightmap please see Docs/README.model-combined.eff for documentation --> <PropertyList> <name>Effects/model-combined</name> <inherits-from>Effects/model-default</inherits-from> <parameters> <!-- Diffuse Texture --> <!-- <texture n ="0"> <type>white</type> </texture>--> <!-- Normal Map --> <normalmap-enabled type="int">0</normalmap-enabled> <normalmap-dds type="int">0</normalmap-dds> <normalmap-tiling type="float">1.0</normalmap-tiling> <texture n="2"> <image>Aircraft/Generic/Effects/null_bumpspec.png</image> <type>2d</type> <filter>linear-mipmap-linear</filter> <wrap-s>clamp</wrap-s> <wrap-t>clamp</wrap-t> <internal-format>normalized</internal-format> </texture> <!-- Light Map --> <lightmap-enabled type="int">0</lightmap-enabled> <lightmap-multi type="int">0</lightmap-multi> <lightmap-factor type="float" n="0">1.0</lightmap-factor> <lightmap-color type="vec3d" n="0"> 1.0 1.0 1.0 </lightmap-color> <lightmap-factor type="float" n="1">1.0</lightmap-factor> <lightmap-color type="vec3d" n="1"> 1.0 1.0 1.0 </lightmap-color> <lightmap-factor type="float" n="2">1.0</lightmap-factor> <lightmap-color type="vec3d" n="2"> 1.0 1.0 1.0 </lightmap-color> <lightmap-factor type="float" n="3">1.0</lightmap-factor> <lightmap-color type="vec3d" n="3"> 1.0 1.0 1.0 </lightmap-color> <texture n="3"> <image>Aircraft/Generic/Effects/greymap.png</image> <type>2d</type> <filter>linear-mipmap-linear</filter> <wrap-s>clamp</wrap-s> <wrap-t>clamp</wrap-t> <internal-format>normalized</internal-format> </texture> <!-- Reflection --> <reflection-enabled type="int">0</reflection-enabled> <reflection-correction type="float">0.0</reflection-correction> <reflect-map-enabled type="int">0</reflect-map-enabled> <reflection-dynamic type="int">0</reflection-dynamic> <texture n="4"> <image>Aircraft/Generic/Effects/ReflectMaps/reflectmap.png</image> <type>2d</type> <filter>linear-mipmap-linear</filter> <wrap-s>clamp</wrap-s> <wrap-t>clamp</wrap-t> <internal-format>normalized</internal-format> </texture> <!-- Reflection environment --> <texture n="5"> <type>cubemap</type> <!-- use this form for a cube cross --> <!--<image>Aircraft/Generic/Effects/CubeCrosses/blue_sky_big.jpg</image>--> <!-- END CubeCross --> <!-- use this form for a 6 image cube map --> <images> <positive-x>Aircraft/Generic/Effects/CubeMaps/fair-sky/fair-sky_px.png</positive-x> <negative-x>Aircraft/Generic/Effects/CubeMaps/fair-sky/fair-sky_nx.png</negative-x> <positive-y>Aircraft/Generic/Effects/CubeMaps/fair-sky/fair-sky_py.png</positive-y> <negative-y>Aircraft/Generic/Effects/CubeMaps/fair-sky/fair-sky_ny.png</negative-y> <positive-z>Aircraft/Generic/Effects/CubeMaps/fair-sky/fair-sky_pz.png</positive-z> <negative-z>Aircraft/Generic/Effects/CubeMaps/fair-sky/fair-sky_nz.png</negative-z> </images> <!-- END 6 image cube map --> </texture> <!-- Reflection fresnel --> <reflection-fresnel type="float">0.1</reflection-fresnel> <texture n="6"> <image>Aircraft/Generic/Effects/Gradients.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> <!-- Reflection rainbow --> <reflection-rainbow type="float">0.01</reflection-rainbow> <reflection-noise type="float">0.25</reflection-noise> <!-- END Reflection --> <!-- grain texture --> <grain-texture-enabled type="int">0</grain-texture-enabled> <grain-magnification type="float">10</grain-magnification> <texture n="7"> <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> <!-- END Grain texture --> <!-- simulate rain effects --> <rain-enabled type="int">0</rain-enabled> <!-- Dirt --> <dirt-enabled type="int">0</dirt-enabled> <dirt-multi type="int">0</dirt-multi> <dirt-color type="vec3d" n="0">0.0 0.0 0.0</dirt-color> <dirt-factor type="float" n="0">0.0</dirt-factor> <dirt-color type="vec3d" n="1">0.0 0.0 0.0</dirt-color> <dirt-factor type="float" n="1">0.0</dirt-factor> <dirt-color type="vec3d" n="2">0.0 0.0 0.0</dirt-color> <dirt-factor type="float" n="2">0.0</dirt-factor> <!-- ambient correction --> <ambient-correction type="float">0.05</ambient-correction> <rendering-hint>opaque</rendering-hint> <transparent>false</transparent> <render-bin> <bin-number>1</bin-number> <bin-name>RenderBin</bin-name> </render-bin> <!-- INTERNAL USE --> <shade-model>smooth</shade-model> <model-hdg> <use>orientation/model/heading-deg</use> </model-hdg> <model-pitch> <use>orientation/model/pitch-deg</use> </model-pitch> <model-roll> <use>orientation/model/roll-deg</use> </model-roll> <!-- fog include --> <visibility><use>/environment/ground-visibility-m</use></visibility> <avisibility><use>/environment/visibility-m</use></avisibility> <lthickness><use>/environment/ground-haze-thickness-m</use></lthickness> <scattering><use>/rendering/scene/scattering</use></scattering> <terminator><use>/environment/terminator-relative-position-m</use></terminator> <fogtype><use>/sim/rendering/shaders/skydome</use></fogtype> <wetness><use>/environment/surface/wetness</use></wetness> <rnorm><use>/environment/rain-norm</use></rnorm> <cloudpos1_x><use>/local-weather/cloud-shadows/cloudpos-x[0]</use></cloudpos1_x> <cloudpos1_y><use>/local-weather/cloud-shadows/cloudpos-y[0]</use></cloudpos1_y> <cloudpos2_x><use>/local-weather/cloud-shadows/cloudpos-x[1]</use></cloudpos2_x> <cloudpos2_y><use>/local-weather/cloud-shadows/cloudpos-y[1]</use></cloudpos2_y> <cloudpos3_x><use>/local-weather/cloud-shadows/cloudpos-x[2]</use></cloudpos3_x> <cloudpos3_y><use>/local-weather/cloud-shadows/cloudpos-y[2]</use></cloudpos3_y> <cloudpos4_x><use>/local-weather/cloud-shadows/cloudpos-x[3]</use></cloudpos4_x> <cloudpos4_y><use>/local-weather/cloud-shadows/cloudpos-y[3]</use></cloudpos4_y> <cloudpos5_x><use>/local-weather/cloud-shadows/cloudpos-x[4]</use></cloudpos5_x> <cloudpos5_y><use>/local-weather/cloud-shadows/cloudpos-y[4]</use></cloudpos5_y> <cloudpos6_x><use>/local-weather/cloud-shadows/cloudpos-x[5]</use></cloudpos6_x> <cloudpos6_y><use>/local-weather/cloud-shadows/cloudpos-y[5]</use></cloudpos6_y> <cloudpos7_x><use>/local-weather/cloud-shadows/cloudpos-x[6]</use></cloudpos7_x> <cloudpos7_y><use>/local-weather/cloud-shadows/cloudpos-y[6]</use></cloudpos7_y> <cloudpos8_x><use>/local-weather/cloud-shadows/cloudpos-x[7]</use></cloudpos8_x> <cloudpos8_y><use>/local-weather/cloud-shadows/cloudpos-y[7]</use></cloudpos8_y> <cloudpos9_x><use>/local-weather/cloud-shadows/cloudpos-x[8]</use></cloudpos9_x> <cloudpos9_y><use>/local-weather/cloud-shadows/cloudpos-y[8]</use></cloudpos9_y> <cloudpos10_x><use>/local-weather/cloud-shadows/cloudpos-x[9]</use></cloudpos10_x> <cloudpos10_y><use>/local-weather/cloud-shadows/cloudpos-y[9]</use></cloudpos10_y> <cloudpos11_x><use>/local-weather/cloud-shadows/cloudpos-x[10]</use></cloudpos11_x> <cloudpos11_y><use>/local-weather/cloud-shadows/cloudpos-y[10]</use></cloudpos11_y> <cloudpos12_x><use>/local-weather/cloud-shadows/cloudpos-x[11]</use></cloudpos12_x> <cloudpos12_y><use>/local-weather/cloud-shadows/cloudpos-y[11]</use></cloudpos12_y> <cloudpos13_x><use>/local-weather/cloud-shadows/cloudpos-x[12]</use></cloudpos13_x> <cloudpos13_y><use>/local-weather/cloud-shadows/cloudpos-y[12]</use></cloudpos13_y> <cloudpos14_x><use>/local-weather/cloud-shadows/cloudpos-x[13]</use></cloudpos14_x> <cloudpos14_y><use>/local-weather/cloud-shadows/cloudpos-y[13]</use></cloudpos14_y> <cloudpos15_x><use>/local-weather/cloud-shadows/cloudpos-x[14]</use></cloudpos15_x> <cloudpos15_y><use>/local-weather/cloud-shadows/cloudpos-y[14]</use></cloudpos15_y> <cloudpos16_x><use>/local-weather/cloud-shadows/cloudpos-x[15]</use></cloudpos16_x> <cloudpos16_y><use>/local-weather/cloud-shadows/cloudpos-y[15]</use></cloudpos16_y> <cloudpos17_x><use>/local-weather/cloud-shadows/cloudpos-x[16]</use></cloudpos17_x> <cloudpos17_y><use>/local-weather/cloud-shadows/cloudpos-y[16]</use></cloudpos17_y> <cloudpos18_x><use>/local-weather/cloud-shadows/cloudpos-x[17]</use></cloudpos18_x> <cloudpos18_y><use>/local-weather/cloud-shadows/cloudpos-y[17]</use></cloudpos18_y> <cloudpos19_x><use>/local-weather/cloud-shadows/cloudpos-x[18]</use></cloudpos19_x> <cloudpos19_y><use>/local-weather/cloud-shadows/cloudpos-y[18]</use></cloudpos19_y> <cloudpos20_x><use>/local-weather/cloud-shadows/cloudpos-x[19]</use></cloudpos20_x> <cloudpos20_y><use>/local-weather/cloud-shadows/cloudpos-y[19]</use></cloudpos20_y> <cloud_shadow_flag><use>/local-weather/cloud-shadows/cloud-shadow-flag</use></cloud_shadow_flag> <rembrandt><use>/sim/rendering/rembrandt/enabled</use></rembrandt> <!-- END fog include --> </parameters> <!--<generate> <tangent type="int">6</tangent> <binormal type="int">7</binormal> </generate>--> <technique n="4"> <predicate> <and> <property>/sim/rendering/shaders/skydome</property> <property>/sim/rendering/shaders/quality-level</property> <property>/sim/rendering/shaders/model</property> <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> </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> <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> <blend> <use>transparent</use> </blend> <alpha-test> <use>transparent</use> </alpha-test> <render-bin> <bin-number> <use>render-bin/bin-number</use> </bin-number> <bin-name> <use>render-bin/bin-name</use> </bin-name> </render-bin> <!-- Diffuse texture unit--> <texture-unit> <unit>0</unit> <image> <use>texture[0]/image</use> </image> <type> <use>texture[0]/type</use> </type> <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> </texture-unit> <!-- Reflection Noise texture unit--> <texture-unit> <unit>1</unit> <type>noise</type> </texture-unit> <!-- NormalMap 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> <!-- LightMap 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> <!-- ReflectMap texture unit--> <texture-unit> <unit>4</unit> <image> <use>texture[4]/image</use> </image> <type> <use>texture[4]/type</use> </type> <filter> <use>texture[4]/filter</use> </filter> <wrap-s> <use>texture[4]/wrap-s</use> </wrap-s> <wrap-t> <use>texture[4]/wrap-t</use> </wrap-t> <internal-format> <use>texture[4]/internal-format</use> </internal-format> </texture-unit> <!-- Reflection CubeMap texture unit--> <texture-unit> <unit>5</unit> <type> <use>texture[5]/type</use> </type> <!-- use this form for a cube cross --> <!--<image> <use>texture[5]/image</use> </image>--> <!-- END CubeCross --> <!-- use this form for a 6 image cube map --> <images> <use>texture[5]/images</use> </images> <!-- END 6 image cube map --> </texture-unit> <!-- Reflection gradients texture unit--> <texture-unit> <unit>6</unit> <image> <use>texture[6]/image</use> </image> <type> <use>texture[6]/type</use> </type> <filter> <use>texture[6]/filter</use> </filter> <wrap-s> <use>texture[6]/wrap-s</use> </wrap-s> <wrap-t> <use>texture[6]/wrap-t</use> </wrap-t> <internal-format> <use>texture[6]/internal-format</use> </internal-format> </texture-unit> <!-- Grain texture --> <texture-unit> <unit>7</unit> <image> <use>texture[7]/image</use> </image> <type> <use>texture[7]/type</use> </type> <filter> <use>texture[7]/filter</use> </filter> <wrap-s> <use>texture[7]/wrap-s</use> </wrap-s> <wrap-t> <use>texture[7]/wrap-t</use> </wrap-t> <internal-format> <use>texture[7]/internal-format</use> </internal-format> </texture-unit> <vertex-program-two-side> <use>vertex-program-two-side</use> </vertex-program-two-side> <program> <vertex-shader n="1">Shaders/ubershader.vert</vertex-shader> <fragment-shader n="1">Shaders/model-ALS-ultra.frag</fragment-shader> <fragment-shader n="2">Shaders/cloud-shadowfunc.frag</fragment-shader> <fragment-shader n="3">Shaders/hazes.frag</fragment-shader> <fragment-shader n="4">Shaders/secondary_lights.frag</fragment-shader> <fragment-shader n="5">Shaders/noise.frag</fragment-shader> </program> <uniform> <name>BaseTex</name> <type>sampler-2d</type> <value type="int">0</value> </uniform> <uniform> <name>ReflNoiseTex</name> <type>sampler-3d</type> <value type="int">1</value> </uniform> <uniform> <name>NormalTex</name> <type>sampler-2d</type> <value type="int">2</value> </uniform> <uniform> <name>LightMapTex</name> <type>sampler-2d</type> <value type="int">3</value> </uniform> <uniform> <name>ReflMapTex</name> <type>sampler-2d</type> <value type="int">4</value> </uniform> <uniform> <name>Environment</name> <type>sampler-cube</type> <value type="int">5</value> </uniform> <uniform> <name>ReflGradientsTex</name> <type>sampler-2d</type> <value type="int">6</value> </uniform> <uniform> <name>GrainTex</name> <type>sampler-2d</type> <value type="int">7</value> </uniform> <!-- NORMAL MAP --> <!-- normalmap is used--> <uniform> <name>nmap_enabled</name> <type>int</type> <value> <use>normalmap-enabled</use> </value> </uniform> <!-- normalmap is .dds--> <uniform> <name>nmap_dds</name> <type>int</type> <value> <use>normalmap-dds</use> </value> </uniform> <uniform> <name>nmap_tile</name> <type>float</type> <value> <use>normalmap-tiling</use> </value> </uniform> <!-- LIGHTMAP --> <!-- lightmap is used --> <uniform> <name>lightmap_enabled</name> <type>int</type> <value> <use>lightmap-enabled</use> </value> </uniform> <!-- lightmap is multichannel --> <uniform> <name>lightmap_multi</name> <type>int</type> <value> <use>lightmap-multi</use> </value> </uniform> <uniform> <name>lightmap_r_factor</name> <type>float</type> <value> <use>lightmap-factor[0]</use> </value> </uniform> <uniform> <name>lightmap_r_color</name> <type>float-vec3</type> <value> <use>lightmap-color[0]</use> </value> </uniform> <uniform> <name>lightmap_g_factor</name> <type>float</type> <value> <use>lightmap-factor[1]</use> </value> </uniform> <uniform> <name>lightmap_g_color</name> <type>float-vec3</type> <value> <use>lightmap-color[1]</use> </value> </uniform> <uniform> <name>lightmap_b_factor</name> <type>float</type> <value> <use>lightmap-factor[2]</use> </value> </uniform> <uniform> <name>lightmap_b_color</name> <type>float-vec3</type> <value> <use>lightmap-color[2]</use> </value> </uniform> <uniform> <name>lightmap_a_factor</name> <type>float</type> <value> <use>lightmap-factor[3]</use> </value> </uniform> <uniform> <name>lightmap_a_color</name> <type>float-vec3</type> <value> <use>lightmap-color[3]</use> </value> </uniform> <!-- reflection is used --> <uniform> <name>refl_enabled</name> <type>int</type> <value> <use>reflection-enabled</use> </value> </uniform> <!-- reflection correction --> <uniform> <name>refl_correction</name> <type>float</type> <value> <use>reflection-correction</use> </value> </uniform> <!-- use a reflection map--> <uniform> <name>refl_map</name> <type>int</type> <value> <use>reflect-map-enabled</use> </value> </uniform> <!-- reflection is dynamic --> <uniform> <name>refl_dynamic</name> <type>int</type> <value> <use>reflection-dynamic</use> </value> </uniform> <!-- set the amount of fringing colour 0.0 - 1.0 --> <uniform> <name>refl_rainbow</name> <type>float</type> <value> <use>reflection-rainbow</use> </value> </uniform> <!-- set the amount of fresnel effect colour 0.0 - 1.0 --> <uniform> <name>refl_fresnel</name> <type>float</type> <value> <use>reflection-fresnel</use> </value> </uniform> <!-- set the amount of noisiness 0.0 - 1.0 --> <uniform> <name>refl_noise</name> <type>float</type> <value> <use>reflection-noise</use> </value> </uniform> <!-- dirt --> <uniform> <name>dirt_enabled</name> <type>int</type> <value> <use>dirt-enabled</use> </value> </uniform> <uniform> <name>dirt_multi</name> <type>int</type> <value> <use>dirt-multi</use> </value> </uniform> <uniform> <name>dirt_r_color</name> <type>float-vec3</type> <value> <use>dirt-color[0]</use> </value> </uniform> <uniform> <name>dirt_r_factor</name> <type>float</type> <value> <use>dirt-factor[0]</use> </value> </uniform> <uniform> <name>dirt_g_color</name> <type>float-vec3</type> <value> <use>dirt-color[1]</use> </value> </uniform> <uniform> <name>dirt_g_factor</name> <type>float</type> <value> <use>dirt-factor[1]</use> </value> </uniform> <uniform> <name>dirt_b_color</name> <type>float-vec3</type> <value> <use>dirt-color[2]</use> </value> </uniform> <uniform> <name>dirt_b_factor</name> <type>float</type> <value> <use>dirt-factor[2]</use> </value> </uniform> <!-- use a grain texture map--> <uniform> <name>grain_texture_enabled</name> <type>int</type> <value> <use>grain-texture-enabled</use> </value> </uniform> <uniform> <name>grain_magnification</name> <type>float</type> <value> <use>grain-magnification</use> </value> </uniform> <!-- simulate wetness and rain--> <uniform> <name>rain_enabled</name> <type>int</type> <value> <use>rain-enabled</use> </value> </uniform> <!-- set the amount of ambient light correction 0.0 - 1.0 --> <uniform> <name>amb_correction</name> <type>float</type> <value> <use>ambient-correction</use> </value> </uniform> <uniform> <name>hdg</name> <type>float</type> <value> <use>model-hdg</use> </value> </uniform> <uniform> <name>pitch</name> <type>float</type> <value> <use>model-pitch</use> </value> </uniform> <uniform> <name>roll</name> <type>float</type> <value> <use>model-roll</use> </value> </uniform> <!-- BEGIN fog include --> <uniform> <name>visibility</name> <type>float</type> <value> <use>visibility</use> </value> </uniform> <uniform> <name>avisibility</name> <type>float</type> <value> <use>avisibility</use> </value> </uniform> <uniform> <name>hazeLayerAltitude</name> <type>float</type> <value> <use>lthickness</use> </value> </uniform> <uniform> <name>scattering</name> <type>float</type> <value> <use>scattering</use> </value> </uniform> <uniform> <name>terminator</name> <type>float</type> <value> <use>terminator</use> </value> </uniform> <uniform> <name>ground_scattering</name> <type>float</type> <value> <use>ground_scattering</use> </value> </uniform> <uniform> <name>terminator</name> <type>float</type> <value> <use>terminator</use> </value> </uniform> <uniform> <name>terrain_alt</name> <type>float</type> <value> <use>terrain_alt</use> </value> </uniform> <uniform> <name>overcast</name> <type>float</type> <value> <use>overcast</use> </value> </uniform> <uniform> <name>eye_alt</name> <type>float</type> <value> <use>eye_alt</use> </value> </uniform> <uniform> <name>cloud_self_shading</name> <type>float</type> <value><use>cloud_self_shading</use></value> </uniform> <uniform> <name>moonlight</name> <type>float</type> <value><use>moonlight</use></value> </uniform> <uniform> <name>air_pollution</name> <type>float</type> <value><use>air_pollution</use></value> </uniform> <uniform> <name>rain_norm</name> <type>float</type> <value><use>rnorm</use></value> </uniform> <uniform> <name>wetness</name> <type>float</type> <value><use>wetness</use></value> </uniform> <uniform> <name>view_pitch_offset</name> <type>float</type> <value><use>view_pitch_offset</use></value> </uniform> <uniform> <name>view_heading_offset</name> <type>float</type> <value><use>view_heading_offset</use></value> </uniform> <uniform> <name>field_of_view</name> <type>float</type> <value><use>view_fov</use></value> </uniform> <uniform> <name>landing_light1_offset</name> <type>float</type> <value><use>landing_light1_offset</use></value> </uniform> <uniform> <name>landing_light2_offset</name> <type>float</type> <value><use>landing_light2_offset</use></value> </uniform> <uniform> <name>cloudpos1_x</name> <type>float</type> <value><use>cloudpos1_x</use></value> </uniform> <uniform> <name>cloudpos1_y</name> <type>float</type> <value><use>cloudpos1_y</use></value> </uniform> <uniform> <name>cloudpos2_x</name> <type>float</type> <value><use>cloudpos2_x</use></value> </uniform> <uniform> <name>cloudpos2_y</name> <type>float</type> <value><use>cloudpos2_y</use></value> </uniform> <uniform> <name>cloudpos3_x</name> <type>float</type> <value><use>cloudpos3_x</use></value> </uniform> <uniform> <name>cloudpos3_y</name> <type>float</type> <value><use>cloudpos3_y</use></value> </uniform> <uniform> <name>cloudpos4_x</name> <type>float</type> <value><use>cloudpos4_x</use></value> </uniform> <uniform> <name>cloudpos4_y</name> <type>float</type> <value><use>cloudpos4_y</use></value> </uniform> <uniform> <name>cloudpos5_x</name> <type>float</type> <value><use>cloudpos5_x</use></value> </uniform> <uniform> <name>cloudpos5_y</name> <type>float</type> <value><use>cloudpos5_y</use></value> </uniform> <uniform> <name>cloudpos6_x</name> <type>float</type> <value><use>cloudpos6_x</use></value> </uniform> <uniform> <name>cloudpos6_y</name> <type>float</type> <value><use>cloudpos6_y</use></value> </uniform> <uniform> <name>cloudpos7_x</name> <type>float</type> <value><use>cloudpos7_x</use></value> </uniform> <uniform> <name>cloudpos7_y</name> <type>float</type> <value><use>cloudpos7_y</use></value> </uniform> <uniform> <name>cloudpos8_x</name> <type>float</type> <value><use>cloudpos8_x</use></value> </uniform> <uniform> <name>cloudpos8_y</name> <type>float</type> <value><use>cloudpos8_y</use></value> </uniform> <uniform> <name>cloudpos9_x</name> <type>float</type> <value><use>cloudpos9_x</use></value> </uniform> <uniform> <name>cloudpos9_y</name> <type>float</type> <value><use>cloudpos9_y</use></value> </uniform> <uniform> <name>cloudpos10_x</name> <type>float</type> <value><use>cloudpos10_x</use></value> </uniform> <uniform> <name>cloudpos10_y</name> <type>float</type> <value><use>cloudpos10_y</use></value> </uniform> <uniform> <name>cloudpos11_x</name> <type>float</type> <value><use>cloudpos11_x</use></value> </uniform> <uniform> <name>cloudpos11_y</name> <type>float</type> <value><use>cloudpos11_y</use></value> </uniform> <uniform> <name>cloudpos12_x</name> <type>float</type> <value><use>cloudpos12_x</use></value> </uniform> <uniform> <name>cloudpos12_y</name> <type>float</type> <value><use>cloudpos12_y</use></value> </uniform> <uniform> <name>cloudpos13_x</name> <type>float</type> <value><use>cloudpos13_x</use></value> </uniform> <uniform> <name>cloudpos13_y</name> <type>float</type> <value><use>cloudpos13_y</use></value> </uniform> <uniform> <name>cloudpos14_x</name> <type>float</type> <value><use>cloudpos14_x</use></value> </uniform> <uniform> <name>cloudpos14_y</name> <type>float</type> <value><use>cloudpos14_y</use></value> </uniform> <uniform> <name>cloudpos15_x</name> <type>float</type> <value><use>cloudpos15_x</use></value> </uniform> <uniform> <name>cloudpos15_y</name> <type>float</type> <value><use>cloudpos15_y</use></value> </uniform> <uniform> <name>cloudpos16_x</name> <type>float</type> <value><use>cloudpos16_x</use></value> </uniform> <uniform> <name>cloudpos16_y</name> <type>float</type> <value><use>cloudpos16_y</use></value> </uniform> <uniform> <name>cloudpos17_x</name> <type>float</type> <value><use>cloudpos17_x</use></value> </uniform> <uniform> <name>cloudpos17_y</name> <type>float</type> <value><use>cloudpos17_y</use></value> </uniform> <uniform> <name>cloudpos18_x</name> <type>float</type> <value><use>cloudpos18_x</use></value> </uniform> <uniform> <name>cloudpos18_y</name> <type>float</type> <value><use>cloudpos18_y</use></value> </uniform> <uniform> <name>cloudpos19_x</name> <type>float</type> <value><use>cloudpos19_x</use></value> </uniform> <uniform> <name>cloudpos19_y</name> <type>float</type> <value><use>cloudpos19_y</use></value> </uniform> <uniform> <name>cloudpos20_x</name> <type>float</type> <value><use>cloudpos20_x</use></value> </uniform> <uniform> <name>cloudpos20_y</name> <type>float</type> <value><use>cloudpos20_y</use></value> </uniform> <uniform> <name>cloud_shadow_flag</name> <type>int</type> <value><use>cloud_shadow_flag</use></value> </uniform> <uniform> <name>use_searchlight</name> <type>int</type> <value><use>use_searchlight</use></value> </uniform> <uniform> <name>use_landing_light</name> <type>int</type> <value><use>use_landing_light</use></value> </uniform> <uniform> <name>use_alt_landing_light</name> <type>int</type> <value><use>use_alt_landing_light</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> <!-- END fog include --> <uniform> <name>rembrandt_enabled</name> <type>int</type> <value> <use>rembrandt</use> </value> </uniform> </pass> </technique> <!-- Default rendering --> <technique n="9"> <predicate> <and> <property>/sim/rendering/shaders/quality-level</property> <property>/sim/rendering/shaders/model</property> <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> </and> </predicate> <pass n="0"> <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> <blend> <use>transparent</use> </blend> <alpha-test> <use>transparent</use> </alpha-test> <render-bin> <bin-number> <use>render-bin/bin-number</use> </bin-number> <bin-name> <use>render-bin/bin-name</use> </bin-name> </render-bin> <!-- Diffuse texture unit--> <texture-unit> <unit>0</unit> <image> <use>texture[0]/image</use> </image> <type> <use>texture[0]/type</use> </type> <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> </texture-unit> <!-- Reflection Noise texture unit--> <texture-unit> <unit>1</unit> <type>noise</type> </texture-unit> <!-- NormalMap 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> <!-- LightMap 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> <!-- ReflectMap texture unit--> <texture-unit> <unit>4</unit> <image> <use>texture[4]/image</use> </image> <type> <use>texture[4]/type</use> </type> <filter> <use>texture[4]/filter</use> </filter> <wrap-s> <use>texture[4]/wrap-s</use> </wrap-s> <wrap-t> <use>texture[4]/wrap-t</use> </wrap-t> <internal-format> <use>texture[4]/internal-format</use> </internal-format> </texture-unit> <!-- Reflection CubeMap texture unit--> <texture-unit> <unit>5</unit> <type> <use>texture[5]/type</use> </type> <!-- use this form for a cube cross --> <!--<image> <use>texture[5]/image</use> </image>--> <!-- END CubeCross --> <!-- use this form for a 6 image cube map --> <images> <use>texture[5]/images</use> </images> <!-- END 6 image cube map --> </texture-unit> <!-- Reflection gradients texture unit--> <texture-unit> <unit>6</unit> <image> <use>texture[6]/image</use> </image> <type> <use>texture[6]/type</use> </type> <filter> <use>texture[6]/filter</use> </filter> <wrap-s> <use>texture[6]/wrap-s</use> </wrap-s> <wrap-t> <use>texture[6]/wrap-t</use> </wrap-t> <internal-format> <use>texture[6]/internal-format</use> </internal-format> </texture-unit> <vertex-program-two-side> <use>vertex-program-two-side</use> </vertex-program-two-side> <program n="0"> <!-- <vertex-shader n="0">Shaders/include_fog.vert</vertex-shader> --> <vertex-shader n="1">Shaders/ubershader.vert</vertex-shader> <fragment-shader n="0">Shaders/include_fog.frag</fragment-shader> <fragment-shader n="1">Shaders/ubershader.frag</fragment-shader> <!--<attribute> <name>tangent</name> <index>6</index> </attribute> <attribute> <name>binormal</name> <index>7</index> </attribute>--> </program> <uniform> <name>BaseTex</name> <type>sampler-2d</type> <value type="int">0</value> </uniform> <uniform> <name>ReflNoiseTex</name> <type>sampler-3d</type> <value type="int">1</value> </uniform> <uniform> <name>NormalTex</name> <type>sampler-2d</type> <value type="int">2</value> </uniform> <uniform> <name>LightMapTex</name> <type>sampler-2d</type> <value type="int">3</value> </uniform> <uniform> <name>ReflMapTex</name> <type>sampler-2d</type> <value type="int">4</value> </uniform> <uniform> <name>Environment</name> <type>sampler-cube</type> <value type="int">5</value> </uniform> <uniform> <name>ReflGradientsTex</name> <type>sampler-2d</type> <value type="int">6</value> </uniform> <!-- NORMAL MAP --> <!-- normalmap is used--> <uniform> <name>nmap_enabled</name> <type>int</type> <value> <use>normalmap-enabled</use> </value> </uniform> <!-- normalmap is .dds--> <uniform> <name>nmap_dds</name> <type>int</type> <value> <use>normalmap-dds</use> </value> </uniform> <uniform> <name>nmap_tile</name> <type>float</type> <value> <use>normalmap-tiling</use> </value> </uniform> <!-- LIGHTMAP --> <!-- lightmap is used --> <uniform> <name>lightmap_enabled</name> <type>int</type> <value> <use>lightmap-enabled</use> </value> </uniform> <!-- lightmap is multichannel --> <uniform> <name>lightmap_multi</name> <type>int</type> <value> <use>lightmap-multi</use> </value> </uniform> <uniform> <name>lightmap_r_factor</name> <type>float</type> <value> <use>lightmap-factor[0]</use> </value> </uniform> <uniform> <name>lightmap_r_color</name> <type>float-vec3</type> <value> <use>lightmap-color[0]</use> </value> </uniform> <uniform> <name>lightmap_g_factor</name> <type>float</type> <value> <use>lightmap-factor[1]</use> </value> </uniform> <uniform> <name>lightmap_g_color</name> <type>float-vec3</type> <value> <use>lightmap-color[1]</use> </value> </uniform> <uniform> <name>lightmap_b_factor</name> <type>float</type> <value> <use>lightmap-factor[2]</use> </value> </uniform> <uniform> <name>lightmap_b_color</name> <type>float-vec3</type> <value> <use>lightmap-color[2]</use> </value> </uniform> <uniform> <name>lightmap_a_factor</name> <type>float</type> <value> <use>lightmap-factor[3]</use> </value> </uniform> <uniform> <name>lightmap_a_color</name> <type>float-vec3</type> <value> <use>lightmap-color[3]</use> </value> </uniform> <!-- reflection is used --> <uniform> <name>refl_enabled</name> <type>int</type> <value> <use>reflection-enabled</use> </value> </uniform> <!-- reflection correction --> <uniform> <name>refl_correction</name> <type>float</type> <value> <use>reflection-correction</use> </value> </uniform> <!-- use a reflection map--> <uniform> <name>refl_map</name> <type>int</type> <value> <use>reflect-map-enabled</use> </value> </uniform> <!-- reflection is dynamic --> <uniform> <name>refl_dynamic</name> <type>int</type> <value> <use>reflection-dynamic</use> </value> </uniform> <!-- set the amount of fringing colour 0.0 - 1.0 --> <uniform> <name>refl_rainbow</name> <type>float</type> <value> <use>reflection-rainbow</use> </value> </uniform> <!-- set the amount of fresnel effect colour 0.0 - 1.0 --> <uniform> <name>refl_fresnel</name> <type>float</type> <value> <use>reflection-fresnel</use> </value> </uniform> <!-- set the amount of noisiness 0.0 - 1.0 --> <uniform> <name>refl_noise</name> <type>float</type> <value> <use>reflection-noise</use> </value> </uniform> <!-- dirt --> <uniform> <name>dirt_enabled</name> <type>int</type> <value> <use>dirt-enabled</use> </value> </uniform> <uniform> <name>dirt_multi</name> <type>int</type> <value> <use>dirt-multi</use> </value> </uniform> <uniform> <name>dirt_r_color</name> <type>float-vec3</type> <value> <use>dirt-color[0]</use> </value> </uniform> <uniform> <name>dirt_r_factor</name> <type>float</type> <value> <use>dirt-factor[0]</use> </value> </uniform> <uniform> <name>dirt_g_color</name> <type>float-vec3</type> <value> <use>dirt-color[1]</use> </value> </uniform> <uniform> <name>dirt_g_factor</name> <type>float</type> <value> <use>dirt-factor[1]</use> </value> </uniform> <uniform> <name>dirt_b_color</name> <type>float-vec3</type> <value> <use>dirt-color[2]</use> </value> </uniform> <uniform> <name>dirt_b_factor</name> <type>float</type> <value> <use>dirt-factor[2]</use> </value> </uniform> <!-- set the amount of ambient light correction 0.0 - 1.0 --> <uniform> <name>amb_correction</name> <type>float</type> <value> <use>ambient-correction</use> </value> </uniform> <uniform> <name>hdg</name> <type>float</type> <value> <use>model-hdg</use> </value> </uniform> <uniform> <name>pitch</name> <type>float</type> <value> <use>model-pitch</use> </value> </uniform> <uniform> <name>roll</name> <type>float</type> <value> <use>model-roll</use> </value> </uniform> <!-- BEGIN fog include --> <uniform> <name>visibility</name> <type>float</type> <value> <use>visibility</use> </value> </uniform> <uniform> <name>avisibility</name> <type>float</type> <value> <use>avisibility</use> </value> </uniform> <uniform> <name>hazeLayerAltitude</name> <type>float</type> <value> <use>lthickness</use> </value> </uniform> <uniform> <name>scattering</name> <type>float</type> <value> <use>scattering</use> </value> </uniform> <uniform> <name>terminator</name> <type>float</type> <value> <use>terminator</use> </value> </uniform> <uniform> <name>fogType</name> <type>int</type> <value> <use>fogtype</use> </value> </uniform> <!-- END fog include --> <uniform> <name>rembrandt_enabled</name> <type>int</type> <value> <use>rembrandt</use> </value> </uniform> </pass> </technique> </PropertyList>