Jump to content

Sopsolver to work on one dop object only...


Recommended Posts

Hello!

I'm using a sopsolver inside an autodopnetwork to delete points being emitting from

a box object into a fluidtank. Problem is, it deletes all the points, not just the one being emitted

from the box. How can I tell the sopsolver only to delete points that are emitted from the box_emitter, and leave

the fluidtank water alone (but they both still can interact using one flipsolver of course...).

thanx!

Link to comment
Share on other sites

you need to track the point's source location. ie add an attribute to the emitter with a value that you can compare against in your sopsolver and delete based on that value

Okay, I add birth attribute in the box_emitter... but problem is, using sopsolver in autodop... since dopimport imports fluidtank and source emitter because of one flipsolver, it deletes all points... I want the box_emitter points to enter the tank fluid... then start to delete because I don't need all these extra particles...

it's for a much larger scene, but I'm trying to get this workflow right before I apply :) How you been Ikarus? Where do you fly to next? ;)

Here's the file:

deleteEmitterPoints_1.hipnc

Link to comment
Share on other sites

If you're trying to kill the emitter particles you can just animate the activation on the Source DOP instead of deleting.. $T<1, for example. Is this what you're trying to do?

Hello!

No. Think of a waterfall. The emitter pours fluid into the tank fluid. There is no need to fill the fluid tank, i just want the interaction part, then delete those particles (only from the emitter) after they interacted with tankfluid. Killing by age would work because it would be e.g. 3 seconds of life from emitter to tankfluid, then delete... BUT ONLY EMITTER POINTS, not the fluid tank points too... :) That's the kicker... If someone could figure this out, then I can complete my project... that's the only thing holding me up...

Link to comment
Share on other sites

YES! I believe you solved it! You're not PEON, you are an Illusionist! :) Wow! Great man, it works perfect and you can control how much you want to enter the fluid via lifespan param... this is efficient now! Can you explain what you did so I can follow it better? I see you use 2 vopsops in the sopsolver. The first one you create params and assign constants 0 & 1... @birth==1 is in the Point Group of the 1st vopsop ... after this i'm lost but you did great! Gosh, i have so much to learn... :)

Link to comment
Share on other sites

Hahah..thanks!

First, I added a integer birth attrib to the SOP source. I think you already had this attrib in place but it was set to $T, which isn't very useful since $T will always update. So, I set birth to 1. Inside the SOP Solver, the first VOP runs over all points being birthed (@birth==1 in the group field) and set "birth" to 0 and "born" to 1. Creating a "born" attrib here allows us to keep track of particles coming from the emitter, since only the emitter particles ever get a birth attrib of 1.

With @born==1 in the group field of the second VOP we can run a counter that tracks the life of the emitted particles. In this case the counter is adding the time increment b/t frames to the previous counter value. Since we're using time b/t frames to step the counter, our compare operation is done in seconds: if "counter" is > 1 sec, put point in group. Then, of course, we blast the points in that group at the end.

Hope this helps. Good luck!

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...