Set Attribute Value based on ID when PTNUM change VEX

   1701   1   1
User Avatar
Member
1 posts
Joined: 7月 2022
Offline
Hi,
i do a FLIP Sim and delete all Particles below the Bounding region, because the simulation is much faster and i dont need them. I create the ID attribute in the flip solver.
After the DOP/FLIP Simulation in SOP Context, i would do the shrink pscale when the points are not in a Volume(VDB). So i create a Mask attribute with volumesampe and this works fine. (mask=1 when outside, maks = 0 when inside the volume.)

The shrink calculation i would do in an SOP Solver. The Problem i have is the changing PTNUM.

I dont`t get it, how to set the new calcutaed pscale attribute based on the ID in an Point Wrangle.

MANY THANKS
User Avatar
Member
9118 posts
Joined: 7月 2007
Offline
if you want to get attribute by id (default) from second input you can just do
f@mask = f@opinput1_mask;

that would however set attribute on points that don't find corresponding id in second input to 0

so if you for example want to preserve input value for points that don't find match you can do
int pt = idtopoint(1, i@id);
if (pt != -1) {
    f@mask = point(1, "mask", pt);
}
Tomas Slancik
CG Supervisor
Framestore, NY
  • Quick Links