home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
GameStar 2005 April
/
Gamestar_72_2005-04_dvd.iso
/
Dema
/
Liquidator
/
Liquidator.tma
/
data
/
materials
/
lava.fx
< prev
next >
Wrap
Text File
|
2004-12-16
|
1KB
|
56 lines
sampler2D NoiseTexture: register(s0);
sampler1D RampTexture: register(s1);
sampler2D StoneTexture: register(s2);
sampler1D AlphaTexture: register(s3);
float4 LavaColor1 : register(c0);
float4 lava(float2 TexCoord : TEXCOORD0,
float2 TexCoord1 : TEXCOORD1,
float2 TexCoord2 : TEXCOORD2) : COLOR
{
float4 fnoise = tex2D(NoiseTexture, TexCoord);
fnoise = (fnoise + tex2D(NoiseTexture, TexCoord1))/2;
fnoise = tex2D(NoiseTexture, fnoise);
float4 tex = tex1D(RampTexture, fnoise);
float2 TexCoord3 = lerp(TexCoord2, fnoise, 0.175*fnoise);
float4 stone = tex2D(StoneTexture, TexCoord3);
tex = lerp(tex*1.25, stone*0.5, tex.w);
tex = (tex-0.5) *(3-tex.w)*stone + (LavaColor1-0.125)*(tex.w*3);
return tex;
}
float4 lava_alpha(float2 TexCoord : TEXCOORD0,
float2 TexCoord1 : TEXCOORD1,
float2 TexCoord2 : TEXCOORD2,
float2 TexCoord3 : TEXCOORD3) : COLOR
{
float4 fnoise = tex2D(NoiseTexture, TexCoord);
fnoise = (fnoise + tex2D(NoiseTexture, TexCoord1))/2;
fnoise = tex2D(NoiseTexture, fnoise);
float4 tex = tex1D(RampTexture, fnoise);
float2 TexCoord4 = lerp(TexCoord2, fnoise, 0.175*fnoise);
float4 stone = tex2D(StoneTexture, TexCoord4);
tex = lerp(tex*1.25, stone*0.5, tex.w);
tex = (tex-0.5) *(3-tex.w)*stone + (LavaColor1-0.125)*(tex.w*3);
tex.a = tex1D(AlphaTexture, TexCoord3).a;
return tex;
}