Actually:
"but instead of using one transform for the whole set, those vectors are
saved after a local transform for each point is obtained"
You will need to test yourself. The principle is what I describe, but I
don't remember if Soft saves the transformed vectors or uses the transforms
at the end of the process and leaves the displacement vector otherwise
unaffected before then.

It's easy enough to test with X, Y and Z aligned unit vectors in the shapes
and a deforming mesh. I'm quite, but not 100% positive they are
pre-transformed when saved, but it's been a long time since I checked :p


On Tue, Jun 18, 2013 at 10:13 PM, Raffaele Fragapane <
raffsxsil...@googlemail.com> wrote:

> I think I go over it in week 7 actually, and I know you do have it already
> so not like I'm peddling :p
>
> But in terms of shape animation, you have three modes in Softimage.
> Global and Object are fairly self explanatory in how the displacement
> vector that moves one base point to its target shape is oriented. If shapes
> happen before other deformations, those are fine.
>
> However, if you save a displacement vector moving a point on the top of a
> head by one unit in Y, oriented to the object, when the envelope bends that
> head forward and you apply the shape AFTER the envelope, you are left with
> a stray point still moving in object Y.
>
> Local relative shapes in Soft still save a displacement vector like the
> other modes, but instead of using one transform for the whole set, those
> vectors are saved after a local transform for each point is obtained, so
> that if you move a set of points, that vector multiplied by the transform
> of each point will still produce a displacement similar to the one intended.
>
> Now, points don't have a full transform, they have a position, and
> possibly a normal and a set of edges coming off it, so you have to figure
> out a coherent, repeatable (after points move) transform with those.
>
> AFAIK Soft uses a simple system, Normal = Y axis, first edge projected on
> the normal plane then normalized = X axis, the cross product between the
> two (with the right handedness and normalized again for good measure)
> produces the Z. You can then transform your displacement in object space by
> the inverse of that transform, and it will become "point neutral" in a way,
> at least for storage.
> When time comes to re-apply it, after the mesh has deformed, you re-derive
> that point's transform the same way, and multiply that vector by it, and it
> will be "mesh relative".
>
> Of course it comes with fringe cases (IE: first edge aligned to the
> normal, resulting in a 0 vector for X), but those fringe cases would
> normally imply someone who modelled, or subsequently deformed the mesh
> needs to be chemically castrated ASAP, lest they have kids just as stupid.
>
>
>
>
> On Tue, Jun 18, 2013 at 9:54 PM, Enrique Caballero <
> enriquecaball...@gmail.com> wrote:
>
>> raff thats really interesting and explains why in some of my shapes my
>> method doesn't work. properly
>>
>> *(normal - normal x 1st edge - previous axis x normal)*
>>
>> could i ask you to go into more detail on this please.
>>
>>
>> On Tue, Jun 18, 2013 at 12:02 PM, Raffaele Fragapane <
>> raffsxsil...@googlemail.com> wrote:
>>
>>> Duplicate mesh twice, fix one, subtract point pos of one from the other,
>>> freeze, transfer frozen ice attributes to original mesh.
>>> Works fine for world and object. For component relative (equivalent to
>>> local) it's a bit trickier as you will have to transform the resulting
>>> vector (object space) by the inverse of the component transform (normal -
>>> normal x 1st edge - previous axis x normal), and then transform it by the
>>> component transform on the mesh it's applied to, but can still be done.
>>>
>>> Corrective shapes are best done in ICE :p
>>>
>>>
>>> On Tue, Jun 18, 2013 at 5:27 AM, Alan Fregtman 
>>> <alan.fregt...@gmail.com>wrote:
>>>
>>>> Hey guys,
>>>>
>>>> I'm curious if anyone has already tackled the problem of creating a
>>>> corrective shape (that is, a shape difference in a pose that has been
>>>> readjusted to be relative to the neutral character pose) when
>>>> SecondaryShapeModeling isn't viable?
>>>>
>>>> If you use classic envelopes and the ClusterShapeCombiner, you can make
>>>> adjustments in SecondaryShape mode and store a shape that is automatically
>>>> adjusted to the neutral pose for you, and that's cool, but if you have
>>>> anything much fancier, it doesn't do the neutralization right.
>>>>
>>>> I'm contemplating perhaps storing the shape vector difference relative
>>>> to the PointReferenceFrame matrices; maybe that'll do it. Any other/better
>>>> ideas?
>>>>
>>>> Cheers,
>>>>
>>>>    -- Alan
>>>>
>>>>
>>>
>>>
>>> --
>>> Our users will know fear and cower before our software! Ship it! Ship it
>>> and let them flee like the dogs they are!
>>>
>>
>>
>
>
> --
> Our users will know fear and cower before our software! Ship it! Ship it
> and let them flee like the dogs they are!
>



-- 
Our users will know fear and cower before our software! Ship it! Ship it
and let them flee like the dogs they are!

Reply via email to