1
0
Fork 0

Standardize on Unix line ending

Reported at:
https://sourceforge.net/p/flightgear/codetickets/2042/
This commit is contained in:
James Turner 2018-08-08 11:17:49 +02:00
parent fd3d4bd67e
commit 544e53c9d9

View file

@ -1,392 +1,392 @@
MODEL COMBINED EFFECT - INSTRUCTIONS FOR USE MODEL COMBINED EFFECT - INSTRUCTIONS FOR USE
============================================ ============================================
The model-combined effect uses the ubershader to provide any or all of diffuse, The model-combined effect uses the ubershader to provide any or all of diffuse,
light-map, reflection, bump-mapping and dirt effects on the model on which it is light-map, reflection, bump-mapping and dirt effects on the model on which it is
applied. The effect responds to the quality setting of the "Model" slider in the applied. The effect responds to the quality setting of the "Model" slider in the
advanced shader configuration, in the following order: advanced shader configuration, in the following order:
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
*lowest quality - enables light-map and dirt, if enabled by the effect; *lowest quality - enables light-map and dirt, if enabled by the effect;
*medium quality - enables reflection too, if enabled in the effect; *medium quality - enables reflection too, if enabled in the effect;
*highest quality - enables bump-mapping too, if enabled in the effect. *highest quality - enables bump-mapping too, if enabled in the effect.
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
To use this on your aircraft model, you are advised to create a local effect To use this on your aircraft model, you are advised to create a local effect
that has the following lines: that has the following lines:
1. for automatic Rembrandt support on opaque objects use this: 1. for automatic Rembrandt support on opaque objects use this:
<name>my-aircraft-effect</name> <name>my-aircraft-effect</name>
<inherits-from>Effects/model-combined-deferred</inherits-from> <inherits-from>Effects/model-combined-deferred</inherits-from>
2. for automatic Rembrandt support on transparent objects (glass) use this: 2. for automatic Rembrandt support on transparent objects (glass) use this:
<name>my-aircraft-glass-effect</name> <name>my-aircraft-glass-effect</name>
<inherits-from>Effects/model-combined-transparent</inherits-from> <inherits-from>Effects/model-combined-transparent</inherits-from>
The only modeller-adjustable settings are those found in the parameters section The only modeller-adjustable settings are those found in the parameters section
and listed here. There are other entries in the parameters section, but those and listed here. There are other entries in the parameters section, but those
are for internal use only, please don't mess with them. are for internal use only, please don't mess with them.
You only need to list in your local effect those entries that you'll modify from You only need to list in your local effect those entries that you'll modify from
the defaults, there's no need to repeat all of them. the defaults, there's no need to repeat all of them.
Following is the list of parameters, their default setting and a short Following is the list of parameters, their default setting and a short
explanation of what they control/affect explanation of what they control/affect
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
<texture n ="0"> <texture n ="0">
- the model texture, as assigned in the 3d-modelling - the model texture, as assigned in the 3d-modelling
application, or by the livery select mechanism. application, or by the livery select mechanism.
This only needs to be present in the main effect. This only needs to be present in the main effect.
Setting this to some specific texture will override Setting this to some specific texture will override
the assigned texture/livery. the assigned texture/livery.
Bumpmap control: Bumpmap control:
=================== ===================
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
WARNING!!! Enabling this requires further modification to the local effect. WARNING!!! Enabling this requires further modification to the local effect.
Please see the attached model-combined-nmap.eff stub for correct usage. Please see the attached model-combined-nmap.eff stub for correct usage.
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
<normalmap-enabled type="int">0</normalmap-enabled> <normalmap-enabled type="int">0</normalmap-enabled>
- enables bump-mapping (if quality is set high enough). - enables bump-mapping (if quality is set high enough).
Default value is off. Default value is off.
Available values are 0 (off) and 1(on). Available values are 0 (off) and 1(on).
Leave off if you're not using it. Leave off if you're not using it.
<normalmap-dds type="int">0</normalmap-dds> <normalmap-dds type="int">0</normalmap-dds>
- enable this if you're using a .dds compressed normal-map. - enable this if you're using a .dds compressed normal-map.
Default value is 0 (off). Default value is 0 (off).
Available values are 0 (off) and 1(on) Available values are 0 (off) and 1(on)
<normalmap-tiling type="float">1.0</normalmap-tiling> <normalmap-tiling type="float">1.0</normalmap-tiling>
- sets the repeat rate of the normal-map image, useful for covering - sets the repeat rate of the normal-map image, useful for covering
large areas with fine detail. large areas with fine detail.
Default value is 1.0 (no-tiling). Default value is 1.0 (no-tiling).
If you set this to a value > 1.0, you need If you set this to a value > 1.0, you need
to set wrapping mode to repeat below. to set wrapping mode to repeat below.
<texture n="2"> <texture n="2">
- the normal-map texture slot - the normal-map texture slot
<image></image> <image></image>
- the normal-map texture path - the normal-map texture path
<wrap-s>clamp</wrap-s> <wrap-s>clamp</wrap-s>
- X-axis (U) wrapping mode of the texture. - X-axis (U) wrapping mode of the texture.
Default is set to clamp. Default is set to clamp.
If you enable the tiling feature (normalmap-tiling > 1.0), you need If you enable the tiling feature (normalmap-tiling > 1.0), you need
to set this to repeat. to set this to repeat.
<wrap-t>clamp</wrap-t> <wrap-t>clamp</wrap-t>
- same as above for the Y-axis (V). - same as above for the Y-axis (V).
</texture> </texture>
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
Lightmap control: Lightmap control:
=================== ===================
<lightmap-enabled type="int">0</lightmap-enabled> <lightmap-enabled type="int">0</lightmap-enabled>
- enables the light-map. - enables the light-map.
Default value is 0 (off). Default value is 0 (off).
Available values are 0 (off) and 1(on). Available values are 0 (off) and 1(on).
If you want control over your light-maps enable this If you want control over your light-maps enable this
and use a variable property as factor. and use a variable property as factor.
<lightmap-multi type="int">0</lightmap-multi> <lightmap-multi type="int">0</lightmap-multi>
- this enables multiple light-maps per light-map texture. - this enables multiple light-maps per light-map texture.
Default value is 0 (off). Default value is 0 (off).
Available values are 0 (off) and 1(on). Available values are 0 (off) and 1(on).
When off the shader code uses information from When off the shader code uses information from
the red channel of the light-map. the red channel of the light-map.
<lightmap-factor type="float" n="0">1.0</lightmap-factor> <lightmap-factor type="float" n="0">1.0</lightmap-factor>
- factor to multiply the value of the red channel in the light-map. - factor to multiply the value of the red channel in the light-map.
Default value is 1.0. Default value is 1.0.
This product is used as a resulting factor for This product is used as a resulting factor for
the final light-map color. the final light-map color.
<lightmap-color type="vec3d" n="0"> 1.0 1.0 1.0 </lightmap-color> <lightmap-color type="vec3d" n="0"> 1.0 1.0 1.0 </lightmap-color>
- the color of the light for the red channel in the light-map. - the color of the light for the red channel in the light-map.
Default value is white (1.0 1.0 1.0). Default value is white (1.0 1.0 1.0).
<lightmap-factor type="float" n="1">1.0</lightmap-factor> <lightmap-factor type="float" n="1">1.0</lightmap-factor>
- same as above for the green channel. - same as above for the green channel.
<lightmap-color type="vec3d" n="1"> 1.0 1.0 1.0 </lightmap-color> <lightmap-color type="vec3d" n="1"> 1.0 1.0 1.0 </lightmap-color>
- same as above for the green channel. - same as above for the green channel.
<lightmap-factor type="float" n="2">1.0</lightmap-factor> <lightmap-factor type="float" n="2">1.0</lightmap-factor>
- same as above for the blue channel. - same as above for the blue channel.
<lightmap-color type="vec3d" n="2"> 1.0 1.0 1.0 </lightmap-color> <lightmap-color type="vec3d" n="2"> 1.0 1.0 1.0 </lightmap-color>
- same as above for the blue channel. - same as above for the blue channel.
<lightmap-factor type="float" n="3">1.0</lightmap-factor> <lightmap-factor type="float" n="3">1.0</lightmap-factor>
- same as above for the alpha channel. - same as above for the alpha channel.
<lightmap-color type="vec3d" n="3"> 1.0 1.0 1.0 </lightmap-color> <lightmap-color type="vec3d" n="3"> 1.0 1.0 1.0 </lightmap-color>
- same as above for the alpha channel. - same as above for the alpha channel.
<texture n="3"> <texture n="3">
- the light-map texture slot. - the light-map texture slot.
<image>Aircraft/Generic/Effects/greymap.png</image> <image>Aircraft/Generic/Effects/greymap.png</image>
- the light-map texture path. - the light-map texture path.
<filter>linear-mipmap-linear</filter> <filter>linear-mipmap-linear</filter>
<wrap-s>clamp</wrap-s> <wrap-s>clamp</wrap-s>
<wrap-t>clamp</wrap-t> <wrap-t>clamp</wrap-t>
<internal-format>normalized</internal-format> <internal-format>normalized</internal-format>
</texture> </texture>
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
Reflection control: Reflection control:
=================== ===================
. .
<reflection-enabled type="int">0</reflection-enabled> <reflection-enabled type="int">0</reflection-enabled>
- enables reflection (if user preference is high enough). - enables reflection (if user preference is high enough).
Default value is 0 (off). Default value is 0 (off).
Available values are 0 (off) and 1(on). Available values are 0 (off) and 1(on).
<reflection-correction type="float">0.0</reflection-correction> <reflection-correction type="float">0.0</reflection-correction>
- factor to add to the material specularity to give - factor to add to the material specularity to give
the final reflection factor. the final reflection factor.
Default value is 0.0 (no correction). Default value is 0.0 (no correction).
Accepts values from -1.0 to 1.0. Accepts values from -1.0 to 1.0.
If reflection-map is enabled below, this factor is added to the product If reflection-map is enabled below, this factor is added to the product
between the alpha channel of the texture and the material specularity. between the alpha channel of the texture and the material specularity.
<reflect-map-enabled type="int">0</reflect-map-enabled> <reflect-map-enabled type="int">0</reflect-map-enabled>
- enables the usage of a texture to determine reflection intensity. - enables the usage of a texture to determine reflection intensity.
Default value is 0 (off). Default value is 0 (off).
Available values are 0 (off) and 1(on). Available values are 0 (off) and 1(on).
<reflection-dynamic type="int">0</reflection-dynamic> <reflection-dynamic type="int">0</reflection-dynamic>
- enables dynamic reflections. - enables dynamic reflections.
Default value is 0 (off). Default value is 0 (off).
Available values are 0 (off) and 1(on). Available values are 0 (off) and 1(on).
The reflection gets rotated according to the object orientation, The reflection gets rotated according to the object orientation,
trying to keep the ground in the reflection on faces facing the ground. trying to keep the ground in the reflection on faces facing the ground.
Recommended setting for external reflections is 1 (on). Recommended setting for external reflections is 1 (on).
For internal (cockpit, instruments) leave it at 0 (off). For internal (cockpit, instruments) leave it at 0 (off).
<texture n="4"> <texture n="4">
- texture slot for the reflect-map. This map is also used for the dynamic dirt. - texture slot for the reflect-map. This map is also used for the dynamic dirt.
<image>Aircraft/Generic/Effects/ReflectMaps/reflectmap.png</image> <image>Aircraft/Generic/Effects/ReflectMaps/reflectmap.png</image>
- reflect-map texture path. - reflect-map texture path.
<filter>linear-mipmap-linear</filter> <filter>linear-mipmap-linear</filter>
<wrap-s>clamp</wrap-s> <wrap-s>clamp</wrap-s>
<wrap-t>clamp</wrap-t> <wrap-t>clamp</wrap-t>
<internal-format>normalized</internal-format> <internal-format>normalized</internal-format>
</texture> </texture>
Reflection env-map: Reflection env-map:
------------------- -------------------
<texture n="5"> <texture n="5">
- texture slot for the texture(s) used to create - texture slot for the texture(s) used to create
the cubic environment that is reflected the cubic environment that is reflected
<type>cubemap</type> <type>cubemap</type>
There are two ways of defining the environment texture: There are two ways of defining the environment texture:
1: a cubecross texture where all faces of the cube are stitched into one texture: 1: a cubecross texture where all faces of the cube are stitched into one texture:
<image>Aircraft/Generic/Effects/CubeCrosses/blue_sky_big.jpg</image> <image>Aircraft/Generic/Effects/CubeCrosses/blue_sky_big.jpg</image>
or or
2: 6 different textures, one for each face of the environment cube: 2: 6 different textures, one for each face of the environment cube:
<images> <images>
<positive-x>Aircraft/Generic/Effects/CubeMaps/fair-sky/fair-sky_px.png</positive-x> <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> <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> <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> <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> <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> <negative-z>Aircraft/Generic/Effects/CubeMaps/fair-sky/fair-sky_nz.png</negative-z>
</images> </images>
</texture> </texture>
<reflection-fresnel type="float">0.1</reflection-fresnel> <reflection-fresnel type="float">0.1</reflection-fresnel>
- fresnel(banding) factor for the reflection. - fresnel(banding) factor for the reflection.
Default value is 0.1. Default value is 0.1.
Values range from -1.0 to 1.0. Values range from -1.0 to 1.0.
<texture n="6"> <texture n="6">
- fresnel texture slot - fresnel texture slot
<image>Aircraft/Generic/Effects/FresnelLookUp.png</image> <image>Aircraft/Generic/Effects/FresnelLookUp.png</image>
- fresnel(banding) texture path - fresnel(banding) texture path
<filter>linear-mipmap-linear</filter> <filter>linear-mipmap-linear</filter>
<wrap-s>repeat</wrap-s> <wrap-s>repeat</wrap-s>
<wrap-t>repeat</wrap-t> <wrap-t>repeat</wrap-t>
<internal-format>normalized</internal-format> <internal-format>normalized</internal-format>
</texture> </texture>
<reflection-rainbow type="float">0.01</reflection-rainbow> <reflection-rainbow type="float">0.01</reflection-rainbow>
- rainbow factor for the reflection. - rainbow factor for the reflection.
Default value is 0.01. Default value is 0.01.
Values range from -1.0 to 1.0. Values range from -1.0 to 1.0.
<texture n="7"> <texture n="7">
- rainbow texture slot. - rainbow texture slot.
<image>Aircraft/Generic/Effects/Rainbow.png</image> <image>Aircraft/Generic/Effects/Rainbow.png</image>
- rainbow texture path. - rainbow texture path.
<filter>linear-mipmap-linear</filter> <filter>linear-mipmap-linear</filter>
<wrap-s>repeat</wrap-s> <wrap-s>repeat</wrap-s>
<wrap-t>repeat</wrap-t> <wrap-t>repeat</wrap-t>
<internal-format>normalized</internal-format> <internal-format>normalized</internal-format>
</texture> </texture>
<reflection-noise type="float">0.25</reflection-noise> <reflection-noise type="float">0.25</reflection-noise>
- Amount of color noise to be added to the reflected image. - Amount of color noise to be added to the reflected image.
Default value is 0.25. Default value is 0.25.
Accepts values from 0.0 to 1.0. Accepts values from 0.0 to 1.0.
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
Dirt/Grit Control: Dirt/Grit Control:
================== ==================
<dirt-enabled type="int">0</dirt-enabled> <dirt-enabled type="int">0</dirt-enabled>
- enables dynamic dirt in the shader. - enables dynamic dirt in the shader.
Default value is 0(off). Default value is 0(off).
Available values are 0 (off) and 1(on). Available values are 0 (off) and 1(on).
This uses the red channel of the texture in slot 4 (reflection map) This uses the red channel of the texture in slot 4 (reflection map)
to define areas that should be dirtied up. to define areas that should be dirtied up.
You don't have to enable 'reflect-map-enabled' above to use this. You don't have to enable 'reflect-map-enabled' above to use this.
<dirt-color type="vec3d">0.0 0.0 0.0</dirt-color> <dirt-color type="vec3d">0.0 0.0 0.0</dirt-color>
- color of the dirt added. Default is black (0.0 0.0 0.0). - color of the dirt added. Default is black (0.0 0.0 0.0).
<dirt-factor type="float">0.0</dirt-factor> <dirt-factor type="float">0.0</dirt-factor>
- factor to control how intense the dirt is drawn. - factor to control how intense the dirt is drawn.
Default value is 0.0. Default value is 0.0.
This should use a dynamic property settable at runtime. This should use a dynamic property settable at runtime.
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
Ambient Correction: Ambient Correction:
=================== ===================
<ambient-correction type="float">0.05</ambient-correction> <ambient-correction type="float">0.05</ambient-correction>
- factor by which to lighten/darken the final result, and to remove - factor by which to lighten/darken the final result, and to remove
some of the blueness induced by some of the reflection environments. some of the blueness induced by some of the reflection environments.
Default value is 0.05. Default value is 0.05.
Values range from -1.0 to 1.0. Values range from -1.0 to 1.0.
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
FINAL WARNINGS: FINAL WARNINGS:
===================== =====================
To repeat the earlier warning: To repeat the earlier warning:
Do NOT use in any situation the normal-map enabled effect on objects that Do NOT use in any situation the normal-map enabled effect on objects that
are NOT completely uv-mapped to a texture, and/or that texture is not available are NOT completely uv-mapped to a texture, and/or that texture is not available
at runtime. at runtime.
The binormal/tangent generator needs the texture information at runtime, The binormal/tangent generator needs the texture information at runtime,
failing to find this it crashes, causing a segfault for FlightGear. failing to find this it crashes, causing a segfault for FlightGear.
To fix culling/sorting problems: To fix culling/sorting problems:
This effect forces objects into Render-Bin 1. This effect forces objects into Render-Bin 1.
This makes it necessary to use a specially modified local effect This makes it necessary to use a specially modified local effect
for transparent objects. for transparent objects.
This is provided as a stub in model-combined-glass.eff that you can find in This is provided as a stub in model-combined-glass.eff that you can find in
the same directory along with this ReadMe. the same directory along with this ReadMe.