Re: Anyone done corrective shapes when SecondaryShapeModeling is not an option?
Awesome thanks raff, will mess with this today. I need to watch week 7 too! On Tue, Jun 18, 2013 at 8:16 PM, Raffaele Fragapane < raffsxsil...@googlemail.com> wrote: > 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 >>> > 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 >>
Re: Anyone done corrective shapes when SecondaryShapeModeling is not an option?
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 >>> 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! > --
Re: Anyone done corrective shapes when SecondaryShapeModeling is not an option?
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 >> 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!
Re: Anyone done corrective shapes when SecondaryShapeModeling is not an option?
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 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! >
Re: Anyone done corrective shapes when SecondaryShapeModeling is not an option?
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 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!
Re: Anyone done corrective shapes when SecondaryShapeModeling is not an option?
alan all the time this is how i do it duplicate the mesh twice 1. neutral pose 2. posed where it needs the corrective shape 3. duplicate 2 again create the corrective shape on # 2 mesh. You now have a mesh that is posed, and has the fix applied create the corrective shape on it. you now have 1. neutral pose 2. posed mesh with corrective shape on it 3. pose shape that needs corrective shape now apply the #2 mesh as a shape to the neutral pose mesh, set it to weight of 1 now apply the #3 mesh as a shape to the neutral pose mesh, set it to weight -1 this effectively removes the posing, and leaves only the corrective shape, its just a vector subtraction after all. you now have the corrective shape d On Tue, Jun 18, 2013 at 7:45 AM, Sven Constable wrote: > Just a sidenote: Mr. Smith, your tutorials are the most charming ones > regarding softimage I saw in the last 15 years. It's just my professional > opinion. :) Its pure joy to listen to them. I really like the kind of > understatement that is always present in your videos. And of course the > information. The videos about "procedural UVing" or something (with > particles?) were great. I just wanted to say this in the mailing list > rather > than post a comment a a video platform > Thank you for the effort, Sir! > > sven > > -Original Message- > From: softimage-boun...@listproc.autodesk.com > [mailto:softimage-boun...@listproc.autodesk.com] On Behalf Of Bk > Sent: Monday, June 17, 2013 23:58 > To: softimage@listproc.autodesk.com > Subject: Re: Anyone done corrective shapes when SecondaryShapeModeling is > not an option? > > See what you think of this technique > > https://vimeo.com/67402407 > > I find the results are far more natural looking and easier to manage and > edit. I doubt I'll ever use that shapes-before-bones method again for > correctives on limbs. > > > On 17 Jun 2013, at 20:27, Alan Fregtman 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 > > > >
RE: Anyone done corrective shapes when SecondaryShapeModeling is not an option?
Just a sidenote: Mr. Smith, your tutorials are the most charming ones regarding softimage I saw in the last 15 years. It's just my professional opinion. :) Its pure joy to listen to them. I really like the kind of understatement that is always present in your videos. And of course the information. The videos about "procedural UVing" or something (with particles?) were great. I just wanted to say this in the mailing list rather than post a comment a a video platform Thank you for the effort, Sir! sven -Original Message- From: softimage-boun...@listproc.autodesk.com [mailto:softimage-boun...@listproc.autodesk.com] On Behalf Of Bk Sent: Monday, June 17, 2013 23:58 To: softimage@listproc.autodesk.com Subject: Re: Anyone done corrective shapes when SecondaryShapeModeling is not an option? See what you think of this technique https://vimeo.com/67402407 I find the results are far more natural looking and easier to manage and edit. I doubt I'll ever use that shapes-before-bones method again for correctives on limbs. On 17 Jun 2013, at 20:27, Alan Fregtman 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 >
Re: Anyone done corrective shapes when SecondaryShapeModeling is not an option?
This is the process I've found works best for me - it's from memory as I don't have Soft at home so hopefully it's all in the right order. I have used an ICE PointRefFrame technique to try to get the rotational changes, but the result never seemed to work as well as this: 1) Move the rig from it's bind to the pose you want to correct 2) Export the mesh as an obj, store an action clip of the bind pose, the corrective pose and a preset for the envelope 3) Fix the obj 4) Back in the rig scene; import the fixed obj, give it an envelope and apply the preset so it matches the main mesh 5) Apply the corrective pose to the rig 6) Reset the Static Kinestate of the bones whilst still in the corrective pose 7) Apply the bind pose again 8) Export the mesh as an obj, then bring it in later to use as a standard shape in whatever system you use A bit convoluted, but such is the way of these things. :) On 17 June 2013 22:57, Bk wrote: > See what you think of this technique > > https://vimeo.com/67402407 > > I find the results are far more natural looking and easier to manage and > edit. I doubt I'll ever use that shapes-before-bones method again for > correctives on limbs. > > > On 17 Jun 2013, at 20:27, Alan Fregtman 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 > > > >
Re: Anyone done corrective shapes when SecondaryShapeModeling is not an option?
See what you think of this technique https://vimeo.com/67402407 I find the results are far more natural looking and easier to manage and edit. I doubt I'll ever use that shapes-before-bones method again for correctives on limbs. On 17 Jun 2013, at 20:27, Alan Fregtman 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 >
Anyone done corrective shapes when SecondaryShapeModeling is not an option?
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