Hey Chris,

Here's an oversimplification, if it helps you or others visualize it better:


   1. For every point on the source mesh, find the closest triangle our
   target's mesh our point fits in -- a quad has 2 triangles, of course, so
   one of them.

   2. Imagine that triangle's edges are tightropes, and you start taking a
   turn walking on each rope... you take steps and make your way to the
   closest you can get to the point of interest while staying on that rope.

   3. When you're the closest you can be, you mark it with a napkin where
   you write the number of steps it took divided by a known number of steps it
   takes to walk that rope. The result is your "weight" for that rope, or
   edge. . Repeat for the other two "ropes".

   4. Now you know that, let's say, your point of interest is 0.25 of rope
   A, 0.7 of rope B and 0.15 of rope C. (0.25, 0.7, 0.15) are your barycentric
   coordinates, more or less.

   5. Now, if we want to know shapekey data (3d vectors per actual vertex)
   from this arbitrary point in the target mesh triangle, how do we compute
   it? Well, using those same weights from before we use interpolation, which
   is just a fancy word for mixing up the values from that triangle's vertices
   using each weight, and the result would be our new shape vector.


Make more sense now? (I hope it didn't come off condescending; not my
intent.)
Cheers,

   -- Alan


On Tue, Jun 26, 2012 at 9:43 AM, Chris Covelli <kylevar...@gmail.com> wrote:

> Thanks Alan,
>
> That link you provided is a bit over my head, but I get what you're saying.
>
>
> On Mon, Jun 25, 2012 at 3:42 PM, Alan Fregtman <alan.fregt...@gmail.com>wrote:
>
>> Well GATOR is not doing a 1:1 copy of the shapes, it's reinterpreting
>> every point by the transformation of each individual closest triangle using
>> pointlocator/locations magic, a.k.a. barycentric 
>> coordinates<http://alokgandhi.com/blog/2012/05/28/barycentric-coordinates-and-the-magic-of-locations/>
>>  sorcery math.
>>
>> Unless your meshes are completely and absolutely the same volume there is
>> always a chance of slight error, unfortunately.
>>
>>
>> On Mon, Jun 25, 2012 at 11:00 AM, Chris Covelli <kylevar...@gmail.com>wrote:
>>
>>> Hey Guys,
>>>
>>> Lets say I have a perfectly symmetrical mesh ( along the X axis ) and I
>>> build a few blendshapes for that mesh that are also perfectly symmetrical.
>>>
>>> Next, lets say I GATOR those blendshapes onto a different but also
>>> perfectly symmetrical mesh ( a lower/higher res version that has the same
>>> basic shape but different topology, for instance ).
>>>
>>> I've noticed that every time I do this the shapes on the new mesh end up
>>> being slightly asymmetrical.
>>>
>>> Anyone know why this happens?  This is more of a curiosity rather than a
>>> problem I need fixed as I have a pretty quick method for getting the shapes
>>> symmetrical again without changing the topology.
>>>
>>>
>>> Thanks!!
>>>
>>> -Chris
>>>
>>> --
>>> Chris Covelli
>>> http://kylevargas.net/
>>>
>>
>>
>
>
> --
> Chris Covelli
> http://kylevargas.net/
>

Reply via email to