my intial test for some cheerleaders pom poms
to make this i used wire dynamics, and fleshed it out with a trail sop.
my next version will have only 3 colours created with groups and wire to wire collisions and wire to handle collisions.
Sunday, November 30, 2008
Wednesday, November 19, 2008
Tuesday, November 18, 2008
Remove Lonely Verts
this entry contains a little bit of VOP-SOP fun as well as outlining the
process of making a digital asset in Houdini.
my friend Rob Kelly initially nutted this out - then i found that i needed
it, so i set about making one for myself which turned out to be easier than i thought.
my first attept was in H8 and i remember getting frustrated with for loops not working as i expected - but now with H9's Vop Sop - a truly versatile SOP. {i have since removed my sheep joke from this entry :D }
the main application for finding lonely verts ( verts that have less than 3 neighbors )
is to delete them so they dont interupt the subdivision process
Lonlely verts are often left behind in the modeling process - whenever several connecting edges are dissolved.
I added a VOP SOP - then after mucking around with the for each VOP - i realised every op in the VOP SOP was going to be applied to every point in the incoming geometry anyway - so i didnt need a for loop at all.
in the VOP SOP i simply have the point number from the global parameters (fom the incoming geometry) going into a neighbor sop - which counts how many neighboring points the current point has - and then decides if it should be coloured or not.
The trick here is to get the neighbor count to either zero or one which will act like a switch.
i noticed that a lonely vert has only 2 edges coming out of it - where as a 'healthy' vert has usually four - or three depending where it is on the model. There are exceptions however ! ie - the corners of a grid also only have two neighbors !
The only way ive though of so far to deal with these is to explicity ignore them by putting them into a group, before the asset does its job. We can streamline this process a little by some sort of edge detection or at the very least providing a field with the group name to ignore, as part of the asset.
The coloured points are grouped by their colour and the option is there in the asset to delete them or not. Having a toggle is a good way to see what the bleep is happening.
process of making a digital asset in Houdini.
my friend Rob Kelly initially nutted this out - then i found that i needed
it, so i set about making one for myself which turned out to be easier than i thought.
my first attept was in H8 and i remember getting frustrated with for loops not working as i expected - but now with H9's Vop Sop - a truly versatile SOP. {i have since removed my sheep joke from this entry :D }
the main application for finding lonely verts ( verts that have less than 3 neighbors )
is to delete them so they dont interupt the subdivision process
Lonlely verts are often left behind in the modeling process - whenever several connecting edges are dissolved.
I added a VOP SOP - then after mucking around with the for each VOP - i realised every op in the VOP SOP was going to be applied to every point in the incoming geometry anyway - so i didnt need a for loop at all.
in the VOP SOP i simply have the point number from the global parameters (fom the incoming geometry) going into a neighbor sop - which counts how many neighboring points the current point has - and then decides if it should be coloured or not.
The trick here is to get the neighbor count to either zero or one which will act like a switch.
i noticed that a lonely vert has only 2 edges coming out of it - where as a 'healthy' vert has usually four - or three depending where it is on the model. There are exceptions however ! ie - the corners of a grid also only have two neighbors !
The only way ive though of so far to deal with these is to explicity ignore them by putting them into a group, before the asset does its job. We can streamline this process a little by some sort of edge detection or at the very least providing a field with the group name to ignore, as part of the asset.
The coloured points are grouped by their colour and the option is there in the asset to delete them or not. Having a toggle is a good way to see what the bleep is happening.
Wednesday, November 5, 2008
Saturday, November 1, 2008
monthly research : IFD files
the IFD (Image File Descriptor ?) files in Houdini / mantra are the equivalent of the RIB files for Renderman -
they are a description of the 3D scene for that frame.
from the help files:
ifd is the file format produced by houdini..and consumed by mantra.
The IFD file contains a complete description of the scene and how to render it.
you can render an image directly from an ifd file in the shell without opening houdini simply type:
mantra < [the name of the ifd file]
I wonder what an ifd looks like if i open it ?
heres one i made from houdini:
IFD created by Houdini Version: 9.5.255
# Generation Time: Nov 05, 2008 at 14:14:24
# Render Defs: /lv0/opt/hfs9.5.255_linux_x86_64/houdini/soho/IFDmantra9.5.py
# HIP File: /lv0/tbe/shots/6_4/hip/6_4_ink_wire_tweak_v08_t02_dp.hip, $T=16.44, $FPS$
...and the rest is garbled by my text editor - pico.
they are a description of the 3D scene for that frame.
from the help files:
ifd is the file format produced by houdini..and consumed by mantra.
The IFD file contains a complete description of the scene and how to render it.
you can render an image directly from an ifd file in the shell without opening houdini simply type:
mantra < [the name of the ifd file]
I wonder what an ifd looks like if i open it ?
heres one i made from houdini:
IFD created by Houdini Version: 9.5.255
# Generation Time: Nov 05, 2008 at 14:14:24
# Render Defs: /lv0/opt/hfs9.5.255_linux_x86_64/houdini/soho/IFDmantra9.5.py
# HIP File: /lv0/tbe/shots/6_4/hip/6_4_ink_wire_tweak_v08_t02_dp.hip, $T=16.44, $FPS$
# Output driver: /out/ink_wire_BG1
ray_version VEX9.5.255
setenv HIP = "/lv0/tbe/shots/6_4/hip"
ray_property object velocityscale 0.02
# Retained geometry
# SOP /obj/rs_holdout_map1/geo1/RENDER
# Save geometry for /obj/rs_holdout_map1/geo1/RENDER at time 16.44
ray_start geo # {
ray_detail /obj/rs_holdout_map1/geo1/RENDER stdin
BgeoV^@^@^@^E
...and the rest is garbled by my text editor - pico.
Subscribe to:
Posts (Atom)