-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add Load Shot LOP and Mute Layers LOP #56
Conversation
…enhancement/lop_load_shot
…Configure Stage LOP node
The layer muting is unfortunately based on wildcards to filename patterns. This means that also the "example defaults" are somewhat based on:
We may want to:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's update the node to match how lop import works
...nt/ayon_houdini/startup/otls/ayon_lop_load_shot.hda/ayon_8_8Lop_1load__shot_8_81.0/OnCreated
Outdated
Show resolved
Hide resolved
...ayon_houdini/startup/otls/ayon_lop_load_shot.hda/ayon_8_8Lop_1load__shot_8_81.0/PythonModule
Outdated
Show resolved
Hide resolved
...ayon_houdini/startup/otls/ayon_lop_load_shot.hda/ayon_8_8Lop_1load__shot_8_81.0/DialogScript
Outdated
Show resolved
Hide resolved
...ayon_houdini/startup/otls/ayon_lop_load_shot.hda/ayon_8_8Lop_1load__shot_8_81.0/DialogScript
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It should exist there. It also didn't work for me for the Load Asset LOP so I'm unsure what's wrong in this case since I assumed something on my end was just buggy and it'd never display. It's as if on my end it never refreshes the HELP docs :) Does ad6fe64 fix it for you @MustafaJafar ? |
I think I've hit the issue mentioned in this comment #56 (comment) Since, the variant sets (department names) are hardcoded/specified in settings, Are we able to get the reference path of the current variant ? I think it won't care about how I named my files. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It should exist there. It also didn't work for me for the Load Asset LOP so I'm unsure what's wrong in this case since I assumed something on my end was just buggy and it'd never display.
It's as if on my end it never refreshes the HELP docs :)
Does ad6fe64 fix it for you @MustafaJafar ?
It needs two additional changes to work.
After applying the following changes, it works on my side.
...houdini/startup/otls/ayon_lop_mute_layers.hda/ayon_8_8Lop_1mute__layers_8_81.0/Sections.list
Show resolved
Hide resolved
...dini/startup/otls/ayon_lop_mute_layers.hda/ayon_8_8Lop_1mute__layers_8_81.0/ExtraFileOptions
Outdated
Show resolved
Hide resolved
Co-authored-by: Mustafa Taher <[email protected]>
I'm not sure why/when you'd actually want to mute a specific variant's layer but that may be me missing the point. Usually it's way higher level just muting a specific full department layer - but maybe on your end you somehow have messed up not working department layers at all. You seem to also be Loading Shot what is essentially an Asset Structure - so you should be loading an asset (reference) so that you can load into the scene structure the way you like instead of layering in the exact hierarchy of the asset file without control over where to put it into the scene. |
Co-authored-by: Mustafa Taher <[email protected]>
…shot' of https://github.com/BigRoy/ayon-houdini into enhancement/lop_load_shot
In my example I had one USD layer for each USD department layer, for each variant in my department layer to be specific. Therefore, muting the whole department layer is the same as muting one layer. Here's how the modeling department layer looks like on my side: #usda 1.0
# robo_moco_usdMocoAsset_model_v015.usd
(
defaultPrim = "moco"
metersPerUnit = 1
upAxis = "Y"
)
def Xform "moco" (
variants = {
string model = "MocoGeo"
}
prepend variantSets = "model"
)
{
variantSet "model" = {
"MocoGeo" (
prepend references = [
@\\storage\work\ayon_projects\Robo\Assets\Character\moco\publish\usd\usdMocoGeo\v004\robo_moco_usdMocoGeo_v004.usd@ (
customData = {
int ayon_order = 100
string ayon_uri = "ayon://Robo//Assets/Character/moco?product=usdMocoGeo&version=4&representation=usd"
}
)
]
) {
}
"MocoGeo2" (
prepend references = [
@\\storage\work\ayon_projects\Robo\Assets\Character\moco\publish\usd\usdMocoGeo\v006\robo_moco_usdMocoGeo_v006.usd@ (
customData = {
int ayon_order = 100
string ayon_uri = "ayon://Robo//Assets/Character/moco?product=usdMocoGeo&version=6&representation=usd"
}
)
]
) {
}
}
}
Yeah, I'm exposed, that scene was some test scene that I published as asset and as shot to test the publish plugins. |
@MustafaJafar with you exposed does that mean this PR still has fixes to do? or is it actually ready for approval? Layer muting in USD works off of filepaths (or actually We can improve over time of course when issues arise. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Played with this PR and it is awesome 😉
Changelog Description
This adds two new HDAs/OTLs for Houdini for the USD workflow:
*modeling*
in the name, to - in that way, hopefully make it trivial to mute the layers you don't want active in your current scene - e.g. the department layer you're currently working on.Additional info
The Load Shot LOP makes it easy to load e.g. the current shot:
The Mute Layers LOP has some 'easy access' presets you can apply to mute specific layers:
Testing notes: