I'd also like to know how to properly author empty Mesh or Points primitive on the stage from SOPs as that sounds like its important for proper usd stitching
EDIT: Particle System prim seems to work for creating empty Points primitive, however Particle System prim is not the most efficient since it has to have vertex for each particle
I'd almost expect an option to treat empty Packed Primitive as empty Mesh or empty Points prim when Packed Primitives is set to Unpack on SOP Import (the Mesh vs Points should be configurable per prim using usdconfig attributes even though they are currently separate detail attributes, while ideally they would be authored as usdconfig dict attribute which can be detail or prim for better granularity )
Found 5013 posts.
Search results Show results as topic list.
Solaris and Karma » USD issue with exporting points
-
- tamte
- 9078 posts
- Offline
Technical Discussion » VEX: Get Image Resolution Info? [{SOLVED}]
-
- tamte
- 9078 posts
- Offline
you can use teximport() function
int xres, yres; string texture = chs("texture"); teximport(texture, "texture:xres", xres); teximport(texture, "texture:yres", yres); printf("%dx%d", xres, yres);
Houdini Indie and Apprentice » How to make water overflow from a glass ?
-
- tamte
- 9078 posts
- Offline
make sure you source using Velocity or Pressure Boundary method
https://www.sidefx.com/docs/houdini/fluid/sopsourcing.html#flip-boundary-velocity [www.sidefx.com]
https://www.sidefx.com/docs/houdini/fluid/sopsourcing.html#flip-boundary-velocity [www.sidefx.com]
Technical Discussion » kinefx fix orientation post animation
-
- tamte
- 9078 posts
- Offline
if (as screenshot suggests) it's the same skeleton that works fine, but you just want to correct orients, then correct them just on rest skeleton and then you can apply the difference in local space of the animated skeleton transforms
you can most likely use Pose Difference SOP for that in Custom mode
or you can use Point Wrangle (input 0: anim skeleton, 1: original rest skeleton, 2: rest skeleton with reoriented joints):
you can most likely use Pose Difference SOP for that in Custom mode
or you can use Point Wrangle (input 0: anim skeleton, 1: original rest skeleton, 2: rest skeleton with reoriented joints):
matrix3 original_rest = polardecomp(3@opinput1_transform); matrix3 fixed_rest = polardecomp(3@opinput2_transform); 3@transform = fixed_rest * invert(original_rest) * 3@transform;
Edited by tamte - 2023年6月14日 02:48:58
Technical Discussion » VOP questions
-
- tamte
- 9078 posts
- Offline
Sybaris
2) I would like to add an attribute to each primitive (OrgPos) and store the position of the first point in the prim. I've tried a primitive VOP but there I don't seem to have access to the individual points.
ptnum output from geometryvopglobal1 contains point number of the first point of current primitive
so you can connect that to Import Point Attribute VOP to get it's P
Sybarisyou can use Set Attribute VOP to write to any element of any class
I've tried a point VOP but then I can't write an attribute to the prim...?
(primnum output from geometryvopglobal1 would be first primitive of current point which is trickier than doing it in Prim VOP SOP if a point shares multiple primitives, which I sense is not your case though)
but in case you are missing any funciton you can us Snippet VOP for inline wrangle snippet or even Inline VOP
Edited by tamte - 2023年6月12日 12:04:10
Technical Discussion » Multiparm block, tabs and folder
-
- tamte
- 9078 posts
- Offline
this is most likely not possible in HDAs at this point, since if you promote that exact multiparm it will be just a regular tab multiparm
COPs have a lot of custom UI widgets that are not replicable in HDAs, like Levels or Colormap COP sliders, Chroma Key or Color Replace COP color wheel or Convolve COP single row float 9 parms
COPs have a lot of custom UI widgets that are not replicable in HDAs, like Levels or Colormap COP sliders, Chroma Key or Color Replace COP color wheel or Convolve COP single row float 9 parms
Technical Discussion » Missing input node
-
- tamte
- 9078 posts
- Offline
you may need to switch the version of Labs Cylinder Generator
follow this [www.sidefx.com] to see how to enable menu definition dropdown where you csn switch it
follow this [www.sidefx.com] to see how to enable menu definition dropdown where you csn switch it
Technical Discussion » Remove fluid particles inside a floating object like a boat.
-
- tamte
- 9078 posts
- Offline
the most important is to check the FLIP collision field, which has checkbox on FLIP Object/Guides/Visualization
(since that's what FLIP sees, so even if your boat VDB and RBD volume representation is looking good, it is ultimately resampled at the FLIP collision grid resolution)
if you se holes in this visualization and don't want to decrease FLIP particle separation you can also override collision separation independently
or if you are already happy with your sim just don't want to have water in the boat you can create vdb sdf of the whole enclosed boat shape and remove any particles within post sim (Group SOP by Bounding Volume) or directly in Particle Fluid Surface SOP (Collision Objects input)
(since that's what FLIP sees, so even if your boat VDB and RBD volume representation is looking good, it is ultimately resampled at the FLIP collision grid resolution)
if you se holes in this visualization and don't want to decrease FLIP particle separation you can also override collision separation independently
or if you are already happy with your sim just don't want to have water in the boat you can create vdb sdf of the whole enclosed boat shape and remove any particles within post sim (Group SOP by Bounding Volume) or directly in Particle Fluid Surface SOP (Collision Objects input)
Edited by tamte - 2023年6月8日 02:08:29
Technical Discussion » Foor loop, acsess the Nth 'merge' iteration
-
- tamte
- 9078 posts
- Offline
keep your Block End set to By Pieces Or Points, but change Method to Feedback Each Iteration
then keep your Block Begin set to Extract Piece Or Point
but create another Block Begin set to Fetch Feedback, this one will bring back your previous iteration
then either pass data from Fetch Feedback directly to output to skip this iteration or merge with result of this iteration before output which will behave like Merge Each Iteration Gather input
here is a simple example that compares the current piece with geo of all previously merged iterations and if it intersects it will skip (pass previous iter) otherwise merge in the new piece
then keep your Block Begin set to Extract Piece Or Point
but create another Block Begin set to Fetch Feedback, this one will bring back your previous iteration
then either pass data from Fetch Feedback directly to output to skip this iteration or merge with result of this iteration before output which will behave like Merge Each Iteration Gather input
here is a simple example that compares the current piece with geo of all previously merged iterations and if it intersects it will skip (pass previous iter) otherwise merge in the new piece
Technical Discussion » Separate objects in render
-
- tamte
- 9078 posts
- Offline
easiest is to use Objects tab on Mantra or Karma ROP
remove * from Candidate objects
set Forced Objects to your pyro and debris
set Forced Matte to your building
therefore Pyro and Debris will be renered together, and building will be used as a matte
you can of course separate it more and just render pyro and use debris and building ad a Forced Matte
and with another rop render debris, and use building as a Forced Matte and pyro as Forced Phantom
etc...
remove * from Candidate objects
set Forced Objects to your pyro and debris
set Forced Matte to your building
therefore Pyro and Debris will be renered together, and building will be used as a matte
you can of course separate it more and just render pyro and use debris and building ad a Forced Matte
and with another rop render debris, and use building as a Forced Matte and pyro as Forced Phantom
etc...
Edited by tamte - 2023年6月7日 17:34:01
Solaris and Karma » MaterialX - Get light ray direction?
-
- tamte
- 9078 posts
- Offline
for what you are doing, you can probably use coordsys [www.sidefx.com] to access position of your light or any transformable prim
it's probably not as elegant as being able to access light directly by defining relationship or by path, but should be better than having to store primvars
if however you need per sample access to any light that the surface shader is evaluating, I'm not sure that's possible from surface shader as jsmack mentioned, since I believe there is no illuminance loop equivalent in Karma
it's probably not as elegant as being able to access light directly by defining relationship or by path, but should be better than having to store primvars
if however you need per sample access to any light that the surface shader is evaluating, I'm not sure that's possible from surface shader as jsmack mentioned, since I believe there is no illuminance loop equivalent in Karma
Technical Discussion » Get List of All Primitive Groups {[SOLVED]}
-
- tamte
- 9078 posts
- Offline
Technical Discussion » Can really VEX save so much memory?
-
- tamte
- 9078 posts
- Offline
- no, you are not saving any significant memory, if you want to really compare you have to do it on a geometry with millions of points and preferably varying value, to start seeing meaningful numbers beyond such tiny deviations
- I believe Attribute Wrangle is showing (instanced) just because it's a HDA, so technically a subnet which doesn't directly take any memory, but the memory it taken but the geo held by the internal nodes
just wrap Attribute Create SOP in Subnet and MMB on that subnet, it will show it the same way
- if you want to see more granular memory stats and precise time took by the Attribute Wrangle you have to dive inside and MMB on Attribute Wrangle Core SOP (especially since Last Cook Time on HDAs and Subnets is not the actual time it took to cook)
- I believe Attribute Wrangle is showing (instanced) just because it's a HDA, so technically a subnet which doesn't directly take any memory, but the memory it taken but the geo held by the internal nodes
just wrap Attribute Create SOP in Subnet and MMB on that subnet, it will show it the same way
- if you want to see more granular memory stats and precise time took by the Attribute Wrangle you have to dive inside and MMB on Attribute Wrangle Core SOP (especially since Last Cook Time on HDAs and Subnets is not the actual time it took to cook)
Technical Discussion » Needing to extract a curve from geometry
-
- tamte
- 9078 posts
- Offline
Nowadays there is also Curve From Edges SOP alias (technically Convert Line SOP)
Edited by tamte - 2023年6月3日 20:47:53
Houdini Indie and Apprentice » FBX Export in one file without the fpc
-
- tamte
- 9078 posts
- Offline
alexwickeswhat you are trying to export however is not keyframed animation, but direct geometry deformation aka pointcache
. In Blender, you can export a keyframed animation in an fbx file, just one file. However for the life of me I am unable to do this in Houdini.
which to my knowledge is common for .fbx exporters to export as a sidecar pointcache file in Maya Cache (.mc) or 3dsMAX Point Cache (.pc2) files
not sure if Blender can export pointcache deformation using .fbx export but if it can I bet it would also have to export it as a sidecar file
as an alternative you can export your geo including pointcache deformation or even with changing topology as .abc which tends to be more common, or even .usd
Edited by tamte - 2023年6月3日 15:23:35
Solaris and Karma » Karma - Texture Baking
-
- tamte
- 9078 posts
- Offline
that's probably what preliminary support means
no high level tools, but technically it may be possible on lower level
like for example, Render Settings LOP has whole section of properties in Karma/Texture Baking
but I don't know whether they are sufficient to put together a working baking setup as I haven't tried
no high level tools, but technically it may be possible on lower level
like for example, Render Settings LOP has whole section of properties in Karma/Texture Baking
but I don't know whether they are sufficient to put together a working baking setup as I haven't tried
Technical Discussion » Unfold or unroll SOP geometry using UV
-
- tamte
- 9078 posts
- Offline
if your UVs are on vertices use Split UV Seams from sop Tab menu, check Promote To Point Attribute
then or if uvs were on points to begin with use Attribute Swap SOP (Mode: Copy, Source: uv, Destination: P)
then or if uvs were on points to begin with use Attribute Swap SOP (Mode: Copy, Source: uv, Destination: P)
Technical Discussion » TAKE menu issues
-
- tamte
- 9078 posts
- Offline
Dave_ahmanual is not referring to the Take button, but Take List pane [www.sidefx.com]
On my Windows, MMB and RMB over TAKE button does not work.
to open take list pane go to Windows/Take List
then RMB to any take in the take list tree and select Delete Take, or just select one and hit Del
Technical Discussion » Multisolver vs. Merging Solvers
-
- tamte
- 9078 posts
- Offline
I don't think the setup on the right is a valid set up, it should give you an error
since the output of popsolver3 is not a solver (solvers are purple), but an object, since its already attached to popobject2
you use multisolver when you want to attach multiple solvers to a single dop object
but you can also merge multiple solvers especially microsolvers and then attach to an object
since the output of popsolver3 is not a solver (solvers are purple), but an object, since its already attached to popobject2
you use multisolver when you want to attach multiple solvers to a single dop object
but you can also merge multiple solvers especially microsolvers and then attach to an object
Edited by tamte - 2023年5月30日 12:43:45
Technical Discussion » Is it possible to align two sets of point cloud in Houdini?
-
- tamte
- 9078 posts
- Offline
If you isolate the same set of points from both pointclouds in the same order then Extract Transform SOP will give you the best fit rigid transform that you can use to align the full versions of pointclouds
If you have surfaced versions of those pointclouds you can potentially use Topo Transfer SOP to apply non rigid transform based in matching location markers
If you have surfaced versions of those pointclouds you can potentially use Topo Transfer SOP to apply non rigid transform based in matching location markers
-
- Quick Links