init
This commit is contained in:
commit
2fe6ca2f65
1473 changed files with 251771 additions and 0 deletions
36
gamedata/shaders/r1/lmap_dt.ps.hlsl
Normal file
36
gamedata/shaders/r1/lmap_dt.ps.hlsl
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
#include "common.hlsli"
|
||||
|
||||
struct v2p
|
||||
{
|
||||
float2 tc0 : TEXCOORD0; // base
|
||||
float2 tc1 : TEXCOORD1; // lmap
|
||||
float2 tc2 : TEXCOORD2; // hemi
|
||||
float2 tc3 : TEXCOORD3; // detail
|
||||
float4 c0 : COLOR0; // c0.a *
|
||||
float4 c1 : COLOR1; // c1.a +
|
||||
float fog : FOG;
|
||||
};
|
||||
|
||||
// Pixel
|
||||
float4 main(v2p I) : COLOR
|
||||
{
|
||||
float4 t_base = tex2D(s_base, I.tc0);
|
||||
float4 t_lmap = tex2D(s_lmap, I.tc1);
|
||||
|
||||
// lighting
|
||||
float3 l_base = t_lmap.rgb; // base light-map
|
||||
float3 l_hemi = I.c0 * p_hemi(I.tc2); // hemi
|
||||
float3 l_sun = I.c1 * t_lmap.a; // sun color
|
||||
float3 light = L_ambient + l_base + l_sun + l_hemi;
|
||||
|
||||
// calc D-texture
|
||||
float4 t_dt = tex2D(s_detail, I.tc3);
|
||||
float3 detail = t_dt * I.c0.a + I.c1.a;
|
||||
|
||||
// final-color
|
||||
float3 final = (light * t_base * 2.0f) * detail * 2.0f;
|
||||
final = lerp(fog_color.xyz, final, I.fog);
|
||||
|
||||
// out
|
||||
return float4(final, t_base.a);
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue