33 lines
1.0 KiB
Plaintext
33 lines
1.0 KiB
Plaintext
{
|
|
parms {
|
|
stageSort sortTrans
|
|
}
|
|
state {
|
|
blend GL_ONE GL_ONE
|
|
depthFunc GL_LEQUAL
|
|
depthmask
|
|
polygonOffset
|
|
twosided
|
|
}
|
|
hlsl_vp {
|
|
result.position.x = dot4( vertex.position, $mvpMatrixX );
|
|
result.position.y = dot4( vertex.position, $mvpMatrixY );
|
|
result.position.z = dot4( vertex.position, $mvpMatrixZ );
|
|
result.position.w = dot4( vertex.position, $mvpMatrixW );
|
|
|
|
result.texcoord0.x = dot4( vertex.texcoord0, $sMatrix );
|
|
result.texcoord0.y = dot4( vertex.texcoord0, $tMatrix );
|
|
result.texcoord0.zw = _float2( 0.0 );
|
|
|
|
result.color.xyz = saturate( swizzleColor( vertex.color ).xyz + _float3( 0.75 ) );
|
|
result.color.xyz *= $exposure.xyz;
|
|
result.color.w = $color.w;
|
|
}
|
|
hlsl_fp {
|
|
half2 tc = ComputeTransAtlasCoord( fragment.texcoord0.xy, $transAtlasScaleBias );
|
|
// Blend in edge fading and shadow contribution from vertex color
|
|
result.color = tex2D( $transMap, tc ) * fragment.color;
|
|
// FIXME: smoke system additive fading not currently set up properly
|
|
//result.color *= fragment.color.w;
|
|
}
|
|
} |