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
Found 5455 posts.
Search results Show results as topic list.
Houdini Indie and Apprentice » first input of an OTL not to act as "parent". HOW
- tamte
- 8444 posts
- Online
Houdini Indie and Apprentice » Premultiplied setting for mantra
- tamte
- 8444 posts
- Online
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
- 8444 posts
- Online
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
- 8444 posts
- Online
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
- 8444 posts
- Online
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
- 8444 posts
- Online
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
- 8444 posts
- Online
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
- 8444 posts
- Online
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
- 8444 posts
- Online
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
- 8444 posts
- Online
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
- 8444 posts
- Online
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
- 8444 posts
- Online
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
- 8444 posts
- Online
Technical Discussion » Is there a simple way to group primitives NOT yet in a group
- tamte
- 8444 posts
- Online
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
- 8444 posts
- Online
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
- 8444 posts
- Online
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)
Technical Discussion » Quarternions in chops
- tamte
- 8444 posts
- Online
It's not always automatic, maybe if you are using Object CHOP to bring rotation channels, but if you are bringing the channels by yourself using Fetch CHOP or creating them in CHOPs directly you need to mark rotation triplets as quaternion yourself using Attribute CHOP so some chops can treat such rotations as quaternions
http://www.sidefx.com/docs/houdini13.0/nodes/chop/attribute [sidefx.com]
http://www.sidefx.com/docs/houdini13.0/nodes/chop/attribute [sidefx.com]
Houdini Lounge » What's with the Smooth SOP?
- tamte
- 8444 posts
- Online
Houdini Indie and Apprentice » group pattern with parameter
- tamte
- 8444 posts
- Online
keyframeI think jerry was refering to syntax in group parm on sop nodes not actual pattern of Group SOP
Don't know this for a fact, but you might need to use the global $TY, instead of @P.y depending on context.
G
whichever is the case, backticks apply to both of them for inserting a value using an expression
Houdini Learning Materials » Python global expression variables
- tamte
- 8444 posts
- Online
-
- Quick Links