Jump to content

  • Log In with Google      Sign In   
  • Create Account

Stimpy1983

Member Since 13 Jul 2012
Offline Last Active Aug 01 2012 08:55 AM

Topics I've Started

[AGAL / Stage3D] Outline / Silhouette Shader

23 July 2012 - 09:17 AM

Hi Everybody,

i search for a good Outline Shader - So that i draw the Outline of my Mesh. I don't need complete Toon Shading or things like that. Just a Outline from my Mesh.

I have found this paper:

http://blogs.aerys.i...g/#comment-1593

And i have try to implement it in AGAL, with this Result:
va0 = VertexPosition
va3 = VertexNormal
vc0 = WorldToScreenMatrix
vc4 = CameraPosition
vc20 = Constants (.y = 0.04)
 
vertexShaderAssemblerColor.assemble(Context3DProgramType.VERTEX,
	"sub vt0, va0,vc4\n" +
	"dp3 vt1, va3, vt0\n" +
	"slt vt2, vc20.x,vt1\n" +
	"mov vt3, vc20.y\n" +
	"mul vt4, vt2, va3.xyz\n" +
	"mul vt4, vt4, vt3\n" +
	"add vt5, va0, vt4\n"+
   "m44 op ,vt5 vc0\n"

fc20 = Constants,x= 0.1
fc8 = Color

Context3DProgramType.FRAGMENT,
	 "tex ft0 v1 fs0<2d,linear,repeat,linear,mipnone>\n" +  
	 "slt ft1 v4.x fc20.x\n" +
	 "mul ft2 ft1 fc8\n"

so, but there nothing happens - Or a white screen. Have somebody some cool Outline Shader or know what is wrong with my?

Greeting Stimpy

[Stage3D] Picking / Ray Intersect don't work

13 July 2012 - 03:31 AM

Hi,

i have a little Question about Ray Picking - I use the Flash API "Stage3D" where it is hard to find informations. Posted Image

After a lot of searching i dosn't find a stage solution so i adapt some opengl/directX Code, but i don't became it work.

Here is my current code:

[source lang="java"] var mX:Number = -1 + (p.x / winSize.x) * 2; var mY:Number = 1 - (p.y / winSize.y) * 2; var farPos:Vector3D = new Vector3D( mX, mY, 1.0, 1.0 ); var nearPos:Vector3D = new Vector3D( mX, mY, 0.0, 1.0 ); var mt:Matrix3D = new Matrix3D(); mt.append(getProjection()); mt.append(getView()); mt.invert(); nearPos = mt.transformVector(nearPos); farPos = mt.transformVector(farPos); nearPos.scaleBy(1.0 / nearPos.w); farPos.scaleBy(1.0 / farPos.w); var Dir:Vector3D = farPos.subtract(nearPos); Dir.normalize(); trace(nearPos.toString()); ray = new CRay(nearPos, Dir); return ray;[/source]
But when i click on some boxes on the screen the intersection never happens, or on the wrong element(everytime the same Posted Image )....

So now i don't have any idea what is wrong and i'm very frustrated. Can here somebody help me out? That were soo great!

p.s. sorry for my bad english.

Greetz

Stimpy

PARTNERS