# How to Grow Ice & Break Pieces off in Wind as Feedback Loop?

## Recommended Posts

I am working on a sequence where we show a future robot mission exploring an icy moon in gale-force winds.
We want ice growing on parts of the robot, breaking off, and being carried away by the wind in an endless feedback loop.
For the ice growing, I have a SOP solver that turns parts of the geometry into VDBs then using VDB reshape Dialate with a noise mask. Which has the growth look I'm after.
Then I'd like a subset of this to be fed into an RDB solver that shatters and breaks pieces off to be carried away by a wind force.
How do I remove these pieces from the SOP solver in a feedback loop?
Is there a way to chain a SOP solver and an RBD solver in a multisolver?
Any suggestions would be much appreciated.

Thanks

• 1

##### Share on other sites
```v[]@pos;
for (int i = 0; i < chi("BAckstep");i++)
{

insert(v[]@pos,0,@P);

}```
```//solver attCOpy
vector p1 = point(1,"P",@ptnum);
pop(v[]@pos);
insert(v[]@pos,0,p1);```
```float speed = length(@v);
float dir = dot(normalize(@N),normalize(@v));

f@speedBack = fit(speed,chf("minspeed"),chf("maxspeed"),0,1);
@speedback = chramp ("speedRemap",@speedBack);

f@dirBack = fit(dir,-1,1,0,1);
@dirBack = chramp("normalRemap",@dirBack);```
```float MIXER = f@speedBack;
MIXER = lerp(MIXER, 0, 1-f@dirBack);

MIXER = MIXER * (chi("Backstep")-1);
@P = lerp(v[]@pos[int(MIXER)],v@pos[int(MIXER)+1],frac(MIXER));```

##### Share on other sites

Cool! Thanks for sharing.

What I'm going to try is using TOPS that does the following:

2. grow ice using VDB reshape with dilate using an animated volume vop as noise mask.
3. cut random pieces out using particles placed on the surface as centers of boolean cuts
4. Write the resulting "swiss cheese" geo to a file
5. feed the cut-out pieces to RDB shatter and wind force
6. go to step 2, but with the swiss cheese file as the source

## Create an account

Register a new account