Stabilizing point numbers

   1846   1   1
User Avatar
Member
99 posts
Joined: Aug. 2014
Offline
So, I am copy stamping onto about 10,000 points, and I am randomizing copied objects scale and rotation with your classic rand($PT). The problem I am having is I have made a system to do local overrides, so within a subset group of the 10,000 points I can change specifically what objects are copied, clumping amount, delete a percentage etc. Its all stable until I translate the override group selection, that causes the point order to change and all of the 10,000 scales and rotations are updated (re-stamped).

As far as I know $PT is a protected variable. I have not had any luck trying to manipulate this. Is there some way to capture the $PT of the whole group before I edit things and then paste it back later down the chain so only the override group changes. I assume ideally the override group would be appended to the end, so points 0-8999 are the same, and only the 1000 points within the override group change. So the override groups is always ptnum's 9000-9999 for example.

Any Ideas? Also is there a way to use something besides $PT.. in a copy stamp expression.. or point expression and get similar results where all points (or even just most) have a unique value? I am currently using $ID to dictate what is copied to each point.

So far the only solution I can think of is to break the 10,000 points into 4-9 regions, and have a separate copy stamp for each. The idea being to limit what the override affects and causes to be re calculated. Not a great solution.
Edited by Kfinla - Dec. 13, 2017 11:57:39
User Avatar
Member
99 posts
Joined: Aug. 2014
Offline
I have come up with a solution. Migrating to using “copy to points” instead of using the “old” copy stamp sop and stamp functions. I am basically doing a hybrid. I am using the copy stamp to set and manipulate the $ID values. ID was always stable. I have not sorted out how to replicate this with the “copy to points” because I think you need the upstream functionality of stamping inputs. But I have migrated all the rotation and scaling to the “copy to points” sop. And because data only flows down stream with this, as long as I set the rotations and scale attribs before I disrupt things with my local override, everything is stable. Which is how I though the copy sop would work - but makes sense now that it cannot. I also seem to have gained about 3x interactivity performance boost this way, with the copy stamp only worrying about copying the right mesh to the right ID, and the copy to points doing the rotations and scaling. I will try compiling the copy to point sops soon.
  • Quick Links