1
0
Fork 0
forked from fte/fteqw
fteqw/engine/shaders/hlsl9/defaultsky.hlsl
Spoike 5b4756f3d9 Lazy GLSL loading, for faster load times.
Fixed some xim issues, for proper keyboard input under x11.
Cmake project can now work for cross compiling win32 targets.
Some other fun-but-pointless stuff.



git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5344 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-11-27 16:48:19 +00:00

48 lines
911 B
HLSL

!!samps 2
struct a2v
{
float4 pos: POSITION;
};
struct v2f
{
#ifndef FRAGMENT_SHADER
float4 pos: POSITION;
#endif
float3 vpos: TEXCOORD0;
};
#ifdef VERTEX_SHADER
float4x4 m_modelviewprojection;
v2f main (in a2v inp)
{
v2f outp;
outp.pos = mul(m_modelviewprojection, inp.pos);
outp.vpos = inp.pos.xyz;
return outp;
}
#endif
#ifdef FRAGMENT_SHADER
float e_time;
float3 e_eyepos;
sampler s_diffuse; /*diffuse*/
sampler s_fullbright; /*normal*/
float4 main (v2f inp) : COLOR0
{
float2 tccoord;
float3 dir = inp.vpos - e_eyepos;
dir.z *= 3.0;
dir.xy /= 0.5*length(dir);
tccoord = (dir.xy + e_time*0.03125);
float4 solid = tex2D(s_diffuse, tccoord);
tccoord = (dir.xy + e_time*0.0625);
float4 clouds = tex2D(s_fullbright, tccoord);
return float4((solid.rgb*(1.0-clouds.a)) + (clouds.a*clouds.rgb), 1);
}
#endif