Annon Posted May 16, 2011 Share Posted May 16, 2011 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 SDF_stickProblem.hipnc Quote Link to comment Share on other sites More sharing options...
brianburke Posted May 17, 2011 Share Posted May 17, 2011 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 1 Quote Link to comment Share on other sites More sharing options...
Annon Posted May 17, 2011 Author Share Posted May 17, 2011 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 Quote Link to comment Share on other sites More sharing options...
Annon Posted May 18, 2011 Author Share Posted May 18, 2011 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 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
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.