Getting strands to stay in place on a deformed object...

Discussions about SOFTIMAGEs© Interactive Creative Environment©
User avatar
wacom
Posts: 53
Joined: 26 Apr 2010, 17:32
Skype: gklindt
Location: Oregon

Getting strands to stay in place on a deformed object...

Post by wacom » 26 Jun 2010, 00:41

Does anyone know how to get strands to "stick" in place on a deformed object? When I deform the object (like with say a lattice or envelope) they're position is jitter-ed over the surface. I've noticed several other people have brought this up...but there seems to be no solution.

Kind of rules out using strands for fur or anywhere besides a stable cranium!
GIDEONKLINDT.COM

User avatar
Hirazi Blue
Administrator
Posts: 5113
Joined: 04 Jun 2009, 10:15

Re: Getting strands to stay in place on a deformed object...

Post by Hirazi Blue » 26 Jun 2010, 06:57

Forgive me, if you've already tried this,
as I must admit I haven't, but the User's Guide mentions
plugging a "Get Particle Emit Location" into a "Set Particle Position" into it's own branch of the ICE Tree....
You can find it here:

Code: Select all

XSIDocs: ICE Particle Simulations > ICE Particles > Creating ICE Particle Emissions # Animated Particle Emitters
or online (scroll down to where it says "Animated Particle Emitters")
;)
Stay safe, sane & healthy!

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

Re: Getting strands to stay in place on a deformed object...

Post by Mathaeus » 26 Jun 2010, 09:23

Hi

You can use, or build something like : this one .There is 'reinterpret location to new geometry' node inside thar utilizes another, reference mesh. Node hopefully works with earlier Softimage versions too.

The solution from mentioned link , it works only with simulated ICE tree. ICE seems to be unable to recognize from where from stack the deformations is coming (it sounds logical, btw). In case of simulated ICE tree, it's able to take the deformation offset between the frames, but with un simulated tree, it can't.

There are another solutions, UV to location if you use NURBS, or trickery with 'position from UV, that I did for emitting fur in Kristinka Hair nodes.

But again, in case of un simulated tree, you have to use some additional creativity. 'Ordinary' emission just doesn't work.

Cheers

User avatar
Hirazi Blue
Administrator
Posts: 5113
Joined: 04 Jun 2009, 10:15

Re: Getting strands to stay in place on a deformed object...

Post by Hirazi Blue » 26 Jun 2010, 09:52

Oops, I misunderstood the problem completely, yet again... x_x
Sorry... :ymblushing:
Stay safe, sane & healthy!

User avatar
wacom
Posts: 53
Joined: 26 Apr 2010, 17:32
Skype: gklindt
Location: Oregon

Re: Getting strands to stay in place on a deformed object...

Post by wacom » 26 Jun 2010, 10:48

Hey, thank you both for the help- I really appreciate it. I'll look into those solutions Mathaeus and Hirazi, no worries as my question was not worded in the best way possible!

Thanks again for each of your help- I'll let you know how it goes.
GIDEONKLINDT.COM

User avatar
wacom
Posts: 53
Joined: 26 Apr 2010, 17:32
Skype: gklindt
Location: Oregon

Re: Getting strands to stay in place on a deformed object...

Post by wacom » 27 Jun 2010, 19:24

Well, I found for my use that using hair instancing was going to be more predictable, though rendering is not quite as fast (I'm not sure why, but using what looks to be similar settings doesn't yield quite the same speed). It's also not quite as flexible either, but it will work for my needs.

Thank you for the UV tip though Mathaeus, I think that makes sense to me, and I'll have to look into generating things based on UV space. This must be the way the hair in SI works too correct? Sorry, I'm new to all of the 3D maths etc. so I'm not always sure I'm 100% correct in terms of my understanding!

Thank You,
Gideon
GIDEONKLINDT.COM

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

Re: Getting strands to stay in place on a deformed object...

Post by Mathaeus » 27 Jun 2010, 23:59

wacom wrote: and I'll have to look into generating things based on UV space. This must be the way the hair in SI works too correct?
That I know (maybe I'm completely wrong), it doesn't. UV and tangent map are used only for instances, if you add these maps. Initially, XSI hair is using barycentric (relative) coordinates between the emitter's vertices for basic emission, guides are oriented along point normals. Hair is then interpolated between the guides, and that's all. In terms of yaw, pitch and roll, there is yaw and pitch, but there is no roll.

I think that math for creating these orientations really isn't complex, and the same pattern can be used in many other cases. For my fur stuff, firstly, emitter is 'flattened' to conversion from it's 2d UV space to 3d. Then two Polygon Reference Frame attributes, first from flattened mesh as a reference, second from deformed mesh, were used.

Similar to envelope operator, you have two matrices (reference pose and deformation), first is inverted and multiplied by second. Then you multiply some 3d vectors with result of these matrices.

Anyway, I agree that exercise of this kind, doesn't fit very well if you faced with deadline :)