Mario Marengo
1. Use a “Rest Position” sop, and make sure you feed it a non-deforming version of your geometry. This sop will add an attribute called “rest” by default.
2. In your shader, make sure you have a (vector) “rest” parameter. Transform it to object space, and use that instead of P (wherever P is used to create the effect).
I'm having the same swimming textures issue and being new to Houdini,
I'm not understanding the procedure. When I add a Rest Pos, sop under
my Shader sop, I get red error buttons down the rest of the network in
which the one for Rest says invalid file. OK, I got to select a HIP file and
the dialog box doesn't show any… so, what “non-deforming version of
my geometry” am I supposed to feed it?
Second, I'm NOT a vex programmer, so what will adding this sop
do for the default vex shaders that came with houdini, like VEX_Marble?
I don't see how these shaders can use the sop without going into them and hacking the code, of which I have clue how to do, nor wanting to know.
I just want the marble shader to stop swimming over my moving object.
Does it HAVE to be this hard? I do have a love for buttons that take care
of things like this without having to get an advanced degree in houdini and renderman. I mean, texture maps/images aren't suffering from this, so why should prodecurals? Oh… UVs. well… hmmm… would be nice to click on a “convert to UVs” button for procedural textures.
Your help is appreciated. Thanks.