Oh... hab mein Profil noch nicht geändert... Ich hab mit vorgestern ne ATI Radeon 9600 Pro gekauft... Is ja gar nicht so teuer des Ding. Mit der alten GForce MX wurde natürlich die normale Model-Textur und nicht der Shader dargestellt (--> Spiel sieht auch auch alten Karten gut aus, wenn die Oberflächen, die mit Shader ausgestettet sind, eine Textur besitzen, denn dann sind sie nicht schwarz sondern mit ihrem Skin versehen... Aber is ja eigentlich klar.
Transparent ist das Wasser leider immer noch nicht! Aber vielleicht hab ich deinen Code ja an falscher Stelle eingebaut... Hier nochmal der ganze Shader:
Code:
material mtl_ffpwater2
{
skin1=waterbump2;
skin2=envspec2;
skin3=base2;
event = mtl_ffpwater2_init;
effect = "
matrix matMtl;
texture mtlSkin1;
texture mtlSkin2;
texture mtlSkin3;
technique makewater2
{
pass p0
{
Texture[0] = <mtlSkin3>;
magFilter[0]=linear;
minFilter[0]=linear;
mipFilter[0]=linear;
TextureFactor = 80; // Alphachannel = Transparent
AlphaOp[1] = Modulate;
AlphaArg1[1] = TFactor;
AlphaArg2[1] = Current;
AlphaOp[2] = Disable;
AddressU[0]=Clamp;
AddressV[0]=Clamp;
ColorArg1[0] = Texture;
ColorOp[0] = modulate;
ColorArg2[0] = diffuse;
alphaop[0]=selectarg1;
alphaarg1[0]=texture;
texcoordindex[0]=1;
Texture[1] = <mtlSkin1>;
magFilter[1]=linear;
minFilter[1]=linear;
mipFilter[1]=linear;
ColorArg1[1] = Texture;
ColorOp[1] = bumpenvmap;
ColorArg2[1] = current;
TextureTransformFlags[1] = Count2;
TextureTransform[1] = <matMtl>;
Texcoordindex[1]=1;
Texture[2] = <mtlSkin2>;
magFilter[2]=linear;
minFilter[2]=linear;
mipFilter[2]=linear;
AddressU[2]=Clamp;
AddressV[2]=Clamp;
ColorArg1[2] = Texture;
ColorOp[2] = Add;
ColorArg2[2] = Current;
TextureTransformFlags[2] =count3 | projected;
texcoordindex[2]= cameraspaceposition | 1; // For cubemap use: cameraspacereflectionvector
}
}
technique fallback { pass p0 { } }
";
}
MfG Radolfi