bbbaaarrr Posted December 2, 2019 Share Posted December 2, 2019 Hi All, I am scattering points on a creature. So far so good. I can get pretty much what I'm after. I'm using density driven by attribute which is noise based. The scattered points are relaxed nicely to get an organic distribution. Now my problem is - some parts of the creature are really thin, like fins of a fish. Here, the scatter function thinks points that end up on the opposite sides of the fin add up to the density, so there are far fewer points that I would need. Is there a way to discriminate points by their normal vector before the relax function kicks in? I.e. when calculating density based on proximity, just ignore points with opposite-facing normal? Cheers, B. Quote Link to comment Share on other sites More sharing options...
jimeng20 Posted December 2, 2019 Share Posted December 2, 2019 Hi there, Correct me if I'm wrong but I don't think scatter will have ability to check the point normal direction if it's pointing toward the inside of your geometry. But you can isolate the faces that the normal direction is pointing outward then scatter points only on those faces. One way I would do is convert your geometry to sdf and to check if the surface normal direction aligns to the negated volume gradient by using dot product, if it doesn't align, delete those faces. Also I would just isolate the part that have problem I.e. isolate the fins and solve the normal issue and scatter points based on what I mentioned then merge back with the rest. Unfortunately I can't make example file now since I'm at work, but I hope this will help. Quote Link to comment Share on other sites More sharing options...
anim Posted December 2, 2019 Share Posted December 2, 2019 (edited) you can also switch your Scatter generate parm to In Texture Space, which depending on your uvs may solve your issue Edited December 2, 2019 by anim Quote Link to comment Share on other sites More sharing options...
bbbaaarrr Posted December 3, 2019 Author Share Posted December 3, 2019 Thanks for the hints... I went the texture space way... had to do a little funny loop through a COP to get the density map in UV space (as it was a point attribute before) but it seems after a few tweaks to the relaxation parameters I ended up with exactly the result that I wanted! Yaay! Now I'm wondering if there is a way to somehow save my mapping between the scattered points and my geometry so that when the creature starts deforming the points will stick to where they were... but that's another subject.. Thanks! B. 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.