for string parms you need to use `` for expressions unless you are using just a $ variable alone
so it'll be like this
$HIP/geo/YAKURU_01.hipnc.filecache1.`$F%15+1`.bgeo
Found 5499 posts.
Search results Show results as topic list.
Houdini Indie and Apprentice » create a loop with hgeo sequence
- tamte
- 8525 posts
- Offline
Houdini Lounge » Cloth tangling
- tamte
- 8525 posts
- Offline
it doesn't really matter as long as you understand what's going on in your scene you can use shelf tools and tweak or create nodes manually, I use both, whatever I feel like at the moment, usually what's quicker
this time I did it by hand as I like to create dopnet inside and once it was there adding other 3 nodes was easier than changing display flag, clicking on the shelf tool, selecting object, removing the dopimport, corecting input object path etc.
this time I did it by hand as I like to create dopnet inside and once it was there adding other 3 nodes was easier than changing display flag, clicking on the shelf tool, selecting object, removing the dopimport, corecting input object path etc.
Houdini Lounge » Cloth tangling
- tamte
- 8525 posts
- Offline
hard to tell as you didn't include your scene
but mostly make sure you are having your cloth in correct scale, usually 1unit = 1m
add some surface mass density if cloth feels too light
you may want to decrease damping and bend stiffness as I find the default too high, but as well depends on material you want to get
play with drag parameters as that defines air resistance of the cloth
here is quick example (13.0.376)
but mostly make sure you are having your cloth in correct scale, usually 1unit = 1m
add some surface mass density if cloth feels too light
you may want to decrease damping and bend stiffness as I find the default too high, but as well depends on material you want to get
play with drag parameters as that defines air resistance of the cloth
here is quick example (13.0.376)
Houdini Lounge » Construction plane misplaced
- tamte
- 8525 posts
- Offline
Houdini Indie and Apprentice » first input of an OTL not to act as "parent". HOW
- tamte
- 8525 posts
- Offline
just disconnect your some-nodes-placeholder node from 1 subnet input inside of your Object Level OTL so it will not inherit transform
you will still be able to sample objects connected to your OTL with opinputpath() expression for example and therefore bringing their geometry via Object Merge to your Geometry Object if needed
just keep in mind that usually you want to keep Geometry based tools in SOP level where inputs pass geometry instead of Object Level where they pass transforms
you will still be able to sample objects connected to your OTL with opinputpath() expression for example and therefore bringing their geometry via Object Merge to your Geometry Object if needed
just keep in mind that usually you want to keep Geometry based tools in SOP level where inputs pass geometry instead of Object Level where they pass transforms
Houdini Indie and Apprentice » Premultiplied setting for mantra
- tamte
- 8525 posts
- Offline
if you are rendering to .png, you can add vm_image_png_frompremult render property to mantra where you can set it
but usually it's not a big deal as every compositing software allows you to premult/unpremult as you want
but usually it's not a big deal as every compositing software allows you to premult/unpremult as you want
Houdini Indie and Apprentice » Change in Life Expectancy affecting $LIFE
- tamte
- 8525 posts
- Offline
I assume you are talking about old POPs
$LIFE s normalized age from 0-Lifespan range to 0-1
so
$LIFE = $AGE/$LIFESPAN
and because you have changed lifespan (Life Expectancy) from 100 to 4 it will affect the point scale drastically as it delends in $LIFE
to keep your math independent of lifespan it's better to base it on $AGE (which is life in seconds, not normalized to the lifespan)
so for your case you want the value returned by $LIFE to be the same for both cases
your $LIFE value was $AGE/100 so just replace the Uniform Scale expression with that
(0.25 + ($AGE/100 * 50))
which equals ==>
0.25 + $AGE/2
and it should be the same as original no matter how you change the lifespan
$LIFE s normalized age from 0-Lifespan range to 0-1
so
$LIFE = $AGE/$LIFESPAN
and because you have changed lifespan (Life Expectancy) from 100 to 4 it will affect the point scale drastically as it delends in $LIFE
to keep your math independent of lifespan it's better to base it on $AGE (which is life in seconds, not normalized to the lifespan)
so for your case you want the value returned by $LIFE to be the same for both cases
your $LIFE value was $AGE/100 so just replace the Uniform Scale expression with that
(0.25 + ($AGE/100 * 50))
which equals ==>
0.25 + $AGE/2
and it should be the same as original no matter how you change the lifespan
Houdini Lounge » Cinema4D <-> houdini workflow
- tamte
- 8525 posts
- Offline
sl0throp
Doesn't c4d r14 support alembic?
it does, but keep in mind that this is thread revival from 2009
Technical Discussion » Pillar shatter/ animation collsions - RBD Packed sim
- tamte
- 8525 posts
- Offline
hi pepe, it's difficult to say as your cached sequence is just packed alembic which means just one point with path to original alembic file, so without it it doesn't contain anything
but just by analysing your videp it seems that essentially:
pillar crumbles down with gravity because nothing is holding it in place, you may want to add some constraint network to keep it together (there are same help examples for that)
collision with the character seems to be lacking proper velocity data on the character so the pillar pieces don't inherit any velocity therefore just move out of the way
but just by analysing your videp it seems that essentially:
pillar crumbles down with gravity because nothing is holding it in place, you may want to add some constraint network to keep it together (there are same help examples for that)
collision with the character seems to be lacking proper velocity data on the character so the pillar pieces don't inherit any velocity therefore just move out of the way
Technical Discussion » POP DOP SOURCE - Birth probability field missing
- tamte
- 8525 posts
- Offline
just do it in sops on your source geometry
just append for example Delete SOP change mode to Points
then into delete by expression type something like
rand($PT+$FF*1000)>$CR
you can of course use any means to feed just the points you want to source sop
so faster version may be Attrib Wranglge
if (@Cd.x < random(@ptnum+1000*@Frame))
{
removepoint(0, @ptnum);
}
just append for example Delete SOP change mode to Points
then into delete by expression type something like
rand($PT+$FF*1000)>$CR
you can of course use any means to feed just the points you want to source sop
so faster version may be Attrib Wranglge
if (@Cd.x < random(@ptnum+1000*@Frame))
{
removepoint(0, @ptnum);
}
Technical Discussion » Point cloud open broken in POP DOPS
- tamte
- 8525 posts
- Offline
it's always better not to assume that it would connect by default as that is something that needs to be specifically done on the VOP node's part so it generates code that checks if the input is connected
which happens many times, but if you check code for pcopen VOP, it limit's that functionality only for Shop, Sop and Pop contexts, not Cvex yet
which happens many times, but if you check code for pcopen VOP, it limit's that functionality only for Shop, Sop and Pop contexts, not Cvex yet
Technical Discussion » Point cloud open broken in POP DOPS
- tamte
- 8525 posts
- Offline
you just forgot to connect P to pcopen so all points are sampling at default position {0,0,0}
EDIT: maybe not forgot, as SOP and POP VOPs doesn't require it but for CVEX based VOPs it's required for now as pcopen and maybe others don't connect global P automatically if you don't connect anything to it yet
and you don't really need to do separate pcopen for each pcfilter if you are using the same arguments, just connect both pcfilters to the same pcopen handle output
EDIT: maybe not forgot, as SOP and POP VOPs doesn't require it but for CVEX based VOPs it's required for now as pcopen and maybe others don't connect global P automatically if you don't connect anything to it yet
and you don't really need to do separate pcopen for each pcfilter if you are using the same arguments, just connect both pcfilters to the same pcopen handle output
Houdini Indie and Apprentice » How to reference Intrinsic attribute?
- tamte
- 8525 posts
- Offline
it's not so hidden
in the help to Attrib Wrangle you have link to VEX snippets syntax where you can find that info
http://www.sidefx.com/docs/houdini13.0/vex/snippets#attributes [sidefx.com]
or refer to docs 12.5 where it is on attribwrangle page
http://www.sidefx.com/docs/houdini12.5/nodes/sop/attribwrangle [sidefx.com]
the intrinsic attribute list you can find directly in spreadsheet for any SOP node
in Primitives or Detail modes you can see the list in Intrinsics Menu
in the help to Attrib Wrangle you have link to VEX snippets syntax where you can find that info
http://www.sidefx.com/docs/houdini13.0/vex/snippets#attributes [sidefx.com]
or refer to docs 12.5 where it is on attribwrangle page
http://www.sidefx.com/docs/houdini12.5/nodes/sop/attribwrangle [sidefx.com]
the intrinsic attribute list you can find directly in spreadsheet for any SOP node
in Primitives or Detail modes you can see the list in Intrinsics Menu
Houdini Indie and Apprentice » Hard render result with smooth normal
- tamte
- 8525 posts
- Offline
that's quite common artifact when having low poly geo with interpolated normal and sending rays (shadow, reflection, etc), since they still intersect the low poly geo
in your case it's mostly raytrace shadows, to get rid of that you better have higher res geo or render as subdivision surface
in your case it's mostly raytrace shadows, to get rid of that you better have higher res geo or render as subdivision surface
Houdini Indie and Apprentice » Maya History !!!
- tamte
- 8525 posts
- Offline
Joker386
Hi Jack.N
…
We don't have exactly same option for deleting history in the Houdini ,But you have too many options for deleting History and save final Model :
…
actually, we do
in SOP level viewoprt, rightclick on the Geometry in the viewport (not handle)
then choose Geometry/Delete History
it will lock the current sop for you and delete all input nodes, exactly like in maya
but in Houdini this is the least preferred method, because having locked nodes in the scene and on top getting rid of useful history is usually not desirable
so just cache the geometry as others told you or if you lock the node, don't delete input nodes since it will not be evaluated anyway and may come handy later
Houdini Learning Materials » Opensubdiv surfaces?
- tamte
- 8525 posts
- Offline
you can change it in Display Settings/Geometry/Level Of Detail
not sure if you can bind a shortcut to it though
as houdini supports Opensubdiv and there is an option in Houdini Preferences/3d Viewports/Allow Adaptive Subdivision I would assume that it can subdivide adaptively in the viewport (as in pixar demos for opensubdiv) so you shouldn't be needing to switch the LOD, but as my graphic card cannot show subds in OGL 3.3 I'm not sure if it does something or not
not sure if you can bind a shortcut to it though
as houdini supports Opensubdiv and there is an option in Houdini Preferences/3d Viewports/Allow Adaptive Subdivision I would assume that it can subdivide adaptively in the viewport (as in pixar demos for opensubdiv) so you shouldn't be needing to switch the LOD, but as my graphic card cannot show subds in OGL 3.3 I'm not sure if it does something or not
Technical Discussion » surface model User Connected Fresnel
- tamte
- 8525 posts
- Offline
Technical Discussion » Is there a simple way to group primitives NOT yet in a group
- tamte
- 8525 posts
- Offline
Group SOP
first uncheck Enable parm in Create/Number tab
then in Combine tab specify group name click on NOT EQUAL sign next to it then set next parm to *
so in essence it will mean
group != *
where * represents all the existing primitive groups and that means that your newly created group will contain every primitive that doesn't belong to any other prim group yet
first uncheck Enable parm in Create/Number tab
then in Combine tab specify group name click on NOT EQUAL sign next to it then set next parm to *
so in essence it will mean
group != *
where * represents all the existing primitive groups and that means that your newly created group will contain every primitive that doesn't belong to any other prim group yet
Houdini Indie and Apprentice » Parameter red border
- tamte
- 8525 posts
- Offline
it means that the parameter is bound to viewport ladder handle
so if you are in Show Handle mode in viewport (Enter) then MiddleClick+drag ladder will control bound (red border) parameters
you can set/unset it by RightClick on parameter name and choose
More/Bind to Viewport Ladder Handle
or
More/Unbind all Viewport handles
so if you are in Show Handle mode in viewport (Enter) then MiddleClick+drag ladder will control bound (red border) parameters
you can set/unset it by RightClick on parameter name and choose
More/Bind to Viewport Ladder Handle
or
More/Unbind all Viewport handles
Technical Discussion » Object merge recursive object path pattern
- tamte
- 8525 posts
- Offline
AFAIK you can do it by specifying finite number of levels, each level separated by whitespace like this
/obj/subnet1/*/OUT_RENDER /obj/subnet1/*/*/OUT_RENDER /obj/subnet1/*/*/*/OUT_RENDER /obj/subnet1/*/*/*/*/OUT_RENDER etc
or maybe doing python Node.glob() to get all nodes you are interested in and output the list of them
(is there any reason for having so many nested Object Level subnets? as they are not necessary for parenting I can imagine that they were created by importing FBX or Alembic at default settings, which I find very unintuitive, but note that you can just uncheck Import Null Nodes as Subnets to get clean hierarchy
similarly for Alembic uncheck Build Hierarchy Using Subnetworks)
/obj/subnet1/*/OUT_RENDER /obj/subnet1/*/*/OUT_RENDER /obj/subnet1/*/*/*/OUT_RENDER /obj/subnet1/*/*/*/*/OUT_RENDER etc
or maybe doing python Node.glob() to get all nodes you are interested in and output the list of them
(is there any reason for having so many nested Object Level subnets? as they are not necessary for parenting I can imagine that they were created by importing FBX or Alembic at default settings, which I find very unintuitive, but note that you can just uncheck Import Null Nodes as Subnets to get clean hierarchy
similarly for Alembic uncheck Build Hierarchy Using Subnetworks)
-
- Quick Links