andyhebear1
02-08-2010 11:46:09
how to change select entity texture's color !
have ideas?
thanks
have ideas?
thanks
andyhebear1
02-08-2010 11:46:09
smiley80
02-08-2010 12:34:56
var tus = entityMaterial.GetTechnique(0).GetPass(0).CreateTextureUnitState();
tus.SetColourOperationEx(LayerBlendOperationEx.LBX_MODULATE, LayerBlendSource.LBS_MANUAL, LayerBlendSource.LBS_CURRENT, colour);
andyhebear1
03-08-2010 01:50:58
smiley80
03-08-2010 09:11:31
float4 main(float2 vIn : TEXCOORD0,
uniform sampler2D tex0 : TEXUNIT0,
uniform float4 newColor
) : COLOR
{
float4 weightsBW = float4(0.3, 0.59, 0.11, 0);
float4 color = tex2D(tex0, vIn);
float brightness = dot(color, weightsBW);
float4 cOut = brightness * newColor;
cOut.a = color.a;
return cOut;
}
fragment_program colorize cg
{
source colorize.cg
entry_point main
profiles ps_2_0 arbfp1
}
Pass p = entityMaterial.GetTechnique(0).GetPass(0);
p.SetFragmentProgram("colorize");
p.GetFragmentProgramParameters().SetNamedConstant("newColor", colour);
Beauty
11-08-2010 17:07:33
// create material (colour)
MaterialPtr moMaterial = MaterialManager.Singleton.Create("line_material", "debugger");
moMaterial.ReceiveShadows = false;
moMaterial.GetTechnique(0).SetLightingEnabled(true);
moMaterial.GetTechnique(0).GetPass(0).SetDiffuse(0, 0, 1, 0);
moMaterial.GetTechnique(0).GetPass(0).SetAmbient(0, 0, 1);
moMaterial.GetTechnique(0).GetPass(0).SetSelfIllumination(0, 0, 1);
moMaterial.Dispose(); // dispose pointer, not the material