Jump to content

Clean up Volume Sample/Gradient?


Recommended Posts

I've got a problem that I can't fix cleanly. I am emitting particles from an object and using an SDF to stick the particles back to the surface. If two surfaces (or arm and torso in my case) come too close together the particles go a bit mad. I can kill them using the volume sample distance , but that creates a lot of noise I'd rather avoid.

Is there any way of getting a better result from this? I imagined that if I had the vector and the distance to surface, that all points would stick perfectly to the object, I don't understand why some don't if I'm giving it exact results.

Thanks for any help, this has got me a bit baffled.

Christian

post-6175-130558842449_thumb.png

SDF_stickProblem.hipnc

Link to comment
Share on other sites

Is there any way of getting a better result from this?

you'll get much better results if you normalize your gradient. the gradient is just the rate of change within the field, so where there are discontinuities in your field (usually caused by intersecting geometry) you'll get really big spikes in your gradient.

also, unchecking 'laser scan' in your isooffset results in a cleaner field.

another thing to consider is displacing by the velocity of the nearby surface before 'shrink-wrapping' to the isocontour. if you do this, you'll have much less work to do in the second step as the points will naturally 'follow' the surface. here's an example of that...

SDF_stickProblem_fix.hipnc

  • Like 1
Link to comment
Share on other sites

you'll get much better results if you normalize your gradient. the gradient is just the rate of change within the field, so where there are discontinuities in your field (usually caused by intersecting geometry) you'll get really big spikes in your gradient.

also, unchecking 'laser scan' in your isooffset results in a cleaner field.

another thing to consider is displacing by the velocity of the nearby surface before 'shrink-wrapping' to the isocontour. if you do this, you'll have much less work to do in the second step as the points will naturally 'follow' the surface. here's an example of that...

Wicked, thanks Brian!

I made this example scene up quickly to show what was going on. Our proper one has the particles taking the velocity of the geo per frame, then sticking. I didn't realise that the volume gradient was not normalised already, guess I should have checked that instead of assuming! Hopefully that paired with laser scan off should sort me out.

Thanks for your help

Christian

Link to comment
Share on other sites

Turning off lazer scan worked wonders, so thanks a lot for that!

My velocity transfer was working on acceleration or something, so I've swapped it out with yours as well.

Cheers.

Christian

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...