Found 681 posts.
Search results Show results as topic list.
Solaris and Karma » possible randomize particle radius in solaris?
- goldleaf
- 4175 posts
- Offline
Yes you can set the Attribute Wrangle to Run on Elements of Array Attributes, and set or adjust attributes/primvars as needed. Python could also work, but you'd probably want to use Numpy to be performant.
Solaris and Karma » Referenced usd files using env vars exports incorrect paths.
- goldleaf
- 4175 posts
- Offline
I would look into how you're launching husk, as these search paths should always be setup internally. There isn't any env var you need to set. If you can repro the problem with a vanilla, basic setup, please log a bug for it. Thanks!
Solaris and Karma » Referenced usd files using env vars exports incorrect paths.
- goldleaf
- 4175 posts
- Offline
Paths that use $HFS (and $HH is the same as $HFS/houdini), are turned into 'search paths'; you can recognize search paths because they don't start with a period, slash, or drive letter. This was done intentionally to avoid making fragile absolute or relative paths that point to things that ship with Houdini. Houdini automatically adds $HFS as a search path, so it can find these assets automatically.
Solaris and Karma » Where are the lens shaders?
- goldleaf
- 4175 posts
- Offline
Sorry for the confusion. The Material Library's tab menu is filtered to avoid the overwhelming users with too many incompatible options when building their materials, which is why lens shaders are hidden from the tab menu. You can also put lens shaders in `/mat`, make a new Material Network (i.e. `matnet`) in your LOP Network, or make a VEX Material Builder in the Material Library LOP, and create lens shaders in there. If you really want the massive, unfiltered VOP tab menu, you can clear-out the Tab Menu Mask parm on the Material Library LOP.
Lens shaders don't get converted to USD like other materials, so they don't require a connected material library node. When the Camera LOP cooks, that node does the authoring/copying of VEX code. This setup is related to why lens shaders can't really be animated, like other materials in USD. We're working to improve lens shader authoring/workflows for future releases.
Lens shaders don't get converted to USD like other materials, so they don't require a connected material library node. When the Camera LOP cooks, that node does the authoring/copying of VEX code. This setup is related to why lens shaders can't really be animated, like other materials in USD. We're working to improve lens shader authoring/workflows for future releases.
Solaris and Karma » Localizing reference textures... there has to be a better way
- goldleaf
- 4175 posts
- Offline
There is an Output Processor on the USD ROP, labeled "Copy All Assets to Referencing Layer Directory". It copies any non-USD paths (such as texture maps) so they are localized and portable with the USD output. This is what Component Output uses.
Modify Paths doesn't touch the files on disk, it just changes the data in USD to look for the files in a different location.
So the "Copy All Assets to Referencing Layer Directory" output processor should help you out. It would copy the files into the same location as your USD being exported, and updates the attributes so they point to the new location.
Modify Paths doesn't touch the files on disk, it just changes the data in USD to look for the files in a different location.
So the "Copy All Assets to Referencing Layer Directory" output processor should help you out. It would copy the files into the same location as your USD being exported, and updates the attributes so they point to the new location.
Solaris and Karma » timesampled hairprocedural motionblur
- goldleaf
- 4175 posts
- Offline
ronald_a
Is timesampled motionblur supposed to work with the hair procedural in H20 or is it still just vectormotionblur?
Still just velocity or acceleration blur.
Solaris and Karma » Custom Husk Procedurals
- goldleaf
- 4175 posts
- Offline
Ben Toogood Aardman
@robp_sidefx - are you able to give a steer on whether it would be possible enable the SOP GuideDeform 'Arbitrary Geometry' mode within the current Solaris Hair Procedural? We'd be up for customising the hair_graph.bgeo.sc (have had success following the steps mentioned on the other thread to avoid the issue of moving roots to the skin) but only to the level of bypassing/enabling parts of the existing graph.
Does the existing embedded graph have the logic for enabling 'Arbitrary Geometry' in deformation mode and it's just not exposed at the user level, or is the graph a more stripped back implementation?
If it's a no go with hacking the existing hair_graph.bgeo.sc, would implementing that behaviour into the Hair Procedural be a quick and easy thing for Sidefx to do.. or is there a good reason why it's not there already?
many thanks
Well, it's not there mainly because it's the Hair Procedural
It doesn't look like the embedded graph has removed that logic, so customizing the existing graph may work; though it's hard to tell if it's a quick and easy thing or not. We have other ideas/plans in this space (nothing to announce/discuss yet though), so it isn't likely that we'd change the hair procedural this way. But feel free to give it a try, and keep us posted if you wish!
Solaris and Karma » Camera Defaults in Solaris
- goldleaf
- 4175 posts
- Offline
Solaris and Karma » materialX mix node in houdini20 changes the signature
- goldleaf
- 4175 posts
- Offline
Upstream, the MaterialX library removed those signature types in the version that H20.0 uses. IIRC, those signatures weren't actually supported/functional for all MaterialX shader targets.
Solaris and Karma » "Render All Frames with a Single Process"
- goldleaf
- 4175 posts
- Offline
By default Karma ROP (and USD Render) render the current frame to a temp USD file and render that image. Very similar to how Mantra generates .ifd files, Renderman does .rib, etc...
When you turn on "Render All Frames in a Single Process" Houdini cooks out the specified frame range into a single USD file, and renders that scene which has a range of animated data. This has the advantage of not requiring husk to have to load a new stage, saving composition costs. Advancing frames should always be faster than composing a stage from scratch.
The only downside I can see, is sometimes you can animate things in Houdini, that USD doesn't actually support as animated. For example, you can use a time-based expression in LOPs to animate variant selections over time. However USD itself does not allow for animated variant set selections. I think with the Karma ROP, those situations may not be as easy to hit as they might be in proper LOPs, but just something to be aware of. It's also a fairly new concept, as most rendering processes are accustomed to thinking in "file-per-frame" terms.
Hope that helps!
When you turn on "Render All Frames in a Single Process" Houdini cooks out the specified frame range into a single USD file, and renders that scene which has a range of animated data. This has the advantage of not requiring husk to have to load a new stage, saving composition costs. Advancing frames should always be faster than composing a stage from scratch.
The only downside I can see, is sometimes you can animate things in Houdini, that USD doesn't actually support as animated. For example, you can use a time-based expression in LOPs to animate variant selections over time. However USD itself does not allow for animated variant set selections. I think with the Karma ROP, those situations may not be as easy to hit as they might be in proper LOPs, but just something to be aware of. It's also a fairly new concept, as most rendering processes are accustomed to thinking in "file-per-frame" terms.
Hope that helps!
Solaris and Karma » Layout Only Uses One Variant ?
- goldleaf
- 4175 posts
- Offline
If you set the thumbnail mode to "render", and toggle on "Save Thumbnail to Disk", then it should render out a thumbnails for each geometry variant.
There seems to be a bug causing "Generate Thumbnail" to on re-render the main thumbnail, rather than the variant thumbnails.
There seems to be a bug causing "Generate Thumbnail" to on re-render the main thumbnail, rather than the variant thumbnails.
Solaris and Karma » component builder - hirarchies linked ?
- goldleaf
- 4175 posts
- Offline
In this situation, I suspect the default/basic setup for Component Builder is not going to work with this deeper/complicated hierarchy. If you need proxies, than the render/proxy setup from Component Geometry is too simplistic. You'll need the proxy/render purpose geometry to exist underneath the same Xform prims, so they pick up the same transforms.
You can use vanilla SOP Imports to set these up. You can alson set `usdpurpose` attributes in SOPs, to import SOP geometry with a USD purpose already setup; or you could just setup purpose in LOPs. After you have a hierarchy where the proxy/render prims are siblings in the heirarchy, you'll want to set Component Output to "Input Primitives" mode. This makes it far simpler, and doesn't try to use the incoming nodes to make a lot of layers.
You could also decide whether or not you even need proxies. If the geometry is straight-forward enough, it might not be necessary or worthwhile setting up.
Hope this helps!
You can use vanilla SOP Imports to set these up. You can alson set `usdpurpose` attributes in SOPs, to import SOP geometry with a USD purpose already setup; or you could just setup purpose in LOPs. After you have a hierarchy where the proxy/render prims are siblings in the heirarchy, you'll want to set Component Output to "Input Primitives" mode. This makes it far simpler, and doesn't try to use the incoming nodes to make a lot of layers.
You could also decide whether or not you even need proxies. If the geometry is straight-forward enough, it might not be necessary or worthwhile setting up.
Hope this helps!
Solaris and Karma » Working with Variants and LODs
- goldleaf
- 4175 posts
- Offline
NicTanghe
Hello i made this post where i explained my specific problem.
https://www.sidefx.com/forum/topic/94486/ [www.sidefx.com]
does annyone know if this is possible or if i have to do the varient selection in diferent nodetrees ?
PS.goldleafPS. if you use drawmode and switch between those, wouldn't they still be in memory?
Nope variantSets don't intrinsically have a concept of "LOD", though they can be used for that. That HDA in LOPs is just an example setup; maybe SESI have plans for something that looks for LOD-prefixed variants in a given variantSet?
USD has some other mechanisms for LOD, such as Purpose and Draw Mode. As VariantSets can't be animated over time, they couldn't work for any dynamic LOD conventions.
Hope that helps!
No, Variant Sets are like references, the things they are changing must be encapsulated beneath the primitive w/ the variant set.
With LOPs they may still be in memory, since the Viewport stage and Network's stage can differ.
Solaris and Karma » Lods on varients as seperate sets
- goldleaf
- 4175 posts
- Offline
If they are changing different things in the scene, then they shouldn't affect one another. In context of the Component Builder, you can use the Component Geometry Variants node to make your LOD variants (i.e. geometry). And then the Component Material nodes will add to the material variant. And those are separate. If you use Component Material nodes as inputs to the Component Geometry Variants node, then the available material variant selections could be different, when you change the geometry/LOD variant.
It's worth mentioning that USD doesn't have a special notion of "LOD"; most people use Variant Sets to capture LOD options (with the understanding that these can't be animated to change dynamically over the timeline of a shot). If you want to separate LOD variants from other variants, just ensure the other variants are either not affected by the differences between the LOD selections, or you encode the other variant sets within each LOD variant selection.
I couldn't quite understand that file, but hopefully this explanation helps!
It's worth mentioning that USD doesn't have a special notion of "LOD"; most people use Variant Sets to capture LOD options (with the understanding that these can't be animated to change dynamically over the timeline of a shot). If you want to separate LOD variants from other variants, just ensure the other variants are either not affected by the differences between the LOD selections, or you encode the other variant sets within each LOD variant selection.
I couldn't quite understand that file, but hopefully this explanation helps!
Technical Discussion » Solaris Fails to Render Karma Pyro Material
- goldleaf
- 4175 posts
- Offline
This should be fixed in tomorrow's build; 20.0.617 corrects the aov format type on the generated render var prim.
Technical Discussion » Solaris: can't assign material {[SOLVED]}
- goldleaf
- 4175 posts
- Offline
There is a bug where the materials aren't showing up on Component Materials, but they do work if you dive inside or add a Component Output. We're working on the bug.
Solaris and Karma » Disappointing Layout Editing
- goldleaf
- 4175 posts
- Offline
We hear you, we're disappointed with where things are at too.
There isn't really much more to say that would satisfy the frustrations. We expect to make progress over each of the coming releases; most (if not all) of the problems mention above are on our road maps. Bear with us for now, and please keep logging issues.
We hope the re-factoring and fixes will be worth the wait.
There isn't really much more to say that would satisfy the frustrations. We expect to make progress over each of the coming releases; most (if not all) of the problems mention above are on our road maps. Bear with us for now, and please keep logging issues.
We hope the re-factoring and fixes will be worth the wait.
Solaris and Karma » Solaris Large Scene question / best practices?
- goldleaf
- 4175 posts
- Offline
I'm using the asset reference node to load in my usd assets.
That's normally just fine, though it only allows for referencing; the vanilla reference lop can switch to 'payload file' mode. But you'd need to move your transforms to a separate Transform LOP.
If you aren't able to re-export your USD assets using the Component Builder, you could unlock each of the Asset Reference nodes, and on the Reference LOP inside, switch the type over to 'payload file' instead of 'reference file'; then insert a Loft Payload Info that @mtucker mentioned, between the align_to_up_axis and OUT nodes. Set the primitives to
`chs("../primpath")`
and that should help your scene to be more un-loadable.This suggestion may or may not work, there might be details we can't see.
I guess I could reframe my question as "can i add / create the payloads" once the assets have been loaded into the scene?
Unfortunately, no there isn't really a way to do that, it needs to exist in the first place. Take a look at the Component Builder, it might not be as much work as you're expecting, to re-export your assets so you have proper payloads; but if not hopefully these suggestions help get you going.
Solaris and Karma » Can't see rest of lops while in sopcreate
- goldleaf
- 4175 posts
- Offline
Currently, only the stage at that SOP Create, can be displayed while you dive inside. Since that SOP Create has no inputs, technically the viewport is displaying what it can; but it's understandable why it's a bit confusing. If you were to put a SOP Create below the Camera or Merge LOPs, then you'd be able to see the scene. As a caveat, currently Houdini cooks the SOP network but also cooks the SOP Import process as well, which can cause a performance hit.
Having said all of that, being able to efficiently see a USD stage, while in SOPs, is definitely something that we want to improve. We're are working towards those goals as quickly as we can, as it affects all sorts of workflows in Houdini.
Hopefully that helps a bit!
Having said all of that, being able to efficiently see a USD stage, while in SOPs, is definitely something that we want to improve. We're are working towards those goals as quickly as we can, as it affects all sorts of workflows in Houdini.
Hopefully that helps a bit!
Solaris and Karma » change material binding with vex
- goldleaf
- 4175 posts
- Offline
It's not necessarily dangerous, it's just the generic function for relationship attributes is all we have; I think we just need a VEX function to create material bindings. While warnings/detection could be good (could be done with the Scene Doctor LOP), I think the "correct" way is just make functions that do the action and apply the schema. VEX already does this in some cases (i.e. collections); we just need one to make material assignments in a general VEX script.
-
- Quick Links