Generating a stable sample set

68 views
Skip to first unread message

Philip Melancon

unread,
Mar 1, 2013, 2:46:15 PM3/1/13
to soft...@listproc.autodesk.com
Hi, do any of you know of a way to generate a stable surface sample set from a geometry?

What I'm trying to do is to have particles stick to a deforming surface but I want to avoid the use a simulation tree (for animation purposes). It should be a simple thing to do, but there doesn't seem to be any built in way to do it, at least none that I've found so far.

I assumed that a sample set generated in the modelling stack would either stick to the deforming geo by itself, or that we could simply create an ice tree in the animation stack that would read/write the location back to the position. It's quite frustrating to see that something as "simple" as this needs a simulated tree.
-- 
Philip Melancon
Lead crowd TD
Modus FX

Matt Lind

unread,
Mar 1, 2013, 2:52:41 PM3/1/13
to soft...@listproc.autodesk.com

Use the get closest locations node to generate PointLocator objects (or construct them manually).  The PointLocators will contain the position on the surface where the particles should stick and remain valid as the surface deforms.  This will allow you to use an ICETree instead of a simulated ICETree.

 

If the surface undergoes topology changes, then you’ll need to consider a simulation operator.

 

 

Matt

Vincent Ullmann

unread,
Mar 1, 2013, 2:50:59 PM3/1/13
to soft...@listproc.autodesk.com
You cpuld try this....
[Just guessing]

Generate a Sample Set on a Non-Deforming Geometry
Grab a "Reinterpret Location on new geo-Node" and set this PointPosition

Rob Chapman

unread,
Mar 1, 2013, 2:53:43 PM3/1/13
to soft...@listproc.autodesk.com
what? boy you are going to feel embarrassed when you turn off 'time varying' in the emit properties. 

of couse they stick to emit location in a modelling stick if you set them afterwards

Rob Chapman

unread,
Mar 1, 2013, 2:57:08 PM3/1/13
to soft...@listproc.autodesk.com
ok I'm now embarrassed for saying modelling stick instead of stack. *blush*

Steven Caron

unread,
Mar 1, 2013, 3:04:07 PM3/1/13
to soft...@listproc.autodesk.com
freeze the tree in the modeling stack and create a graph in the animation marker, get emit location -> get data "pointposition" -> set point position?

Steven Caron

unread,
Mar 1, 2013, 3:04:46 PM3/1/13
to soft...@listproc.autodesk.com
sorry, i meant... create the tree in the animation marker first... then freeze the tree in the modeling stack.

Stephen Blair

unread,
Mar 1, 2013, 3:12:03 PM3/1/13
to soft...@listproc.autodesk.com
That's what I thought, but with Emission Type = Surface the points move around as the surface deforms (even with Time Varying off).
Emission Type = Point works ok.

Vincent Ullmann

unread,
Mar 1, 2013, 3:16:54 PM3/1/13
to soft...@listproc.autodesk.com
proof of Conzept:

Works!
stick_emit.JPG

Alan Fregtman

unread,
Mar 1, 2013, 3:33:32 PM3/1/13
to XSI Mailing List
Here's another way. (See attachment.)

This is a little finicky if you go about moving operators, but if you do it at the end after your rig is done, it's alright.

What I do is have two trees, one in Modeling and one after my deformers in Animation on the same mesh, and on both trees I'm not doing anything on the mesh but in fact setting data on the cloud, even though the trees live on the mesh.

Therefore, because I'm setting this data from a particular position in the stack (of the mesh) each time, I get my pre-rigged state and my rigged/deformed state right after, always evaluating in the correct order. :)

I have attached a "live" example, which in practice is slower, as it's computing the locations constantly, and a "frozen" example. To do the frozen example, I delete my second tree temporarily, then I dug inside my compound in the Modeling tree and forced Show Values on my self.MeshLocations attribute. With the values showing, I rightclicked and did "Freeze Modeling", which froze the locations into the mesh. Then I can recreate the second tree and fetch my frozen locations. This works for as long as the topology stays the same.

One issue with this is when freezing it seems to freeze the whole stack of the pointcloud. However, this trick is still useful for successfully sticking lowres geo onto highres geo.

It's a bit hacky, but thought I'd share anyway.

   -- Alan

ICE_simulationFreeSticking_examples.zip

Philip Melancon

unread,
Mar 1, 2013, 3:59:41 PM3/1/13
to soft...@listproc.autodesk.com
Yep, hence my initial question...I'm slow but not THAT slow ;)

No virus found in this message.
Checked by AVG - www.avg.com
Version: 2012.0.2238 / Virus Database: 2641/5640 - Release Date: 03/01/13

Philip Melancon

unread,
Mar 1, 2013, 4:06:38 PM3/1/13
to soft...@listproc.autodesk.com
I'll probably use Steven's solution for this particular case, thank you all for the help!

Grahame Fuller

unread,
Mar 1, 2013, 4:08:51 PM3/1/13
to soft...@listproc.autodesk.com
That happens because the sampling is proportional to area, which changes as the object deforms. As others have mentioned, you can either freeze the emission and then use the EmitLocation to set PointPosition, or reinterpret locations from a non-deforming copy of the geometry.

In the worst case you might also need to triangulate the geometry, if extreme deformations cause polygons to get re-tesselated.

gray

From: softimag...@listproc.autodesk.com [mailto:softimag...@listproc.autodesk.com] On Behalf Of Philip Melancon
Sent: Friday, March 01, 2013 04:00 PM
To: soft...@listproc.autodesk.com
Subject: Re: Generating a stable sample set

Yep, hence my initial question...I'm slow but not THAT slow ;)
On 01/03/2013 3:12 PM, Stephen Blair wrote:
That's what I thought, but with Emission Type = Surface the points move around as the surface deforms (even with Time Varying off).
Emission Type = Point works ok.


On 01/03/2013 2:53 PM, Rob Chapman wrote:
what? boy you are going to feel embarrassed when you turn off 'time varying' in the emit properties.

of couse they stick to emit location in a modelling stick if you set them afterwards
On 1 March 2013 20:46, Philip Melancon <philip....@modusfx.com<mailto:philip....@modusfx.com>> wrote:
Hi, do any of you know of a way to generate a stable surface sample set from a geometry?

What I'm trying to do is to have particles stick to a deforming surface but I want to avoid the use a simulation tree (for animation purposes). It should be a simple thing to do, but there doesn't seem to be any built in way to do it, at least none that I've found so far.

I assumed that a sample set generated in the modelling stack would either stick to the deforming geo by itself, or that we could simply create an ice tree in the animation stack that would read/write the location back to the position. It's quite frustrating to see that something as "simple" as this needs a simulated tree.


--

Philip Melancon

Lead crowd TD

Modus FX



No virus found in this message.
Checked by AVG - www.avg.com<http://www.avg.com>
winmail.dat
Reply all
Reply to author
Forward
0 new messages