Found 4455 posts.
Search results Show results as topic list.
Technical Discussion » Faster interactive view of vegetation?
- jsmack
- 7659 posts
- Online
In order for draw modes to work, all ancestor primitives must have valid model kinds. The root prim 'geo' is kindless. Configure it as a 'group' to get the components under it support draw modes. Where is 'geo' coming from? Is that a subnet at obj level?
Technical Discussion » How to trigger global env var update from Python or Hscript?
- jsmack
- 7659 posts
- Online
Solaris and Karma » Custom HDAs Not Supported in LOPS?
- jsmack
- 7659 posts
- Online
jlapre
What am I missing?
Custom nodes require object processor scripts. You can look at the base examples in the houdini/husdplugins/objtranslators folder.
If they map to standard geo/subnet nodes, then you can probably just register the existing translators under the hda names.
Solaris and Karma » How do I link geometry to a camera in solaris?
- jsmack
- 7659 posts
- Online
BradThompson
Maybe my misunderstanding comes from the "primitive" parameter on lop nodes. I'm assuming that if the path I enter points to a valid prim in the scene graph, I'm editing/overriding some aspect of that prim. Otherwise, I'm adding a new prim. Maybe that's a bad assumption?
Every 'folder' in that path is a primitive. The node could be affecting just the last one, but often it affects all of them. In the case of a 'create' node, they have to create all of them otherwise the leaf primitive would be the children of primitives that don't exist. An edit node usually only affects the last node. The sopcreate node has an option to only create the leaf nodes, with the rest being overlays. However in that mode, if any primitive in the path doesn't exist, then the mesh will be invisible/not resolve.
Houdini Indie and Apprentice » Easiest way to add bump texture details to a render?
- jsmack
- 7659 posts
- Online
djluis001
I tried connecting a Turbulence Noise to Principle Shader (rendering using Karma), but could not accomplish the desired result. Any advice on a easy way to do that?
What did you try and what are you after?
Solaris and Karma » Karma deep samples
- jsmack
- 7659 posts
- Online
tamte
how would one generate only deep opacity map, aka DSM?
which rendervar do I point DCM Render Vars parm to?
I've mostly used only DSM in Mantra due to image sizes, so would be great to have easy way to do that in Karma also
that would also avoid oversampling based on light as only opacity values would be considered over depth
It sounds like deep images need to be converted to point clouds so they can be binned properly with a fuse sop or something.
Solaris and Karma » Exporting out as MaterialX
- jsmack
- 7659 posts
- Online
azab4d
So, what should i do to export correctly a materialX shader from Houdini and read it back in houdini without losing the nodes connected to the main shader?
I don't think you can round trip mtlx yet.
Solaris and Karma » How do I link geometry to a camera in solaris?
- jsmack
- 7659 posts
- Online
BradThompson
Why would I ever want children to change the primitive type of the parents?
There is no child-parent relationship in USD used for composition. Composition rules are always at same level. It may seem illogical from the perspective of this limited example, but stronger layers should always be able to override weaker layers. If the sop create didn't define the type of the parent primitives, then you would end up with undefined parents and the mesh created by the sop layer would not be visible. In cases where you know the parent primitives already exist, then overs can be used rather than defines and the type can be left undefined for the ancestors.
Solaris and Karma » Karma deep samples
- jsmack
- 7659 posts
- Online
dlee
There's "DCM Compression" parameter on Render Product LOP which is set to 5 by default (higher the number, lossier/smaller the result). If you're enabling deep via karma LOP, you'll have to dive into the LOP and find the product node and change the property there.
Can you sample other areas of the image (say, the grey face right below the one you sampled, or the blue platonic in the background) and see how many samples there are? I suspect the reason why there are so many samples in that particular pixel is because it's overly lit, and discarding more samples introduces too much contrast between the actual data and reconstructed signal which can't be tolerated at the default compression setting.
What image planes are used for computing the tolerance?
Technical Discussion » Faster interactive view of vegetation?
- jsmack
- 7659 posts
- Online
dhemberg
So I'm stuck at a place where I need to be able to modify the geo (specifically the shaders) downstream of the copy, but would love to lighten the burden on viewport drawing. Do I have any options?
Use /Stage and you can modify the draw style of components or use proxy meshes for interactive display while still being able to see the hierarchy and assign materials.
Options in /obj land are limited. Like you said you can pack them, but then you can't assign materials directly anymore without resorting to the dead end stylesheets. You can set the draw mode of the object to bounding box, but that only really helps if each object is separate.
Solaris and Karma » How do I link geometry to a camera in solaris?
- jsmack
- 7659 posts
- Online
BradThompson
To answer my own question, building the geo in it's own layer, then using a "graft" node to attach the sublayer to the camera works. The more I work in solaris/USD, the less patient I become with all it's fiddly landmines and inefficiencies.
The sopcreate is creating Xform prims for all the ancestors of the imported geo. Creating them after the camera is created means it has a stronger opinion. It's like in sops if you perform an operation after the previous one, the later operation has precedence. Creating the camera after the sopcreate or using a sublayer with sopcreate set to 'weakest position' results in the camera taking precedence over the sopcreate.
Alternatively, when the sopcreate is set to "load as reference" the parent primitive type can be left as 'None' so that it won't change the ancestor primitive types.
Perhaps there needs to be a feature added to Sopcreate in sublayer mode so that it can also optionally leave ancestor primitive types unchanged.
Edited by jsmack - May 18, 2022 13:15:37
Technical Discussion » How do I set environment variables ?
- jsmack
- 7659 posts
- Online
environment variables are set by your OS before launching programs. On windows they can be created with the environment variable editor control panel, or added to the environment when launching houdini by using a batch file. Adding them to the houdini.env can also be used to set most Houdini variables except for HOUDINI_USER_PREF_DIR, since the houdini.env is located in that folder.
As for setting your user prefs folder to a non-synced directory, I don't think that's required. I have my home houdini folder in my documents folder on OneDrive and don't have any problems.
As for setting your user prefs folder to a non-synced directory, I don't think that's required. I have my home houdini folder in my documents folder on OneDrive and don't have any problems.
Technical Discussion » Bad Parameter reference error
- jsmack
- 7659 posts
- Online
boss.tleuli
just change the parameter type from float to integer
just ignore it, it doesn't matter.
Technical Discussion » Display value result in interface using label?
- jsmack
- 7659 posts
- Online
Use backticks to evaluate an expression in a text field. Labels are no different than string parameters in this way.
`ch("sizex")/ch("rows")`
Edited by jsmack - May 18, 2022 01:18:53
Solaris and Karma » MaterialX + String path attributes?
- jsmack
- 7659 posts
- Online
dhemberg
I'm trying to solve a problem that I describe in this other thread , which sounds very similar to what y'all are discussing here. But, in trying to learn whether Material Stylesheets might be a way to approach this problem, I also found this thread , where Rafal offers a very helpful file with lots of examples of doing similar work at the primitive level in LOPS.
That problem is not entirely relevant to the one here. Feeding varying numerical attributes to MaterialX shaders is fairly trivial. This thread was about strings in particular.
dhemberg
An example showing this exact issue - driving the value of a filename parameter on a MaterialX Texture node - isn't covered in Rafal's file, but a post later down the thread describes a 'hack' for feeding prim string attributes into the renderer, which leaves me a little confused as to whether a path exists for what I'm after (or, if not, whether it might be forthcoming in H19.5)?
The 'hack' refers to using stylesheets to connect attributes to cryptomattes via user properties overrides. This hack is not required for Karma, as driving cryptomattes with primvar attributes is also trivial.
Varying texture paths on MaterialX shaders in LOPs is basically a non-starter. There's no plug on the texture node, so not much you can do besides authoring opinions directly to the mtlx image node.
Edit:
attached example of how you might edit the texture prims directly just using usd overrides.
Edited by jsmack - May 17, 2022 22:22:48
Technical Discussion » Using the complex.h header files complex number functions?
- jsmack
- 7659 posts
- Online
_GandalfTheGay_
Just impemented the mandelbrot set with the functions, thanks for your help!
Nice! Don't forget to enable 64bit if you plan on zooming in much.
Houdini Lounge » Can houdini separate objects like maya can?
- jsmack
- 7659 posts
- Online
There's also the extract shelf tool on the modify shelf. Select faces, tab->extract
Note that it doesn't remove the selection from the original object, it creates more of a 'duplicate' that references the original.
Note that it doesn't remove the selection from the original object, it creates more of a 'duplicate' that references the original.
Technical Discussion » Assign material to primitive group?
- jsmack
- 7659 posts
- Online
TangheStudent
Here to ask the same question but in the lops context.
There is a rough approximation called geometry subsets, which allow for assigning different materials to parts of the same mesh. Sop import can convert groups to geometry subsets automatically.
Technical Discussion » Using the complex.h header files complex number functions?
- jsmack
- 7659 posts
- Online
The constructor function CMPLX is just a regular function that takes two float arguments.
for example:
You can also use the struct constructer style
for example:
complex z = CMPLX(3.14, 2.227); printf("%d", cimag(z)) printf("%d", creal(z)) 2.227 3.14
You can also use the struct constructer style
complex C = {1.5, 0.5};
Houdini Lounge » will houdini consider adopting the new C4D/blender like UI?
- jsmack
- 7659 posts
- Online
timurproko
Atleast updating the icons, to make them more modern, simple and consistent would be nice.
Rejecting the regressive superflat hegemony does not make one less modern
-
- Quick Links