3 registered members (Ayumi, Akow, AndrewAMD),
1,505
guests, and 9
spiders. |
Key:
Admin,
Global Mod,
Mod
|
|
|
Re: @Steempipe (urgent)
[Re: mk_1]
#25160
01/07/05 04:50
01/07/05 04:50
|
Joined: Dec 2003
Posts: 1,097 Maryland, USA
Steempipe
OP
Serious User
|
OP
Serious User
Joined: Dec 2003
Posts: 1,097
Maryland, USA
|
Here is the (2) texture version of the old code redone. BTW: If you want to utilize HLSL, for more flexibility, then you can modify code in this thread here. Code:
/////////////////////////////////////////////////////////// // FFP Terrain MultiTexturing Effect // // Blending (2) Textures // // By: Eric A. Hendrickson-Lambert (Steempipe) // // // 1/6/05: Update original code for MK_1 // to build with A6.31.4 & DX9.00c // //////////////////////////////////////////////////////////
//***************************************************** //** I had strange results with putting the alphamaps //** in to the HMP as entSkins. //** Just load them as mtlSkins. //*****************************************************
// RGB Channels are blank // The A channel has the blending weight (pattern) bmap blendmap = <blendmap.tga>; // Blender for Pass p1
//***************************************************** //** entSkins 1-4 are tilable textures //** Be sure to add mipmaps to them in MED //*****************************************************
var Detail_Size = 0;
function mtl_terraintex_init() {
bmap_to_mipmap(mtl.skin1);
// // Adjust the texture transform to do some tiling of the textures //
mtl.matrix11 = float(28); // default u scale mtl.matrix22 = float(28); // default v scale
}
/////////////////////////////////////////////////////////////////////// //The Material ///////////////////////////////////////////////////////////////////////
material mat_terraintex {
skin1 = blendmap;
// define a material effect string event = mtl_terraintex_init; effect = " matrix matMtl; texture mtlSkin1; // Blending map for Pass P1 texture entSkin1; // Tileable Tex texture entSkin2; // Tileable Tex /////////////////////////////////////////////////////////////////////// //The Technique ///////////////////////////////////////////////////////////////////////
technique ffp_terrain_tex { pass P0 ////////////////////////////////////////////////////// //// Lets lay the first texture down. no alpha work ////////////////////////////////////////////////////// { AlphaBlendEnable=False; AlphaTestEnable=False; Lighting = True;
zEnable=True; zWriteEnable=True; //////////////////////////////////////// // Stage 0 ///////////////////////////////////////
Texture[0] = <entSkin1>;
magFilter[0]=linear; minFilter[0]=linear; mipFilter[0]=linear; TextureTransformFlags[0] = Count2; TextureTransform[0] = <matMtl>; texcoordindex[0]=1;
ColorArg1[0] = Texture; ColorOp[0] = Modulate; ColorArg2[0] = Diffuse; AlphaOp[0]=Disable; ////////////////////////////////////// //stage 1 //////////////////////////////////////
ColorOp[1]=Disable; AlphaOp[1]=Disable; }
pass P1 ////////////////////////////////////////////////////// //// Now we blend another texture using an alphamap ////////////////////////////////////////////////////// { ////////////////////////////////////// // Stage 0 //////////////////////////////////////
// We need to enable alphablending AlphaBlendEnable=True; SrcBlend=SrcAlpha; DestBlend=InvSrcAlpha; zEnable=False; zWriteEnable=False;
Texture[0] = <mtlSkin1>;
magFilter[0]=Linear; minFilter[0]=Linear; mipFilter[0]=Linear; // // We don't want the alphamap to tile // TextureTransformFlags[0] = disable; TexCoordIndex[0]=0; ColorArg1[0] = Current; ColorOp[0] = SelectArg1; AlphaArg1[0] = Texture; AlphaOp[0]=SelectArg1;
////////////////////////////////////////////// // Stage 1 //////////////////////////////////////////////
Texture[1] = <entSkin2>; zEnable=True; zWriteEnable=True;
magFilter[1]=Linear; minFilter[1]=Linear; mipFilter[1]=Linear; TextureTransformFlags[1] = Count2; TextureTransform[1] = <matMtl>; TexCoordIndex[1]=1;
ColorArg1[1] = Texture; ColorOp[1] = Modulate; AlphaArg1[1] = Current; AlphaOp[1]=Disable; /////////////////////////////////////////////// // Stage 2 /////////////////////////////////////////////// ColorOp[2]=Disable; AlphaOp[2]=Disable; }
} // End of Technique
"; // end of the effect string
} // End of Material
/////////////////////////////////////////////////////////////////////// //The Action we assign in WED ///////////////////////////////////////////////////////////////////////
action ffp_TerrainTex { my.transparent=off; my.material = mat_terraintex;
}
|
|
|
Re: @Steempipe (urgent)
[Re: mk_1]
#25165
01/08/05 22:13
01/08/05 22:13
|
Joined: Dec 2003
Posts: 1,097 Maryland, USA
Steempipe
OP
Serious User
|
OP
Serious User
Joined: Dec 2003
Posts: 1,097
Maryland, USA
|
MK_1: Getting your code finished. Just need to add comments and things this weekend. You will have: -Blending (2) textures -Adding of dynamic lights -Diffuse Lighting from the engine -Modulating a shadowmap
|
|
|
|