forked from 0ad/0ad
49 lines
2.5 KiB
XML
49 lines
2.5 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<material>
|
|
<shader effect="model"/>
|
|
<alternative material="player_trans_ao_spec.xml" quality="8"/>
|
|
|
|
<define name="USE_PLAYERCOLOR" value="1"/>
|
|
|
|
<!-- REQUIRES: Actor must provide a texture named "normTex", where the Alpha channel
|
|
is the heightmap (white = high).
|
|
COMMENT: Pixels that are exactly white are calculated more efficiently (on average)
|
|
if dynamic branching is supported by the player's GPU.
|
|
EFFICIENCY: This is a moderately expensive effect, so use with care. -->
|
|
<define name="USE_PARALLAX_MAP" value="1"/>
|
|
|
|
<!-- REQUIRES: Actor must provide a texture named "normTex", where the RGB channels
|
|
are a normal map corresponding to XYZ normals.
|
|
EFFICIENCY: This is a relatively inexpensive effect that should run easily on most hardware. -->
|
|
<define name="USE_NORMAL_MAP" value="1"/>
|
|
|
|
<!-- REQUIRES: Actor must provide a texture named "specTex", where the RGB channels
|
|
provide a specular colour multiplier.
|
|
Material must provide a uniform definition for "specularPower" that controls
|
|
the glossiness of the effect.
|
|
COMMENT: The intensity of the colour controls the specular amount, so black pixels have
|
|
no specularity.
|
|
COMPATIBILITY: This effect is incompatible with the old "USE_SPECULAR" effect.
|
|
EFFICIENCY: This is a relatively inexpensive effect that should run easily on most hardware. -->
|
|
<!--define name="USE_SPECULAR_MAP" value="1"/-->
|
|
|
|
<!-- REQUIRES: That "USE_SPECULAR_MAP" is enabled and a texture named "specTex" is provided by the Actor.
|
|
The Alpha channel of the texture defines the amount of self-illumination, with
|
|
transparency being no self-illumination.
|
|
COMMENT: Full self-illumination means the screen colour of a pixel is equal to its baseTex value.
|
|
EFFICIENCY: This is a very cheap effect, however it also requires the calculation of specular. -->
|
|
<!--define name="USE_SELF_LIGHT" value="1"/-->
|
|
|
|
<!-- REQUIRES: Actor must provide a texture named "aoTex", where the R channel is the Ambient Occlusion.
|
|
The model must provide a second, non-overlapping set of UV coordinates.
|
|
COMMENT: The texture is combined using a multiply blend of (2 * ao * baseTex). -->
|
|
<!--define name="USE_AO" value="1"/-->
|
|
|
|
<!-- Settings for effects above:
|
|
First value: Normal mapping intensity.
|
|
Second value: Specular power.
|
|
Third value: Parallax scale.
|
|
Fourth value: AO amount. -->
|
|
<uniform name="effectSettings" value="1.0 50.0 0.0075 0.75"/>
|
|
</material>
|