Sliding Skin, UV from mesh to point position

Plugins linking to this thread: (hide)

Sliding SkinAuthor: Anto Matkovic
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

Post Reply
User avatar
Mathaeus
Posts: 1778
Joined: 08 Jun 2009, 21:11
Location: Zagreb, Croatia
Contact:

Sliding Skin, UV from mesh to point position

Post by Mathaeus » 25 Oct 2009, 10:32

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]

Image

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.

Image

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.

User avatar
druitre
Posts: 471
Joined: 25 Jun 2009, 23:35

Re: Sliding Skin, UV from mesh to point position

Post by druitre » 25 Oct 2009, 14:14

Thank you!

wailingmonkey
Posts: 14
Joined: 21 Aug 2009, 07:49

Re: Sliding Skin, UV from mesh to point position

Post by wailingmonkey » 25 Oct 2009, 23:17

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. :)

User avatar
Mathaeus
Posts: 1778
Joined: 08 Jun 2009, 21:11
Location: Zagreb, Croatia
Contact:

Re: Sliding Skin, UV from mesh to point position

Post by Mathaeus » 26 Oct 2009, 00:34

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.

User avatar
ace63
Posts: 176
Joined: 07 Jun 2009, 12:30

Re: Sliding Skin, UV from mesh to point position

Post by ace63 » 26 Oct 2009, 16:52

This looks REALLY cool, thank you very much, I will try it out.

slux
Posts: 2
Joined: 13 Dec 2009, 13:47

Re: Sliding Skin, UV from mesh to point position

Post by slux » 13 Dec 2009, 14:11

Wow, this is looking really great. So many great tools coming from you lately, thanks for all the hard work \m/
I will need to look at it more closely but my ICE knowledge may need some upgrade.

caledonian_tartan
Posts: 253
Joined: 17 Feb 2010, 15:13

Re: Sliding Skin, UV from mesh to point position

Post by caledonian_tartan » 10 May 2010, 14:07

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.
SI 2015 @ WIN7-64

User avatar
Mathaeus
Posts: 1778
Joined: 08 Jun 2009, 21:11
Location: Zagreb, Croatia
Contact:

Re: Sliding Skin, UV from mesh to point position

Post by Mathaeus » 10 May 2010, 14:27

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

fjg
Posts: 45
Joined: 04 Feb 2011, 17:45

Re: Sliding Skin, UV from mesh to point position

Post by fjg » 14 Jul 2012, 22:32

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?

User avatar
Mathaeus
Posts: 1778
Joined: 08 Jun 2009, 21:11
Location: Zagreb, Croatia
Contact:

Re: Sliding Skin, UV from mesh to point position

Post by Mathaeus » 14 Jul 2012, 23:19

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.

Post Reply

Who is online

Users browsing this forum: No registered users and 11 guests