Copy sop and intersecting geometry

   11771   6   4
User Avatar
Member
1799 posts
Joined: Oct. 2010
Offline
Hi, I was wondering if anyone knew of a solution to fix intersecting geometries generated from a copy sop (I.e grass blades instances on points). This is actually for a static model.

A lot of people at my work have asked me about this but I cannot think of a solution on top of my head to keep copied objects from intersecting

Thank you in advance!
-G
User Avatar
Member
345 posts
Joined:
Offline
This is a quick idea, which would involve building a bit more complex foreach network with the cookie sop inside. Check if the intersect operation returns you something…any primitive for instance. If it does then your input mesh has some intersection areas, if it doesn't you are good to move on.

Sounds pretty simple but might get tricky and slow if you have heavy stuff to process.
User Avatar
Member
1390 posts
Joined: July 2005
Offline
grayOlorin
Hi, I was wondering if anyone knew of a solution to fix intersecting geometries generated from a copy sop (I.e grass blades instances on points). This is actually for a static model.

A lot of people at my work have asked me about this but I cannot think of a solution on top of my head to keep copied objects from intersecting

Thank you in advance!

Common approach is to make RBD from copySOP groups, turn on “Resolve Penetration” and left DOPs do the rest. There might be problems with thin geometry hard to represent as sdf though.
User Avatar
Member
1799 posts
Joined: Oct. 2010
Offline
Thank you! I will give it a shot!
-G
User Avatar
Member
1799 posts
Joined: Oct. 2010
Offline
I gave both a shot. I was successfull using the forEach network, but unfortunately was indeed pretty slow… I was able to use to use a group and delete node to detect if points were left over, but the deletes were taking quite a bit to cook for each grass blade

I tried doing the RBD approach and I think I have my network setup right, but nothing seems to be happening (I have an RBDObject coming in, which is my grass as polygons, then my RDB Solver with Resolve Penetration set to 10)

Needless to say, I am a bit of a greenstick when it comes to dynamics So I was wondering if you could take a look at my setup and see if I am missing anything?

Thanks !

Attachments:
RBDSetup.JPG (213.9 KB)
grass.hipnc (88.2 KB)

-G
User Avatar
Member
1390 posts
Joined: July 2005
Offline
You need a RBD Fracutre/Glue object which creates an objects from sop groups, not a single rbd object. Them, in your case you want probably to overwrite py as blades will jump up and down after resolving.

Also I would recommend to seed blades in Dops and not using CopySOP, since sdf generation will be far easer.
User Avatar
Member
1799 posts
Joined: Oct. 2010
Offline
Yes! got it working with your suggestions Unfortunately I could not find a way to do stamping variables with the point RBD object for seeding the grass with variation (was I going the wrong way?) but was able to do it with the copy SOP by doing the following:

- Make sure grass blades are capped (to help with SDF)

- Placed a peak before going into DOPNet. This is to give grass blades volume to help with SDF generation (just needed a bit), so it is close enough, especially since the Penetration detection occurs in larger objects

-Balanced volume resolution in fractured object with Resolve Penetration param in RBD Solver (looks like I was able to have low volume resolution if I kept a very high Resolve Penetration value). Tested with temporary isoOffset to make sure I was getting some voxels

-After the grass was free of penetration, I just applied another peak node with a value of the inverse of the original peak node to bring it back where it was thickness wise

Pretty exciting for me as it is my first foray into RBD I gotta say, I love this program more and more every day!

Here is some comparisons and my scene for reference

Thanks again guys!

Attachments:
grass2.hipnc (73.2 KB)
SOPSetupSolved.JPG (22.5 KB)
solution.jpg (340.2 KB)

-G
  • Quick Links