http://savagelook.com/blog/away3d/away3dlite-face-linking-take-2

ok, there's my code using an ObjectContainer3D to keep the alignment
correct.  I'm guessing there's a way to do it with upAxis, but it's
beyond me until I do some 3d math studying.  Oh, and I left a little
something special for you peter ;)

On Jun 25, 11:36 am, Shawn <[email protected]> wrote:
> Yes, that is how I would have done it with parenting :)
>
> On Jun 25, 6:02 am, savagelook <[email protected]> wrote:
>
>
>
> > Well, I think your code/math is over my head for now, but I get what
> > you meant by parenting.  I put the source object and the linked
> > objects inside an ObjectContainer3D and everything works as expected.
> > This should suit my needs for now.  I've got a book on 3d math I
> > ordered a little while ago that I haven't had time to dive into yet.
> > Looks like this might be the catalyst for finally reading it.
>
> > On Jun 25, 8:22 am, savagelook <[email protected]> wrote:
>
> > > I'm looking at your code now to see how I can apply it, but what do
> > > you mean by "use parenting" to solve this problem?  I'm open to
> > > anything.
>
> > > On Jun 25, 3:59 am, Shawn <[email protected]> wrote:
>
> > > > I believe the problem is with the lookAt's upAxis. lookAt first points
> > > > the z axis at the target and then tries to align a local up axis with
> > > > the scene's Y_AXIS. So, as your faces move they keep adjusting to
> > > > match their up axes with the scene's Y_AXIS.
>
> > > > Unless you want to use parenting, the only way I know to fix this is
> > > > to use an "up object" to aim the up axis at after the lookAt has been
> > > > done. I have a test of an up object with a link to the code 
> > > > here:http://moosemouse.com/up-object-test.html
>
> > > > I have been using this for something quite different so it may not
> > > > immediately make sense to your project. But I *think* this is one way
> > > > to fix your problem. It is late so I am calling it a night, but let me
> > > > know if you would like further clarification.
>
> > > > Best,
> > > > Shawn
>
> > > > On Jun 24, 8:08 pm, savagelook <[email protected]> wrote:
>
> > > > >http://www.savagelook.com/demos/normals_align/sandbox.html
>
> > > > > I started on the alignment but I had a problem.  For some reason the
> > > > > planes keep rotating along the normals even after adding the lookAt()
> > > > > call when I'm updating the linked planes.  Can anyone who knows 3d
> > > > > math better than me explain why this is happening, its in the link
> > > > > above.  Thanks, its driving me nuts and I can't figure it out.
>
> > > > > On Jun 24, 12:04 pm, savagelook <[email protected]> wrote:
>
> > > > > > Shoot, I forgot to mention I didn't do the alignment yet.  I'm gonna
> > > > > > make another demo soon using planes to show the alignment part.
> > > > > > Should look pretty neat with just the planes and an invisible source
> > > > > > mesh.
>
> > > > > > On Jun 24, 10:44 am, Peter Kapelyan <[email protected]> wrote:
>
> > > > > > > Hmm it doesn't seem aligned to the face (those things should be 
> > > > > > > turning too,
> > > > > > > no?).
>
> > > > > > > On Thu, Jun 24, 2010 at 9:00 AM, savagelook 
> > > > > > > <[email protected]>wrote:
>
> > > > > > > >http://savagelook.com/blog/away3d/away3dlite-normals-and-face-linking
>
> > > > > > > > normals and face linking in away3dlite.  The face linking is 
> > > > > > > > not a
> > > > > > > > rolled up class like FaceLink in Away3D since the modifications 
> > > > > > > > were
> > > > > > > > minimal.  I did make changes to Face.as to include a normal and 
> > > > > > > > center
> > > > > > > > at creation time, so as long as you don't deform the mesh, 
> > > > > > > > everything
> > > > > > > > should work.  If you do deform the mesh (like with as3mod or 
> > > > > > > > manually)
> > > > > > > > you would just need to recalculate the normal and center for 
> > > > > > > > each face
> > > > > > > > affected.
>
> > > > > > > > One note, katopz mentioned that you could access a face's 
> > > > > > > > vertices
> > > > > > > > through face.mesh.vertices, but I never got around to trying 
> > > > > > > > that.  By
> > > > > > > > doing that and maintaining your own vectors of face centers and
> > > > > > > > normals, you could create this face linking code without making
> > > > > > > > changes to Face.as, if you were so inclined.
>
> > > > > > > > On Jun 23, 11:37 am, savagelook <[email protected]> 
> > > > > > > > wrote:
> > > > > > > > > Thanks for the insights katopz.
>
> > > > > > > > > For anyone interested I have just got face linking (on 
> > > > > > > > > steroids)
> > > > > > > > > working in lite.  All credit goes to the original FaceLink 
> > > > > > > > > author as
> > > > > > > > > 98% is just copied code from there.  The rest is just minor
> > > > > > > > > computational changes using Vector3D in the absence of 
> > > > > > > > > Number3D.  The
> > > > > > > > > code I have now requires minor changes to Face.as, but I'm 
> > > > > > > > > going to
> > > > > > > > > see if I can also do it without changing the source and 
> > > > > > > > > maintain a
> > > > > > > > > good framerate.  I'll post it up once I have it all ironed 
> > > > > > > > > out.
>
> > > > > > > > > On Jun 22, 3:38 am, katopz <[email protected]> wrote:
>
> > > > > > > > > > Hey guys
>
> > > > > > > > > > it's for speed reason, dot access is slower, so private 
> > > > > > > > > > _vertices is
> > > > > > > > just
> > > > > > > > > > bypass that dot and acting like referrer, you can saw 
> > > > > > > > > > bypass like this
> > > > > > > > every
> > > > > > > > > > where in lite libs
>
> > > > > > > > > > if you really want to access vertices you can use 
> > > > > > > > > > mesh.vertices and
> > > > > > > > provide
> > > > > > > > > > faceIndex for each face, or mesh.faces[index]
>
> > > > > > > > > > for normal comment out there is just under development for 
> > > > > > > > > > light
> > > > > > > > somehow,
> > > > > > > > > > it's not in my field btw
>
> > > > > > > > > > hth
>
> > > > > > > > > > On 22 June 2010 14:10, Michael Iv <[email protected]> 
> > > > > > > > > > wrote:
>
> > > > > > > > > > > I talked to Rob Bateman about this issue a few weeks ago 
> > > > > > > > > > > in relation
> > > > > > > > to
> > > > > > > > > > > another class. He said that some properties became 
> > > > > > > > > > > private in order
> > > > > > > > to not
> > > > > > > > > > > be exposed for a regular user .(Still don't understand a 
> > > > > > > > > > > reason for
> > > > > > > > > > > this).But you can still access most of these using arcane 
> > > > > > > > > > > namespace.
>
> > > > > > > > > > > On Tue, Jun 22, 2010 at 6:56 AM, savagelook <
> > > > > > > > [email protected]>wrote:
>
> > > > > > > > > > >> While I'm still hoping for answers to my questions, I 
> > > > > > > > > > >> wanted to note
> > > > > > > > > > >> that I uncommented the normals code in the faces in 
> > > > > > > > > > >> away3dlite and
> > > > > > > > it
> > > > > > > > > > >> works well.  I also was able to use it to put basic face 
> > > > > > > > > > >> linking
> > > > > > > > > > >> functionality into lite.  I'll post it up on my blog 
> > > > > > > > > > >> soon if any is
> > > > > > > > > > >> interested.
>
> > > > > > > > > > >> On Jun 21, 11:33 am, savagelook 
> > > > > > > > > > >> <[email protected]>
> > > > > > > > wrote:
> > > > > > > > > > >> > Also, why are the vertices of faces now private with 
> > > > > > > > > > >> > no getters or
> > > > > > > > > > >> > setters?  Why were mapping coordinates used to 
> > > > > > > > > > >> > calculate the
> > > > > > > > normals
> > > > > > > > > > >> > instead of the vertices like in Away3D 3.x?
>
> > > > > > > > > > >> > On Jun 21, 11:09 am, savagelook 
> > > > > > > > > > >> > <[email protected]>
> > > > > > > > wrote:
>
> > > > > > > > > > >> > > I would also like to know why the normals are 
> > > > > > > > > > >> > > commented out in
> > > > > > > > > > >> > > away3dlite, as of the latest trunk revision (2613)?  
> > > > > > > > > > >> > > In the mean
> > > > > > > > time
> > > > > > > > > > >> > > I'm going to use them and see if they work as 
> > > > > > > > > > >> > > expected.
>
> > > > > > > > > > >> > > On May 3, 1:33 am, Michael Iv 
> > > > > > > > > > >> > > <[email protected]> wrote:
>
> > > > > > > > > > >> > > > You are right , I just like to keep things sorted 
> > > > > > > > > > >> > > > as much as
> > > > > > > > > > >> possible .
> > > > > > > > > > >> > > > Actually I thought also about Vertex Vectors , but 
> > > > > > > > > > >> > > > then
> > > > > > > > desired to
> > > > > > > > > > >> try this
> > > > > > > > > > >> > > > out .
> > > > > > > > > > >> > > > v1.normalize x2 IS TYPING MISTAKE   :)
> > > > > > > > > > >> > > > Why they commented normal?
>
> > > > > > > > > > >> > > > Thanks For Help
>
> > > > > > > > > > >> > > > On Mon, May 3, 2010 at 5:24 AM, Ken Railey <
> > > > > > > > [email protected]>
> > > > > > > > > > >> wrote:
> > > > > > > > > > >> > > > > So using the texture coordinates is a bit of an 
> > > > > > > > > > >> > > > > unorthodox
> > > > > > > > > > >> approach.  I
> > > > > > > > > > >> > > > > would take the cross product of two face edges 
> > > > > > > > > > >> > > > > and normalize
> > > > > > > > that.
> > > > > > > > > > >>  Beyond
> > > > > > > > > > >> > > > > that, I am not sure why to are normalizing v1 
> > > > > > > > > > >> > > > > twice (or even
> > > > > > > > once,
> > > > > > > > > > >> just skip
> > > > > > > > > > >> > > > > it).  Also, that call to new Vector3D() when 
> > > > > > > > > > >> > > > > initializing
> > > > > > > > normVect
> > > > > > > > > > >> is
> > > > > > > > > > >> > > > > wasted, since it gets overwritten on the next 
> > > > > > > > > > >> > > > > line.
>
> > > > > > > > > > >> > > > > Also, after a quick glance at svn it seems like 
> > > > > > > > > > >> > > > > the Face
> > > > > > > > class had
> > > > > > > > > > >> a normal
> > > > > > > > > > >> > > > > at some point that is just commented out.  Maybe 
> > > > > > > > > > >> > > > > try using
> > > > > > > > that?
>
> > > > > > > >http://code.google.com/p/away3d/source/browse/trunk/fp10/Away3DLite/s...
>
> > > > > > > > > > >> > > > > On Sun, May 2, 2010 at 4:38 PM, Michael Iv <
> > > > > > > > [email protected]>
> > > > > > > > > > >> wrote:
>
> > > > > > > > > > >> > > > >> Hi Guys , I was looking for Normal Face Vector 
> > > > > > > > > > >> > > > >> in Lite and
> > > > > > > > found
> > > > > > > > > > >> none . I
> > > > > > > > > > >> > > > >> tried to write my own . From my check It seems 
> > > > > > > > > > >> > > > >> working ...
> > > > > > > > But I
> > > > > > > > > > >> would like
> > > > > > > > > > >> > > > >> to get a confirmation from Math
> > > > > > > > > > >> > > > >> experts here  .
> > > > > > > > > > >> > > > >> I used the tuvs to create 2 vectors on the Face 
> > > > > > > > > > >> > > > >> plane, then
> > > > > > > > did
> > > > > > > > > > >> cross
> > > > > > > > > > >> > > > >> product . Was that right ?
>
> > > > > > > > > > >> > > > >> Here is the code:
> > > > > > > > > > >> > > > >> var face:Face=sp.faces[45];
> > > > > > > > > > >> > > > >>                 var v1:Vector3D=new
> > > > > > > > > > >> Vector3D(face.t0,face.u0,face.v0);
> > > > > > > > > > >> > > > >>                 var v2:Vector3D=new
> > > > > > > > > > >> Vector3D(face.t1,face.u1,face.v1);
> > > > > > > > > > >> > > > >>                ...
>
> read more »

Reply via email to