PDA

View Full Version : Particles emitted based on normal direction


chips__
08-21-2003, 09:42 AM
hi,

could anyone help me figure out how i can emit particles based on the normal direction and speed of the object (polygons) it's emitted from?

thanks
:shrug:

daniel4x
08-21-2003, 02:39 PM
normal direction?? what meanings is it ?

chips__
08-21-2003, 08:20 PM
well, what i basically want to do, is emit particles from faces that point upwards, to some degree...

daniel4x
08-22-2003, 03:49 AM
you can use "rotate tool"(before use create emit) or use

EditNurbs-reverse surface direction
then it's ok

DeathBrain
08-23-2003, 02:42 PM
I think this is great (http://www.highend3d.com/maya/tutorials/missle/) :thumbsup:

chips__
08-24-2003, 09:28 AM
i'm not sure what i'm saying wrong :) i know how to emit particles in one direction. i want to use an object as an emitter, but only use the polys that are pointing somewhat upwards, and i don't want to select them all myself....

stallion151
08-24-2003, 01:34 PM
if you emit from object and choose surface they already go in the direction of the normals, Nurbs & Polys.

is that what you mean? or something else?

esse
08-24-2003, 02:50 PM
Originally posted by chips__
i'm not sure what i'm saying wrong :) i know how to emit particles in one direction. i want to use an object as an emitter, but only use the polys that are pointing somewhat upwards, and i don't want to select them all myself....

Hi Peter,

If I understand well you want to use an expression that emits particles from a face only if that face's normal is within a given limit, is that right?

chips__
08-24-2003, 06:09 PM
yup! :D

esse
08-24-2003, 11:20 PM
I think you will need to split up you polyobject since afaik emitting based based on faces is not possible. Neither can you use Texture Rate on your surface emitter since you need nurbs surfaces for that.

I think using selection constraints on the polyfaces (> geometry > orientation) and than splitting of the selected faces is an option. Once you got the desired faces split off in a separate polyobject you can make that object an emitter.

Jozvex
08-25-2003, 12:43 AM
Hmm, I think this should be totally possible without needing to split up the mesh. I'd say use ratePP (setting the rate on a per vertice basis in this case). What if you just:

1. Write an expression to read the Y component of each vertex normal.

2. Then say "is this number greater than 0.2" (0 means the Y normal is horizontal I think, over 1 means the normal is facing up to some degree, so this number would be your 'upness direction threshold').

3. If the Y part of the normal is facing up to some degree (greater than your threshold number) then set the ratePP for that vertice to whatever number you want your rate to be. If the Y normal is too low, then set the ratePP for that vertice to 0.

Even easier would be if you could just use 1 ramp to control the ratePP across the whole object (which I think you can). You could then just use some sort of shading node like Sample Info to determine if the normals are facing up.

I'll try and create the effect and get back to you, see if you can use these ideas!

chips__
08-25-2003, 09:50 AM
i too think it should be possible without splitting up the mesh. the problem i ran into when using a ramp was that was that i could only make it work based on the facing ratio from the camera, and not from the world coord... but then again, i'm no particle wiz...

minos365
08-25-2003, 06:35 PM
can you tell me how can i read the Y component of each vertex normal

Jozvex
08-26-2003, 08:10 AM
Well with a vertex selected, type:

polyNormalPerVertex -q -y;

into the command line. It gives you four values, one for each of the four faces that share that vertex.

esse
08-26-2003, 12:57 PM
I am still wondering how you will tune emission-rate:

- texturing emission works only on nurbs (and you are using polygons). Correct me if I am wrong.

in case you use per point emission to tune the emission rate (which is a workaround for the above mensioned situation) you will be emitting from vertices which isn't a real surface emission.

I must be missing something here, can someone please clarify?

Jozvex
08-27-2003, 12:49 AM
No you're right, I'm planning on using Per Pont emission.

But no matter whether you use per point emission or not, it will still only emit from the vertices anyway, so you're no worse off.

CGTalk Moderation
01-15-2006, 11:00 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.