[Sidefx-houdini-list] Recursive cookie in many axis
ben.schrijvers at guerrilla-games.com
Wed Aug 29 05:32:10 EDT 2007
Well there's different reasons not elaborate to much.
The only thing that's new in H9 is that you can turn a bunch of polys
into a volume primitive.
That primitive can then be sampled in a vex i3d shader with a new vex
So the i3d shader knowns what's inside or outside the volume which is
exactly what replaces the cookie sop.
I'm using a simple 3D noise in the i3d shader to offset P while I'm
checking if I'm in or outside a cell.
This results in a distorted cell sides.
But uhm.. the real tricky bit is where I need to stitch up those inner
cells back to the original outer polygons, remaining their uv's and keep
the cracks invisible. And last but not least keep a low poly count...
Andrew D Lyons wrote:
> Volume primitives and noise are something I've been meaning to look
> at. What are you using for voxel noise shaders? If possible, could you
> please elaborate on your implementation?
> On 28/08/07, Ben Schrijvers <ben.schrijvers at guerrilla-games.com> wrote:
>> I've done some breakup tools before using cookie but it was just too
>> As I'm now creating geometry for games the cookie has another bad side
>> effect in that it creates unwanted/unnessecary polygons because of the
>> nessecary pre-triangulation.
>> At the moment I'm testing H9 and the new volume primitive type is saving
>> the day.
>> That combined with voxel noise shaders and I'm getting full 3D voronoi
>> Andrew D Lyons wrote:
>>> The Volume idea sounds nice. It would be of immense value to have some
>>> kind of a 3D voronoi break up routine in Houdini that worked like
>>> I made a Houdini procedural break up tool that kind of what you wanted
>>> at a previous place of employ. It used the "Foreach" Sop system that
>>> was on odforce, but you could now use the For SOP in Houdini 9. It
>>> used the cookie sop, and procedurally generated cylindrical cutters.
>>> There was a bit of checking for bad topology and other undesirable
>>> outcomes which would occasionally occur in the process of 100
>>> iterations with a cookie sop and a random cutter. From memory, the
>>> basic algorithm was:
>>> 1./ Use input bounds to build cutter to suitable scale.
>>> 2./ Add random orientation, position and point displacement to cutter points.
>>> 3./ Make cut.
>>> 4./ Check connectivity for only 2 objects.
>>> 5./ Measure surface area of two objects
>>> 6./ Feed all objects back into 1 and cut the biggest object in the next pass.
>>> It worked OK with some hand holding, but it wasn't really that elegant
>>> a solution in comparison to the voronoi type solutions that could be
>>> I'd definitely like to add weight to the various RFEs that are open
>>> for a break-up tool of this sort. It would be sooo handy with DOPs...
>>> On 26/08/07, sidefx at trinix.ca <sidefx at trinix.ca> wrote:
>>>> I'm hesitating about using a recursive mechanism to break objects apart
>>>> for a volume object that has to be cut in many axis, not only in the same
>>>> plane like a window. I tried it but the result wasn't an artistically
>>>> viable solution.
>>>> My conclusion is, if it's for background chunk objects then it can be
>>>> usefull. If it's for "hero chunks" or even for mid distance chunks then
>>>> you need to decide where the cutters are.
>>>> I wonder what you think about it and does anyone have an idea how we could
>>>> cut procedurally an object such as a sphere to make it look as if made of
>>>> stone with nice turbulence deformation. It would be even better if we
>>>> could provide the chunk's density by setting an attribute on a point cloud
>>>> or volume primitive in world space inside the object but it's probably an
>>>> utopian idea.
>>>> Thanks for feedbacks
>>>> Sidefx-houdini-list mailing list
>>>> Sidefx-houdini-list at sidefx.com
>> Sidefx-houdini-list mailing list
>> Sidefx-houdini-list at sidefx.com
More information about the Sidefx-houdini-list