Yes you can use shaders with A7 Pro.

First.

Have your game ready, so you can run it.
Run your game.

--------------
At this point any errors that occur, are from this..
----------------

Now.

Somewhere under the Vars, Defines, String, Panels place this:

Code:
material mtl_toon
{
	skin1=bmp_toonlookup;
	effect =
	"
	matrix matWorldViewProj;
	matrix matWorld;vector vecSunDir;
	texture entSkin1;texture mtlSkin1;
	technique t0{
		pass p0 // shade it
		{
			zwriteenable= true;
			zenable = true;
			Texture[0]=<mtlSkin1>;
			ColorOp[0]=Modulate;
			ColorArg1[0]=Texture;
			ColorArg2[0]=Texture;
			AddressU[0]=Clamp;
			AddressV[0]=Clamp;
			AddressW[0]=Clamp;
			TexCoordIndex[0]=0;
			Texture[1]=<entSkin1>;
			ColorOp[1]=Modulate;
			ColorArg1[1]=Texture;
			ColorArg2[1]=Current;
			TexCoordIndex[1]=1;
			VertexShaderConstant[0] = <matWorldViewProj>;
			VertexShaderConstant[4] = <matWorld>;
			VertexShaderConstant[7] = <vecSunDir>; 

			VertexShader =		asm
			{
				vs_1_0
				dcl_position  v0
				dcl_normal    v3
				dcl_texcoord0 v7
				dcl_texcoord1 v8
				mov oT2.xy, v7
				dp4 oPos.x, c0, v0
				dp4 oPos.y, c1, v0
				dp4 oPos.z, c2, v0
				dp4 oPos.w, c3, v0
				dp3 r0.x, c4.xyz, v3.xyz
				dp3 r0.y, c5.xyz, v3.xyz
				dp3 r0.z, c6.xyz, v3.xyz
				dp3 oT0.x, r0.xyz, -c7.xyz
				mov oT1.xyz, v8
			};
		}
		pass p1 // ink it
		{
			CULLMODE=CW;
			vertexShaderConstant[0]=<matWorldViewProj>;
//---------------------HERE IT IS!!!!
			vertexShaderConstant[16]=0.5; // outline thickness
//-------------RIGHT HERE!
			vertexShader =		asm
			{
				vs_1_0
				dcl_position v0
				dcl_normal v3
				dcl_texcoord v7
				mov r0,v0
				mul r1,c16.x,v3
				// Scale the normal
				add r0.xyz,r0.xyz,r1.xyz
				m4x4 oPos,r0,c0
				// Transorm position to clip space
				mov oD0, c0
				mov r0,c0
			};
		}
	}
	";
}



I assume thats the shader code that you are using.
I also use this one.


In the Wiki, you see this first.

Quote:

vertexShaderConstant[16]=0.5; // outline thickness


Its very missleading... since I always thought that I was to put it in the script too...


But you DONT! wink

Its inside the mtl_toon material action above(that I posted), Take a look.
Thats what will change the outline thickness.

After that, all you do is add my.material = to the action like this:


Code:
action ent_player{
	
	player = me;
	my.shadow= on;
	my.fat = off;
	my.narrow = off;
	my.polygon = off;
	
//////-----CHECK IT OUT
	my.material = mtl_toon;

}




Thats all.


I bet thats why it wasn't working for you.

EDIT:

You also need this with your bmaps

Code:
bmap bmp_toonlookup=<toonlookup.tga>;



and you also need the small black to white image called toonlookup7yrs.

Rename it to toonlookup

And using photoshop (or some other program like it since paint cant do it) and change the file type from either BMP or PNG Whatever you saved it as from the wiki.
It must be in your project folder.

Now, thats all.

Last edited by DevoN; 08/11/09 22:48.

A8 Pro 8.45.4
YouTube: Create Games For Free
Free Resources: www.CGForFree.com