Sliding Skin, UV from mesh to point position
Plugins linking to this thread: (hide)
Sliding Skin
Sliding Skin is a set of ICE compounds that enables sliding the one mesh along surface
of another, underlying mesh. Here I've used it for skin sliding, but it can be used
anywhere where you need the sliding effect. Instead of well known approaches, such
as shrink wrapping or constraining envelope's deformers to NURBS surface, it using
UVs of underlying mesh. Transformation offset between nulls is sampled to UVs, then
it's projected back to point positions. Which means, that just one pair of controllers
can slide the mesh along whole surface of underlying mesh, without stretching. Also,
there is no need for enveloping, so you can use it together with Softimage's envelope
or any other deformation operator. Whole setup is connected to mesh only by applying
the ICE tree. Performance rely on mesh resolution, cutoff distances, viewport display
[..] Continue reading under the si-community link.
local backup: am-sliding-skin-25oct09.rar
[..] Continue reading under the si-community link.
local backup: am-sliding-skin-25oct09.rar
author site: http://www.matkovic.com / si-community thread
Sliding Skin, UV from mesh to point position
Hi all,
Sliding Skin is a set of ICE compounds that enables sliding the one mesh along surface of another, underlying mesh. Here I've used it for skin sliding, but it can be used anywhere where you need the sliding effect. Instead of well known approaches, such as shrink wrapping or constraining envelope's deformers to NURBS surface, it using UVs of underlying mesh. Transformation offset between nulls is sampled to UVs, then it's projected back to point positions. Which means, that just one pair of controllers can slide the mesh along whole surface of underlying mesh, without stretching. Also, there is no need for enveloping, so you can use it together with Softimage's envelope or any other deformation operator. Whole setup is connected to mesh only by applying the ICE tree.
Performance rely on mesh resolution, cutoff distances, viewport display.... what you see there, is running in real time on Quad Core machine.
Of course, movie is there only to show ICE operator - it's not complete face rig.
[flv]http://www.matkovic.com/anto/am-sliding ... oct09m.flv[/flv]
As it is for now, it using pairs of nulls. Weighting is performed automatically by UV distance to parent null, local transformation of child null is used for deformation. Moving the parent will move "center of deformation". One SlidingSkin compound can take a group of parents/controllers, then all weights can be modulated by weight map. It's possible to use multiple SlidingSkin compounds, connected to multiple overlapping groups, each with different weighting - I've used that a lot in the movie. In that case, groups are blended in additive fashion, just like Softimage Shape Keys.
For setup procedure, I've added detailed description in download. It's "common" ICE setup with a few intermediate objects, carefully selected nulls for their proper indexes in groups, taking attributes between objects, referencing to UVs.... setup is configured mainly for better performance, for allowing multiple groups of controllers, allowing weighmaps directly on performance mesh...
I would say, it really isn't for a first day of using ICE, but it should be easy to do after a few weeks of positive approach to ICE stuff.
As an side effect, there are samples for taking point positions or another ICE attributes, from UVs of mesh. That is: moving the mesh along surface of another mesh (as deformation), creating a custom particle distribution by using mesh's UVs, projecting strands along mesh UVs. I didn't sow ICE samples of this kind until now - if I reinvented the wheel here, just forget them . Actually, method is amazingly simple. For SkinSliding compounds, it's much faster to use UVs form mesh than using NURBS surfaces.
Use it at your own risk, and...
Good Luck!
Link to setups, compounds... here.
Cheers
Sliding Skin is a set of ICE compounds that enables sliding the one mesh along surface of another, underlying mesh. Here I've used it for skin sliding, but it can be used anywhere where you need the sliding effect. Instead of well known approaches, such as shrink wrapping or constraining envelope's deformers to NURBS surface, it using UVs of underlying mesh. Transformation offset between nulls is sampled to UVs, then it's projected back to point positions. Which means, that just one pair of controllers can slide the mesh along whole surface of underlying mesh, without stretching. Also, there is no need for enveloping, so you can use it together with Softimage's envelope or any other deformation operator. Whole setup is connected to mesh only by applying the ICE tree.
Performance rely on mesh resolution, cutoff distances, viewport display.... what you see there, is running in real time on Quad Core machine.
Of course, movie is there only to show ICE operator - it's not complete face rig.
[flv]http://www.matkovic.com/anto/am-sliding ... oct09m.flv[/flv]
As it is for now, it using pairs of nulls. Weighting is performed automatically by UV distance to parent null, local transformation of child null is used for deformation. Moving the parent will move "center of deformation". One SlidingSkin compound can take a group of parents/controllers, then all weights can be modulated by weight map. It's possible to use multiple SlidingSkin compounds, connected to multiple overlapping groups, each with different weighting - I've used that a lot in the movie. In that case, groups are blended in additive fashion, just like Softimage Shape Keys.
For setup procedure, I've added detailed description in download. It's "common" ICE setup with a few intermediate objects, carefully selected nulls for their proper indexes in groups, taking attributes between objects, referencing to UVs.... setup is configured mainly for better performance, for allowing multiple groups of controllers, allowing weighmaps directly on performance mesh...
I would say, it really isn't for a first day of using ICE, but it should be easy to do after a few weeks of positive approach to ICE stuff.
As an side effect, there are samples for taking point positions or another ICE attributes, from UVs of mesh. That is: moving the mesh along surface of another mesh (as deformation), creating a custom particle distribution by using mesh's UVs, projecting strands along mesh UVs. I didn't sow ICE samples of this kind until now - if I reinvented the wheel here, just forget them . Actually, method is amazingly simple. For SkinSliding compounds, it's much faster to use UVs form mesh than using NURBS surfaces.
Use it at your own risk, and...
Good Luck!
Link to setups, compounds... here.
Cheers
Last edited by Mathaeus on 25 Oct 2009, 17:18, edited 2 times in total.
-
- Posts: 14
- Joined: 21 Aug 2009, 07:49
Re: Sliding Skin, UV from mesh to point position
looks phenominal, Mathaeus! Thank you for your generosity in sharing this (once again).
It's too bad I'm in the 'first day of using ICE' category still, but perhaps this will lure me out! ;)
cheers.
It's too bad I'm in the 'first day of using ICE' category still, but perhaps this will lure me out! ;)
cheers.
Re: Sliding Skin, UV from mesh to point position
Thank you guys
Actually I meant just some basic familiarity with connecting nodes, pointing to UV properties and such. I remember this was a huge overload for my poor mind in my first days
First I had an 'elegant' version with only one compound, but this one was performance killer when it comes to layers, it was unable to separate lower and upper lips, so on.
Animating itself should be intuitive, at least I think so.
Actually I meant just some basic familiarity with connecting nodes, pointing to UV properties and such. I remember this was a huge overload for my poor mind in my first days
First I had an 'elegant' version with only one compound, but this one was performance killer when it comes to layers, it was unable to separate lower and upper lips, so on.
Animating itself should be intuitive, at least I think so.
Re: Sliding Skin, UV from mesh to point position
This looks REALLY cool, thank you very much, I will try it out.
Re: Sliding Skin, UV from mesh to point position
Wow, this is looking really great. So many great tools coming from you lately, thanks for all the hard work
I will need to look at it more closely but my ICE knowledge may need some upgrade.
I will need to look at it more closely but my ICE knowledge may need some upgrade.
-
- Posts: 253
- Joined: 17 Feb 2010, 15:13
Re: Sliding Skin, UV from mesh to point position
hi
i really like this compounds but i can't figure out how the "flat-mesh" is generated.
it's basically a flat polymesh with the shape of the source objects uvs...
maybe someone knows. i didn't find anything on the web or inside the documentation from Anto Matkovic.
i really like this compounds but i can't figure out how the "flat-mesh" is generated.
it's basically a flat polymesh with the shape of the source objects uvs...
maybe someone knows. i didn't find anything on the web or inside the documentation from Anto Matkovic.
SI 2015 @ WIN7-64
Re: Sliding Skin, UV from mesh to point position
hi,
'flat mesh' is a copy of 'sliding mesh', flat mesh has ICE tree that makes it 'flat'. 'Sliding mesh' is modeled from scratch, as a smooth surface that approximately follows face of model. It need to be smooth and close to deformed object, also it need to have UVs.
Cheers
'flat mesh' is a copy of 'sliding mesh', flat mesh has ICE tree that makes it 'flat'. 'Sliding mesh' is modeled from scratch, as a smooth surface that approximately follows face of model. It need to be smooth and close to deformed object, also it need to have UVs.
Cheers
Re: Sliding Skin, UV from mesh to point position
I'm trying to use the sliding compounds for this rig.
I can get the objects to flatten with correct uv's, but the object (tread teeth) won't stick to the ribbon mesh.
I have:
-original tread ribbon mesh to slide on (no ice tree)
-flattened UV mesh (ice tree with 'deform on chacher' compound)
-deformed mesh 'tread teeth' to slide on tread ribbon (ice tree with 'deform on mesh' compound? or 'am sliding on flat mesh' compound?)
When I look at the example (rocket ship), it seems like an older version (before making the nodes a compound), and can't figure out how
to get the 'tread teeth' to slide on the 'tread ribbon'. is there another compound I should be using?
I can get the objects to flatten with correct uv's, but the object (tread teeth) won't stick to the ribbon mesh.
I have:
-original tread ribbon mesh to slide on (no ice tree)
-flattened UV mesh (ice tree with 'deform on chacher' compound)
-deformed mesh 'tread teeth' to slide on tread ribbon (ice tree with 'deform on mesh' compound? or 'am sliding on flat mesh' compound?)
When I look at the example (rocket ship), it seems like an older version (before making the nodes a compound), and can't figure out how
to get the 'tread teeth' to slide on the 'tread ribbon'. is there another compound I should be using?
Re: Sliding Skin, UV from mesh to point position
Hi,
actually these are variations of
this one and this one
Small problem is, that internally, these compounds really aren't that much complicated, it's more about the method.
But, method is a bit.... abstract, at least on the first look.
That's a reason I never made some finished, pubic version, too much of this-to-that connections. Imho the best way would be too cook something in your way, as you'll be able to figure out what's going on, during creation.
Interface of this one is really optional ( interface = all these pairs of nulls), actually it could be any kind of deformation, envelope for example.
actually these are variations of
this one and this one
Small problem is, that internally, these compounds really aren't that much complicated, it's more about the method.
But, method is a bit.... abstract, at least on the first look.
That's a reason I never made some finished, pubic version, too much of this-to-that connections. Imho the best way would be too cook something in your way, as you'll be able to figure out what's going on, during creation.
Interface of this one is really optional ( interface = all these pairs of nulls), actually it could be any kind of deformation, envelope for example.
Who is online
Users browsing this forum: No registered users and 33 guests