View Full Version : select outer particles
meagane 05-17-2006, 02:27 PM I need to select only the outer particles of my particle object.
With real geometry, I could use the paint selection tool, but here, it doesn`t work.
any idea?
thanks!
|
|
RaGzMaN
05-17-2006, 03:21 PM
Component selection mode?
Why do you need to only select outer particles
meagane
05-17-2006, 03:51 PM
component selection mode does not work for that.
I have objects which are filled with huge amounts of particles. All inner particles have their lifespan set to zero, so I need to select all inner or all outer particles for that....
Bonedaddy
05-17-2006, 03:58 PM
I don't know that there is an easy way to do that, aside from coding up some lengthy mel script.
If you're emitting them from the object, then maybe just start grabbing the newest particles, which would be on the surface of the object -- i.e. the ones with the highest id numbers -- and then stop when you think you have enough?
meagane
05-17-2006, 04:30 PM
Hi Bonedaddy,
unfortunately they are not emitted..
damn! I often have to write my own mel, but this is too hard. Writing a script which selects such kind of "border" particles would take too much time. :(
Bonedaddy
05-17-2006, 05:15 PM
What do you need them selected for?
meagane
05-17-2006, 06:58 PM
the lifeSpan of the inner particles has to be set to zero, only the outer ones, which build the "hull" should stay visible
elvis75k
05-17-2006, 07:02 PM
why don't use multiple particles?
meagane
05-17-2006, 07:22 PM
?
the inner volume has to be empty...
Bonedaddy
05-17-2006, 09:09 PM
How did you create them?
What I would probably do is create a nurbsSphere, and put a runtime expression on the particles, something like this:
$pPos=particleShape1.position;
$sPos=`xform -q -ws -t nurbsSphere1`;
$dist=mag($pPos-$sPos)
if ($dist<nurbsSphere1.radius) { particleShape1.lifespanPP=0; }
I think the syntax may be wrong on some of that, but you should get the general idea. Kill any particles that are inside the sphere's volume, based on the sphere's radius value. Place the sphere, move forward a frame to kill the unwanted particle, set intial state, do it again, and again, until you've killed all the unwanted particles.
meagane
05-18-2006, 01:19 PM
Thanks!
I had quite the same idea. But this works only if I would have something like a cage object. A sphere is somewhat to rough ;)
So I would have to model this. umph! also painstaking, but obviously the only way to get what I need....
cosku
05-22-2006, 03:53 PM
But then if you model the shape, you can't simply use a radius-comparison :)
You'd have to go with the procedure to find if the particle is inside the object, which would be
extremely slow for tons of particles.
If you end up modeling the shape, you might try to scale if bigger than your particles,
turn the object into a radial-field, and check the incoming forces on the particles to see
if they're on the boundary or not.
Good luck.
-cosku
sacslacker
05-22-2006, 04:18 PM
You can't create a surface emitter and tweak that? Is there a reason the particles need to be created inside the object?
CGTalk Moderation
05-22-2006, 04:18 PM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.
vBulletin v3.0.5, Copyright ©2000-2012, Jelsoft Enterprises Ltd.