Have you applied the "terrainobject" action to the terrain? All objects that are in water must have this action for clipping underwater in the mirror view.

[EDIT]: use this new action:
Code:
MATERIAL terrain_clipping //for clipping the terrain underwater in the mirror view

{
event = render_event();

flags = enable_view;

effect=
"

float4x4 matWorldViewProj: register(c0);

texture entSkin1;

vector vecSkill41;

float1 mtlSkill1;

struct VS_OUTPUT
{
float4 Pos: POSITION;
float2 texCoord: TEXCOORD0;
float3 eyeLinear: TEXCOORD1;
};

VS_OUTPUT VS_p0(float4 Pos1: POSITION, float2 basemap: TEXCOORD0)
{
VS_OUTPUT Out;

Out.Pos = mul(Pos1, matWorldViewProj);

Out.texCoord = basemap;

Out.eyeLinear.x = Pos1.x;
Out.eyeLinear.y = Pos1.y;
Out.eyeLinear.z = Pos1.z;

return Out;
}

sampler BaseMap = sampler_state
{
texture=(entSkin1);
MAGFILTER = LINEAR;
MINFILTER = LINEAR;
MIPFILTER = LINEAR;
};

float4 PS_p0( float2 texCoord: TEXCOORD0,
float3 eyeLinear: TEXCOORD1) : COLOR
{
float4 base = tex2D(BaseMap, texCoord);

clip((eyeLinear.y-vecSkill41)*mtlSkill1);

// Output

return base * 1.2;
}
technique water
{
pass p1
{
VertexShader = compile vs_1_1 VS_p0();
PixelShader = compile ps_2_0 PS_p0();
}
}
";
}

ACTION terrainobject
{
var hoch1;
my.material = terrain_clipping;
my.nofog = on;
hoch1 = water_ent.z*0.049;
while(1)
{
my.skill41 = float(hoch1);
wait(1);
}
}



Last edited by oliver2s; 02/12/05 06:00.