diff --git a/CHANGELOG.md b/CHANGELOG.md index f781c943..27650289 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,24 @@ +## [1.3.1] - 2024-10-29 (Bifrost 2.12) + +### Build + - BIFROST-10711 - Prevent older boost from using deprecated templates + - BIFROST-10578 - Fix sanitizer errors + +### Feature + - BIFROST-10691 - Set target layer using layer or display name instead of index + + - Add layer input to add_to_stage and add_to_stage_in_variant nodes + - Add layer_display_name input to set_edit_layer node + - Add USD::Layer::get_layer_display_name Operator + +### Bugfix + - BIFROST-10745 - Fix Bifrost Browser scene "create_point_instancer_from_usd_file_example.ma". + + Since the _scene_info_ node does not prepend a '/' anymore for the scene directory, + a '/' separator has been added to build the path of the referenced USD file. + + - BIFROST-11053 - Fix error message when opening Data Browser for the first time + ## [1.3.0] - 2024-07-29 (Bifrost 2.11) ### Build diff --git a/CMakeLists.txt b/CMakeLists.txt index 9e3bf8a5..89cd935f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -54,6 +54,15 @@ set(CMAKE_EXPORT_COMPILE_COMMANDS ON) message(STATUS "CMAKE_BUILD_TYPE: ${CMAKE_BUILD_TYPE}") +# Boost headers are indirectly included by USD and Boost is still using +# std::unary_function which was deprecated in C++11 and removed in C++17. +# Defining BOOST_NO_CXX98_FUNCTION_BASE prevents Boost from using deprecated +# templates. This seems to be fixed in Boost >= 1.81, so we may be able to +# remove that when the version of boost shipped with USD is updated. +# _HAS_AUTO_PTR_ETC is also needed for older boost versions. +add_definitions(-DBOOST_NO_CXX98_FUNCTION_BASE=1) +add_definitions(-D_HAS_AUTO_PTR_ETC=0) + #============================================================================== # Define common build variables #============================================================================== @@ -152,6 +161,7 @@ include(${BIFUSD_TOOLS_DIR}/gtest.cmake) #============================================================================== find_package(Bifrost REQUIRED SDK) +find_package(OpenGL REQUIRED) find_package(USD REQUIRED) #============================================================================== diff --git a/bifrost_hydra/CMakeLists.txt b/bifrost_hydra/CMakeLists.txt index 451afe13..89fbdb77 100644 --- a/bifrost_hydra/CMakeLists.txt +++ b/bifrost_hydra/CMakeLists.txt @@ -22,4 +22,9 @@ endif() find_package(Bifrost REQUIRED SDK) add_subdirectory(src) -add_subdirectory(test) + +if (NOT BIFUSD_ENABLE_ADDRESS_SANITIZER) + # Skip tests when using adress sanitizer as when building Bifrost USD standalone, it errors with: + # "AddressSanitizer:DEADLYSIGNAL 1: AddressSanitizer: nested bug in the same thread, aborting." + add_subdirectory(test) +endif() diff --git a/bifrost_hydra/src/BifrostHdGraph/BifrostGraphGenerativeProceduralPlugin.cpp b/bifrost_hydra/src/BifrostHdGraph/BifrostGraphGenerativeProceduralPlugin.cpp index 9274d1eb..cf3d4b8b 100644 --- a/bifrost_hydra/src/BifrostHdGraph/BifrostGraphGenerativeProceduralPlugin.cpp +++ b/bifrost_hydra/src/BifrostHdGraph/BifrostGraphGenerativeProceduralPlugin.cpp @@ -1,5 +1,5 @@ //- -// Copyright 2023 Autodesk, Inc. +// Copyright 2024 Autodesk, Inc. // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -18,6 +18,8 @@ #include "BifrostGraphGenerativeProcedural.h" +#include + #include PXR_NAMESPACE_USING_DIRECTIVE @@ -32,7 +34,11 @@ HdGpGenerativeProcedural* BifrostGraphGenerativeProceduralPlugin::Construct( /////////////////////////////////////////////////////////////////////////////// +BIFUSD_WARNING_PUSH +// Silence USD warning that we cast from 'void (*)(TfType *)' to 'void (*)()' +BIFUSD_WARNING_DISABLE_CLANG_160(-Wcast-function-type-strict) TF_REGISTRY_FUNCTION(TfType) { +BIFUSD_WARNING_POP HdGpGenerativeProceduralPluginRegistry::Define< BifrostGraphGenerativeProceduralPlugin, HdGpGenerativeProceduralPlugin>(); diff --git a/bifrost_hydra/test/CMakeLists.txt b/bifrost_hydra/test/CMakeLists.txt index 2dc6c90a..23aec9f5 100644 --- a/bifrost_hydra/test/CMakeLists.txt +++ b/bifrost_hydra/test/CMakeLists.txt @@ -80,13 +80,16 @@ set(usd_env_config USD_TEST_OUTPUT_DIR=${CMAKE_CURRENT_BINARY_DIR} ) +if (BIFUSD_ENABLE_ADDRESS_SANITIZER) + set(asan_options ASAN_OPTIONS=detect_container_overflow=0) +endif() + foreach(test_file ${test_files}) configure_bifusd_unittest( ${test_file} "bifrost_hydra" LINK_LIBS ${libs} ${pxr_libs} SHARED_LIB_DIRS ${BIFUSD_EXTRA_BUILD_AND_TEST_PATHS} ${Maya_SHARED_LIB_DIRS} - ENV_VARS ${bifrost_env_config} ${usd_env_config} - ASAN_OPTIONS ${ASAN_OPTIONS} + ENV_VARS ${bifrost_env_config} ${usd_env_config} ${asan_options} OPTIONS $<${BIFUSD_IS_MSC}:/wd4251 /wd4273> ) get_unittest_target(unittest_target "bifrost_hydra" ${test_file}) diff --git a/cmake/bifusd/compiler_Clang.cmake b/cmake/bifusd/compiler_Clang.cmake index f5bf0964..ed41e456 100644 --- a/cmake/bifusd/compiler_Clang.cmake +++ b/cmake/bifusd/compiler_Clang.cmake @@ -1,6 +1,6 @@ #- #***************************************************************************** -# Copyright 2023 Autodesk, Inc. +# Copyright 2024 Autodesk, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -188,3 +188,7 @@ set(CMAKE_CXX_FLAGS_DEBUG_INIT "${cxx_flags_debug}") # compiler flags set(cxx_flags -fPIC) + +if (BIFUSD_ENABLE_ADDRESS_SANITIZER) + list(APPEND cxx_flags -fsanitize=address) +endif() diff --git a/cmake/bifusd/gtest.cmake b/cmake/bifusd/gtest.cmake index 0b0f1661..da5d0b89 100644 --- a/cmake/bifusd/gtest.cmake +++ b/cmake/bifusd/gtest.cmake @@ -1,6 +1,6 @@ #- #***************************************************************************** -# Copyright 2022 Autodesk, Inc. +# Copyright 2024 Autodesk, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -28,6 +28,7 @@ if(NOT BIFUSD_GTEST_LOCATION) googletest GIT_REPOSITORY https://github.com/google/googletest.git GIT_TAG release-1.12.1 + GIT_CONFIG core.longpaths=true ) # Populate diff --git a/cmake/bifusd/src/config/CfgWarningMacros.h b/cmake/bifusd/src/config/CfgWarningMacros.h index 33cb38ae..3bb153a6 100644 --- a/cmake/bifusd/src/config/CfgWarningMacros.h +++ b/cmake/bifusd/src/config/CfgWarningMacros.h @@ -1,5 +1,5 @@ //- -// Copyright 2022 Autodesk, Inc. +// Copyright 2024 Autodesk, Inc. // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -108,6 +108,12 @@ #define BIFUSD_WARNING_DISABLE_CLANG_80(a) #endif +#if BIFUSD_IS_CLANG && (__clang_major__ >= 16) +#define BIFUSD_WARNING_DISABLE_CLANG_160(a) BIFUSD_WARNING_DISABLE(a) +#else +#define BIFUSD_WARNING_DISABLE_CLANG_160(a) +#endif + #if BIFUSD_IS_GCC #define BIFUSD_WARNING_DISABLE_GCC(a) BIFUSD_WARNING_DISABLE(a) #else diff --git a/cmake/bifusd/utils.cmake b/cmake/bifusd/utils.cmake index 440ee4b3..3ba0de31 100644 --- a/cmake/bifusd/utils.cmake +++ b/cmake/bifusd/utils.cmake @@ -1,6 +1,6 @@ #- #***************************************************************************** -# Copyright 2023 Autodesk, Inc. +# Copyright 2024 Autodesk, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -21,6 +21,7 @@ endif() set(bifusd_utils_included true) option(BIFUSD_USE_DEBUGGER "Launch unit tests using the platform-specific debugger." OFF) +option(BIFUSD_ENABLE_ADDRESS_SANITIZER "Enable AddressSanitizer compiler instrumentations." OFF) # Export the given list of variables from the local scope to the parent scope. # diff --git a/cmake/version.info b/cmake/version.info index 7a1f7507..ff5d423d 100644 --- a/cmake/version.info +++ b/cmake/version.info @@ -1,3 +1,3 @@ set(BIFROST_USD_PACK_MAJOR_VERSION 1) set(BIFROST_USD_PACK_MINOR_VERSION 3) -set(BIFROST_USD_PACK_PATCH_LEVEL 0) +set(BIFROST_USD_PACK_PATCH_LEVEL 1) diff --git a/examples/maya_plugin/python/bifrost_usd/component_creator/ui/component_creator_help.md b/examples/maya_plugin/python/bifrost_usd/component_creator/ui/component_creator_help.md index bdf842a2..c8db3a35 100644 --- a/examples/maya_plugin/python/bifrost_usd/component_creator/ui/component_creator_help.md +++ b/examples/maya_plugin/python/bifrost_usd/component_creator/ui/component_creator_help.md @@ -11,7 +11,7 @@ Creates a Bifrost Graph with a _create_usd_component_ compound. The graph result - (optional) A _Look_ VariantSet to select different look variants from the default prim. - The _extentsHint_ attributes to display the component as a bounding box added on the default prim. - The _assetInfo_ metadata -- A _Bifrost::usd_component_ dictionnary (in customLayerData) storing information like the host scene who generated the component. +- A _Bifrost::usd_component_ dictionary (in customLayerData) storing information like the host scene who generated the component. ``` diff --git a/src/BifrostUsd/Attribute.cpp b/src/BifrostUsd/Attribute.cpp index 5b4a9747..7312c103 100644 --- a/src/BifrostUsd/Attribute.cpp +++ b/src/BifrostUsd/Attribute.cpp @@ -19,8 +19,6 @@ #include -/// \todo BIFROST-6874 remove PXR_NS::Work_EnsureDetachedTaskProgress(); -#include namespace BifrostUsd { Attribute::Attribute(PXR_NS::UsdAttribute attribute, Amino::Ptr prim) @@ -29,24 +27,6 @@ Attribute::Attribute(PXR_NS::UsdAttribute attribute, Amino::Ptr prim) } Attribute::~Attribute() = default; -//------------------------------------------------------------------------------ -// -namespace { -Amino::Ptr createDefaultAttribute() { - // Destructor of USD instances are lauching threads. This result in - // a deadlock on windows when unloading the library (which destroys the - // default constructed object held in static variables). - /// \todo BIFROST-6874 remove PXR_NS::Work_EnsureDetachedTaskProgress(); - PXR_NS::Work_EnsureDetachedTaskProgress(); - auto stage = Amino::newClassPtr(); - auto pxr_prim = stage->get().GetPseudoRoot(); - auto prim = Amino::newClassPtr(pxr_prim, stage); - auto pxr_attr = pxr_prim.CreateAttribute(PXR_NS::TfToken(""), - PXR_NS::SdfValueTypeName()); - return Amino::newClassPtr(pxr_attr, prim); -} -} // namespace } // namespace BifrostUsd -AMINO_DEFINE_DEFAULT_CLASS(BifrostUsd::Attribute, - BifrostUsd::createDefaultAttribute()); +AMINO_DEFINE_DEFAULT_CLASS(BifrostUsd::Attribute); diff --git a/src/BifrostUsd/Layer.cpp b/src/BifrostUsd/Layer.cpp index d89f4654..81bc8638 100644 --- a/src/BifrostUsd/Layer.cpp +++ b/src/BifrostUsd/Layer.cpp @@ -20,9 +20,6 @@ #include -/// \todo BIFROST-6874 remove PXR_NS::Work_EnsureDetachedTaskProgress(); -#include - // Note: To silence warnings coming from USD library #include BIFUSD_WARNING_PUSH @@ -483,11 +480,6 @@ Amino::String Layer::getPathWithValidUsdFileFormat(const Amino::String& path) { // namespace { Amino::Ptr createDefaultLayer() { - // Destructor of USD instances are lauching threads. This result in - // a deadlock on windows when unloading the library (which destroys the - // default constructed object held in static variables). - /// \todo BIFROST-6874 remove PXR_NS::Work_EnsureDetachedTaskProgress(); - PXR_NS::Work_EnsureDetachedTaskProgress(); return Amino::newClassPtr(BifrostUsd::Layer::Invalid{}); } } // namespace diff --git a/src/graphs/create_point_instancer_from_usd_file/create_point_instancer_from_usd_file_example.ma b/src/graphs/create_point_instancer_from_usd_file/create_point_instancer_from_usd_file_example.ma index 76be980a..9f90aba7 100644 --- a/src/graphs/create_point_instancer_from_usd_file/create_point_instancer_from_usd_file_example.ma +++ b/src/graphs/create_point_instancer_from_usd_file/create_point_instancer_from_usd_file_example.ma @@ -83,8 +83,8 @@ createNode transform -n "createPointInstancerFromUsdFile"; createNode bifrostGraphShape -n "createPointInstancerFromUsdFileShape" -p "createPointInstancerFromUsdFile"; rename -uid "4A9293EF-B84B-8721-3D7D-97AA43D742C0"; addAttr -w false -ci true -sn "out_stage" -ln "out_stage" -dv -1 -at "long long int"; - addAttr -r false -ci true -k true -sn "JobPorts__scene_info" -ln "JobPorts__scene_info" - -ct "SceneInfo" -at "compound" -nc 4; + addAttr -r false -ci true -h true -k true -sn "JobPorts__scene_info" -ln "JobPorts__scene_info" + -ct "SceneInfo" -ct "jobport_node_attribute" -at "compound" -nc 4; addAttr -r false -s false -ci true -k true -sn "JobPorts__scene_info_scene" -ln "JobPorts__scene_info_scene" -dt "string" -p "JobPorts__scene_info"; addAttr -r false -s false -ci true -k true -sn "JobPorts__scene_info_scene_directory" @@ -98,30 +98,30 @@ createNode bifrostGraphShape -n "createPointInstancerFromUsdFileShape" -p "creat setAttr ".cdvm[0]" 0 1 1; setAttr ".sc" -type "string" ( "{\n \"header\": {\n \"metadata\": [\n {\n \"metaName\": \"adskFileFormatVersion\",\n \"metaValue\": \"100L\"\n }\n ]\n },\n \"namespaces\": [],\n \"types\": [],\n \"compounds\": [\n {\n \"name\": \"createPointInstancerFromUsdFileShape\",\n \"uriImported\": \"file:///create_point_instancer_from_usd_file.json\",\n \"metadata\": [\n {\n \"metaName\": \"io_nodes\",\n \"metadata\": [\n {\n \"metaName\": \"io_inodes\"\n },\n {\n \"metaName\": \"io_onodes\",\n \"metadata\": [\n {\n \"metaName\": \"output\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n" - + " \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"io_ports\",\n \"metadata\": [\n {\n \"metaName\": \"out_stage\"\n }\n ]\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"2059.67 -137.921\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"46.000000\"\n" + + " \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"io_ports\",\n \"metadata\": [\n {\n \"metaName\": \"out_stage\"\n }\n ]\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"45.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"2060 -138\"\n" + " }\n ]\n }\n ]\n }\n ]\n },\n {\n \"metaName\": \"backdrop\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"backdrop\"\n },\n {\n \"metaName\": \"title\"\n },\n {\n \"metaName\": \"color\",\n \"metaType\": \"string\",\n \"metaValue\": \"#28da9652\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"-161.231 -242.372 761.248 587.124\"\n }\n" + " ]\n },\n {\n \"metaName\": \"backdrop3\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"backdrop\"\n },\n {\n \"metaName\": \"title\",\n \"metaType\": \"string\",\n \"metaValue\": \"Define the top parent prim.\"\n },\n {\n \"metaName\": \"color\",\n \"metaType\": \"string\",\n \"metaValue\": \"#286487ce\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"1273.02 -198.192 301.114 371.429\"\n }\n ]\n },\n" + " {\n \"metaName\": \"backdrop4\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"backdrop\"\n },\n {\n \"metaName\": \"title\"\n },\n {\n \"metaName\": \"color\",\n \"metaType\": \"string\",\n \"metaValue\": \"#286487ce\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"651.629 -543.074 538.267 429.259\"\n }\n ]\n },\n {\n \"metaName\": \"backdrop5\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n" + " \"metaType\": \"string\",\n \"metaValue\": \"backdrop\"\n },\n {\n \"metaName\": \"title\"\n },\n {\n \"metaName\": \"color\",\n \"metaType\": \"string\",\n \"metaValue\": \"#28c85252\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"644.461 -108.879 553.14 549.471\"\n }\n ]\n },\n {\n \"metaName\": \"sticky_note_backdrop\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"sticky_note\"\n },\n {\n" + " \"metaName\": \"fontSize\",\n \"metaType\": \"string\",\n \"metaValue\": \"10\"\n },\n {\n \"metaName\": \"format\",\n \"metaType\": \"string\",\n \"metaValue\": \"md\"\n },\n {\n \"metaName\": \"text\",\n \"metaType\": \"string\",\n \"metaValue\": \"The output of this compound being a points object, it is storing all the information needed by a *USD PointInstancer* to create the positions, orientations and scales attributes.\\n\\nIt is scattering the *bots* sequencialy. You can change it to random in the **Selection mode** section of the **define_usd_point_instancer** node. You can also provide your own array of indices to control the scattering more precisely by using the **instance_id_override** input port in the **define_usd_point_instancer**.\"\n" - + " },\n {\n \"metaName\": \"color\",\n \"metaType\": \"string\",\n \"metaValue\": \"#ffe0a66c\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"-132.685 86.3142 695.599 236\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"52.000000\"\n }\n ]\n },\n {\n \"metaName\": \"sticky_note_backdrop1\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"sticky_note\"\n },\n {\n" + + " },\n {\n \"metaName\": \"color\",\n \"metaType\": \"string\",\n \"metaValue\": \"#ffe0a66c\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"-132.685 86.3142 695.599 236\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"51.000000\"\n }\n ]\n },\n {\n \"metaName\": \"sticky_note_backdrop1\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"sticky_note\"\n },\n {\n" + " \"metaName\": \"fontSize\",\n \"metaType\": \"string\",\n \"metaValue\": \"10\"\n },\n {\n \"metaName\": \"text\",\n \"metaType\": \"string\",\n \"metaValue\": \"Simple example. The compound define a prim */my_bot* that is referencing the bot in the usd file. You can reference as many usd files as you want to create several prototype prims explicitly.\"\n },\n {\n \"metaName\": \"format\",\n \"metaType\": \"string\",\n \"metaValue\": \"md\"\n },\n {\n \"metaName\": \"color\",\n \"metaType\": \"string\",\n \"metaValue\": \"#ff53bc88\"\n },\n {\n \"metaName\": \"coords\",\n" - + " \"metaType\": \"string\",\n \"metaValue\": \"-117.609 455.363 444.523 152\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"42.000000\"\n }\n ]\n },\n {\n \"metaName\": \"sticky_note_backdrop2\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"sticky_note\"\n },\n {\n \"metaName\": \"fontSize\",\n \"metaType\": \"string\",\n \"metaValue\": \"10\"\n },\n {\n \"metaName\": \"text\",\n \"metaType\": \"string\",\n" - + " \"metaValue\": \"Advanced example used when **use_all_variants** is enable on the **with_or_without_variants** compound.\"\n },\n {\n \"metaName\": \"format\",\n \"metaType\": \"string\",\n \"metaValue\": \"md\"\n },\n {\n \"metaName\": \"color\",\n \"metaType\": \"string\",\n \"metaValue\": \"#ff53bc88\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"-112.985 1189.82 435.462 104\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"41.000000\"\n }\n ]\n" + + " \"metaType\": \"string\",\n \"metaValue\": \"-117.609 455.363 444.523 152\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"41.000000\"\n }\n ]\n },\n {\n \"metaName\": \"sticky_note_backdrop2\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"sticky_note\"\n },\n {\n \"metaName\": \"fontSize\",\n \"metaType\": \"string\",\n \"metaValue\": \"10\"\n },\n {\n \"metaName\": \"text\",\n \"metaType\": \"string\",\n" + + " \"metaValue\": \"Advanced example used when **use_all_variants** is enable on the **with_or_without_variants** compound.\"\n },\n {\n \"metaName\": \"format\",\n \"metaType\": \"string\",\n \"metaValue\": \"md\"\n },\n {\n \"metaName\": \"color\",\n \"metaType\": \"string\",\n \"metaValue\": \"#ff53bc88\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"-112.985 1189.82 435.462 104\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"40.000000\"\n }\n ]\n" + " },\n {\n \"metaName\": \"sticky_note_backdrop4\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"sticky_note\"\n },\n {\n \"metaName\": \"color\",\n \"metaType\": \"string\",\n \"metaValue\": \"#ff7b99d5\"\n },\n {\n \"metaName\": \"fontSize\",\n \"metaType\": \"string\",\n \"metaValue\": \"10\"\n },\n {\n \"metaName\": \"format\",\n \"metaType\": \"string\",\n \"metaValue\": \"md\"\n },\n {\n \"metaName\": \"text\",\n \"metaType\": \"string\",\n" - + " \"metaValue\": \"Define a USD mesh from the source mesh that will be parented to */bots_world*.\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"673.424 -463.559 494.56 80\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"44.000000\"\n }\n ]\n },\n {\n \"metaName\": \"sticky_note_backdrop5\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"sticky_note\"\n },\n {\n \"metaName\": \"fontSize\",\n \"metaType\": \"string\",\n" + + " \"metaValue\": \"Define a USD mesh from the source mesh that will be parented to */bots_world*.\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"673.424 -463.559 494.56 80\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"43.000000\"\n }\n ]\n },\n {\n \"metaName\": \"sticky_note_backdrop5\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"sticky_note\"\n },\n {\n \"metaName\": \"fontSize\",\n \"metaType\": \"string\",\n" + " \"metaValue\": \"10\"\n },\n {\n \"metaName\": \"format\",\n \"metaType\": \"string\",\n \"metaValue\": \"md\"\n },\n {\n \"metaName\": \"color\",\n \"metaType\": \"string\",\n \"metaValue\": \"#ffd78282\"\n },\n {\n \"metaName\": \"text\",\n \"metaType\": \"string\",\n \"metaValue\": \"# Define the *USD PointInstancer* \\nUsing Bifrost points and some USD prototype definitions.\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"665.518 -27.4644 521.008 128\"\n },\n {\n \"metaName\": \"zValue\",\n" - + " \"metaType\": \"string\",\n \"metaValue\": \"33.000000\"\n }\n ]\n },\n {\n \"metaName\": \"backdrop6\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"backdrop\"\n },\n {\n \"metaName\": \"title\",\n \"metaType\": \"string\",\n \"metaValue\": \"Prototypes\"\n },\n {\n \"metaName\": \"color\",\n \"metaType\": \"string\",\n \"metaValue\": \"#2835b073\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"-994.431 357.998 1595.04 987.194\"\n" + + " \"metaType\": \"string\",\n \"metaValue\": \"33.000000\"\n }\n ]\n },\n {\n \"metaName\": \"backdrop6\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"backdrop\"\n },\n {\n \"metaName\": \"title\",\n \"metaType\": \"string\",\n \"metaValue\": \"Prototypes\"\n },\n {\n \"metaName\": \"color\",\n \"metaType\": \"string\",\n \"metaValue\": \"#2835b073\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"-1002.57 357.998 1595.04 997.194\"\n" + " }\n ]\n },\n {\n \"metaName\": \"backdrop7\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"backdrop\"\n },\n {\n \"metaName\": \"title\",\n \"metaType\": \"string\",\n \"metaValue\": \"Create Source Mesh used to scatter points\"\n },\n {\n \"metaName\": \"color\",\n \"metaType\": \"string\",\n \"metaValue\": \"#28ce5c95\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"-984.699 -442.386 448.589 642.8\"\n }\n" - + " ]\n },\n {\n \"metaName\": \"backdrop2\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"backdrop\"\n },\n {\n \"metaName\": \"title\"\n },\n {\n \"metaName\": \"color\",\n \"metaType\": \"string\",\n \"metaValue\": \"#2835b073\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"-140.803 864.506 490.604 453.903\"\n }\n ]\n },\n {\n \"metaName\": \"backdrop1\",\n \"metadata\": [\n {\n" + + " ]\n },\n {\n \"metaName\": \"backdrop2\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"backdrop\"\n },\n {\n \"metaName\": \"title\"\n },\n {\n \"metaName\": \"color\",\n \"metaType\": \"string\",\n \"metaValue\": \"#2835b073\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"-143.708 864.506 493.509 453.903\"\n }\n ]\n },\n {\n \"metaName\": \"backdrop1\",\n \"metadata\": [\n {\n" + " \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"backdrop\"\n },\n {\n \"metaName\": \"title\"\n },\n {\n \"metaName\": \"color\",\n \"metaType\": \"string\",\n \"metaValue\": \"#2835b073\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"-142.782 390.228 487.289 482.875\"\n }\n ]\n },\n {\n \"metaName\": \"author\",\n \"metaType\": \"string\",\n \"metaValue\": \"Autodesk\"\n },\n {\n \"metaName\": \"category\",\n \"metaType\": \"string\",\n \"metaValue\": \"USD\"\n" + " },\n {\n \"metaName\": \"description\",\n \"metaType\": \"string\",\n \"metaValue\": \"Creates a USD PointInstancer referencing a USD file with some variants\"\n },\n {\n \"metaName\": \"documentation\",\n \"metaType\": \"string\",\n \"metaValue\": \"create_point_instancer_from_usd_file_docs_${language}.md\"\n },\n {\n \"metaName\": \"thumbnail\",\n \"metaType\": \"string\",\n \"metaValue\": \"create_point_instancer_from_usd_file_thumb.png\"\n },\n {\n \"metaName\": \"_recentNode_\",\n \"metaType\": \"string\",\n \"metaValue\": \"BifrostGraph,Core::String,string_join\"\n },\n {\n \"metaName\": \"_recentNode_\",\n \"metaType\": \"string\",\n \"metaValue\": \"BifrostGraph,File::Project,scene_info\"\n" + " },\n {\n \"metaName\": \"_recentNode_\",\n \"metaType\": \"string\",\n \"metaValue\": \"BifrostGraph,Core::Graph,pass\"\n },\n {\n \"metaName\": \"_recentNode_\",\n \"metaType\": \"string\",\n \"metaValue\": \"backdrop\"\n },\n {\n \"metaName\": \"_recentNode_\",\n \"metaType\": \"string\",\n \"metaValue\": \"BifrostGraph,USD::Stage,add_to_stage\"\n },\n {\n \"metaName\": \"backdrop8\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"backdrop\"\n },\n {\n \"metaName\": \"title\"\n },\n {\n \"metaName\": \"color\",\n" - + " \"metaType\": \"string\",\n \"metaValue\": \"#2835b073\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"-981.092 390.642 815.767 657.934\"\n }\n ]\n },\n {\n \"metaName\": \"sticky_note1\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"sticky_note\"\n },\n {\n \"metaName\": \"text\",\n \"metaType\": \"string\",\n \"metaValue\": \"Open the USD file relative to the scene directory.\"\n },\n {\n \"metaName\": \"color\",\n" + + " \"metaType\": \"string\",\n \"metaValue\": \"#2835b073\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"-989.227 390.642 815.767 669.617\"\n }\n ]\n },\n {\n \"metaName\": \"sticky_note1\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"sticky_note\"\n },\n {\n \"metaName\": \"text\",\n \"metaType\": \"string\",\n \"metaValue\": \"Open the USD file relative to the scene directory.\"\n },\n {\n \"metaName\": \"color\",\n" + " \"metaType\": \"string\",\n \"metaValue\": \"#ff53bc88\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"-957.167 480.883 757.612 56\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"31.000000\"\n }\n ]\n },\n {\n \"metaName\": \"sticky_note2\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"sticky_note\"\n },\n {\n \"metaName\": \"color\",\n \"metaType\": \"string\",\n" - + " \"metaValue\": \"#ffd574a5\"\n },\n {\n \"metaName\": \"text\",\n \"metaType\": \"string\",\n \"metaValue\": \"A simple torus. Feel free to replace with your own.\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"-896.084 23.4047 236.021 104\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"51.000000\"\n }\n ]\n },\n {\n \"metaName\": \"sticky_note\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"sticky_note\"\n" + + " \"metaValue\": \"#ffd574a5\"\n },\n {\n \"metaName\": \"text\",\n \"metaType\": \"string\",\n \"metaValue\": \"A simple torus. Feel free to replace with your own.\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"-896.084 23.4047 236.021 104\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"50.000000\"\n }\n ]\n },\n {\n \"metaName\": \"sticky_note\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"sticky_note\"\n" + " },\n {\n \"metaName\": \"format\",\n \"metaType\": \"string\",\n \"metaValue\": \"md\"\n },\n {\n \"metaName\": \"text\",\n \"metaType\": \"string\",\n \"metaValue\": \"# Creates a USD PointInstancer referencing a USD file with some variants\"\n },\n {\n \"metaName\": \"color\",\n \"metaType\": \"string\",\n \"metaValue\": \"#ff7b99d5\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"1050.26 1236.65 1163.47 68\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n" - + " \"metaValue\": \"49.000000\"\n }\n ]\n },\n {\n \"metaName\": \"internal\",\n \"metaValue\": \"true\"\n },\n {\n \"metaName\": \"ViewportRect\",\n \"metaType\": \"string\",\n \"metaValue\": \"-1073.93 -705.957 3440 2215.26\"\n }\n ],\n \"ports\": [\n {\n \"portName\": \"out_stage\",\n \"portDirection\": \"output\",\n \"portType\": \"BifrostUsd::Stage\"\n }\n ],\n \"compounds\": [\n {\n \"name\": \"with_or_without_variants\",\n \"uriImported\": \"file:///create_point_instancer_from_usd_file.json\",\n \"metadata\": [\n {\n \"metaName\": \"io_nodes\",\n \"metadata\": [\n {\n" + + " \"metaValue\": \"48.000000\"\n }\n ]\n },\n {\n \"metaName\": \"internal\",\n \"metaValue\": \"true\"\n },\n {\n \"metaName\": \"ViewportRect\",\n \"metaType\": \"string\",\n \"metaValue\": \"-1664.42 -583.181 4612.39 1979.75\"\n }\n ],\n \"ports\": [\n {\n \"portName\": \"out_stage\",\n \"portDirection\": \"output\",\n \"portType\": \"BifrostUsd::Stage\"\n }\n ],\n \"compounds\": [\n {\n \"name\": \"with_or_without_variants\",\n \"uriImported\": \"file:///create_point_instancer_from_usd_file.json\",\n \"metadata\": [\n {\n \"metaName\": \"io_nodes\",\n \"metadata\": [\n {\n" + " \"metaName\": \"io_inodes\",\n \"metadata\": [\n {\n \"metaName\": \"input\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"2\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"10 58\"\n },\n {\n \"metaName\": \"io_ports\",\n" + " \"metadata\": [\n {\n \"metaName\": \"use_all_variants\"\n },\n {\n \"metaName\": \"first_variant\"\n },\n {\n \"metaName\": \"all_variants\"\n }\n ]\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"32.000000\"\n" + " }\n ]\n }\n ]\n },\n {\n \"metaName\": \"io_onodes\",\n \"metadata\": [\n {\n \"metaName\": \"output\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"2\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n" @@ -201,30 +201,34 @@ createNode bifrostGraphShape -n "createPointInstancerFromUsdFileShape" -p "creat + " \"valueType\": \"array\",\n \"value\": []\n },\n {\n \"valueName\": \"define_usd_prim1.reference_definitions\",\n \"valueType\": \"array\",\n \"value\": []\n },\n {\n \"valueName\": \"define_usd_prim1.relationship_definitions\",\n \"valueType\": \"array\",\n \"value\": []\n },\n {\n \"valueName\": \"define_usd_prim1.variant_set_definitions\",\n \"valueType\": \"array\",\n \"value\": []\n },\n {\n \"valueName\": \"define_usd_prim1.children\",\n \"valueType\": \"array\",\n \"value\": []\n" + " },\n {\n \"valueName\": \"define_usd_prim1.material\",\n \"valueType\": \"Object\",\n \"value\": {}\n },\n {\n \"valueName\": \"define_usd_prim1.variant_name\",\n \"valueType\": \"string\",\n \"value\": \"\"\n },\n {\n \"valueName\": \"define_usd_prim1.variant_set_name\",\n \"valueType\": \"string\",\n \"value\": \"\"\n },\n {\n \"valueName\": \"define_usd_reference.arc_type\",\n \"valueType\": \"BifrostUsd::ArcType\",\n \"value\": \"Reference\"\n },\n {\n \"valueName\": \"define_usd_reference.prim_path\",\n \"valueType\": \"string\",\n" + " \"value\": \"\"\n },\n {\n \"valueName\": \"define_usd_reference.relative_prim_path\",\n \"valueType\": \"bool\",\n \"value\": \"false\"\n },\n {\n \"valueName\": \"define_usd_reference.layer\",\n \"valueType\": \"BifrostUsd::Layer\",\n \"value\": {}\n },\n {\n \"valueName\": \"define_usd_reference.layer_offset\",\n \"valueType\": \"double\",\n \"value\": \"0\"\n },\n {\n \"valueName\": \"define_usd_reference.layer_scale\",\n \"valueType\": \"double\",\n \"value\": \"1\"\n },\n {\n \"valueName\": \"define_usd_reference.position\",\n" - + " \"valueType\": \"BifrostUsd::UsdListPosition\",\n \"value\": \"UsdListPositionFrontOfPrependList\"\n }\n ],\n \"reservedNodeNames\": [\n {\n \"name\": \"input\"\n },\n {\n \"name\": \"output\"\n }\n ]\n }\n ],\n \"compoundNodes\": [\n {\n \"nodeName\": \"scatter_points\",\n \"nodeType\": \"Modeling::Points::scatter_points\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"115.469 -147.235\"\n" - + " },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"53.000000\"\n }\n ]\n },\n {\n \"nodeName\": \"define_usd_point_instancer\",\n \"nodeType\": \"USD::Prim::define_usd_point_instancer\",\n \"fanInPortNames\": {\n \"prototype_definitions\": [\n \"output\"\n ]\n },\n \"metadata\": [\n {\n \"metaName\": \"PortExpandedState\",\n \"metadata\": [\n {\n \"metaName\": \"Selection\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n }\n ]\n" - + " },\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"818.217 165.932\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"45.000000\"\n }\n ]\n },\n {\n \"nodeName\": \"open_usd_layer\",\n \"nodeType\": \"USD::Layer::open_usd_layer\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n" - + " },\n {\n \"metaName\": \"NodeValueDisplay\",\n \"metadata\": [\n {\n \"metaName\": \"format\",\n \"metaType\": \"string\",\n \"metaValue\": \"Open Layer {file}\"\n },\n {\n \"metaName\": \"show\",\n \"metaType\": \"string\",\n \"metaValue\": \"0\"\n }\n ]\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"-410.683 608.642\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n" - + " \"metaValue\": \"32.000000\"\n }\n ]\n },\n {\n \"nodeName\": \"create_mesh_torus\",\n \"nodeType\": \"Modeling::Primitive::create_mesh_torus\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"2\"\n },\n {\n \"metaName\": \"PortExpandedState\",\n \"metadata\": [\n {\n \"metaName\": \"Geometry\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n }\n ]\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n" - + " \"metaValue\": \"-888.464 -316.007\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"36.000000\"\n }\n ]\n },\n {\n \"nodeName\": \"define_usd_mesh\",\n \"nodeType\": \"USD::Prim::define_usd_mesh\",\n \"fanInPortNames\": {\n \"attribute_definitions\": [],\n \"reference_definitions\": [],\n \"relationship_definitions\": [],\n \"children\": []\n },\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"LayoutPos\",\n" - + " \"metaType\": \"string\",\n \"metaValue\": \"704.942 -332.275\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"50.000000\"\n }\n ]\n },\n {\n \"nodeName\": \"define_usd_prim\",\n \"nodeType\": \"USD::Prim::define_usd_prim\",\n \"fanInPortNames\": {\n \"attribute_definitions\": [],\n \"reference_definitions\": [],\n \"relationship_definitions\": [],\n \"variant_set_definitions\": [],\n \"children\": [\n \"mesh_definition\",\n \"point_instancer_definition\"\n ]\n },\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n" - + " \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"PortExpandedState\",\n \"metadata\": [\n {\n \"metaName\": \"children\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n }\n ]\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"1295.3 -84.2417\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"34.000000\"\n }\n ]\n },\n {\n" - + " \"nodeName\": \"with_or_without_variants\",\n \"nodeType\": \"with_or_without_variants\",\n \"fanInPortNames\": {\n \"first_variant\": [\n \"prim_definition\"\n ]\n },\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"2\"\n },\n {\n \"metaName\": \"NodeValueDisplay\",\n \"metadata\": [\n {\n \"metaName\": \"format\",\n \"metaType\": \"string\",\n \"metaValue\": \"Use All Variants ({use_all_variants})\"\n }\n ]\n },\n {\n \"metaName\": \"LayoutPos\",\n" - + " \"metaType\": \"string\",\n \"metaValue\": \"365.302 694.996\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"43.000000\"\n }\n ]\n },\n {\n \"nodeName\": \"add_to_stage\",\n \"nodeType\": \"USD::Stage::add_to_stage\",\n \"fanInPortNames\": {\n \"prim_definitions\": [\n \"prim_definition\"\n ]\n },\n \"terminalStates\": [\n {\n \"name\": \"Core::Graph::terminal::diagnostic\",\n \"enabled\": \"true\"\n }\n ],\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n" - + " \"metaType\": \"string\",\n \"metaValue\": \"2\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"1711.94 -225.921\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"48.000000\"\n }\n ]\n },\n {\n \"nodeName\": \"create_prototypes_from_every_bot_variants\",\n \"nodeType\": \"create_prototypes_from_every_bot_variants\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"2\"\n },\n {\n \"metaName\": \"LayoutPos\",\n" - + " \"metaType\": \"string\",\n \"metaValue\": \"-71.4653 956.604\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"39.000000\"\n }\n ]\n },\n {\n \"nodeName\": \"create_prototype_from_my_bot\",\n \"nodeType\": \"create_prototype_from_my_bot\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"2\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"-62.9045 639.604\"\n },\n {\n \"metaName\": \"zValue\",\n" - + " \"metaType\": \"string\",\n \"metaValue\": \"40.000000\"\n }\n ]\n },\n {\n \"nodeName\": \"create_usd_stage\",\n \"nodeType\": \"USD::Stage::create_usd_stage\",\n \"fanInPortNames\": {\n \"sublayers\": []\n },\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"1448.6 -378.232\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"47.000000\"\n" - + " }\n ]\n },\n {\n \"nodeName\": \"scene_info\",\n \"nodeType\": \"File::Project::scene_info\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"-964.657 591.496\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"38.000000\"\n }\n ]\n },\n {\n \"nodeName\": \"string_join\",\n \"nodeType\": \"Core::String::string_join\",\n \"fanInPortNames\": {\n" - + " \"strings\": [\n \"scene_directory\",\n \"output\"\n ]\n },\n \"metadata\": [\n {\n \"metaName\": \"PortExpandedState\",\n \"metadata\": [\n {\n \"metaName\": \"strings\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n }\n ]\n },\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"NodeValueDisplay\",\n \"metadata\": [\n {\n \"metaName\": \"format\",\n" - + " \"metaType\": \"string\",\n \"metaValue\": \"Join strings ({separator})\"\n },\n {\n \"metaName\": \"show\",\n \"metaType\": \"string\",\n \"metaValue\": \"0\"\n }\n ]\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"-667.729 624.121\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"35.000000\"\n }\n ]\n },\n {\n \"nodeName\": \"value\",\n \"valueType\": \"string\",\n" - + " \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"-972.571 844.874\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"54.000000\"\n }\n ]\n }\n ],\n \"connections\": [\n {\n \"source\": \"scatter_points.points\",\n \"target\": \"define_usd_point_instancer.points\"\n },\n {\n \"source\": \"add_to_stage.out_stage\",\n \"target\": \".out_stage\"\n },\n" - + " {\n \"source\": \"open_usd_layer.layer\",\n \"target\": \"create_prototype_from_my_bot.layer\"\n },\n {\n \"source\": \"create_usd_stage.stage\",\n \"target\": \"add_to_stage.stage\"\n },\n {\n \"source\": \"open_usd_layer.layer\",\n \"target\": \"create_prototypes_from_every_bot_variants.layer\"\n },\n {\n \"source\": \"define_usd_prim.prim_definition\",\n \"target\": \"add_to_stage.prim_definitions.prim_definition\"\n },\n {\n \"source\": \"with_or_without_variants.output\",\n \"target\": \"define_usd_point_instancer.prototype_definitions.output\"\n },\n {\n \"source\": \"define_usd_mesh.mesh_definition\",\n \"target\": \"define_usd_prim.children.mesh_definition\"\n },\n {\n" - + " \"source\": \"define_usd_point_instancer.point_instancer_definition\",\n \"target\": \"define_usd_prim.children.point_instancer_definition\"\n },\n {\n \"source\": \"create_prototypes_from_every_bot_variants.prim_definitions\",\n \"target\": \"with_or_without_variants.all_variants\"\n },\n {\n \"source\": \"create_prototype_from_my_bot.prim_definition\",\n \"target\": \"with_or_without_variants.first_variant.prim_definition\"\n },\n {\n \"source\": \"scene_info.scene_directory\",\n \"target\": \"string_join.strings.scene_directory\"\n },\n {\n \"source\": \"value.output\",\n \"target\": \"string_join.strings.output\"\n },\n {\n \"source\": \"string_join.joined\",\n \"target\": \"open_usd_layer.file\"\n },\n" - + " {\n \"source\": \"create_mesh_torus.torus_mesh\",\n \"target\": \"scatter_points.geometry\"\n },\n {\n \"source\": \"create_mesh_torus.torus_mesh\",\n \"target\": \"define_usd_mesh.mesh\"\n }\n ],\n \"values\": [\n {\n \"valueName\": \"scatter_points.scatter_mode\",\n \"valueType\": \"Modeling::Points::ScatteringMode\",\n \"value\": \"BlueNoise\"\n },\n {\n \"valueName\": \"scatter_points.amount\",\n \"valueType\": \"float\",\n \"value\": \"350.799988f\"\n },\n {\n \"valueName\": \"scatter_points.set_orientations_from_geometry\",\n \"valueType\": \"bool\",\n \"value\": \"true\"\n },\n {\n \"valueName\": \"define_usd_point_instancer.instancer_path\",\n" - + " \"valueType\": \"string\",\n \"value\": \"/many_robots\"\n },\n {\n \"valueName\": \"define_usd_point_instancer.create_default_material\",\n \"valueType\": \"bool\",\n \"value\": \"false\"\n },\n {\n \"valueName\": \"open_usd_layer.read_only\",\n \"valueType\": \"bool\",\n \"value\": \"true\"\n },\n {\n \"valueName\": \"open_usd_layer.save_file\",\n \"valueType\": \"string\",\n \"value\": \"\"\n },\n {\n \"valueName\": \"create_mesh_torus.major_radius\",\n \"valueType\": \"float\",\n \"value\": \"13f\"\n },\n {\n \"valueName\": \"create_mesh_torus.minor_radius\",\n \"valueType\": \"float\",\n \"value\": \"4.5f\"\n },\n {\n" - + " \"valueName\": \"create_mesh_torus.major_segments\",\n \"valueType\": \"uint\",\n \"value\": \"30U\"\n },\n {\n \"valueName\": \"create_mesh_torus.minor_segments\",\n \"valueType\": \"uint\",\n \"value\": \"21U\"\n },\n {\n \"valueName\": \"define_usd_mesh.path\",\n \"valueType\": \"string\",\n \"value\": \"/planet_doughnut\"\n },\n {\n \"valueName\": \"define_usd_prim.path\",\n \"valueType\": \"string\",\n \"value\": \"/bots_world\"\n },\n {\n \"valueName\": \"define_usd_prim.kind\",\n \"valueType\": \"BifrostUsd::ModelKind\",\n \"value\": \"Group\"\n },\n {\n \"valueName\": \"with_or_without_variants.use_all_variants\",\n \"valueType\": \"bool\",\n" - + " \"value\": \"true\"\n },\n {\n \"valueName\": \"with_or_without_variants.first_variant\",\n \"valueType\": \"array\",\n \"value\": []\n },\n {\n \"valueName\": \"with_or_without_variants.all_variants\",\n \"valueType\": \"array\",\n \"value\": []\n },\n {\n \"valueName\": \"create_prototypes_from_every_bot_variants.layer\",\n \"valueType\": \"BifrostUsd::Layer\",\n \"value\": {}\n },\n {\n \"valueName\": \"create_prototype_from_my_bot.layer\",\n \"valueType\": \"BifrostUsd::Layer\",\n \"value\": {}\n },\n {\n \"valueName\": \"create_usd_stage.layer\",\n \"valueType\": \"string\",\n \"value\": \"/tmp/bots_on_doughnut.usd\"\n },\n" - + " {\n \"valueName\": \"create_usd_stage.sublayers\",\n \"valueType\": \"array\",\n \"value\": []\n },\n {\n \"valueName\": \"string_join.separator\",\n \"valueType\": \"string\",\n \"value\": \"\"\n },\n {\n \"valueName\": \"value.value\",\n \"valueType\": \"string\",\n \"value\": \"usd/my_bot/my_bot.usd\"\n }\n ],\n \"reservedNodeNames\": [\n {\n \"name\": \"output\"\n },\n {\n \"name\": \"input\"\n }\n ]\n }\n ]\n}\n"); + + " \"valueType\": \"BifrostUsd::UsdListPosition\",\n \"value\": \"UsdListPositionFrontOfPrependList\"\n }\n ],\n \"reservedNodeNames\": [\n {\n \"name\": \"input\"\n },\n {\n \"name\": \"output\"\n }\n ]\n }\n ],\n \"compoundNodes\": [\n {\n \"nodeName\": \"scatter_points\",\n \"nodeType\": \"Modeling::Points::scatter_points\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"52.000000\"\n" + + " },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"115 -147\"\n }\n ]\n },\n {\n \"nodeName\": \"define_usd_point_instancer\",\n \"nodeType\": \"USD::Prim::define_usd_point_instancer\",\n \"fanInPortNames\": {\n \"prototype_definitions\": [\n \"output\"\n ]\n },\n \"metadata\": [\n {\n \"metaName\": \"PortExpandedState\",\n \"metadata\": [\n {\n \"metaName\": \"Selection\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n }\n ]\n" + + " },\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"818 166\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"77.000000\"\n }\n ]\n },\n {\n \"nodeName\": \"open_usd_layer\",\n \"nodeType\": \"USD::Layer::open_usd_layer\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n" + + " {\n \"metaName\": \"NodeValueDisplay\",\n \"metadata\": [\n {\n \"metaName\": \"format\",\n \"metaType\": \"string\",\n \"metaValue\": \"Open Layer {file}\"\n },\n {\n \"metaName\": \"show\",\n \"metaType\": \"string\",\n \"metaValue\": \"0\"\n }\n ]\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"55.000000\"\n },\n {\n \"metaName\": \"PortExpandedState\",\n \"metadata\": [\n {\n" + + " \"metaName\": \"Settings\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n }\n ]\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"-411 609\"\n }\n ]\n },\n {\n \"nodeName\": \"create_mesh_torus\",\n \"nodeType\": \"Modeling::Primitive::create_mesh_torus\",\n \"terminalStates\": [\n {\n \"name\": \"Core::Graph::terminal::diagnostic\",\n \"enabled\": \"false\"\n }\n ],\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n" + + " \"metaValue\": \"2\"\n },\n {\n \"metaName\": \"PortExpandedState\",\n \"metadata\": [\n {\n \"metaName\": \"Geometry\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n }\n ]\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"36.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"-888 -316\"\n }\n ]\n },\n {\n \"nodeName\": \"define_usd_mesh\",\n \"nodeType\": \"USD::Prim::define_usd_mesh\",\n" + + " \"fanInPortNames\": {\n \"reference_definitions\": [],\n \"attribute_definitions\": [],\n \"children\": [],\n \"relationship_definitions\": []\n },\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"49.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"705 -332\"\n }\n ]\n },\n {\n \"nodeName\": \"define_usd_prim\",\n \"nodeType\": \"USD::Prim::define_usd_prim\",\n" + + " \"fanInPortNames\": {\n \"attribute_definitions\": [],\n \"reference_definitions\": [],\n \"relationship_definitions\": [],\n \"variant_set_definitions\": [],\n \"children\": [\n \"mesh_definition\",\n \"point_instancer_definition\"\n ]\n },\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"PortExpandedState\",\n \"metadata\": [\n {\n \"metaName\": \"children\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n }\n" + + " ]\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"34.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"1295 -84\"\n }\n ]\n },\n {\n \"nodeName\": \"with_or_without_variants\",\n \"nodeType\": \"with_or_without_variants\",\n \"fanInPortNames\": {\n \"first_variant\": [\n \"prim_definition\"\n ]\n },\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"2\"\n" + + " },\n {\n \"metaName\": \"NodeValueDisplay\",\n \"metadata\": [\n {\n \"metaName\": \"format\",\n \"metaType\": \"string\",\n \"metaValue\": \"Use All Variants ({use_all_variants})\"\n }\n ]\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"42.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"365 695\"\n }\n ]\n },\n {\n \"nodeName\": \"add_to_stage\",\n \"nodeType\": \"USD::Stage::add_to_stage\",\n" + + " \"fanInPortNames\": {\n \"prim_definitions\": [\n \"prim_definition\"\n ]\n },\n \"terminalStates\": [\n {\n \"name\": \"Core::Graph::terminal::diagnostic\",\n \"enabled\": \"true\"\n }\n ],\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"2\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"47.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"1712 -226\"\n" + + " }\n ]\n },\n {\n \"nodeName\": \"create_prototypes_from_every_bot_variants\",\n \"nodeType\": \"create_prototypes_from_every_bot_variants\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"2\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"38.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"-71 957\"\n }\n ]\n },\n {\n \"nodeName\": \"create_prototype_from_my_bot\",\n \"nodeType\": \"create_prototype_from_my_bot\",\n" + + " \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"2\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"39.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"-63 640\"\n }\n ]\n },\n {\n \"nodeName\": \"create_usd_stage\",\n \"nodeType\": \"USD::Stage::create_usd_stage\",\n \"fanInPortNames\": {\n \"sublayers\": []\n },\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n" + + " \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"46.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"1449 -378\"\n }\n ]\n },\n {\n \"nodeName\": \"scene_info\",\n \"nodeType\": \"File::Project::scene_info\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n" + + " \"metaValue\": \"66.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"-965.966 562.012\"\n }\n ]\n },\n {\n \"nodeName\": \"string_join\",\n \"nodeType\": \"Core::String::string_join\",\n \"fanInPortNames\": {\n \"strings\": [\n \"scene_directory\",\n \"usd_file\"\n ]\n },\n \"metadata\": [\n {\n \"metaName\": \"PortExpandedState\",\n \"metadata\": [\n {\n \"metaName\": \"strings\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n" + + " }\n ]\n },\n {\n \"metaName\": \"NodeValueDisplay\",\n \"metadata\": [\n {\n \"metaName\": \"format\",\n \"metaType\": \"string\",\n \"metaValue\": \"Join strings ({separator})\"\n },\n {\n \"metaName\": \"show\",\n \"metaType\": \"string\",\n \"metaValue\": \"0\"\n }\n ]\n },\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"2\"\n },\n {\n \"metaName\": \"LayoutPos\",\n" + + " \"metaType\": \"string\",\n \"metaValue\": \"-668 625\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"71.000000\"\n }\n ]\n },\n {\n \"nodeName\": \"value1\",\n \"valueType\": \"string\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"76.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n" + + " \"metaValue\": \"-954.647 875.606\"\n }\n ]\n },\n {\n \"nodeName\": \"value\",\n \"valueType\": \"string\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"74.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"-965.285 727.65\"\n }\n ]\n }\n ],\n \"connections\": [\n {\n \"source\": \"scatter_points.points\",\n" + + " \"target\": \"define_usd_point_instancer.points\"\n },\n {\n \"source\": \"add_to_stage.out_stage\",\n \"target\": \".out_stage\"\n },\n {\n \"source\": \"open_usd_layer.layer\",\n \"target\": \"create_prototype_from_my_bot.layer\"\n },\n {\n \"source\": \"create_usd_stage.stage\",\n \"target\": \"add_to_stage.stage\"\n },\n {\n \"source\": \"open_usd_layer.layer\",\n \"target\": \"create_prototypes_from_every_bot_variants.layer\"\n },\n {\n \"source\": \"define_usd_prim.prim_definition\",\n \"target\": \"add_to_stage.prim_definitions.prim_definition\"\n },\n {\n \"source\": \"with_or_without_variants.output\",\n \"target\": \"define_usd_point_instancer.prototype_definitions.output\"\n" + + " },\n {\n \"source\": \"define_usd_mesh.mesh_definition\",\n \"target\": \"define_usd_prim.children.mesh_definition\"\n },\n {\n \"source\": \"define_usd_point_instancer.point_instancer_definition\",\n \"target\": \"define_usd_prim.children.point_instancer_definition\"\n },\n {\n \"source\": \"create_prototypes_from_every_bot_variants.prim_definitions\",\n \"target\": \"with_or_without_variants.all_variants\"\n },\n {\n \"source\": \"create_prototype_from_my_bot.prim_definition\",\n \"target\": \"with_or_without_variants.first_variant.prim_definition\"\n },\n {\n \"source\": \"scene_info.scene_directory\",\n \"target\": \"string_join.strings.scene_directory\"\n },\n {\n \"source\": \"string_join.joined\",\n" + + " \"target\": \"open_usd_layer.file\"\n },\n {\n \"source\": \"create_mesh_torus.torus_mesh\",\n \"target\": \"scatter_points.geometry\"\n },\n {\n \"source\": \"create_mesh_torus.torus_mesh\",\n \"target\": \"define_usd_mesh.mesh\"\n },\n {\n \"source\": \"value1.output\",\n \"target\": \"string_join.separator\"\n },\n {\n \"source\": \"value.output\",\n \"target\": \"string_join.strings.usd_file\"\n }\n ],\n \"values\": [\n {\n \"valueName\": \"scatter_points.scatter_mode\",\n \"valueType\": \"Modeling::Points::ScatteringMode\",\n \"value\": \"BlueNoise\"\n },\n {\n \"valueName\": \"scatter_points.amount\",\n \"valueType\": \"float\",\n" + + " \"value\": \"350.799988f\"\n },\n {\n \"valueName\": \"scatter_points.set_orientations_from_geometry\",\n \"valueType\": \"bool\",\n \"value\": \"true\"\n },\n {\n \"valueName\": \"define_usd_point_instancer.instancer_path\",\n \"valueType\": \"string\",\n \"value\": \"/many_robots\"\n },\n {\n \"valueName\": \"define_usd_point_instancer.create_default_material\",\n \"valueType\": \"bool\",\n \"value\": \"false\"\n },\n {\n \"valueName\": \"open_usd_layer.read_only\",\n \"valueType\": \"bool\",\n \"value\": \"true\"\n },\n {\n \"valueName\": \"open_usd_layer.save_file\",\n \"valueType\": \"string\",\n \"value\": \"\"\n },\n {\n" + + " \"valueName\": \"create_mesh_torus.major_radius\",\n \"valueType\": \"float\",\n \"value\": \"13f\"\n },\n {\n \"valueName\": \"create_mesh_torus.minor_radius\",\n \"valueType\": \"float\",\n \"value\": \"4.5f\"\n },\n {\n \"valueName\": \"create_mesh_torus.major_segments\",\n \"valueType\": \"uint\",\n \"value\": \"30U\"\n },\n {\n \"valueName\": \"create_mesh_torus.minor_segments\",\n \"valueType\": \"uint\",\n \"value\": \"21U\"\n },\n {\n \"valueName\": \"define_usd_mesh.path\",\n \"valueType\": \"string\",\n \"value\": \"/planet_doughnut\"\n },\n {\n \"valueName\": \"define_usd_prim.path\",\n \"valueType\": \"string\",\n \"value\": \"/bots_world\"\n" + + " },\n {\n \"valueName\": \"define_usd_prim.kind\",\n \"valueType\": \"BifrostUsd::ModelKind\",\n \"value\": \"Group\"\n },\n {\n \"valueName\": \"with_or_without_variants.use_all_variants\",\n \"valueType\": \"bool\",\n \"value\": \"true\"\n },\n {\n \"valueName\": \"with_or_without_variants.first_variant\",\n \"valueType\": \"array\",\n \"value\": []\n },\n {\n \"valueName\": \"with_or_without_variants.all_variants\",\n \"valueType\": \"array\",\n \"value\": []\n },\n {\n \"valueName\": \"create_prototypes_from_every_bot_variants.layer\",\n \"valueType\": \"BifrostUsd::Layer\",\n \"value\": {}\n },\n {\n \"valueName\": \"create_prototype_from_my_bot.layer\",\n" + + " \"valueType\": \"BifrostUsd::Layer\",\n \"value\": {}\n },\n {\n \"valueName\": \"create_usd_stage.layer\",\n \"valueType\": \"string\",\n \"value\": \"/tmp/bots_on_doughnut.usd\"\n },\n {\n \"valueName\": \"create_usd_stage.sublayers\",\n \"valueType\": \"array\",\n \"value\": []\n },\n {\n \"valueName\": \"value1.value\",\n \"valueType\": \"string\",\n \"value\": \"/\"\n },\n {\n \"valueName\": \"value.value\",\n \"valueType\": \"string\",\n \"value\": \"usd/my_bot/my_bot.usd\"\n }\n ],\n \"reservedNodeNames\": [\n {\n \"name\": \"output\"\n },\n {\n \"name\": \"input\"\n }\n" + + " ]\n }\n ]\n}\n"); + setAttr ".dirtyFlag" yes; + setAttr -l on ".JobPorts__scene_info_has_project"; createNode transform -n "mayaUsdProxy1"; rename -uid "74E57EE3-7744-E972-A07F-26A62A4C1CCF"; createNode mayaUsdProxyShape -n "mayaUsdProxyShape1" -p "mayaUsdProxy1"; diff --git a/src/graphs/robot_with_purpose/robot_with_purpose_example.ma b/src/graphs/robot_with_purpose/robot_with_purpose_example.ma index 24ba6ea0..8825f9b8 100644 --- a/src/graphs/robot_with_purpose/robot_with_purpose_example.ma +++ b/src/graphs/robot_with_purpose/robot_with_purpose_example.ma @@ -1,19 +1,19 @@ -//Maya ASCII 2024 scene +//Maya ASCII 2025ff03 scene //Name: robot_with_purpose_example.ma -//Last modified: Thu, Feb 08, 2024 09:11:19 am +//Last modified: Tue, Sep 17, 2024 08:55:26 am //Codeset: UTF-8 -requires maya "2024"; -requires -nodeType "aiOptions" -nodeType "aiAOVDriver" -nodeType "aiAOVFilter" "mtoa" "5.3.4.1"; -requires -nodeType "bifrostGraphShape" -dataType "bifData" "bifrostGraph" "2.9.1.0-dev"; +requires maya "2025ff03"; +requires -nodeType "aiOptions" -nodeType "aiAOVDriver" -nodeType "aiAOVFilter" "mtoa" "5.4.2.1"; +requires -nodeType "bifrostGraphShape" -dataType "bifData" "bifrostGraph" "2.12.0.0-dev"; requires -nodeType "mayaUsdLayerManager" -nodeType "mayaUsdProxyShape" -dataType "pxrUsdStageData" - "mayaUsdPlugin" "0.25.0"; + "mayaUsdPlugin" "0.29.0"; currentUnit -l centimeter -a degree -t film; fileInfo "application" "maya"; -fileInfo "product" "Maya 2024"; -fileInfo "version" "2024"; -fileInfo "cutIdentifier" "202310181224-69282f2959"; -fileInfo "osv" "Mac OS X 13.3"; -fileInfo "UUID" "D9063266-1243-D7C1-D230-2A995F4CB499"; +fileInfo "product" "Maya 2025"; +fileInfo "version" "2025"; +fileInfo "cutIdentifier" "202406191337-7c0f9c27f1"; +fileInfo "osv" "Mac OS X 14.4.1"; +fileInfo "UUID" "2D55B19B-4343-39E4-B075-3EA5AA335CBB"; createNode transform -s -n "persp"; rename -uid "13DE676B-3A4B-8E5D-7F70-199FD8FEE29C"; setAttr ".v" no; @@ -85,8 +85,8 @@ createNode transform -n "robotWithPurpose"; createNode bifrostGraphShape -n "robotWithPurposeShape" -p "robotWithPurpose"; rename -uid "0812A2C6-DE4D-4BB3-5775-69819D0ED623"; addAttr -w false -ci true -sn "stage" -ln "stage" -dv -1 -at "long long int"; - addAttr -r false -ci true -k true -sn "JobPorts__scene_info" -ln "JobPorts__scene_info" - -ct "SceneInfo" -at "compound" -nc 4; + addAttr -r false -ci true -h true -k true -sn "JobPorts__scene_info" -ln "JobPorts__scene_info" + -ct "SceneInfo" -ct "jobport_node_attribute" -at "compound" -nc 4; addAttr -r false -s false -ci true -k true -sn "JobPorts__scene_info_scene" -ln "JobPorts__scene_info_scene" -dt "string" -p "JobPorts__scene_info"; addAttr -r false -s false -ci true -k true -sn "JobPorts__scene_info_scene_directory" @@ -102,22 +102,22 @@ createNode bifrostGraphShape -n "robotWithPurposeShape" -p "robotWithPurpose"; setAttr ".cdvm[0]" 0 1 1; setAttr ".sc" -type "string" ( "{\n \"header\": {\n \"metadata\": [\n {\n \"metaName\": \"adskFileFormatVersion\",\n \"metaValue\": \"100L\"\n }\n ]\n },\n \"namespaces\": [],\n \"types\": [],\n \"compounds\": [\n {\n \"name\": \"robotWithPurposeShape\",\n \"metadata\": [\n {\n \"metaName\": \"io_nodes\",\n \"metadata\": [\n {\n \"metaName\": \"io_inodes\"\n },\n {\n \"metaName\": \"io_onodes\",\n \"metadata\": [\n {\n \"metaName\": \"output\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n" - + " {\n \"metaName\": \"io_ports\",\n \"metadata\": [\n {\n \"metaName\": \"stage\"\n }\n ]\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"66.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"1708.32 630.199\"\n }\n ]\n" - + " }\n ]\n }\n ]\n },\n {\n \"metaName\": \"backdrop\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"backdrop\"\n },\n {\n \"metaName\": \"color\",\n \"metaType\": \"string\",\n \"metaValue\": \"#28da9652\"\n },\n {\n \"metaName\": \"title\",\n \"metaType\": \"string\",\n \"metaValue\": \"Get the file path of the USD layer storing the Robot modeling\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"-860.754 369.905 819.164 612.227\"\n" + + " {\n \"metaName\": \"io_ports\",\n \"metadata\": [\n {\n \"metaName\": \"stage\"\n }\n ]\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"1708.32 630.199\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"48.000000\"\n }\n ]\n" + + " }\n ]\n }\n ]\n },\n {\n \"metaName\": \"backdrop\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"backdrop\"\n },\n {\n \"metaName\": \"color\",\n \"metaType\": \"string\",\n \"metaValue\": \"#28da9652\"\n },\n {\n \"metaName\": \"title\",\n \"metaType\": \"string\",\n \"metaValue\": \"Get the file path of the USD layer storing the Robot modeling\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"-860.754 369.905 819.164 700.874\"\n" + " }\n ]\n },\n {\n \"metaName\": \"backdrop1\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"backdrop\"\n },\n {\n \"metaName\": \"color\",\n \"metaType\": \"string\",\n \"metaValue\": \"#2835b073\"\n },\n {\n \"metaName\": \"title\",\n \"metaType\": \"string\",\n \"metaValue\": \"Create a new stage with a Robot prim\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"388.602 -210.92 808.52 573.568\"\n }\n" - + " ]\n },\n {\n \"metaName\": \"sticky_note\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"sticky_note\"\n },\n {\n \"metaName\": \"color\",\n \"metaType\": \"string\",\n \"metaValue\": \"#ff53bc88\"\n },\n {\n \"metaName\": \"text\",\n \"metaType\": \"string\",\n \"metaValue\": \"Set the layer path to a real path one on your computer before saving the stage!\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"48.000000\"\n },\n" - + " {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"415.959 -125.776 384 104\"\n }\n ]\n },\n {\n \"metaName\": \"backdrop2\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"backdrop\"\n },\n {\n \"metaName\": \"title\",\n \"metaType\": \"string\",\n \"metaValue\": \"Convert the USD meshes to Bifrost meshes\"\n },\n {\n \"metaName\": \"color\",\n \"metaType\": \"string\",\n \"metaValue\": \"#286487ce\"\n },\n {\n" - + " \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"5.46698 378.933 788.933 693.037\"\n }\n ]\n },\n {\n \"metaName\": \"sticky_note1\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"sticky_note\"\n },\n {\n \"metaName\": \"color\",\n \"metaType\": \"string\",\n \"metaValue\": \"#ffe0a66c\"\n },\n {\n \"metaName\": \"format\",\n \"metaType\": \"string\",\n \"metaValue\": \"md\"\n },\n {\n \"metaName\": \"coords\",\n" - + " \"metaType\": \"string\",\n \"metaValue\": \"-831.288 465.301 745.462 218\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"52.000000\"\n },\n {\n \"metaName\": \"text\",\n \"metaType\": \"string\",\n \"metaValue\": \"The **scene_info** node is used to construct the path to the USD file, relative to the *robot_with_purpose_example.ma* Maya scene.\"\n }\n ]\n },\n {\n \"metaName\": \"backdrop3\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"backdrop\"\n },\n {\n" - + " \"metaName\": \"color\",\n \"metaType\": \"string\",\n \"metaValue\": \"#28825fc8\"\n },\n {\n \"metaName\": \"title\",\n \"metaType\": \"string\",\n \"metaValue\": \"Add guides, proxy and render purposes under the Robot prim\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"836.932 381.17 825.067 875.675\"\n }\n ]\n },\n {\n \"metaName\": \"sticky_note2\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"sticky_note\"\n },\n {\n" - + " \"metaName\": \"color\",\n \"metaType\": \"string\",\n \"metaValue\": \"#ff7b99d5\"\n },\n {\n \"metaName\": \"format\",\n \"metaType\": \"string\",\n \"metaValue\": \"md\"\n },\n {\n \"metaName\": \"text\",\n \"metaType\": \"string\",\n \"metaValue\": \"This **add_to_stage** nodee adds prim definitions directly bellow the */Robot* prim as it is set as the *parent_path*.\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"1031.72 1140.18 606.024 80\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n" - + " \"metaValue\": \"75.000000\"\n }\n ]\n },\n {\n \"metaName\": \"sticky_note3\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"sticky_note\"\n },\n {\n \"metaName\": \"format\",\n \"metaType\": \"string\",\n \"metaValue\": \"md\"\n },\n {\n \"metaName\": \"fontSize\",\n \"metaType\": \"string\",\n \"metaValue\": \"10\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"-835.867 -197.891 882.557 104\"\n" - + " },\n {\n \"metaName\": \"color\",\n \"metaType\": \"string\",\n \"metaValue\": \"#ff7b99d5\"\n },\n {\n \"metaName\": \"text\",\n \"metaType\": \"string\",\n \"metaValue\": \"# Robot with Purpose Example\\n\\nIllustrates how to create a USD hierarchy with guide, proxy and render purposes.\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"51.000000\"\n }\n ]\n },\n {\n \"metaName\": \"backdrop4\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"backdrop\"\n" - + " },\n {\n \"metaName\": \"title\",\n \"metaType\": \"string\",\n \"metaValue\": \"Double-clic for more info\"\n },\n {\n \"metaName\": \"color\",\n \"metaType\": \"string\",\n \"metaValue\": \"#286487ce\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"470.723 444.465 299.396 326.008\"\n }\n ]\n },\n {\n \"metaName\": \"sticky_note4\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"sticky_note\"\n },\n" - + " {\n \"metaName\": \"color\",\n \"metaType\": \"string\",\n \"metaValue\": \"#ff7b99d5\"\n },\n {\n \"metaName\": \"format\",\n \"metaType\": \"string\",\n \"metaValue\": \"md\"\n },\n {\n \"metaName\": \"text\",\n \"metaType\": \"string\",\n \"metaValue\": \"Enable the *Diagnostic* flag (**D**) on the *terminal_diagnostic* compound to visualize the input mesh\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"52.4474 457.367 379.082 128\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n" - + " \"metaValue\": \"40.000000\"\n }\n ]\n },\n {\n \"metaName\": \"_recentNode_\",\n \"metaType\": \"string\",\n \"metaValue\": \"BifrostGraph,Core::Graph,pass\"\n },\n {\n \"metaName\": \"_recentNode_\",\n \"metaType\": \"string\",\n \"metaValue\": \"sticky note\"\n },\n {\n \"metaName\": \"_recentNode_\",\n \"metaType\": \"string\",\n \"metaValue\": \"backdrop\"\n },\n {\n \"metaName\": \"_recentNode_\",\n \"metaType\": \"string\",\n \"metaValue\": \"BifrostGraph,USD::Layer,open_usd_layer\"\n },\n {\n \"metaName\": \"_recentNode_\",\n \"metaType\": \"string\",\n \"metaValue\": \"BifrostGraph,Diagnostic::Display,mesh_scope\"\n" + + " ]\n },\n {\n \"metaName\": \"sticky_note\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"sticky_note\"\n },\n {\n \"metaName\": \"color\",\n \"metaType\": \"string\",\n \"metaValue\": \"#ff53bc88\"\n },\n {\n \"metaName\": \"text\",\n \"metaType\": \"string\",\n \"metaValue\": \"Set the layer path to a real path one on your computer before saving the stage!\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"415.959 -125.776 384 104\"\n },\n" + + " {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"34.000000\"\n }\n ]\n },\n {\n \"metaName\": \"backdrop2\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"backdrop\"\n },\n {\n \"metaName\": \"title\",\n \"metaType\": \"string\",\n \"metaValue\": \"Convert the USD meshes to Bifrost meshes\"\n },\n {\n \"metaName\": \"color\",\n \"metaType\": \"string\",\n \"metaValue\": \"#286487ce\"\n },\n {\n \"metaName\": \"coords\",\n" + + " \"metaType\": \"string\",\n \"metaValue\": \"5.46698 378.933 788.933 693.037\"\n }\n ]\n },\n {\n \"metaName\": \"sticky_note1\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"sticky_note\"\n },\n {\n \"metaName\": \"color\",\n \"metaType\": \"string\",\n \"metaValue\": \"#ffe0a66c\"\n },\n {\n \"metaName\": \"format\",\n \"metaType\": \"string\",\n \"metaValue\": \"md\"\n },\n {\n \"metaName\": \"text\",\n \"metaType\": \"string\",\n" + + " \"metaValue\": \"The **scene_info** node is used to construct the path to the USD file, relative to the *robot_with_purpose_example.ma* Maya scene.\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"-831.288 465.301 745.462 80\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"38.000000\"\n }\n ]\n },\n {\n \"metaName\": \"backdrop3\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"backdrop\"\n },\n {\n \"metaName\": \"color\",\n" + + " \"metaType\": \"string\",\n \"metaValue\": \"#28825fc8\"\n },\n {\n \"metaName\": \"title\",\n \"metaType\": \"string\",\n \"metaValue\": \"Add guides, proxy and render purposes under the Robot prim\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"836.932 381.17 825.067 875.675\"\n }\n ]\n },\n {\n \"metaName\": \"sticky_note2\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"sticky_note\"\n },\n {\n \"metaName\": \"color\",\n" + + " \"metaType\": \"string\",\n \"metaValue\": \"#ff7b99d5\"\n },\n {\n \"metaName\": \"format\",\n \"metaType\": \"string\",\n \"metaValue\": \"md\"\n },\n {\n \"metaName\": \"text\",\n \"metaType\": \"string\",\n \"metaValue\": \"This **add_to_stage** nodee adds prim definitions directly bellow the */Robot* prim as it is set as the *parent_path*.\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"1031.72 1140.18 606.024 80\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"51.000000\"\n" + + " }\n ]\n },\n {\n \"metaName\": \"sticky_note3\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"sticky_note\"\n },\n {\n \"metaName\": \"format\",\n \"metaType\": \"string\",\n \"metaValue\": \"md\"\n },\n {\n \"metaName\": \"fontSize\",\n \"metaType\": \"string\",\n \"metaValue\": \"10\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"-835.867 -197.891 882.557 104\"\n },\n {\n" + + " \"metaName\": \"color\",\n \"metaType\": \"string\",\n \"metaValue\": \"#ff7b99d5\"\n },\n {\n \"metaName\": \"text\",\n \"metaType\": \"string\",\n \"metaValue\": \"# Robot with Purpose Example\\n\\nIllustrates how to create a USD hierarchy with guide, proxy and render purposes.\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"37.000000\"\n }\n ]\n },\n {\n \"metaName\": \"backdrop4\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"backdrop\"\n },\n" + + " {\n \"metaName\": \"title\",\n \"metaType\": \"string\",\n \"metaValue\": \"Double-clic for more info\"\n },\n {\n \"metaName\": \"color\",\n \"metaType\": \"string\",\n \"metaValue\": \"#286487ce\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"470.723 444.465 299.396 326.008\"\n }\n ]\n },\n {\n \"metaName\": \"sticky_note4\",\n \"metadata\": [\n {\n \"metaName\": \"type\",\n \"metaType\": \"string\",\n \"metaValue\": \"sticky_note\"\n },\n {\n" + + " \"metaName\": \"color\",\n \"metaType\": \"string\",\n \"metaValue\": \"#ff7b99d5\"\n },\n {\n \"metaName\": \"format\",\n \"metaType\": \"string\",\n \"metaValue\": \"md\"\n },\n {\n \"metaName\": \"text\",\n \"metaType\": \"string\",\n \"metaValue\": \"Enable the *Diagnostic* flag (**D**) on the *terminal_diagnostic* compound to visualize the input mesh\"\n },\n {\n \"metaName\": \"coords\",\n \"metaType\": \"string\",\n \"metaValue\": \"52.4474 457.367 379.082 128\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n" + + " \"metaValue\": \"32.000000\"\n }\n ]\n },\n {\n \"metaName\": \"_recentNode_\",\n \"metaType\": \"string\",\n \"metaValue\": \"BifrostGraph,Core::Graph,pass\"\n },\n {\n \"metaName\": \"_recentNode_\",\n \"metaType\": \"string\",\n \"metaValue\": \"sticky note\"\n },\n {\n \"metaName\": \"_recentNode_\",\n \"metaType\": \"string\",\n \"metaValue\": \"backdrop\"\n },\n {\n \"metaName\": \"_recentNode_\",\n \"metaType\": \"string\",\n \"metaValue\": \"BifrostGraph,USD::Layer,open_usd_layer\"\n },\n {\n \"metaName\": \"_recentNode_\",\n \"metaType\": \"string\",\n \"metaValue\": \"BifrostGraph,Diagnostic::Display,mesh_scope\"\n" + " },\n {\n \"metaName\": \"author\",\n \"metaType\": \"string\",\n \"metaValue\": \"Autodesk\"\n },\n {\n \"metaName\": \"category\",\n \"metaType\": \"string\",\n \"metaValue\": \"/USD/WIP\"\n },\n {\n \"metaName\": \"description\",\n \"metaType\": \"string\",\n \"metaValue\": \"Illustrates how to create a USD hierarchy with guide, proxy and render purposes.\\nSince it is loading a USD file located in the bifrost_usd_lab install, open the selected example scene (link in the bottom left of the Bifrost Browser) to let Bifrost resolve the USD path relative to the Maya scene path. If you want to open the graph without the Maya scene, you must set PXR_AR_DEFAULT_SEARCH_PATH environment variable to /bifrost_usd_lab/bifrost_pack.\"\n },\n {\n \"metaName\": \"documentation\",\n" - + " \"metaType\": \"string\",\n \"metaValue\": \"robot_with_purpose_docs_${language}.md\"\n },\n {\n \"metaName\": \"example_scene\",\n \"metaType\": \"string\",\n \"metaValue\": \"robot_with_purpose_example.ma\"\n },\n {\n \"metaName\": \"thumbnail\",\n \"metaType\": \"string\",\n \"metaValue\": \"robot_with_purpose_thumb.png\"\n },\n {\n \"metaName\": \"internal\",\n \"metaValue\": \"true\"\n },\n {\n \"metaName\": \"ViewportRect\",\n \"metaType\": \"string\",\n \"metaValue\": \"-940.356 -381.335 2956.2 1800.98\"\n }\n ],\n \"terminalStates\": [\n {\n \"name\": \"Core::Graph::terminal::final\",\n \"enabled\": \"false\"\n },\n {\n" + + " \"metaType\": \"string\",\n \"metaValue\": \"robot_with_purpose_docs_${language}.md\"\n },\n {\n \"metaName\": \"example_scene\",\n \"metaType\": \"string\",\n \"metaValue\": \"robot_with_purpose_example.ma\"\n },\n {\n \"metaName\": \"thumbnail\",\n \"metaType\": \"string\",\n \"metaValue\": \"robot_with_purpose_thumb.png\"\n },\n {\n \"metaName\": \"internal\",\n \"metaValue\": \"true\"\n },\n {\n \"metaName\": \"ViewportRect\",\n \"metaType\": \"string\",\n \"metaValue\": \"-941.328 -349.806 2955.94 1746.69\"\n }\n ],\n \"terminalStates\": [\n {\n \"name\": \"Core::Graph::terminal::final\",\n \"enabled\": \"false\"\n },\n {\n" + " \"name\": \"Core::Graph::terminal::proxy\",\n \"enabled\": \"false\"\n },\n {\n \"name\": \"Core::Graph::terminal::diagnostic\",\n \"enabled\": \"false\"\n }\n ],\n \"ports\": [\n {\n \"portName\": \"stage\",\n \"portDirection\": \"output\",\n \"portType\": \"BifrostUsd::Stage\"\n }\n ],\n \"compounds\": [\n {\n \"name\": \"define_proxy_prims\",\n \"metadata\": [\n {\n \"metaName\": \"io_nodes\",\n \"metadata\": [\n {\n \"metaName\": \"io_inodes\",\n \"metadata\": [\n {\n \"metaName\": \"input\",\n \"metadata\": [\n" + " {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"10 178\"\n },\n {\n \"metaName\": \"io_ports\",\n \"metadata\": [\n {\n \"metaName\": \"mesh\"\n }\n" + " ]\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"33.000000\"\n }\n ]\n }\n ]\n },\n {\n \"metaName\": \"io_onodes\",\n \"metadata\": [\n {\n \"metaName\": \"output\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n" @@ -204,7 +204,7 @@ createNode bifrostGraphShape -n "robotWithPurposeShape" -p "robotWithPurpose"; + " \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"60.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"922.886 355.376\"\n }\n ]\n },\n {\n \"nodeName\": \"get_bbox_info\",\n \"nodeType\": \"get_bbox_info\",\n \"metadata\": [\n" + " {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"55.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"302.315 357.369\"\n }\n ]\n },\n {\n \"nodeName\": \"scalar_to_vector3\",\n" + " \"nodeType\": \"Core::Conversion::scalar_to_vector3\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"61.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"645.369 444.597\"\n }\n ]\n" - + " },\n {\n \"nodeName\": \"define_usd_mesh\",\n \"nodeType\": \"USD::Prim::define_usd_mesh\",\n \"fanInPortNames\": {\n \"attribute_definitions\": [\n \"attribute_definitions\",\n \"attribute_definition\"\n ],\n \"reference_definitions\": [],\n \"relationship_definitions\": [],\n \"children\": []\n },\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n" + + " },\n {\n \"nodeName\": \"define_usd_mesh\",\n \"nodeType\": \"USD::Prim::define_usd_mesh\",\n \"fanInPortNames\": {\n \"reference_definitions\": [],\n \"attribute_definitions\": [\n \"attribute_definitions\",\n \"attribute_definition\"\n ],\n \"children\": [],\n \"relationship_definitions\": []\n },\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n" + " },\n {\n \"metaName\": \"PortExpandedState\",\n \"metadata\": [\n {\n \"metaName\": \"General\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"General.Variant Selection\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"attribute_definitions\",\n \"metaType\": \"string\",\n" + " \"metaValue\": \"1\"\n }\n ]\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"63.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"1293.42 201.262\"\n }\n ]\n },\n {\n \"nodeName\": \"create_mesh_cube\",\n \"nodeType\": \"Modeling::Primitive::create_mesh_cube\",\n" + " \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"59.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"918.658 184.376\"\n }\n ]\n },\n {\n \"nodeName\": \"fractal_color\",\n" @@ -216,33 +216,33 @@ createNode bifrostGraphShape -n "robotWithPurposeShape" -p "robotWithPurpose"; + " \"source\": \".mesh\",\n \"target\": \"fractal_color.mesh\"\n },\n {\n \"source\": \"define_usd_transform.attribute_definitions\",\n \"target\": \"define_usd_mesh.attribute_definitions.attribute_definitions\"\n },\n {\n \"source\": \"define_usd_display_color.attribute_definition\",\n \"target\": \"define_usd_mesh.attribute_definitions.attribute_definition\"\n }\n ],\n \"values\": [\n {\n \"valueName\": \"value1.value\",\n \"valueType\": \"string\",\n \"value\": \"cube\"\n },\n {\n" + " \"valueName\": \"string_join.separator\",\n \"valueType\": \"string\",\n \"value\": \"_\"\n },\n {\n \"valueName\": \"define_usd_display_color.color\",\n \"valueType\": \"Math::float3\",\n \"value\": {\n \"x\": \"0f\",\n \"y\": \"0f\",\n \"z\": \"1f\"\n }\n },\n {\n \"valueName\": \"define_usd_transform.translation\",\n \"valueType\": \"Math::float3\",\n \"value\": {\n \"x\": \"0f\",\n \"y\": \"0f\",\n \"z\": \"0f\"\n" + " }\n },\n {\n \"valueName\": \"define_usd_transform.rotation\",\n \"valueType\": \"Math::float3\",\n \"value\": {\n \"x\": \"0f\",\n \"y\": \"0f\",\n \"z\": \"0f\"\n }\n },\n {\n \"valueName\": \"define_usd_transform.scale\",\n \"valueType\": \"Math::float3\",\n \"value\": {\n \"x\": \"1f\",\n \"y\": \"1f\",\n \"z\": \"1f\"\n }\n },\n {\n \"valueName\": \"define_usd_mesh.path\",\n" - + " \"valueType\": \"string\",\n \"value\": \"/mesh\"\n },\n {\n \"valueName\": \"define_usd_mesh.mesh\",\n \"valueType\": \"Object\",\n \"value\": {}\n },\n {\n \"valueName\": \"define_usd_mesh.subdivision_scheme\",\n \"valueType\": \"BifrostUsd::SubdivisionScheme\",\n \"value\": \"catmullClark\"\n },\n {\n \"valueName\": \"define_usd_mesh.attribute_definitions\",\n \"valueType\": \"array\",\n \"value\": []\n },\n {\n \"valueName\": \"define_usd_mesh.reference_definitions\",\n" - + " \"valueType\": \"array\",\n \"value\": []\n },\n {\n \"valueName\": \"define_usd_mesh.relationship_definitions\",\n \"valueType\": \"array\",\n \"value\": []\n },\n {\n \"valueName\": \"define_usd_mesh.children\",\n \"valueType\": \"array\",\n \"value\": []\n },\n {\n \"valueName\": \"define_usd_mesh.material\",\n \"valueType\": \"Object\",\n \"value\": {}\n },\n {\n \"valueName\": \"define_usd_mesh.normal_per_vertex\",\n" - + " \"valueType\": \"bool\",\n \"value\": \"true\"\n },\n {\n \"valueName\": \"define_usd_mesh.variant_set_name\",\n \"valueType\": \"string\",\n \"value\": \"\"\n },\n {\n \"valueName\": \"define_usd_mesh.variant_name\",\n \"valueType\": \"string\",\n \"value\": \"\"\n },\n {\n \"valueName\": \"create_mesh_cube.length\",\n \"valueType\": \"float\",\n \"value\": \"1f\"\n },\n {\n \"valueName\": \"create_mesh_cube.width\",\n \"valueType\": \"float\",\n" - + " \"value\": \"1f\"\n },\n {\n \"valueName\": \"create_mesh_cube.height\",\n \"valueType\": \"float\",\n \"value\": \"1f\"\n },\n {\n \"valueName\": \"create_mesh_cube.position\",\n \"valueType\": \"Math::float3\",\n \"value\": {\n \"x\": \"0f\",\n \"y\": \"0f\",\n \"z\": \"0f\"\n }\n },\n {\n \"valueName\": \"create_mesh_cube.up_axis\",\n \"valueType\": \"Math::float3\",\n \"value\": {\n \"x\": \"0f\",\n" - + " \"y\": \"1f\",\n \"z\": \"0f\"\n }\n },\n {\n \"valueName\": \"create_mesh_cube.base_to_pivot\",\n \"valueType\": \"bool\",\n \"value\": \"false\"\n },\n {\n \"valueName\": \"average.output\",\n \"valueType\": \"array\",\n \"value\": []\n }\n ],\n \"reservedNodeNames\": [\n {\n \"name\": \"input\"\n },\n {\n \"name\": \"output\"\n }\n ],\n" - + " \"forEachCompound\": {\n \"ports\": []\n }\n }\n ],\n \"compoundNodes\": [\n {\n \"nodeName\": \"define_proxy_cubes\",\n \"nodeType\": \"define_proxy_cubes\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"315 130\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n" - + " \"metaValue\": \"35.000000\"\n }\n ]\n },\n {\n \"nodeName\": \"define_usd_prim2\",\n \"nodeType\": \"USD::Prim::define_usd_prim\",\n \"fanInPortNames\": {\n \"attribute_definitions\": [],\n \"reference_definitions\": [],\n \"relationship_definitions\": [],\n \"variant_set_definitions\": [],\n \"children\": [\n \"mesh_definition\"\n ]\n },\n \"metadata\": [\n {\n \"metaName\": \"PortExpandedState\",\n \"metadata\": [\n {\n \"metaName\": \"children\",\n" - + " \"metaType\": \"string\",\n \"metaValue\": \"0\"\n }\n ]\n },\n {\n \"metaName\": \"format\",\n \"metaType\": \"string\",\n \"metaValue\": \"{specifier} {type} {path}\"\n },\n {\n \"metaName\": \"show\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"2\"\n },\n {\n \"metaName\": \"LayoutPos\",\n" - + " \"metaType\": \"string\",\n \"metaValue\": \"620 10\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"32.000000\"\n }\n ]\n }\n ],\n \"connections\": [\n {\n \"source\": \"define_usd_prim2.prim_definition\",\n \"target\": \".prim_definition\"\n },\n {\n \"source\": \".mesh\",\n \"target\": \"define_proxy_cubes.mesh\"\n },\n {\n \"source\": \"define_proxy_cubes.mesh_definition\",\n \"target\": \"define_usd_prim2.children.mesh_definition\"\n" - + " }\n ],\n \"values\": [\n {\n \"valueName\": \"define_proxy_cubes.max_iterations\",\n \"valueType\": \"long\",\n \"value\": \"400\"\n },\n {\n \"valueName\": \"define_usd_prim2.path\",\n \"valueType\": \"string\",\n \"value\": \"/proxies\"\n },\n {\n \"valueName\": \"define_usd_prim2.type\",\n \"valueType\": \"string\",\n \"value\": \"Scope\"\n },\n {\n \"valueName\": \"define_usd_prim2.specifier\",\n \"valueType\": \"BifrostUsd::SdfSpecifier\",\n \"value\": \"Def\"\n },\n {\n \"valueName\": \"define_usd_prim2.kind\",\n" - + " \"valueType\": \"BifrostUsd::ModelKind\",\n \"value\": \"None\"\n },\n {\n \"valueName\": \"define_usd_prim2.active\",\n \"valueType\": \"BifrostUsd::ActivatePrim\",\n \"value\": \"None\"\n },\n {\n \"valueName\": \"define_usd_prim2.instanceable\",\n \"valueType\": \"BifrostUsd::InstanceablePrim\",\n \"value\": \"None\"\n },\n {\n \"valueName\": \"define_usd_prim2.purpose\",\n \"valueType\": \"BifrostUsd::ImageablePurpose\",\n \"value\": \"Proxy\"\n },\n {\n \"valueName\": \"define_usd_prim2.attribute_definitions\",\n \"valueType\": \"array\",\n \"value\": []\n" - + " },\n {\n \"valueName\": \"define_usd_prim2.reference_definitions\",\n \"valueType\": \"array\",\n \"value\": []\n },\n {\n \"valueName\": \"define_usd_prim2.relationship_definitions\",\n \"valueType\": \"array\",\n \"value\": []\n },\n {\n \"valueName\": \"define_usd_prim2.variant_set_definitions\",\n \"valueType\": \"array\",\n \"value\": []\n },\n {\n \"valueName\": \"define_usd_prim2.children\",\n \"valueType\": \"array\",\n \"value\": []\n },\n {\n \"valueName\": \"define_usd_prim2.material\",\n" - + " \"valueType\": \"Object\",\n \"value\": {}\n },\n {\n \"valueName\": \"define_usd_prim2.variant_name\",\n \"valueType\": \"string\",\n \"value\": \"\"\n },\n {\n \"valueName\": \"define_usd_prim2.variant_set_name\",\n \"valueType\": \"string\",\n \"value\": \"\"\n }\n ],\n \"reservedNodeNames\": [\n {\n \"name\": \"input\"\n },\n {\n \"name\": \"output\"\n }\n ]\n },\n {\n \"name\": \"define_guides_prims\",\n \"metadata\": [\n {\n \"metaName\": \"io_nodes\",\n" - + " \"metadata\": [\n {\n \"metaName\": \"io_inodes\",\n \"metadata\": [\n {\n \"metaName\": \"input\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"2\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"10 106\"\n },\n {\n" - + " \"metaName\": \"io_ports\",\n \"metadata\": [\n {\n \"metaName\": \"mesh\"\n }\n ]\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"33.000000\"\n }\n ]\n }\n ]\n },\n {\n \"metaName\": \"io_onodes\",\n \"metadata\": [\n" - + " {\n \"metaName\": \"output\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"2\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"925 58\"\n },\n {\n \"metaName\": \"io_ports\",\n \"metadata\": [\n {\n" - + " \"metaName\": \"prim_definition\"\n }\n ]\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"34.000000\"\n }\n ]\n }\n ]\n }\n ]\n },\n {\n \"metaName\": \"ViewportRect\",\n \"metaType\": \"string\",\n \"metaValue\": \"-69.6007 -249.301 1301.67 793.002\"\n }\n" - + " ],\n \"ports\": [\n {\n \"portName\": \"mesh\",\n \"portDirection\": \"input\"\n },\n {\n \"portName\": \"prim_definition\",\n \"portDirection\": \"output\",\n \"portType\": \"Object\"\n }\n ],\n \"compounds\": [\n {\n \"name\": \"define_guide_capsules\",\n \"metadata\": [\n {\n \"metaName\": \"icon\",\n \"metaType\": \"string\",\n \"metaValue\": \"../icons/LoopForEach.svg\"\n },\n {\n \"metaName\": \"_recentNode_\",\n \"metaType\": \"string\",\n" - + " \"metaValue\": \"BifrostGraph,Core::Type_Conversion,to_double\"\n },\n {\n \"metaName\": \"_recentNode_\",\n \"metaType\": \"string\",\n \"metaValue\": \"BifrostGraph,Core::Math,multiply\"\n },\n {\n \"metaName\": \"_recentNode_\",\n \"metaType\": \"string\",\n \"metaValue\": \"BifrostGraph,Core::Math,subtract\"\n },\n {\n \"metaName\": \"_recentNode_\",\n \"metaType\": \"string\",\n \"metaValue\": \"BifrostGraph,Geometry::Properties,get_point_position\"\n },\n {\n \"metaName\": \"_recentNode_\",\n" - + " \"metaType\": \"string\",\n \"metaValue\": \"BifrostGraph,Core::Array,array_bounds\"\n },\n {\n \"metaName\": \"io_nodes\",\n \"metadata\": [\n {\n \"metaName\": \"io_inodes\",\n \"metadata\": [\n {\n \"metaName\": \"input\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n" - + " {\n \"metaName\": \"io_ports\",\n \"metadata\": [\n {\n \"metaName\": \"max_iterations\"\n },\n {\n \"metaName\": \"current_index\"\n },\n {\n \"metaName\": \"mesh\"\n }\n ]\n },\n {\n" - + " \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"57.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"-186.492 597.267\"\n }\n ]\n }\n ]\n },\n {\n \"metaName\": \"io_onodes\",\n \"metadata\": [\n" - + " {\n \"metaName\": \"output\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"io_ports\",\n \"metadata\": [\n {\n \"metaName\": \"mesh_definition\"\n }\n ]\n" - + " },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"63.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"1966.94 406.306\"\n }\n ]\n }\n ]\n }\n ]\n" - + " },\n {\n \"metaName\": \"ViewportRect\",\n \"metaType\": \"string\",\n \"metaValue\": \"-266.459 -274.75 2540.49 1547.72\"\n }\n ],\n \"ports\": [\n {\n \"portName\": \"max_iterations\",\n \"portDirection\": \"input\",\n \"portType\": \"long\",\n \"portIterationLimit\": \"true\"\n },\n {\n \"portName\": \"current_index\",\n \"portDirection\": \"input\",\n \"portType\": \"long\",\n \"portIterationCounter\": \"true\"\n },\n {\n" - + " \"portName\": \"mesh\",\n \"portDirection\": \"input\",\n \"portIterationTarget\": \"true\"\n },\n {\n \"portName\": \"mesh_definition\",\n \"portDirection\": \"output\",\n \"portIterationTarget\": \"true\"\n }\n ],\n \"compounds\": [\n {\n \"name\": \"get_bbox_info\",\n \"metadata\": [\n {\n \"metaName\": \"_recentNode_\",\n \"metaType\": \"string\",\n \"metaValue\": \"BifrostGraph,Core::Math,absolute_value\"\n },\n {\n" - + " \"metaName\": \"_recentNode_\",\n \"metaType\": \"string\",\n \"metaValue\": \"BifrostGraph,Core::Math,subtract\"\n },\n {\n \"metaName\": \"_recentNode_\",\n \"metaType\": \"string\",\n \"metaValue\": \"BifrostGraph,Core::Conversion,vector3_to_scalar\"\n },\n {\n \"metaName\": \"_recentNode_\",\n \"metaType\": \"string\",\n \"metaValue\": \"BifrostGraph,Core::Math,multiply\"\n },\n {\n \"metaName\": \"_recentNode_\",\n" + + " \"valueType\": \"string\",\n \"value\": \"/mesh\"\n },\n {\n \"valueName\": \"define_usd_mesh.mesh\",\n \"valueType\": \"Object\",\n \"value\": {}\n },\n {\n \"valueName\": \"define_usd_mesh.normal_per_vertex\",\n \"valueType\": \"bool\",\n \"value\": \"true\"\n },\n {\n \"valueName\": \"define_usd_mesh.subdivision_scheme\",\n \"valueType\": \"BifrostUsd::SubdivisionScheme\",\n \"value\": \"catmullClark\"\n },\n {\n \"valueName\": \"define_usd_mesh.variant_set_name\",\n" + + " \"valueType\": \"string\",\n \"value\": \"\"\n },\n {\n \"valueName\": \"define_usd_mesh.variant_name\",\n \"valueType\": \"string\",\n \"value\": \"\"\n },\n {\n \"valueName\": \"define_usd_mesh.reference_definitions\",\n \"valueType\": \"array\",\n \"value\": []\n },\n {\n \"valueName\": \"define_usd_mesh.attribute_definitions\",\n \"valueType\": \"array\",\n \"value\": []\n },\n {\n \"valueName\": \"define_usd_mesh.children\",\n" + + " \"valueType\": \"array\",\n \"value\": []\n },\n {\n \"valueName\": \"define_usd_mesh.relationship_definitions\",\n \"valueType\": \"array\",\n \"value\": []\n },\n {\n \"valueName\": \"define_usd_mesh.material\",\n \"valueType\": \"Object\",\n \"value\": {}\n },\n {\n \"valueName\": \"create_mesh_cube.length\",\n \"valueType\": \"float\",\n \"value\": \"1f\"\n },\n {\n \"valueName\": \"create_mesh_cube.width\",\n" + + " \"valueType\": \"float\",\n \"value\": \"1f\"\n },\n {\n \"valueName\": \"create_mesh_cube.height\",\n \"valueType\": \"float\",\n \"value\": \"1f\"\n },\n {\n \"valueName\": \"create_mesh_cube.position\",\n \"valueType\": \"Math::float3\",\n \"value\": {\n \"x\": \"0f\",\n \"y\": \"0f\",\n \"z\": \"0f\"\n }\n },\n {\n \"valueName\": \"create_mesh_cube.up_axis\",\n \"valueType\": \"Math::float3\",\n \"value\": {\n" + + " \"x\": \"0f\",\n \"y\": \"1f\",\n \"z\": \"0f\"\n }\n },\n {\n \"valueName\": \"create_mesh_cube.base_to_pivot\",\n \"valueType\": \"bool\",\n \"value\": \"false\"\n },\n {\n \"valueName\": \"average.output\",\n \"valueType\": \"array\",\n \"value\": []\n }\n ],\n \"reservedNodeNames\": [\n {\n \"name\": \"input\"\n },\n {\n \"name\": \"output\"\n" + + " }\n ],\n \"forEachCompound\": {\n \"ports\": []\n }\n }\n ],\n \"compoundNodes\": [\n {\n \"nodeName\": \"define_proxy_cubes\",\n \"nodeType\": \"define_proxy_cubes\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"315 130\"\n },\n {\n \"metaName\": \"zValue\",\n" + + " \"metaType\": \"string\",\n \"metaValue\": \"35.000000\"\n }\n ]\n },\n {\n \"nodeName\": \"define_usd_prim2\",\n \"nodeType\": \"USD::Prim::define_usd_prim\",\n \"fanInPortNames\": {\n \"attribute_definitions\": [],\n \"reference_definitions\": [],\n \"relationship_definitions\": [],\n \"variant_set_definitions\": [],\n \"children\": [\n \"mesh_definition\"\n ]\n },\n \"metadata\": [\n {\n \"metaName\": \"PortExpandedState\",\n \"metadata\": [\n {\n" + + " \"metaName\": \"children\",\n \"metaType\": \"string\",\n \"metaValue\": \"0\"\n }\n ]\n },\n {\n \"metaName\": \"format\",\n \"metaType\": \"string\",\n \"metaValue\": \"{specifier} {type} {path}\"\n },\n {\n \"metaName\": \"show\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"2\"\n },\n" + + " {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"620 10\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"32.000000\"\n }\n ]\n }\n ],\n \"connections\": [\n {\n \"source\": \"define_usd_prim2.prim_definition\",\n \"target\": \".prim_definition\"\n },\n {\n \"source\": \".mesh\",\n \"target\": \"define_proxy_cubes.mesh\"\n },\n {\n \"source\": \"define_proxy_cubes.mesh_definition\",\n" + + " \"target\": \"define_usd_prim2.children.mesh_definition\"\n }\n ],\n \"values\": [\n {\n \"valueName\": \"define_proxy_cubes.max_iterations\",\n \"valueType\": \"long\",\n \"value\": \"400\"\n },\n {\n \"valueName\": \"define_usd_prim2.path\",\n \"valueType\": \"string\",\n \"value\": \"/proxies\"\n },\n {\n \"valueName\": \"define_usd_prim2.type\",\n \"valueType\": \"string\",\n \"value\": \"Scope\"\n },\n {\n \"valueName\": \"define_usd_prim2.specifier\",\n \"valueType\": \"BifrostUsd::SdfSpecifier\",\n \"value\": \"Def\"\n" + + " },\n {\n \"valueName\": \"define_usd_prim2.kind\",\n \"valueType\": \"BifrostUsd::ModelKind\",\n \"value\": \"None\"\n },\n {\n \"valueName\": \"define_usd_prim2.active\",\n \"valueType\": \"BifrostUsd::ActivatePrim\",\n \"value\": \"None\"\n },\n {\n \"valueName\": \"define_usd_prim2.instanceable\",\n \"valueType\": \"BifrostUsd::InstanceablePrim\",\n \"value\": \"None\"\n },\n {\n \"valueName\": \"define_usd_prim2.purpose\",\n \"valueType\": \"BifrostUsd::ImageablePurpose\",\n \"value\": \"Proxy\"\n },\n {\n \"valueName\": \"define_usd_prim2.attribute_definitions\",\n" + + " \"valueType\": \"array\",\n \"value\": []\n },\n {\n \"valueName\": \"define_usd_prim2.reference_definitions\",\n \"valueType\": \"array\",\n \"value\": []\n },\n {\n \"valueName\": \"define_usd_prim2.relationship_definitions\",\n \"valueType\": \"array\",\n \"value\": []\n },\n {\n \"valueName\": \"define_usd_prim2.variant_set_definitions\",\n \"valueType\": \"array\",\n \"value\": []\n },\n {\n \"valueName\": \"define_usd_prim2.children\",\n \"valueType\": \"array\",\n \"value\": []\n" + + " },\n {\n \"valueName\": \"define_usd_prim2.material\",\n \"valueType\": \"Object\",\n \"value\": {}\n },\n {\n \"valueName\": \"define_usd_prim2.variant_name\",\n \"valueType\": \"string\",\n \"value\": \"\"\n },\n {\n \"valueName\": \"define_usd_prim2.variant_set_name\",\n \"valueType\": \"string\",\n \"value\": \"\"\n }\n ],\n \"reservedNodeNames\": [\n {\n \"name\": \"input\"\n },\n {\n \"name\": \"output\"\n }\n ]\n },\n {\n \"name\": \"define_guides_prims\",\n" + + " \"metadata\": [\n {\n \"metaName\": \"io_nodes\",\n \"metadata\": [\n {\n \"metaName\": \"io_inodes\",\n \"metadata\": [\n {\n \"metaName\": \"input\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"2\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"10 106\"\n" + + " },\n {\n \"metaName\": \"io_ports\",\n \"metadata\": [\n {\n \"metaName\": \"mesh\"\n }\n ]\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"33.000000\"\n }\n ]\n }\n ]\n },\n" + + " {\n \"metaName\": \"io_onodes\",\n \"metadata\": [\n {\n \"metaName\": \"output\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"2\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"925 58\"\n },\n {\n \"metaName\": \"io_ports\",\n" + + " \"metadata\": [\n {\n \"metaName\": \"prim_definition\"\n }\n ]\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"34.000000\"\n }\n ]\n }\n ]\n }\n ]\n },\n {\n \"metaName\": \"ViewportRect\",\n \"metaType\": \"string\",\n" + + " \"metaValue\": \"-69.6007 -249.301 1301.67 793.002\"\n }\n ],\n \"ports\": [\n {\n \"portName\": \"mesh\",\n \"portDirection\": \"input\"\n },\n {\n \"portName\": \"prim_definition\",\n \"portDirection\": \"output\",\n \"portType\": \"Object\"\n }\n ],\n \"compounds\": [\n {\n \"name\": \"define_guide_capsules\",\n \"metadata\": [\n {\n \"metaName\": \"icon\",\n \"metaType\": \"string\",\n \"metaValue\": \"../icons/LoopForEach.svg\"\n },\n {\n \"metaName\": \"_recentNode_\",\n" + + " \"metaType\": \"string\",\n \"metaValue\": \"BifrostGraph,Core::Type_Conversion,to_double\"\n },\n {\n \"metaName\": \"_recentNode_\",\n \"metaType\": \"string\",\n \"metaValue\": \"BifrostGraph,Core::Math,multiply\"\n },\n {\n \"metaName\": \"_recentNode_\",\n \"metaType\": \"string\",\n \"metaValue\": \"BifrostGraph,Core::Math,subtract\"\n },\n {\n \"metaName\": \"_recentNode_\",\n \"metaType\": \"string\",\n \"metaValue\": \"BifrostGraph,Geometry::Properties,get_point_position\"\n },\n" + + " {\n \"metaName\": \"_recentNode_\",\n \"metaType\": \"string\",\n \"metaValue\": \"BifrostGraph,Core::Array,array_bounds\"\n },\n {\n \"metaName\": \"io_nodes\",\n \"metadata\": [\n {\n \"metaName\": \"io_inodes\",\n \"metadata\": [\n {\n \"metaName\": \"input\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n" + + " },\n {\n \"metaName\": \"io_ports\",\n \"metadata\": [\n {\n \"metaName\": \"max_iterations\"\n },\n {\n \"metaName\": \"current_index\"\n },\n {\n \"metaName\": \"mesh\"\n }\n ]\n },\n" + + " {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"57.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"-186.492 597.267\"\n }\n ]\n }\n ]\n },\n {\n \"metaName\": \"io_onodes\",\n" + + " \"metadata\": [\n {\n \"metaName\": \"output\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"io_ports\",\n \"metadata\": [\n {\n \"metaName\": \"mesh_definition\"\n }\n" + + " ]\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"63.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"1966.94 406.306\"\n }\n ]\n }\n ]\n }\n" + + " ]\n },\n {\n \"metaName\": \"ViewportRect\",\n \"metaType\": \"string\",\n \"metaValue\": \"-266.459 -274.75 2540.49 1547.72\"\n }\n ],\n \"ports\": [\n {\n \"portName\": \"max_iterations\",\n \"portDirection\": \"input\",\n \"portType\": \"long\",\n \"portIterationLimit\": \"true\"\n },\n {\n \"portName\": \"current_index\",\n \"portDirection\": \"input\",\n \"portType\": \"long\",\n \"portIterationCounter\": \"true\"\n },\n" + + " {\n \"portName\": \"mesh\",\n \"portDirection\": \"input\",\n \"portIterationTarget\": \"true\"\n },\n {\n \"portName\": \"mesh_definition\",\n \"portDirection\": \"output\",\n \"portIterationTarget\": \"true\"\n }\n ],\n \"compounds\": [\n {\n \"name\": \"get_bbox_info\",\n \"metadata\": [\n {\n \"metaName\": \"_recentNode_\",\n \"metaType\": \"string\",\n \"metaValue\": \"BifrostGraph,Core::Math,absolute_value\"\n },\n" + + " {\n \"metaName\": \"_recentNode_\",\n \"metaType\": \"string\",\n \"metaValue\": \"BifrostGraph,Core::Math,subtract\"\n },\n {\n \"metaName\": \"_recentNode_\",\n \"metaType\": \"string\",\n \"metaValue\": \"BifrostGraph,Core::Conversion,vector3_to_scalar\"\n },\n {\n \"metaName\": \"_recentNode_\",\n \"metaType\": \"string\",\n \"metaValue\": \"BifrostGraph,Core::Math,multiply\"\n },\n {\n \"metaName\": \"_recentNode_\",\n" + " \"metaType\": \"string\",\n \"metaValue\": \"BifrostGraph,Geometry::Properties,get_point_position\"\n },\n {\n \"metaName\": \"ViewportRect\",\n \"metaType\": \"string\",\n \"metaValue\": \"-378 -324.953 2219 1961.91\"\n },\n {\n \"metaName\": \"io_nodes\",\n \"metadata\": [\n {\n \"metaName\": \"io_inodes\",\n \"metadata\": [\n {\n \"metaName\": \"input\",\n" + " \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"2\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"-298.222 363.363\"\n },\n {\n \"metaName\": \"io_ports\",\n" + " \"metadata\": [\n {\n \"metaName\": \"mesh\"\n }\n ]\n }\n ]\n }\n ]\n },\n {\n \"metaName\": \"io_onodes\",\n \"metadata\": [\n {\n \"metaName\": \"output\",\n \"metadata\": [\n" @@ -391,31 +391,35 @@ createNode bifrostGraphShape -n "robotWithPurposeShape" -p "robotWithPurpose"; + " \"valueName\": \"define_usd_reference.relative_prim_path\",\n \"valueType\": \"bool\",\n \"value\": \"false\"\n },\n {\n \"valueName\": \"define_usd_reference.layer\",\n \"valueType\": \"BifrostUsd::Layer\",\n \"value\": {}\n },\n {\n \"valueName\": \"define_usd_reference.layer_offset\",\n \"valueType\": \"double\",\n \"value\": \"0\"\n },\n {\n \"valueName\": \"define_usd_reference.layer_scale\",\n \"valueType\": \"double\",\n \"value\": \"1\"\n },\n {\n \"valueName\": \"define_usd_reference.position\",\n \"valueType\": \"BifrostUsd::UsdListPosition\",\n" + " \"value\": \"UsdListPositionFrontOfPrependList\"\n },\n {\n \"valueName\": \"define_usd_reference.anchor_path\",\n \"valueType\": \"string\",\n \"value\": \"\"\n },\n {\n \"valueName\": \"open_usd_layer.file\",\n \"valueType\": \"string\",\n \"value\": \"\"\n },\n {\n \"valueName\": \"open_usd_layer.read_only\",\n \"valueType\": \"bool\",\n \"value\": \"true\"\n },\n {\n \"valueName\": \"open_usd_layer.save_file\",\n \"valueType\": \"string\",\n \"value\": \"\"\n }\n ],\n \"reservedNodeNames\": [\n {\n" + " \"name\": \"input\"\n },\n {\n \"name\": \"output\"\n }\n ]\n }\n ],\n \"compoundNodes\": [\n {\n \"nodeName\": \"open_usd_stage\",\n \"nodeType\": \"USD::Stage::open_usd_stage\",\n \"fanInPortNames\": {\n \"mask\": []\n },\n \"metadata\": [\n {\n \"metaName\": \"PortExpandedState\",\n \"metadata\": [\n {\n \"metaName\": \"Settings\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n }\n ]\n },\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n" - + " \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"NodeValueDisplay\",\n \"metadata\": [\n {\n \"metaName\": \"format\",\n \"metaType\": \"string\",\n \"metaValue\": \"open {file} stage\"\n },\n {\n \"metaName\": \"show\",\n \"metaType\": \"string\",\n \"metaValue\": \"0\"\n }\n ]\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"53.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n" - + " \"metaType\": \"string\",\n \"metaValue\": \"32.6542 657.673\"\n }\n ]\n },\n {\n \"nodeName\": \"read_usd_meshes\",\n \"nodeType\": \"USD::IO::read_usd_meshes\",\n \"fanInPortNames\": {\n \"exclude_prefixes\": []\n },\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"57.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"303.563 863.267\"\n" + + " \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"NodeValueDisplay\",\n \"metadata\": [\n {\n \"metaName\": \"format\",\n \"metaType\": \"string\",\n \"metaValue\": \"open {file} stage\"\n },\n {\n \"metaName\": \"show\",\n \"metaType\": \"string\",\n \"metaValue\": \"0\"\n }\n ]\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"80.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n" + + " \"metaType\": \"string\",\n \"metaValue\": \"31.1258 637.804\"\n }\n ]\n },\n {\n \"nodeName\": \"read_usd_meshes\",\n \"nodeType\": \"USD::IO::read_usd_meshes\",\n \"fanInPortNames\": {\n \"exclude_prefixes\": []\n },\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"303.563 863.267\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"43.000000\"\n" + " }\n ]\n },\n {\n \"nodeName\": \"define_usd_prim\",\n \"nodeType\": \"USD::Prim::define_usd_prim\",\n \"fanInPortNames\": {\n \"attribute_definitions\": [],\n \"reference_definitions\": [],\n \"relationship_definitions\": [],\n \"variant_set_definitions\": [],\n \"children\": []\n },\n \"metadata\": [\n {\n \"metaName\": \"PortExpandedState\",\n \"metadata\": [\n {\n \"metaName\": \"children\",\n \"metaType\": \"string\",\n \"metaValue\": \"0\"\n }\n ]\n },\n {\n \"metaName\": \"NodeValueDisplay\",\n" - + " \"metadata\": [\n {\n \"metaName\": \"format\",\n \"metaType\": \"string\",\n \"metaValue\": \"{specifier} {type} {path}\"\n },\n {\n \"metaName\": \"show\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n }\n ]\n },\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"50.000000\"\n },\n {\n" - + " \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"661.614 184.293\"\n }\n ]\n },\n {\n \"nodeName\": \"add_robot_children_to_stage\",\n \"nodeType\": \"USD::Stage::add_to_stage\",\n \"fanInPortNames\": {\n \"prim_definitions\": [\n \"prim_definition1\",\n \"prim_definition2\",\n \"prim_definition3\"\n ]\n },\n \"terminalStates\": [\n {\n \"name\": \"Core::Graph::terminal::diagnostic\",\n \"enabled\": \"true\"\n }\n ],\n \"metadata\": [\n {\n \"metaName\": \"PortExpandedState\",\n \"metadata\": [\n" + + " \"metadata\": [\n {\n \"metaName\": \"format\",\n \"metaType\": \"string\",\n \"metaValue\": \"{specifier} {type} {path}\"\n },\n {\n \"metaName\": \"show\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n }\n ]\n },\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"661.614 184.293\"\n },\n {\n" + + " \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"36.000000\"\n }\n ]\n },\n {\n \"nodeName\": \"add_robot_children_to_stage\",\n \"nodeType\": \"USD::Stage::add_to_stage\",\n \"fanInPortNames\": {\n \"prim_definitions\": [\n \"prim_definition1\",\n \"prim_definition2\",\n \"prim_definition3\"\n ]\n },\n \"terminalStates\": [\n {\n \"name\": \"Core::Graph::terminal::diagnostic\",\n \"enabled\": \"true\"\n }\n ],\n \"metadata\": [\n {\n \"metaName\": \"PortExpandedState\",\n \"metadata\": [\n" + " {\n \"metaName\": \"Settings\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"prim_definitions\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n }\n ]\n },\n {\n \"metaName\": \"NodeValueDisplay\",\n \"metadata\": [\n {\n \"metaName\": \"show\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"format\",\n \"metaType\": \"string\",\n" - + " \"metaValue\": \"Add to Stage (Layer index {layer_index})\"\n }\n ]\n },\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"67.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"1387.66 505.046\"\n }\n ]\n },\n {\n \"nodeName\": \"define_proxy_prims\",\n \"nodeType\": \"define_proxy_prims\",\n \"metadata\": [\n {\n" - + " \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"64.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"867.488 684.052\"\n }\n ]\n },\n {\n \"nodeName\": \"define_guides_prims\",\n \"nodeType\": \"define_guides_prims\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n" - + " \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"63.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"860.143 445.068\"\n }\n ]\n },\n {\n \"nodeName\": \"add_robot_prim_to_stage\",\n \"nodeType\": \"USD::Stage::add_to_stage\",\n \"fanInPortNames\": {\n \"prim_definitions\": [\n \"prim_definition\"\n ]\n },\n \"terminalStates\": [\n {\n \"name\": \"Core::Graph::terminal::diagnostic\",\n \"enabled\": \"true\"\n }\n ],\n \"metadata\": [\n {\n" + + " \"metaValue\": \"Add to Stage (Layer index {layer_index})\"\n }\n ]\n },\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"1387.66 505.046\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"49.000000\"\n }\n ]\n },\n {\n \"nodeName\": \"define_proxy_prims\",\n \"nodeType\": \"define_proxy_prims\",\n \"metadata\": [\n {\n" + + " \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"867.488 684.052\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"46.000000\"\n }\n ]\n },\n {\n \"nodeName\": \"define_guides_prims\",\n \"nodeType\": \"define_guides_prims\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n" + + " \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"860.143 445.068\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"45.000000\"\n }\n ]\n },\n {\n \"nodeName\": \"add_robot_prim_to_stage\",\n \"nodeType\": \"USD::Stage::add_to_stage\",\n \"fanInPortNames\": {\n \"prim_definitions\": [\n \"prim_definition\"\n ]\n },\n \"terminalStates\": [\n {\n \"name\": \"Core::Graph::terminal::diagnostic\",\n \"enabled\": \"true\"\n }\n ],\n \"metadata\": [\n {\n" + " \"metaName\": \"PortExpandedState\",\n \"metadata\": [\n {\n \"metaName\": \"prim_definitions\",\n \"metaType\": \"string\",\n \"metaValue\": \"0\"\n }\n ]\n },\n {\n \"metaName\": \"format\",\n \"metaType\": \"string\",\n \"metaValue\": \"add_to_stage at layer {layer_index}\"\n },\n {\n \"metaName\": \"show\",\n \"metaType\": \"string\",\n \"metaValue\": \"0\"\n },\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"2\"\n },\n" - + " {\n \"metaName\": \"NodeValueDisplay\",\n \"metadata\": [\n {\n \"metaName\": \"show\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"format\",\n \"metaType\": \"string\",\n \"metaValue\": \"Add to Stage (Layer index {layer_index})\"\n }\n ]\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"31.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n" - + " \"metaValue\": \"914.494 -13.2415\"\n }\n ]\n },\n {\n \"nodeName\": \"value\",\n \"valueType\": \"string\",\n \"metadata\": [\n {\n \"metaName\": \"valuenode_defaultvalue\",\n \"metaType\": \"string\",\n \"metaValue\": \"/Robot\"\n },\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"68.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"1147.09 960.822\"\n" - + " }\n ]\n },\n {\n \"nodeName\": \"string_join\",\n \"nodeType\": \"Core::String::string_join\",\n \"fanInPortNames\": {\n \"strings\": [\n \"scene_directory\",\n \"out\"\n ]\n },\n \"metadata\": [\n {\n \"metaName\": \"PortExpandedState\",\n \"metadata\": [\n {\n \"metaName\": \"strings\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n }\n ]\n },\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n" - + " },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"54.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"-434.069 625.877\"\n }\n ]\n },\n {\n \"nodeName\": \"usd_file_path\",\n \"nodeType\": \"USD::IO::usd_file_path\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"56.000000\"\n" - + " },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"-733.165 775.759\"\n }\n ]\n },\n {\n \"nodeName\": \"create_usd_stage\",\n \"nodeType\": \"USD::Stage::create_usd_stage\",\n \"fanInPortNames\": {\n \"sublayers\": []\n },\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"2\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"49.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n" - + " \"metaType\": \"string\",\n \"metaValue\": \"433.45 10.5024\"\n }\n ]\n },\n {\n \"nodeName\": \"terminal_diagnostic\",\n \"nodeType\": \"terminal_diagnostic\",\n \"terminalStates\": [\n {\n \"name\": \"Core::Graph::terminal::diagnostic\",\n \"enabled\": \"false\"\n }\n ],\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"512.069 522.451\"\n },\n {\n \"metaName\": \"zValue\",\n" - + " \"metaType\": \"string\",\n \"metaValue\": \"58.000000\"\n }\n ]\n },\n {\n \"nodeName\": \"define_render_prims\",\n \"nodeType\": \"define_render_prims\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"65.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"862.033 922.052\"\n }\n ]\n },\n {\n \"nodeName\": \"pass\",\n" - + " \"nodeType\": \"Core::Graph::pass\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"0\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"1.66574 1103.6\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"42.000000\"\n }\n ]\n },\n {\n \"nodeName\": \"scene_info\",\n \"nodeType\": \"File::Project::scene_info\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n" - + " \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"55.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"-739.506 592.572\"\n }\n ]\n }\n ],\n \"connections\": [\n {\n \"source\": \"open_usd_stage.stage\",\n \"target\": \"read_usd_meshes.stage\"\n },\n {\n \"source\": \"add_robot_prim_to_stage.out_stage\",\n \"target\": \"add_robot_children_to_stage.stage\"\n },\n {\n \"source\": \"value.output\",\n \"target\": \"add_robot_children_to_stage.parent_path\"\n" - + " },\n {\n \"source\": \"define_usd_prim.prim_definition\",\n \"target\": \"add_robot_prim_to_stage.prim_definitions.prim_definition\"\n },\n {\n \"source\": \"define_guides_prims.prim_definition\",\n \"target\": \"add_robot_children_to_stage.prim_definitions.prim_definition1\"\n },\n {\n \"source\": \"define_proxy_prims.prim_definition\",\n \"target\": \"add_robot_children_to_stage.prim_definitions.prim_definition2\"\n },\n {\n \"source\": \"string_join.joined\",\n \"target\": \"open_usd_stage.file\"\n },\n {\n \"source\": \"create_usd_stage.stage\",\n \"target\": \"add_robot_prim_to_stage.stage\"\n },\n {\n \"source\": \"read_usd_meshes.mesh\",\n \"target\": \"terminal_diagnostic.mesh\"\n" - + " },\n {\n \"source\": \"add_robot_children_to_stage.out_stage\",\n \"target\": \".stage\"\n },\n {\n \"source\": \"define_render_prims.prim_definition\",\n \"target\": \"add_robot_children_to_stage.prim_definitions.prim_definition3\"\n },\n {\n \"source\": \"read_usd_meshes.mesh\",\n \"target\": \"define_guides_prims.mesh\"\n },\n {\n \"source\": \"read_usd_meshes.mesh\",\n \"target\": \"define_proxy_prims.mesh\"\n },\n {\n \"source\": \"string_join.joined\",\n \"target\": \"pass.input\"\n },\n {\n \"source\": \"pass.output\",\n \"target\": \"define_render_prims.file\"\n },\n {\n \"source\": \"scene_info.scene_directory\",\n \"target\": \"string_join.strings.scene_directory\"\n" - + " },\n {\n \"source\": \"usd_file_path.out\",\n \"target\": \"string_join.strings.out\"\n }\n ],\n \"values\": [\n {\n \"valueName\": \"open_usd_stage.file\",\n \"valueType\": \"string\",\n \"value\": \"usd/robot/maya_export/Robot_mod_v001.usd\"\n },\n {\n \"valueName\": \"open_usd_stage.save_file\",\n \"valueType\": \"string\",\n \"value\": \"\"\n },\n {\n \"valueName\": \"define_usd_prim.path\",\n \"valueType\": \"string\",\n \"value\": \"/Robot\"\n },\n {\n \"valueName\": \"define_usd_prim.type\",\n \"valueType\": \"string\",\n \"value\": \"Xform\"\n },\n {\n \"valueName\": \"add_robot_children_to_stage.parent_path\",\n" - + " \"valueType\": \"string\",\n \"value\": \"/Robot\"\n },\n {\n \"valueName\": \"define_proxy_prims.mesh\",\n \"valueType\": \"array\",\n \"value\": []\n },\n {\n \"valueName\": \"define_guides_prims.mesh\",\n \"valueType\": \"array\",\n \"value\": []\n },\n {\n \"valueName\": \"add_robot_prim_to_stage.layer_index\",\n \"valueType\": \"int\",\n \"value\": \"-1L\"\n },\n {\n \"valueName\": \"add_robot_prim_to_stage.prim_definitions\",\n \"valueType\": \"array\",\n \"value\": []\n },\n {\n \"valueName\": \"add_robot_prim_to_stage.enable\",\n \"valueType\": \"bool\",\n \"value\": \"true\"\n },\n {\n" - + " \"valueName\": \"add_robot_prim_to_stage.parent_path\",\n \"valueType\": \"string\",\n \"value\": \"\"\n },\n {\n \"valueName\": \"add_robot_prim_to_stage.use_material_name_or_tag\",\n \"valueType\": \"bool\",\n \"value\": \"false\"\n },\n {\n \"valueName\": \"value.value\",\n \"valueType\": \"string\",\n \"value\": \"/Robot\"\n },\n {\n \"valueName\": \"string_join.separator\",\n \"valueType\": \"string\",\n \"value\": \"\"\n },\n {\n \"valueName\": \"usd_file_path.file\",\n \"valueType\": \"string\",\n \"value\": \"Robot_mod_v001.usd\"\n },\n {\n \"valueName\": \"create_usd_stage.layer\",\n \"valueType\": \"string\",\n \"value\": \"robot.usd\"\n" - + " },\n {\n \"valueName\": \"terminal_diagnostic.translation\",\n \"valueType\": \"Math::float3\",\n \"value\": {\n \"x\": \"3f\",\n \"y\": \"0f\",\n \"z\": \"0f\"\n }\n },\n {\n \"valueName\": \"define_render_prims.file\",\n \"valueType\": \"string\",\n \"value\": \"\"\n }\n ],\n \"reservedNodeNames\": [\n {\n \"name\": \"output\"\n }\n ]\n }\n ]\n}\n"); + + " {\n \"metaName\": \"NodeValueDisplay\",\n \"metadata\": [\n {\n \"metaName\": \"show\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"format\",\n \"metaType\": \"string\",\n \"metaValue\": \"Add to Stage (Layer index {layer_index})\"\n }\n ]\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"914.494 -13.2415\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n" + + " \"metaValue\": \"31.000000\"\n }\n ]\n },\n {\n \"nodeName\": \"value\",\n \"valueType\": \"string\",\n \"metadata\": [\n {\n \"metaName\": \"valuenode_defaultvalue\",\n \"metaType\": \"string\",\n \"metaValue\": \"/Robot\"\n },\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"1147.09 960.822\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"50.000000\"\n" + + " }\n ]\n },\n {\n \"nodeName\": \"usd_file_path\",\n \"nodeType\": \"USD::IO::usd_file_path\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"77.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"-719.409 751.304\"\n }\n ]\n },\n {\n \"nodeName\": \"create_usd_stage\",\n \"nodeType\": \"USD::Stage::create_usd_stage\",\n" + + " \"fanInPortNames\": {\n \"sublayers\": []\n },\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"2\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"433.45 10.5024\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"35.000000\"\n }\n ]\n },\n {\n \"nodeName\": \"terminal_diagnostic\",\n \"nodeType\": \"terminal_diagnostic\",\n \"terminalStates\": [\n {\n \"name\": \"Core::Graph::terminal::diagnostic\",\n" + + " \"enabled\": \"false\"\n }\n ],\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"512.069 522.451\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"44.000000\"\n }\n ]\n },\n {\n \"nodeName\": \"define_render_prims\",\n \"nodeType\": \"define_render_prims\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n" + + " \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"862.033 922.052\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"47.000000\"\n }\n ]\n },\n {\n \"nodeName\": \"pass\",\n \"nodeType\": \"Core::Graph::pass\",\n \"metadata\": [\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"82.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n" + + " \"metaValue\": \"302.762 1082.2\"\n },\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"0\"\n }\n ]\n },\n {\n \"nodeName\": \"scene_info\",\n \"nodeType\": \"File::Project::scene_info\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"76.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n" + + " \"metaValue\": \"-721.165 568.117\"\n }\n ]\n },\n {\n \"nodeName\": \"string_join\",\n \"nodeType\": \"Core::String::string_join\",\n \"fanInPortNames\": {\n \"strings\": [\n \"scene_directory\",\n \"usd_file\"\n ]\n },\n \"metadata\": [\n {\n \"metaName\": \"PortExpandedState\",\n \"metadata\": [\n {\n \"metaName\": \"strings\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n }\n ]\n },\n {\n \"metaName\": \"format\",\n \"metaType\": \"string\",\n" + + " \"metaValue\": \"Join strings ({separator})\"\n },\n {\n \"metaName\": \"show\",\n \"metaType\": \"string\",\n \"metaValue\": \"0\"\n },\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"NodeValueDisplay\",\n \"metadata\": [\n {\n \"metaName\": \"format\",\n \"metaType\": \"string\",\n \"metaValue\": \"Join strings ({separator})\"\n },\n {\n \"metaName\": \"show\",\n \"metaType\": \"string\",\n" + + " \"metaValue\": \"0\"\n }\n ]\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n \"metaValue\": \"79.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"-418.937 680.553\"\n }\n ]\n },\n {\n \"nodeName\": \"value2\",\n \"valueType\": \"string\",\n \"metadata\": [\n {\n \"metaName\": \"DisplayMode\",\n \"metaType\": \"string\",\n \"metaValue\": \"1\"\n },\n {\n \"metaName\": \"zValue\",\n \"metaType\": \"string\",\n" + + " \"metaValue\": \"78.000000\"\n },\n {\n \"metaName\": \"LayoutPos\",\n \"metaType\": \"string\",\n \"metaValue\": \"-711.697 908.236\"\n }\n ]\n }\n ],\n \"connections\": [\n {\n \"source\": \"open_usd_stage.stage\",\n \"target\": \"read_usd_meshes.stage\"\n },\n {\n \"source\": \"add_robot_prim_to_stage.out_stage\",\n \"target\": \"add_robot_children_to_stage.stage\"\n },\n {\n \"source\": \"value.output\",\n \"target\": \"add_robot_children_to_stage.parent_path\"\n },\n {\n \"source\": \"define_usd_prim.prim_definition\",\n \"target\": \"add_robot_prim_to_stage.prim_definitions.prim_definition\"\n },\n" + + " {\n \"source\": \"define_guides_prims.prim_definition\",\n \"target\": \"add_robot_children_to_stage.prim_definitions.prim_definition1\"\n },\n {\n \"source\": \"define_proxy_prims.prim_definition\",\n \"target\": \"add_robot_children_to_stage.prim_definitions.prim_definition2\"\n },\n {\n \"source\": \"create_usd_stage.stage\",\n \"target\": \"add_robot_prim_to_stage.stage\"\n },\n {\n \"source\": \"read_usd_meshes.mesh\",\n \"target\": \"terminal_diagnostic.mesh\"\n },\n {\n \"source\": \"add_robot_children_to_stage.out_stage\",\n \"target\": \".stage\"\n },\n {\n \"source\": \"define_render_prims.prim_definition\",\n \"target\": \"add_robot_children_to_stage.prim_definitions.prim_definition3\"\n" + + " },\n {\n \"source\": \"read_usd_meshes.mesh\",\n \"target\": \"define_guides_prims.mesh\"\n },\n {\n \"source\": \"read_usd_meshes.mesh\",\n \"target\": \"define_proxy_prims.mesh\"\n },\n {\n \"source\": \"pass.output\",\n \"target\": \"define_render_prims.file\"\n },\n {\n \"source\": \"value2.output\",\n \"target\": \"string_join.separator\"\n },\n {\n \"source\": \"scene_info.scene_directory\",\n \"target\": \"string_join.strings.scene_directory\"\n },\n {\n \"source\": \"usd_file_path.out\",\n \"target\": \"string_join.strings.usd_file\"\n },\n {\n \"source\": \"string_join.joined\",\n \"target\": \"open_usd_stage.file\"\n" + + " },\n {\n \"source\": \"string_join.joined\",\n \"target\": \"pass.input\"\n }\n ],\n \"values\": [\n {\n \"valueName\": \"open_usd_stage.file\",\n \"valueType\": \"string\",\n \"value\": \"usd/robot/maya_export/Robot_mod_v001.usd\"\n },\n {\n \"valueName\": \"open_usd_stage.save_file\",\n \"valueType\": \"string\",\n \"value\": \"\"\n },\n {\n \"valueName\": \"define_usd_prim.path\",\n \"valueType\": \"string\",\n \"value\": \"/Robot\"\n },\n {\n \"valueName\": \"define_usd_prim.type\",\n \"valueType\": \"string\",\n \"value\": \"Xform\"\n },\n {\n \"valueName\": \"add_robot_children_to_stage.parent_path\",\n \"valueType\": \"string\",\n" + + " \"value\": \"/Robot\"\n },\n {\n \"valueName\": \"define_proxy_prims.mesh\",\n \"valueType\": \"array\",\n \"value\": []\n },\n {\n \"valueName\": \"define_guides_prims.mesh\",\n \"valueType\": \"array\",\n \"value\": []\n },\n {\n \"valueName\": \"add_robot_prim_to_stage.layer_index\",\n \"valueType\": \"int\",\n \"value\": \"-1L\"\n },\n {\n \"valueName\": \"add_robot_prim_to_stage.prim_definitions\",\n \"valueType\": \"array\",\n \"value\": []\n },\n {\n \"valueName\": \"add_robot_prim_to_stage.enable\",\n \"valueType\": \"bool\",\n \"value\": \"true\"\n },\n {\n \"valueName\": \"add_robot_prim_to_stage.parent_path\",\n" + + " \"valueType\": \"string\",\n \"value\": \"\"\n },\n {\n \"valueName\": \"add_robot_prim_to_stage.use_material_name_or_tag\",\n \"valueType\": \"bool\",\n \"value\": \"false\"\n },\n {\n \"valueName\": \"value.value\",\n \"valueType\": \"string\",\n \"value\": \"/Robot\"\n },\n {\n \"valueName\": \"usd_file_path.file\",\n \"valueType\": \"string\",\n \"value\": \"Robot_mod_v001.usd\"\n },\n {\n \"valueName\": \"create_usd_stage.layer\",\n \"valueType\": \"string\",\n \"value\": \"robot.usd\"\n },\n {\n \"valueName\": \"terminal_diagnostic.translation\",\n \"valueType\": \"Math::float3\",\n \"value\": {\n \"x\": \"3f\",\n" + + " \"y\": \"0f\",\n \"z\": \"0f\"\n }\n },\n {\n \"valueName\": \"define_render_prims.file\",\n \"valueType\": \"string\",\n \"value\": \"\"\n },\n {\n \"valueName\": \"string_join.separator\",\n \"valueType\": \"string\",\n \"value\": \", \"\n },\n {\n \"valueName\": \"value2.value\",\n \"valueType\": \"string\",\n \"value\": \"/\"\n }\n ],\n \"reservedNodeNames\": [\n {\n \"name\": \"output\"\n }\n ]\n }\n ]\n}\n"); + setAttr ".dirtyFlag" yes; + setAttr -l on ".JobPorts__scene_info_has_project"; createNode transform -n "mayaUsdProxy1"; rename -uid "BB15CF67-E845-19E5-0C63-05B26DC45EDB"; createNode mayaUsdProxyShape -n "mayaUsdProxyShape1" -p "mayaUsdProxy1"; @@ -428,25 +432,25 @@ createNode mayaUsdProxyShape -n "mayaUsdProxyShape1" -p "mayaUsdProxy1"; setAttr ".covm[0]" 0 1 1; setAttr ".cdvm[0]" 0 1 1; setAttr ".scmp" no; - setAttr ".oslid" -type "string" "anon:0x110f18960"; - setAttr ".orlid" -type "string" "anon:0x3ab2acac0:unshareableLayer"; + setAttr ".oslid" -type "string" "anon:0x41fb39940"; + setAttr ".orlid" -type "string" "anon:0x41fb33030:unshareableLayer"; setAttr ".usdStageLoadRules" -type "string" ""; - setAttr ".usdStageTargetLayer" -type "string" "anon:0x3ab2acac0:unshareableLayer"; + setAttr ".usdStageTargetLayer" -type "string" "anon:0x41fb33030:unshareableLayer"; createNode lightLinker -s -n "lightLinker1"; - rename -uid "516CBF27-AF49-CD4B-D7BF-99BCB5C2920B"; + rename -uid "24CF83EF-5440-ABE5-2007-5181C35CB010"; setAttr -s 2 ".lnk"; setAttr -s 2 ".slnk"; createNode shapeEditorManager -n "shapeEditorManager"; - rename -uid "8E33B5D5-6143-2DE3-7A0C-19BE11B48649"; + rename -uid "5091C283-2043-276C-55A7-578446369FE3"; createNode poseInterpolatorManager -n "poseInterpolatorManager"; - rename -uid "6B02FF35-FC42-828E-F7BA-F9A582C9F758"; + rename -uid "E759FCFD-9948-71E2-3EDE-E28DAD13627D"; createNode displayLayerManager -n "layerManager"; - rename -uid "5E81533A-FE4E-7FBA-B981-A1BF1355C2D6"; + rename -uid "3AA7FAD1-6143-09D0-A4D4-159A767AEB38"; createNode displayLayer -n "defaultLayer"; rename -uid "50BBEAF7-684F-36E7-D50D-788FA9571B1A"; setAttr ".ufem" -type "stringArray" 0 ; createNode renderLayerManager -n "renderLayerManager"; - rename -uid "F8C0B308-9440-E7B2-CB49-C4B8041F3BDB"; + rename -uid "E4FDA722-0E4C-EB06-58C9-1693E824A890"; createNode renderLayer -n "defaultRenderLayer"; rename -uid "B125C7C1-2549-1B98-13ED-6B82AABCBF12"; setAttr ".g" yes; @@ -479,31 +483,31 @@ createNode script -n "uiConfigurationScriptNode"; + " -bluePencil 1\n -greasePencils 0\n -excludeObjectPreset \"All\" \n -shadows 0\n -captureSequenceNumber -1\n -width 1\n -height 1\n -sceneRenderFilter 0\n $editorName;\n modelEditor -e -viewSelected 0 $editorName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextPanel \"modelPanel\" (localizedPanelLabel(\"Persp View\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tmodelPanel -edit -l (localizedPanelLabel(\"Persp View\")) -mbv $menusOkayInPanels $panelName;\n\t\t$editorName = $panelName;\n modelEditor -e \n -camera \"|persp\" \n -useInteractiveMode 0\n -displayLights \"default\" \n -displayAppearance \"smoothShaded\" \n -activeOnly 0\n -ignorePanZoom 0\n -wireframeOnShaded 0\n -headsUpDisplay 1\n -holdOuts 1\n -selectionHiliteDisplay 1\n -useDefaultMaterial 0\n" + " -bufferMode \"double\" \n -twoSidedLighting 0\n -backfaceCulling 0\n -xray 0\n -jointXray 0\n -activeComponentsXray 0\n -displayTextures 0\n -smoothWireframe 0\n -lineWidth 1\n -textureAnisotropic 0\n -textureHilight 1\n -textureSampling 2\n -textureDisplay \"modulate\" \n -textureMaxSize 16384\n -fogging 0\n -fogSource \"fragment\" \n -fogMode \"linear\" \n -fogStart 0\n -fogEnd 100\n -fogDensity 0.1\n -fogColor 0.5 0.5 0.5 1 \n -depthOfFieldPreview 1\n -maxConstantTransparency 1\n -rendererName \"vp2Renderer\" \n -objectFilterShowInHUD 1\n -isFiltered 0\n -colorResolution 256 256 \n -bumpResolution 512 512 \n -textureCompression 0\n -transparencyAlgorithm \"frontAndBackCull\" \n -transpInShadows 0\n -cullingOverride \"none\" \n" + " -lowQualityLighting 0\n -maximumNumHardwareLights 1\n -occlusionCulling 0\n -shadingModel 0\n -useBaseRenderer 0\n -useReducedRenderer 0\n -smallObjectCulling 0\n -smallObjectThreshold -1 \n -interactiveDisableShadows 0\n -interactiveBackFaceCull 0\n -sortTransparent 1\n -controllers 1\n -nurbsCurves 1\n -nurbsSurfaces 1\n -polymeshes 1\n -subdivSurfaces 1\n -planes 1\n -lights 1\n -cameras 1\n -controlVertices 1\n -hulls 1\n -grid 1\n -imagePlane 1\n -joints 1\n -ikHandles 1\n -deformers 1\n -dynamics 1\n -particleInstancers 1\n -fluids 1\n -hairSystems 1\n -follicles 1\n -nCloths 1\n -nParticles 1\n -nRigids 1\n -dynamicConstraints 1\n -locators 1\n -manipulators 1\n" - + " -pluginShapes 1\n -dimensions 1\n -handles 1\n -pivots 1\n -textures 1\n -strokes 1\n -motionTrails 1\n -clipGhosts 1\n -bluePencil 1\n -greasePencils 0\n -excludeObjectPreset \"All\" \n -shadows 0\n -captureSequenceNumber -1\n -width 1670\n -height 1358\n -sceneRenderFilter 0\n $editorName;\n modelEditor -e -viewSelected 0 $editorName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextPanel \"outlinerPanel\" (localizedPanelLabel(\"ToggledOutliner\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\toutlinerPanel -edit -l (localizedPanelLabel(\"ToggledOutliner\")) -mbv $menusOkayInPanels $panelName;\n\t\t$editorName = $panelName;\n outlinerEditor -e \n -docTag \"isolOutln_fromSeln\" \n -showShapes 0\n -showAssignedMaterials 0\n -showTimeEditor 1\n" - + " -showReferenceNodes 1\n -showReferenceMembers 1\n -showAttributes 0\n -showConnected 0\n -showAnimCurvesOnly 0\n -showMuteInfo 0\n -organizeByLayer 1\n -organizeByClip 1\n -showAnimLayerWeight 1\n -autoExpandLayers 1\n -autoExpand 0\n -autoExpandAllAnimatedShapes 1\n -showDagOnly 1\n -showAssets 1\n -showContainedOnly 1\n -showPublishedAsConnected 0\n -showParentContainers 0\n -showContainerContents 1\n -ignoreDagHierarchy 0\n -expandConnections 0\n -showUpstreamCurves 1\n -showUnitlessCurves 1\n -showCompounds 1\n -showLeafs 1\n -showNumericAttrsOnly 0\n -highlightActive 1\n -autoSelectNewObjects 0\n -doNotSelectNewObjects 0\n -dropIsParent 1\n -transmitFilters 0\n -setFilter \"defaultSetFilter\" \n -showSetMembers 1\n" - + " -allowMultiSelection 1\n -alwaysToggleSelect 0\n -directSelect 0\n -isSet 0\n -isSetMember 0\n -showUfeItems 1\n -displayMode \"DAG\" \n -expandObjects 0\n -setsIgnoreFilters 1\n -containersIgnoreFilters 0\n -editAttrName 0\n -showAttrValues 0\n -highlightSecondary 0\n -showUVAttrsOnly 0\n -showTextureNodesOnly 0\n -attrAlphaOrder \"default\" \n -animLayerFilterOptions \"allAffecting\" \n -sortOrder \"none\" \n -longNames 0\n -niceNames 1\n -selectCommand \"print(\\\"\\\")\" \n -showNamespace 1\n -showPinIcons 0\n -mapMotionTrails 0\n -ignoreHiddenAttribute 0\n -ignoreOutlinerColor 0\n -renderFilterVisible 0\n -renderFilterIndex 0\n -selectionOrder \"chronological\" \n -expandAttribute 0\n $editorName;\n\t\tif (!$useSceneConfig) {\n" - + "\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextPanel \"outlinerPanel\" (localizedPanelLabel(\"Outliner\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\toutlinerPanel -edit -l (localizedPanelLabel(\"Outliner\")) -mbv $menusOkayInPanels $panelName;\n\t\t$editorName = $panelName;\n outlinerEditor -e \n -showShapes 0\n -showAssignedMaterials 0\n -showTimeEditor 1\n -showReferenceNodes 0\n -showReferenceMembers 0\n -showAttributes 0\n -showConnected 0\n -showAnimCurvesOnly 0\n -showMuteInfo 0\n -organizeByLayer 1\n -organizeByClip 1\n -showAnimLayerWeight 1\n -autoExpandLayers 1\n -autoExpand 0\n -autoExpandAllAnimatedShapes 1\n -showDagOnly 1\n -showAssets 1\n -showContainedOnly 1\n -showPublishedAsConnected 0\n -showParentContainers 0\n -showContainerContents 1\n" - + " -ignoreDagHierarchy 0\n -expandConnections 0\n -showUpstreamCurves 1\n -showUnitlessCurves 1\n -showCompounds 1\n -showLeafs 1\n -showNumericAttrsOnly 0\n -highlightActive 1\n -autoSelectNewObjects 0\n -doNotSelectNewObjects 0\n -dropIsParent 1\n -transmitFilters 0\n -setFilter \"defaultSetFilter\" \n -showSetMembers 1\n -allowMultiSelection 1\n -alwaysToggleSelect 0\n -directSelect 0\n -showUfeItems 1\n -displayMode \"DAG\" \n -expandObjects 0\n -setsIgnoreFilters 1\n -containersIgnoreFilters 0\n -editAttrName 0\n -showAttrValues 0\n -highlightSecondary 0\n -showUVAttrsOnly 0\n -showTextureNodesOnly 0\n -attrAlphaOrder \"default\" \n -animLayerFilterOptions \"allAffecting\" \n -sortOrder \"none\" \n -longNames 0\n" - + " -niceNames 1\n -showNamespace 1\n -showPinIcons 0\n -mapMotionTrails 0\n -ignoreHiddenAttribute 0\n -ignoreOutlinerColor 0\n -renderFilterVisible 0\n -ufeFilter \"USD\" \"InactivePrims\" -ufeFilterValue 1\n $editorName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"graphEditor\" (localizedPanelLabel(\"Graph Editor\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Graph Editor\")) -mbv $menusOkayInPanels $panelName;\n\n\t\t\t$editorName = ($panelName+\"OutlineEd\");\n outlinerEditor -e \n -showShapes 1\n -showAssignedMaterials 0\n -showTimeEditor 1\n -showReferenceNodes 0\n -showReferenceMembers 0\n -showAttributes 1\n -showConnected 1\n -showAnimCurvesOnly 1\n -showMuteInfo 0\n" - + " -organizeByLayer 1\n -organizeByClip 1\n -showAnimLayerWeight 1\n -autoExpandLayers 1\n -autoExpand 1\n -autoExpandAllAnimatedShapes 1\n -showDagOnly 0\n -showAssets 1\n -showContainedOnly 0\n -showPublishedAsConnected 0\n -showParentContainers 0\n -showContainerContents 0\n -ignoreDagHierarchy 0\n -expandConnections 1\n -showUpstreamCurves 1\n -showUnitlessCurves 1\n -showCompounds 0\n -showLeafs 1\n -showNumericAttrsOnly 1\n -highlightActive 0\n -autoSelectNewObjects 1\n -doNotSelectNewObjects 0\n -dropIsParent 1\n -transmitFilters 1\n -setFilter \"0\" \n -showSetMembers 0\n -allowMultiSelection 1\n -alwaysToggleSelect 0\n -directSelect 0\n" - + " -showUfeItems 1\n -displayMode \"DAG\" \n -expandObjects 0\n -setsIgnoreFilters 1\n -containersIgnoreFilters 0\n -editAttrName 0\n -showAttrValues 0\n -highlightSecondary 0\n -showUVAttrsOnly 0\n -showTextureNodesOnly 0\n -attrAlphaOrder \"default\" \n -animLayerFilterOptions \"allAffecting\" \n -sortOrder \"none\" \n -longNames 0\n -niceNames 1\n -showNamespace 1\n -showPinIcons 1\n -mapMotionTrails 1\n -ignoreHiddenAttribute 0\n -ignoreOutlinerColor 0\n -renderFilterVisible 0\n $editorName;\n\n\t\t\t$editorName = ($panelName+\"GraphEd\");\n animCurveEditor -e \n -displayValues 0\n -snapTime \"integer\" \n -snapValue \"none\" \n -showPlayRangeShades \"on\" \n -lockPlayRangeShades \"off\" \n" - + " -smoothness \"fine\" \n -resultSamples 1\n -resultScreenSamples 0\n -resultUpdate \"delayed\" \n -showUpstreamCurves 1\n -keyMinScale 1\n -stackedCurvesMin -1\n -stackedCurvesMax 1\n -stackedCurvesSpace 0.2\n -preSelectionHighlight 1\n -limitToSelectedCurves 0\n -constrainDrag 0\n -valueLinesToggle 0\n -highlightAffectedCurves 0\n $editorName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"dopeSheetPanel\" (localizedPanelLabel(\"Dope Sheet\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Dope Sheet\")) -mbv $menusOkayInPanels $panelName;\n\n\t\t\t$editorName = ($panelName+\"OutlineEd\");\n outlinerEditor -e \n -showShapes 1\n -showAssignedMaterials 0\n" - + " -showTimeEditor 1\n -showReferenceNodes 0\n -showReferenceMembers 0\n -showAttributes 1\n -showConnected 1\n -showAnimCurvesOnly 1\n -showMuteInfo 0\n -organizeByLayer 1\n -organizeByClip 1\n -showAnimLayerWeight 1\n -autoExpandLayers 1\n -autoExpand 0\n -autoExpandAllAnimatedShapes 1\n -showDagOnly 0\n -showAssets 1\n -showContainedOnly 0\n -showPublishedAsConnected 0\n -showParentContainers 0\n -showContainerContents 0\n -ignoreDagHierarchy 0\n -expandConnections 1\n -showUpstreamCurves 1\n -showUnitlessCurves 0\n -showCompounds 0\n -showLeafs 1\n -showNumericAttrsOnly 1\n -highlightActive 0\n -autoSelectNewObjects 0\n -doNotSelectNewObjects 1\n" - + " -dropIsParent 1\n -transmitFilters 0\n -setFilter \"0\" \n -showSetMembers 1\n -allowMultiSelection 1\n -alwaysToggleSelect 0\n -directSelect 0\n -showUfeItems 1\n -displayMode \"DAG\" \n -expandObjects 0\n -setsIgnoreFilters 1\n -containersIgnoreFilters 0\n -editAttrName 0\n -showAttrValues 0\n -highlightSecondary 0\n -showUVAttrsOnly 0\n -showTextureNodesOnly 0\n -attrAlphaOrder \"default\" \n -animLayerFilterOptions \"allAffecting\" \n -sortOrder \"none\" \n -longNames 0\n -niceNames 1\n -showNamespace 1\n -showPinIcons 0\n -mapMotionTrails 1\n -ignoreHiddenAttribute 0\n -ignoreOutlinerColor 0\n -renderFilterVisible 0\n $editorName;\n" - + "\n\t\t\t$editorName = ($panelName+\"DopeSheetEd\");\n dopeSheetEditor -e \n -displayValues 0\n -snapTime \"integer\" \n -snapValue \"none\" \n -outliner \"dopeSheetPanel1OutlineEd\" \n -showSummary 1\n -showScene 0\n -hierarchyBelow 0\n -showTicks 1\n -selectionWindow 0 0 0 0 \n $editorName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"timeEditorPanel\" (localizedPanelLabel(\"Time Editor\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Time Editor\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"clipEditorPanel\" (localizedPanelLabel(\"Trax Editor\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n" - + "\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Trax Editor\")) -mbv $menusOkayInPanels $panelName;\n\n\t\t\t$editorName = clipEditorNameFromPanel($panelName);\n clipEditor -e \n -displayValues 0\n -snapTime \"none\" \n -snapValue \"none\" \n -initialized 0\n -manageSequencer 0 \n $editorName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"sequenceEditorPanel\" (localizedPanelLabel(\"Camera Sequencer\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Camera Sequencer\")) -mbv $menusOkayInPanels $panelName;\n\n\t\t\t$editorName = sequenceEditorNameFromPanel($panelName);\n clipEditor -e \n -displayValues 0\n -snapTime \"none\" \n -snapValue \"none\" \n -initialized 0\n -manageSequencer 1 \n $editorName;\n" - + "\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"hyperGraphPanel\" (localizedPanelLabel(\"Hypergraph Hierarchy\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Hypergraph Hierarchy\")) -mbv $menusOkayInPanels $panelName;\n\n\t\t\t$editorName = ($panelName+\"HyperGraphEd\");\n hyperGraph -e \n -graphLayoutStyle \"hierarchicalLayout\" \n -orientation \"horiz\" \n -mergeConnections 0\n -zoom 1\n -animateTransition 0\n -showRelationships 1\n -showShapes 0\n -showDeformers 0\n -showExpressions 0\n -showConstraints 0\n -showConnectionFromSelected 0\n -showConnectionToSelected 0\n -showConstraintLabels 0\n -showUnderworld 0\n -showInvisible 0\n -transitionFrames 1\n" - + " -opaqueContainers 0\n -freeform 0\n -imagePosition 0 0 \n -imageScale 1\n -imageEnabled 0\n -graphType \"DAG\" \n -heatMapDisplay 0\n -updateSelection 1\n -updateNodeAdded 1\n -useDrawOverrideColor 0\n -limitGraphTraversal -1\n -range 0 0 \n -iconSize \"smallIcons\" \n -showCachedConnections 0\n $editorName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"hyperShadePanel\" (localizedPanelLabel(\"Hypershade\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Hypershade\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"visorPanel\" (localizedPanelLabel(\"Visor\")) `;\n" - + "\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Visor\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"nodeEditorPanel\" (localizedPanelLabel(\"Node Editor\")) `;\n\tif ($nodeEditorPanelVisible || $nodeEditorWorkspaceControlOpen) {\n\t\tif (\"\" == $panelName) {\n\t\t\tif ($useSceneConfig) {\n\t\t\t\t$panelName = `scriptedPanel -unParent -type \"nodeEditorPanel\" -l (localizedPanelLabel(\"Node Editor\")) -mbv $menusOkayInPanels `;\n\n\t\t\t$editorName = ($panelName+\"NodeEditorEd\");\n nodeEditor -e \n -allAttributes 0\n -allNodes 0\n -autoSizeNodes 1\n -consistentNameSize 1\n -createNodeCommand \"nodeEdCreateNodeCommand\" \n -connectNodeOnCreation 0\n -connectOnDrop 0\n -copyConnectionsOnPaste 0\n -connectionStyle \"bezier\" \n -defaultPinnedState 0\n" - + " -additiveGraphingMode 0\n -connectedGraphingMode 1\n -settingsChangedCallback \"nodeEdSyncControls\" \n -traversalDepthLimit -1\n -keyPressCommand \"nodeEdKeyPressCommand\" \n -nodeTitleMode \"name\" \n -gridSnap 0\n -gridVisibility 1\n -crosshairOnEdgeDragging 0\n -popupMenuScript \"nodeEdBuildPanelMenus\" \n -showNamespace 1\n -showShapes 1\n -showSGShapes 0\n -showTransforms 1\n -useAssets 1\n -syncedSelection 1\n -extendToShapes 1\n -showUnitConversions 0\n -editorMode \"default\" \n -hasWatchpoint 0\n $editorName;\n\t\t\t}\n\t\t} else {\n\t\t\t$label = `panel -q -label $panelName`;\n\t\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Node Editor\")) -mbv $menusOkayInPanels $panelName;\n\n\t\t\t$editorName = ($panelName+\"NodeEditorEd\");\n nodeEditor -e \n" - + " -allAttributes 0\n -allNodes 0\n -autoSizeNodes 1\n -consistentNameSize 1\n -createNodeCommand \"nodeEdCreateNodeCommand\" \n -connectNodeOnCreation 0\n -connectOnDrop 0\n -copyConnectionsOnPaste 0\n -connectionStyle \"bezier\" \n -defaultPinnedState 0\n -additiveGraphingMode 0\n -connectedGraphingMode 1\n -settingsChangedCallback \"nodeEdSyncControls\" \n -traversalDepthLimit -1\n -keyPressCommand \"nodeEdKeyPressCommand\" \n -nodeTitleMode \"name\" \n -gridSnap 0\n -gridVisibility 1\n -crosshairOnEdgeDragging 0\n -popupMenuScript \"nodeEdBuildPanelMenus\" \n -showNamespace 1\n -showShapes 1\n -showSGShapes 0\n -showTransforms 1\n -useAssets 1\n -syncedSelection 1\n" - + " -extendToShapes 1\n -showUnitConversions 0\n -editorMode \"default\" \n -hasWatchpoint 0\n $editorName;\n\t\t\tif (!$useSceneConfig) {\n\t\t\t\tpanel -e -l $label $panelName;\n\t\t\t}\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"createNodePanel\" (localizedPanelLabel(\"Create Node\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Create Node\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"polyTexturePlacementPanel\" (localizedPanelLabel(\"UV Editor\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"UV Editor\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"renderWindowPanel\" (localizedPanelLabel(\"Render View\")) `;\n" - + "\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Render View\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextPanel \"shapePanel\" (localizedPanelLabel(\"Shape Editor\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tshapePanel -edit -l (localizedPanelLabel(\"Shape Editor\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextPanel \"posePanel\" (localizedPanelLabel(\"Pose Editor\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tposePanel -edit -l (localizedPanelLabel(\"Pose Editor\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"dynRelEdPanel\" (localizedPanelLabel(\"Dynamic Relationships\")) `;\n\tif (\"\" != $panelName) {\n" - + "\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Dynamic Relationships\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"relationshipPanel\" (localizedPanelLabel(\"Relationship Editor\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Relationship Editor\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"referenceEditorPanel\" (localizedPanelLabel(\"Reference Editor\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Reference Editor\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"dynPaintScriptedPanelType\" (localizedPanelLabel(\"Paint Effects\")) `;\n" - + "\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Paint Effects\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"scriptEditorPanel\" (localizedPanelLabel(\"Script Editor\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Script Editor\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"profilerPanel\" (localizedPanelLabel(\"Profiler Tool\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Profiler Tool\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"contentBrowserPanel\" (localizedPanelLabel(\"Content Browser\")) `;\n" - + "\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Content Browser\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\tif ($useSceneConfig) {\n string $configName = `getPanel -cwl (localizedPanelLabel(\"Current Layout\"))`;\n if (\"\" != $configName) {\n\t\t\tpanelConfiguration -edit -label (localizedPanelLabel(\"Current Layout\")) \n\t\t\t\t-userCreated false\n\t\t\t\t-defaultImage \"vacantCell.xP:/\"\n\t\t\t\t-image \"\"\n\t\t\t\t-sc false\n\t\t\t\t-configString \"global string $gMainPane; paneLayout -e -cn \\\"single\\\" -ps 1 100 100 $gMainPane;\"\n\t\t\t\t-removeAllPanels\n\t\t\t\t-ap false\n\t\t\t\t\t(localizedPanelLabel(\"Persp View\")) \n\t\t\t\t\t\"modelPanel\"\n" - + "\t\t\t\t\t\"$panelName = `modelPanel -unParent -l (localizedPanelLabel(\\\"Persp View\\\")) -mbv $menusOkayInPanels `;\\n$editorName = $panelName;\\nmodelEditor -e \\n -cam `findStartUpCamera persp` \\n -useInteractiveMode 0\\n -displayLights \\\"default\\\" \\n -displayAppearance \\\"smoothShaded\\\" \\n -activeOnly 0\\n -ignorePanZoom 0\\n -wireframeOnShaded 0\\n -headsUpDisplay 1\\n -holdOuts 1\\n -selectionHiliteDisplay 1\\n -useDefaultMaterial 0\\n -bufferMode \\\"double\\\" \\n -twoSidedLighting 0\\n -backfaceCulling 0\\n -xray 0\\n -jointXray 0\\n -activeComponentsXray 0\\n -displayTextures 0\\n -smoothWireframe 0\\n -lineWidth 1\\n -textureAnisotropic 0\\n -textureHilight 1\\n -textureSampling 2\\n -textureDisplay \\\"modulate\\\" \\n -textureMaxSize 16384\\n -fogging 0\\n -fogSource \\\"fragment\\\" \\n -fogMode \\\"linear\\\" \\n -fogStart 0\\n -fogEnd 100\\n -fogDensity 0.1\\n -fogColor 0.5 0.5 0.5 1 \\n -depthOfFieldPreview 1\\n -maxConstantTransparency 1\\n -rendererName \\\"vp2Renderer\\\" \\n -objectFilterShowInHUD 1\\n -isFiltered 0\\n -colorResolution 256 256 \\n -bumpResolution 512 512 \\n -textureCompression 0\\n -transparencyAlgorithm \\\"frontAndBackCull\\\" \\n -transpInShadows 0\\n -cullingOverride \\\"none\\\" \\n -lowQualityLighting 0\\n -maximumNumHardwareLights 1\\n -occlusionCulling 0\\n -shadingModel 0\\n -useBaseRenderer 0\\n -useReducedRenderer 0\\n -smallObjectCulling 0\\n -smallObjectThreshold -1 \\n -interactiveDisableShadows 0\\n -interactiveBackFaceCull 0\\n -sortTransparent 1\\n -controllers 1\\n -nurbsCurves 1\\n -nurbsSurfaces 1\\n -polymeshes 1\\n -subdivSurfaces 1\\n -planes 1\\n -lights 1\\n -cameras 1\\n -controlVertices 1\\n -hulls 1\\n -grid 1\\n -imagePlane 1\\n -joints 1\\n -ikHandles 1\\n -deformers 1\\n -dynamics 1\\n -particleInstancers 1\\n -fluids 1\\n -hairSystems 1\\n -follicles 1\\n -nCloths 1\\n -nParticles 1\\n -nRigids 1\\n -dynamicConstraints 1\\n -locators 1\\n -manipulators 1\\n -pluginShapes 1\\n -dimensions 1\\n -handles 1\\n -pivots 1\\n -textures 1\\n -strokes 1\\n -motionTrails 1\\n -clipGhosts 1\\n -bluePencil 1\\n -greasePencils 0\\n -excludeObjectPreset \\\"All\\\" \\n -shadows 0\\n -captureSequenceNumber -1\\n -width 1670\\n -height 1358\\n -sceneRenderFilter 0\\n $editorName;\\nmodelEditor -e -viewSelected 0 $editorName\"\n" - + "\t\t\t\t\t\"modelPanel -edit -l (localizedPanelLabel(\\\"Persp View\\\")) -mbv $menusOkayInPanels $panelName;\\n$editorName = $panelName;\\nmodelEditor -e \\n -cam `findStartUpCamera persp` \\n -useInteractiveMode 0\\n -displayLights \\\"default\\\" \\n -displayAppearance \\\"smoothShaded\\\" \\n -activeOnly 0\\n -ignorePanZoom 0\\n -wireframeOnShaded 0\\n -headsUpDisplay 1\\n -holdOuts 1\\n -selectionHiliteDisplay 1\\n -useDefaultMaterial 0\\n -bufferMode \\\"double\\\" \\n -twoSidedLighting 0\\n -backfaceCulling 0\\n -xray 0\\n -jointXray 0\\n -activeComponentsXray 0\\n -displayTextures 0\\n -smoothWireframe 0\\n -lineWidth 1\\n -textureAnisotropic 0\\n -textureHilight 1\\n -textureSampling 2\\n -textureDisplay \\\"modulate\\\" \\n -textureMaxSize 16384\\n -fogging 0\\n -fogSource \\\"fragment\\\" \\n -fogMode \\\"linear\\\" \\n -fogStart 0\\n -fogEnd 100\\n -fogDensity 0.1\\n -fogColor 0.5 0.5 0.5 1 \\n -depthOfFieldPreview 1\\n -maxConstantTransparency 1\\n -rendererName \\\"vp2Renderer\\\" \\n -objectFilterShowInHUD 1\\n -isFiltered 0\\n -colorResolution 256 256 \\n -bumpResolution 512 512 \\n -textureCompression 0\\n -transparencyAlgorithm \\\"frontAndBackCull\\\" \\n -transpInShadows 0\\n -cullingOverride \\\"none\\\" \\n -lowQualityLighting 0\\n -maximumNumHardwareLights 1\\n -occlusionCulling 0\\n -shadingModel 0\\n -useBaseRenderer 0\\n -useReducedRenderer 0\\n -smallObjectCulling 0\\n -smallObjectThreshold -1 \\n -interactiveDisableShadows 0\\n -interactiveBackFaceCull 0\\n -sortTransparent 1\\n -controllers 1\\n -nurbsCurves 1\\n -nurbsSurfaces 1\\n -polymeshes 1\\n -subdivSurfaces 1\\n -planes 1\\n -lights 1\\n -cameras 1\\n -controlVertices 1\\n -hulls 1\\n -grid 1\\n -imagePlane 1\\n -joints 1\\n -ikHandles 1\\n -deformers 1\\n -dynamics 1\\n -particleInstancers 1\\n -fluids 1\\n -hairSystems 1\\n -follicles 1\\n -nCloths 1\\n -nParticles 1\\n -nRigids 1\\n -dynamicConstraints 1\\n -locators 1\\n -manipulators 1\\n -pluginShapes 1\\n -dimensions 1\\n -handles 1\\n -pivots 1\\n -textures 1\\n -strokes 1\\n -motionTrails 1\\n -clipGhosts 1\\n -bluePencil 1\\n -greasePencils 0\\n -excludeObjectPreset \\\"All\\\" \\n -shadows 0\\n -captureSequenceNumber -1\\n -width 1670\\n -height 1358\\n -sceneRenderFilter 0\\n $editorName;\\nmodelEditor -e -viewSelected 0 $editorName\"\n" + + " -pluginShapes 1\n -dimensions 1\n -handles 1\n -pivots 1\n -textures 1\n -strokes 1\n -motionTrails 1\n -clipGhosts 1\n -bluePencil 1\n -greasePencils 0\n -excludeObjectPreset \"All\" \n -shadows 0\n -captureSequenceNumber -1\n -width 2254\n -height 1356\n -sceneRenderFilter 0\n $editorName;\n modelEditor -e -viewSelected 0 $editorName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextPanel \"outlinerPanel\" (localizedPanelLabel(\"ToggledOutliner\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\toutlinerPanel -edit -l (localizedPanelLabel(\"ToggledOutliner\")) -mbv $menusOkayInPanels $panelName;\n\t\t$editorName = $panelName;\n outlinerEditor -e \n -docTag \"isolOutln_fromSeln\" \n -showShapes 0\n -showAssignedMaterials 0\n -showTimeEditor 1\n" + + " -showReferenceNodes 1\n -showReferenceMembers 1\n -showAttributes 0\n -showConnected 0\n -showAnimCurvesOnly 0\n -showMuteInfo 0\n -organizeByLayer 1\n -organizeByClip 1\n -showAnimLayerWeight 1\n -autoExpandLayers 1\n -autoExpand 0\n -showDagOnly 1\n -showAssets 1\n -showContainedOnly 1\n -showPublishedAsConnected 0\n -showParentContainers 0\n -showContainerContents 1\n -ignoreDagHierarchy 0\n -expandConnections 0\n -showUpstreamCurves 1\n -showUnitlessCurves 1\n -showCompounds 1\n -showLeafs 1\n -showNumericAttrsOnly 0\n -highlightActive 1\n -autoSelectNewObjects 0\n -doNotSelectNewObjects 0\n -dropIsParent 1\n -transmitFilters 0\n -setFilter \"defaultSetFilter\" \n -showSetMembers 1\n -allowMultiSelection 1\n" + + " -alwaysToggleSelect 0\n -directSelect 0\n -isSet 0\n -isSetMember 0\n -showUfeItems 1\n -displayMode \"DAG\" \n -expandObjects 0\n -setsIgnoreFilters 1\n -containersIgnoreFilters 0\n -editAttrName 0\n -showAttrValues 0\n -highlightSecondary 0\n -showUVAttrsOnly 0\n -showTextureNodesOnly 0\n -attrAlphaOrder \"default\" \n -animLayerFilterOptions \"allAffecting\" \n -sortOrder \"none\" \n -longNames 0\n -niceNames 1\n -selectCommand \"print(\\\"\\\")\" \n -showNamespace 1\n -showPinIcons 0\n -mapMotionTrails 0\n -ignoreHiddenAttribute 0\n -ignoreOutlinerColor 0\n -renderFilterVisible 0\n -renderFilterIndex 0\n -selectionOrder \"chronological\" \n -expandAttribute 0\n $editorName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n" + + "\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextPanel \"outlinerPanel\" (localizedPanelLabel(\"Outliner\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\toutlinerPanel -edit -l (localizedPanelLabel(\"Outliner\")) -mbv $menusOkayInPanels $panelName;\n\t\t$editorName = $panelName;\n outlinerEditor -e \n -showShapes 0\n -showAssignedMaterials 0\n -showTimeEditor 1\n -showReferenceNodes 0\n -showReferenceMembers 0\n -showAttributes 0\n -showConnected 0\n -showAnimCurvesOnly 0\n -showMuteInfo 0\n -organizeByLayer 1\n -organizeByClip 1\n -showAnimLayerWeight 1\n -autoExpandLayers 1\n -autoExpand 0\n -showDagOnly 1\n -showAssets 1\n -showContainedOnly 1\n -showPublishedAsConnected 0\n -showParentContainers 0\n -showContainerContents 1\n -ignoreDagHierarchy 0\n -expandConnections 0\n" + + " -showUpstreamCurves 1\n -showUnitlessCurves 1\n -showCompounds 1\n -showLeafs 1\n -showNumericAttrsOnly 0\n -highlightActive 1\n -autoSelectNewObjects 0\n -doNotSelectNewObjects 0\n -dropIsParent 1\n -transmitFilters 0\n -setFilter \"defaultSetFilter\" \n -showSetMembers 1\n -allowMultiSelection 1\n -alwaysToggleSelect 0\n -directSelect 0\n -showUfeItems 1\n -displayMode \"DAG\" \n -expandObjects 0\n -setsIgnoreFilters 1\n -containersIgnoreFilters 0\n -editAttrName 0\n -showAttrValues 0\n -highlightSecondary 0\n -showUVAttrsOnly 0\n -showTextureNodesOnly 0\n -attrAlphaOrder \"default\" \n -animLayerFilterOptions \"allAffecting\" \n -sortOrder \"none\" \n -longNames 0\n -niceNames 1\n -showNamespace 1\n -showPinIcons 0\n" + + " -mapMotionTrails 0\n -ignoreHiddenAttribute 0\n -ignoreOutlinerColor 0\n -renderFilterVisible 0\n -ufeFilter \"MaterialX\" \"Hidden\" -ufeFilterValue 0\n $editorName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"graphEditor\" (localizedPanelLabel(\"Graph Editor\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Graph Editor\")) -mbv $menusOkayInPanels $panelName;\n\n\t\t\t$editorName = ($panelName+\"OutlineEd\");\n outlinerEditor -e \n -showShapes 1\n -showAssignedMaterials 0\n -showTimeEditor 1\n -showReferenceNodes 0\n -showReferenceMembers 0\n -showAttributes 1\n -showConnected 1\n -showAnimCurvesOnly 1\n -showMuteInfo 0\n -organizeByLayer 1\n -organizeByClip 1\n" + + " -showAnimLayerWeight 1\n -autoExpandLayers 1\n -autoExpand 1\n -showDagOnly 0\n -showAssets 1\n -showContainedOnly 0\n -showPublishedAsConnected 0\n -showParentContainers 0\n -showContainerContents 0\n -ignoreDagHierarchy 0\n -expandConnections 1\n -showUpstreamCurves 1\n -showUnitlessCurves 1\n -showCompounds 0\n -showLeafs 1\n -showNumericAttrsOnly 1\n -highlightActive 0\n -autoSelectNewObjects 1\n -doNotSelectNewObjects 0\n -dropIsParent 1\n -transmitFilters 1\n -setFilter \"0\" \n -showSetMembers 0\n -allowMultiSelection 1\n -alwaysToggleSelect 0\n -directSelect 0\n -showUfeItems 1\n -displayMode \"DAG\" \n -expandObjects 0\n" + + " -setsIgnoreFilters 1\n -containersIgnoreFilters 0\n -editAttrName 0\n -showAttrValues 0\n -highlightSecondary 0\n -showUVAttrsOnly 0\n -showTextureNodesOnly 0\n -attrAlphaOrder \"default\" \n -animLayerFilterOptions \"allAffecting\" \n -sortOrder \"none\" \n -longNames 0\n -niceNames 1\n -showNamespace 1\n -showPinIcons 1\n -mapMotionTrails 1\n -ignoreHiddenAttribute 0\n -ignoreOutlinerColor 0\n -renderFilterVisible 0\n $editorName;\n\n\t\t\t$editorName = ($panelName+\"GraphEd\");\n animCurveEditor -e \n -displayValues 0\n -snapTime \"integer\" \n -snapValue \"none\" \n -showPlayRangeShades \"on\" \n -lockPlayRangeShades \"off\" \n -smoothness \"fine\" \n -resultSamples 1\n" + + " -resultScreenSamples 0\n -resultUpdate \"delayed\" \n -showUpstreamCurves 1\n -keyMinScale 1\n -stackedCurvesMin -1\n -stackedCurvesMax 1\n -stackedCurvesSpace 0.2\n -preSelectionHighlight 1\n -limitToSelectedCurves 0\n -constrainDrag 0\n -valueLinesToggle 0\n -highlightAffectedCurves 0\n $editorName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"dopeSheetPanel\" (localizedPanelLabel(\"Dope Sheet\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Dope Sheet\")) -mbv $menusOkayInPanels $panelName;\n\n\t\t\t$editorName = ($panelName+\"OutlineEd\");\n outlinerEditor -e \n -showShapes 1\n -showAssignedMaterials 0\n -showTimeEditor 1\n -showReferenceNodes 0\n" + + " -showReferenceMembers 0\n -showAttributes 1\n -showConnected 1\n -showAnimCurvesOnly 1\n -showMuteInfo 0\n -organizeByLayer 1\n -organizeByClip 1\n -showAnimLayerWeight 1\n -autoExpandLayers 1\n -autoExpand 1\n -showDagOnly 0\n -showAssets 1\n -showContainedOnly 0\n -showPublishedAsConnected 0\n -showParentContainers 0\n -showContainerContents 0\n -ignoreDagHierarchy 0\n -expandConnections 1\n -showUpstreamCurves 1\n -showUnitlessCurves 0\n -showCompounds 0\n -showLeafs 1\n -showNumericAttrsOnly 1\n -highlightActive 0\n -autoSelectNewObjects 0\n -doNotSelectNewObjects 1\n -dropIsParent 1\n -transmitFilters 0\n -setFilter \"0\" \n" + + " -showSetMembers 1\n -allowMultiSelection 1\n -alwaysToggleSelect 0\n -directSelect 0\n -showUfeItems 1\n -displayMode \"DAG\" \n -expandObjects 0\n -setsIgnoreFilters 1\n -containersIgnoreFilters 0\n -editAttrName 0\n -showAttrValues 0\n -highlightSecondary 0\n -showUVAttrsOnly 0\n -showTextureNodesOnly 0\n -attrAlphaOrder \"default\" \n -animLayerFilterOptions \"allAffecting\" \n -sortOrder \"none\" \n -longNames 0\n -niceNames 1\n -showNamespace 1\n -showPinIcons 0\n -mapMotionTrails 1\n -ignoreHiddenAttribute 0\n -ignoreOutlinerColor 0\n -renderFilterVisible 0\n $editorName;\n\n\t\t\t$editorName = ($panelName+\"DopeSheetEd\");\n dopeSheetEditor -e \n -displayValues 0\n" + + " -snapTime \"none\" \n -snapValue \"none\" \n -outliner \"dopeSheetPanel1OutlineEd\" \n -hierarchyBelow 0\n -selectionWindow 0 0 0 0 \n $editorName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"timeEditorPanel\" (localizedPanelLabel(\"Time Editor\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Time Editor\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"clipEditorPanel\" (localizedPanelLabel(\"Trax Editor\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Trax Editor\")) -mbv $menusOkayInPanels $panelName;\n\n\t\t\t$editorName = clipEditorNameFromPanel($panelName);\n clipEditor -e \n -displayValues 0\n" + + " -snapTime \"none\" \n -snapValue \"none\" \n -initialized 0\n -manageSequencer 0 \n $editorName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"sequenceEditorPanel\" (localizedPanelLabel(\"Camera Sequencer\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Camera Sequencer\")) -mbv $menusOkayInPanels $panelName;\n\n\t\t\t$editorName = sequenceEditorNameFromPanel($panelName);\n clipEditor -e \n -displayValues 0\n -snapTime \"none\" \n -snapValue \"none\" \n -initialized 0\n -manageSequencer 1 \n $editorName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"hyperGraphPanel\" (localizedPanelLabel(\"Hypergraph Hierarchy\")) `;\n\tif (\"\" != $panelName) {\n" + + "\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Hypergraph Hierarchy\")) -mbv $menusOkayInPanels $panelName;\n\n\t\t\t$editorName = ($panelName+\"HyperGraphEd\");\n hyperGraph -e \n -graphLayoutStyle \"hierarchicalLayout\" \n -orientation \"horiz\" \n -mergeConnections 0\n -zoom 1\n -animateTransition 0\n -showRelationships 1\n -showShapes 0\n -showDeformers 0\n -showExpressions 0\n -showConstraints 0\n -showConnectionFromSelected 0\n -showConnectionToSelected 0\n -showConstraintLabels 0\n -showUnderworld 0\n -showInvisible 0\n -transitionFrames 1\n -opaqueContainers 0\n -freeform 0\n -imagePosition 0 0 \n -imageScale 1\n -imageEnabled 0\n -graphType \"DAG\" \n -heatMapDisplay 0\n" + + " -updateSelection 1\n -updateNodeAdded 1\n -useDrawOverrideColor 0\n -limitGraphTraversal -1\n -range 0 0 \n -iconSize \"smallIcons\" \n -showCachedConnections 0\n $editorName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"hyperShadePanel\" (localizedPanelLabel(\"Hypershade\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Hypershade\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"visorPanel\" (localizedPanelLabel(\"Visor\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Visor\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n" + + "\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"nodeEditorPanel\" (localizedPanelLabel(\"Node Editor\")) `;\n\tif ($nodeEditorPanelVisible || $nodeEditorWorkspaceControlOpen) {\n\t\tif (\"\" == $panelName) {\n\t\t\tif ($useSceneConfig) {\n\t\t\t\t$panelName = `scriptedPanel -unParent -type \"nodeEditorPanel\" -l (localizedPanelLabel(\"Node Editor\")) -mbv $menusOkayInPanels `;\n\n\t\t\t$editorName = ($panelName+\"NodeEditorEd\");\n nodeEditor -e \n -allAttributes 0\n -allNodes 0\n -autoSizeNodes 1\n -consistentNameSize 1\n -createNodeCommand \"nodeEdCreateNodeCommand\" \n -connectNodeOnCreation 0\n -connectOnDrop 0\n -copyConnectionsOnPaste 0\n -connectionStyle \"bezier\" \n -defaultPinnedState 0\n -additiveGraphingMode 0\n -connectedGraphingMode 1\n -settingsChangedCallback \"nodeEdSyncControls\" \n -traversalDepthLimit -1\n" + + " -keyPressCommand \"nodeEdKeyPressCommand\" \n -nodeTitleMode \"name\" \n -enableOpenGL 0\n -gridSnap 0\n -gridVisibility 1\n -crosshairOnEdgeDragging 0\n -popupMenuScript \"nodeEdBuildPanelMenus\" \n -showNamespace 1\n -showShapes 1\n -showSGShapes 0\n -showTransforms 1\n -useAssets 1\n -syncedSelection 1\n -extendToShapes 1\n -showUnitConversions 0\n -editorMode \"default\" \n -hasWatchpoint 0\n $editorName;\n\t\t\t}\n\t\t} else {\n\t\t\t$label = `panel -q -label $panelName`;\n\t\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Node Editor\")) -mbv $menusOkayInPanels $panelName;\n\n\t\t\t$editorName = ($panelName+\"NodeEditorEd\");\n nodeEditor -e \n -allAttributes 0\n -allNodes 0\n -autoSizeNodes 1\n -consistentNameSize 1\n -createNodeCommand \"nodeEdCreateNodeCommand\" \n" + + " -connectNodeOnCreation 0\n -connectOnDrop 0\n -copyConnectionsOnPaste 0\n -connectionStyle \"bezier\" \n -defaultPinnedState 0\n -additiveGraphingMode 0\n -connectedGraphingMode 1\n -settingsChangedCallback \"nodeEdSyncControls\" \n -traversalDepthLimit -1\n -keyPressCommand \"nodeEdKeyPressCommand\" \n -nodeTitleMode \"name\" \n -enableOpenGL 0\n -gridSnap 0\n -gridVisibility 1\n -crosshairOnEdgeDragging 0\n -popupMenuScript \"nodeEdBuildPanelMenus\" \n -showNamespace 1\n -showShapes 1\n -showSGShapes 0\n -showTransforms 1\n -useAssets 1\n -syncedSelection 1\n -extendToShapes 1\n -showUnitConversions 0\n -editorMode \"default\" \n -hasWatchpoint 0\n $editorName;\n" + + "\t\t\tif (!$useSceneConfig) {\n\t\t\t\tpanel -e -l $label $panelName;\n\t\t\t}\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"createNodePanel\" (localizedPanelLabel(\"Create Node\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Create Node\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"polyTexturePlacementPanel\" (localizedPanelLabel(\"UV Editor\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"UV Editor\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"renderWindowPanel\" (localizedPanelLabel(\"Render View\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Render View\")) -mbv $menusOkayInPanels $panelName;\n" + + "\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextPanel \"shapePanel\" (localizedPanelLabel(\"Shape Editor\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tshapePanel -edit -l (localizedPanelLabel(\"Shape Editor\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextPanel \"posePanel\" (localizedPanelLabel(\"Pose Editor\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tposePanel -edit -l (localizedPanelLabel(\"Pose Editor\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"dynRelEdPanel\" (localizedPanelLabel(\"Dynamic Relationships\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Dynamic Relationships\")) -mbv $menusOkayInPanels $panelName;\n" + + "\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"relationshipPanel\" (localizedPanelLabel(\"Relationship Editor\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Relationship Editor\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"referenceEditorPanel\" (localizedPanelLabel(\"Reference Editor\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Reference Editor\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"dynPaintScriptedPanelType\" (localizedPanelLabel(\"Paint Effects\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Paint Effects\")) -mbv $menusOkayInPanels $panelName;\n" + + "\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"scriptEditorPanel\" (localizedPanelLabel(\"Script Editor\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Script Editor\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"profilerPanel\" (localizedPanelLabel(\"Profiler Tool\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Profiler Tool\")) -mbv $menusOkayInPanels $panelName;\n\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\t$panelName = `sceneUIReplacement -getNextScriptedPanel \"contentBrowserPanel\" (localizedPanelLabel(\"Content Browser\")) `;\n\tif (\"\" != $panelName) {\n\t\t$label = `panel -q -label $panelName`;\n\t\tscriptedPanel -edit -l (localizedPanelLabel(\"Content Browser\")) -mbv $menusOkayInPanels $panelName;\n" + + "\t\tif (!$useSceneConfig) {\n\t\t\tpanel -e -l $label $panelName;\n\t\t}\n\t}\n\n\n\tif ($useSceneConfig) {\n string $configName = `getPanel -cwl (localizedPanelLabel(\"Current Layout\"))`;\n if (\"\" != $configName) {\n\t\t\tpanelConfiguration -edit -label (localizedPanelLabel(\"Current Layout\")) \n\t\t\t\t-userCreated false\n\t\t\t\t-defaultImage \"vacantCell.xP:/\"\n\t\t\t\t-image \"\"\n\t\t\t\t-sc false\n\t\t\t\t-configString \"global string $gMainPane; paneLayout -e -cn \\\"single\\\" -ps 1 100 100 $gMainPane;\"\n\t\t\t\t-removeAllPanels\n\t\t\t\t-ap false\n\t\t\t\t\t(localizedPanelLabel(\"Persp View\")) \n\t\t\t\t\t\"modelPanel\"\n" + + "\t\t\t\t\t\"$panelName = `modelPanel -unParent -l (localizedPanelLabel(\\\"Persp View\\\")) -mbv $menusOkayInPanels `;\\n$editorName = $panelName;\\nmodelEditor -e \\n -cam `findStartUpCamera persp` \\n -useInteractiveMode 0\\n -displayLights \\\"default\\\" \\n -displayAppearance \\\"smoothShaded\\\" \\n -activeOnly 0\\n -ignorePanZoom 0\\n -wireframeOnShaded 0\\n -headsUpDisplay 1\\n -holdOuts 1\\n -selectionHiliteDisplay 1\\n -useDefaultMaterial 0\\n -bufferMode \\\"double\\\" \\n -twoSidedLighting 0\\n -backfaceCulling 0\\n -xray 0\\n -jointXray 0\\n -activeComponentsXray 0\\n -displayTextures 0\\n -smoothWireframe 0\\n -lineWidth 1\\n -textureAnisotropic 0\\n -textureHilight 1\\n -textureSampling 2\\n -textureDisplay \\\"modulate\\\" \\n -textureMaxSize 16384\\n -fogging 0\\n -fogSource \\\"fragment\\\" \\n -fogMode \\\"linear\\\" \\n -fogStart 0\\n -fogEnd 100\\n -fogDensity 0.1\\n -fogColor 0.5 0.5 0.5 1 \\n -depthOfFieldPreview 1\\n -maxConstantTransparency 1\\n -rendererName \\\"vp2Renderer\\\" \\n -objectFilterShowInHUD 1\\n -isFiltered 0\\n -colorResolution 256 256 \\n -bumpResolution 512 512 \\n -textureCompression 0\\n -transparencyAlgorithm \\\"frontAndBackCull\\\" \\n -transpInShadows 0\\n -cullingOverride \\\"none\\\" \\n -lowQualityLighting 0\\n -maximumNumHardwareLights 1\\n -occlusionCulling 0\\n -shadingModel 0\\n -useBaseRenderer 0\\n -useReducedRenderer 0\\n -smallObjectCulling 0\\n -smallObjectThreshold -1 \\n -interactiveDisableShadows 0\\n -interactiveBackFaceCull 0\\n -sortTransparent 1\\n -controllers 1\\n -nurbsCurves 1\\n -nurbsSurfaces 1\\n -polymeshes 1\\n -subdivSurfaces 1\\n -planes 1\\n -lights 1\\n -cameras 1\\n -controlVertices 1\\n -hulls 1\\n -grid 1\\n -imagePlane 1\\n -joints 1\\n -ikHandles 1\\n -deformers 1\\n -dynamics 1\\n -particleInstancers 1\\n -fluids 1\\n -hairSystems 1\\n -follicles 1\\n -nCloths 1\\n -nParticles 1\\n -nRigids 1\\n -dynamicConstraints 1\\n -locators 1\\n -manipulators 1\\n -pluginShapes 1\\n -dimensions 1\\n -handles 1\\n -pivots 1\\n -textures 1\\n -strokes 1\\n -motionTrails 1\\n -clipGhosts 1\\n -bluePencil 1\\n -greasePencils 0\\n -excludeObjectPreset \\\"All\\\" \\n -shadows 0\\n -captureSequenceNumber -1\\n -width 2254\\n -height 1356\\n -sceneRenderFilter 0\\n $editorName;\\nmodelEditor -e -viewSelected 0 $editorName\"\n" + + "\t\t\t\t\t\"modelPanel -edit -l (localizedPanelLabel(\\\"Persp View\\\")) -mbv $menusOkayInPanels $panelName;\\n$editorName = $panelName;\\nmodelEditor -e \\n -cam `findStartUpCamera persp` \\n -useInteractiveMode 0\\n -displayLights \\\"default\\\" \\n -displayAppearance \\\"smoothShaded\\\" \\n -activeOnly 0\\n -ignorePanZoom 0\\n -wireframeOnShaded 0\\n -headsUpDisplay 1\\n -holdOuts 1\\n -selectionHiliteDisplay 1\\n -useDefaultMaterial 0\\n -bufferMode \\\"double\\\" \\n -twoSidedLighting 0\\n -backfaceCulling 0\\n -xray 0\\n -jointXray 0\\n -activeComponentsXray 0\\n -displayTextures 0\\n -smoothWireframe 0\\n -lineWidth 1\\n -textureAnisotropic 0\\n -textureHilight 1\\n -textureSampling 2\\n -textureDisplay \\\"modulate\\\" \\n -textureMaxSize 16384\\n -fogging 0\\n -fogSource \\\"fragment\\\" \\n -fogMode \\\"linear\\\" \\n -fogStart 0\\n -fogEnd 100\\n -fogDensity 0.1\\n -fogColor 0.5 0.5 0.5 1 \\n -depthOfFieldPreview 1\\n -maxConstantTransparency 1\\n -rendererName \\\"vp2Renderer\\\" \\n -objectFilterShowInHUD 1\\n -isFiltered 0\\n -colorResolution 256 256 \\n -bumpResolution 512 512 \\n -textureCompression 0\\n -transparencyAlgorithm \\\"frontAndBackCull\\\" \\n -transpInShadows 0\\n -cullingOverride \\\"none\\\" \\n -lowQualityLighting 0\\n -maximumNumHardwareLights 1\\n -occlusionCulling 0\\n -shadingModel 0\\n -useBaseRenderer 0\\n -useReducedRenderer 0\\n -smallObjectCulling 0\\n -smallObjectThreshold -1 \\n -interactiveDisableShadows 0\\n -interactiveBackFaceCull 0\\n -sortTransparent 1\\n -controllers 1\\n -nurbsCurves 1\\n -nurbsSurfaces 1\\n -polymeshes 1\\n -subdivSurfaces 1\\n -planes 1\\n -lights 1\\n -cameras 1\\n -controlVertices 1\\n -hulls 1\\n -grid 1\\n -imagePlane 1\\n -joints 1\\n -ikHandles 1\\n -deformers 1\\n -dynamics 1\\n -particleInstancers 1\\n -fluids 1\\n -hairSystems 1\\n -follicles 1\\n -nCloths 1\\n -nParticles 1\\n -nRigids 1\\n -dynamicConstraints 1\\n -locators 1\\n -manipulators 1\\n -pluginShapes 1\\n -dimensions 1\\n -handles 1\\n -pivots 1\\n -textures 1\\n -strokes 1\\n -motionTrails 1\\n -clipGhosts 1\\n -bluePencil 1\\n -greasePencils 0\\n -excludeObjectPreset \\\"All\\\" \\n -shadows 0\\n -captureSequenceNumber -1\\n -width 2254\\n -height 1356\\n -sceneRenderFilter 0\\n $editorName;\\nmodelEditor -e -viewSelected 0 $editorName\"\n" + "\t\t\t\t$configName;\n\n setNamedPanelLayout (localizedPanelLabel(\"Current Layout\"));\n }\n\n panelHistory -e -clear mainPanelHistory;\n sceneUIReplacement -clear;\n\t}\n\n\ngrid -spacing 5 -size 12 -divisions 5 -displayAxes yes -displayGridLines yes -displayDivisionLines yes -displayPerspectiveLabels no -displayOrthographicLabels no -displayAxesBold yes -perspectiveLabelPosition axis -orthographicLabelPosition edge;\nviewManip -drawCompass 0 -compassAngle 0 -frontParameters \"\" -homeParameters \"\" -selectionLockParameters \"\";\n}\n"); setAttr ".st" 3; createNode script -n "sceneConfigurationScriptNode"; @@ -511,18 +515,18 @@ createNode script -n "sceneConfigurationScriptNode"; setAttr ".b" -type "string" "playbackOptions -min 0 -max 50 -ast 0 -aet 50 "; setAttr ".st" 6; createNode mayaUsdLayerManager -n "mayaUsdLayerManager1"; - rename -uid "4965CA44-974A-9D74-1203-32BA5F755559"; + rename -uid "2112243B-CE48-C2D3-2848-AE9A96459DD8"; setAttr ".sst" -type "string" "|mayaUsdProxy1|mayaUsdProxyShape1"; setAttr -s 3 ".lyr"; - setAttr ".lyr[0].id" -type "string" "anon:0x110f18960"; + setAttr ".lyr[0].id" -type "string" "anon:0x41fb39940"; setAttr ".lyr[0].fid" -type "string" "sdf"; setAttr ".lyr[0].szd" -type "string" ""; setAttr ".lyr[0].ann" yes; - setAttr ".lyr[1].id" -type "string" "anon:0x3ab2acac0:unshareableLayer"; + setAttr ".lyr[1].id" -type "string" "anon:0x41fb33030:unshareableLayer"; setAttr ".lyr[1].fid" -type "string" "sdf"; - setAttr ".lyr[1].szd" -type "string" "#sdf 1.4.32\n(\n customLayerData = {\n string[] mayaSharedLayers = [\"anon:0x2b184b690:robot.usd\"]\n }\n subLayers = [\n @anon:0x2b184b690:robot.usd@\n ]\n)\n\n"; + setAttr ".lyr[1].szd" -type "string" "#sdf 1.4.32\n(\n customLayerData = {\n string[] mayaSharedLayers = [\"anon:0x43f438dc0:robot.usd\"]\n }\n subLayers = [\n @anon:0x43f438dc0:robot.usd@\n ]\n)\n\n"; setAttr ".lyr[1].ann" yes; - setAttr ".lyr[2].id" -type "string" "anon:0x2b184b690:robot.usd"; + setAttr ".lyr[2].id" -type "string" "anon:0x43f438dc0:robot.usd"; setAttr ".lyr[2].fid" -type "string" "usd"; setAttr ".lyr[2].szd" -type "string" ""; setAttr ".lyr[2].ann" yes; diff --git a/src/nodedefs/compounds/CMakeLists.txt b/src/nodedefs/compounds/CMakeLists.txt index d2365299..0e55e83b 100644 --- a/src/nodedefs/compounds/CMakeLists.txt +++ b/src/nodedefs/compounds/CMakeLists.txt @@ -43,6 +43,7 @@ set(node_def_compound_json read_usd_curves.json read_usd_meshes.json replace_usd_point_instancer_proto.json + resolve_layer_index.json save_usd_stage.json set_attribute_comment.json set_attribute_custom_data.json diff --git a/src/nodedefs/compounds/add_to_stage.json b/src/nodedefs/compounds/add_to_stage.json index 742eaf05..434bd1b2 100644 --- a/src/nodedefs/compounds/add_to_stage.json +++ b/src/nodedefs/compounds/add_to_stage.json @@ -12,7 +12,7 @@ "compounds": [ { "name": "USD::Stage::add_to_stage", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "documentation", @@ -33,6 +33,16 @@ "metaType": "string", "metaValue": "2" }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "-2681.84 726.238" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "40.000000" + }, { "metaName": "io_ports", "metadata": [ @@ -42,6 +52,9 @@ { "metaName": "layer_index" }, + { + "metaName": "layer" + }, { "metaName": "prim_definitions" }, @@ -52,16 +65,6 @@ "metaName": "use_material_name_or_tag" } ] - }, - { - "metaName": "LayoutPos", - "metaType": "string", - "metaValue": "-2133.85 407.727" - }, - { - "metaName": "zValue", - "metaType": "string", - "metaValue": "31.000000" } ] }, @@ -89,7 +92,7 @@ { "metaName": "zValue", "metaType": "string", - "metaValue": "36.000000" + "metaValue": "32.000000" } ] } @@ -122,7 +125,7 @@ { "metaName": "zValue", "metaType": "string", - "metaValue": "37.000000" + "metaValue": "33.000000" } ] } @@ -130,6 +133,11 @@ } ] }, + { + "metaName": "icon", + "metaType": "string", + "metaValue": "../icons/usd_add.svg" + }, { "metaName": "NodeValueDisplay", "metadata": [ @@ -145,40 +153,35 @@ } ] }, - { - "metaName": "icon", - "metaType": "string", - "metaValue": "../icons/usd_add.svg" - }, { "metaName": "_recentNode_", "metaType": "string", - "metaValue": "BifrostGraph,Core::Iterators,iterate" + "metaValue": "BifrostGraph,USD::Utils,resolve_layer_index" }, { "metaName": "_recentNode_", "metaType": "string", - "metaValue": "output" + "metaValue": "BifrostGraph,Core::Type_Conversion,to_int" }, { "metaName": "_recentNode_", "metaType": "string", - "metaValue": "BifrostGraph,Core::Object,set_property" + "metaValue": "BifrostGraph,Core::Logic,if" }, { "metaName": "_recentNode_", "metaType": "string", - "metaValue": "BifrostGraph,Core::Array,build_array" + "metaValue": "BifrostGraph,Core::Logic,less" }, { "metaName": "_recentNode_", "metaType": "string", - "metaValue": "BifrostGraph,Core::Graph,terminal" + "metaValue": "BifrostGraph,Core::Array,array_size" }, { "metaName": "ViewportRect", "metaType": "string", - "metaValue": "-2215.1 -186 2826.2 1822" + "metaValue": "-2715.81 298.124 1748.55 1346.75" }, { "metaName": "DisplayMode", @@ -188,25 +191,25 @@ { "metaName": "LayoutPos", "metaType": "string", - "metaValue": "2643.05 -474.741" + "metaValue": "407.094 103.606" }, { "metaName": "zValue", "metaType": "string", - "metaValue": "107.000000" + "metaValue": "49.000000" }, { "metaName": "UILayout", "metaType": "string", - "metaValue": "{\n \"NodeLayout\": {\n \"hideUndeclaredPorts\": false,\n \"items\": [\n {\n \"port\": \"stage\"\n },\n {\n \"port\": \"prim_definitions\"\n },\n {\n \"expanded\": false,\n \"group\": \"Settings\",\n \"items\": [\n {\n \"port\": \"enable\"\n },\n {\n \"port\": \"parent_path\"\n },\n {\n \"port\": \"layer_index\"\n },\n {\n \"port\": \"use_material_name_or_tag\"\n }\n ],\n \"unique_id\": 7\n }\n ]\n }\n}\n" + "metaValue": "{\n \"NodeLayout\": {\n \"hideUndeclaredPorts\": false,\n \"items\": [\n {\n \"port\": \"stage\"\n },\n {\n \"port\": \"prim_definitions\"\n },\n {\n \"expanded\": false,\n \"group\": \"Settings\",\n \"items\": [\n {\n \"port\": \"enable\"\n },\n {\n \"port\": \"parent_path\"\n },\n {\n \"port\": \"layer\"\n },\n {\n \"condition\": {\n \"action\": \"disable\",\n \"op\": \"==\",\n \"port\": \"layer\",\n \"value\": \"\"\n },\n \"group\": \"Disable based on: layer\",\n \"items\": [\n {\n \"port\": \"layer_index\"\n }\n ],\n \"unique_id\": 15\n },\n {\n \"port\": \"use_material_name_or_tag\"\n }\n ],\n \"unique_id\": 7\n }\n ]\n }\n}\n" }, { "metaName": "PortExpandedState", "metadata": [ { - "metaName": "prim_definitions", + "metaName": "Settings", "metaType": "string", - "metaValue": "1" + "metaValue": "0" } ] } @@ -236,6 +239,10 @@ "portType": "int", "portDefault": "-1L" }, + { + "portName": "layer", + "portDirection": "input" + }, { "portName": "prim_definitions", "portDirection": "input", @@ -272,7 +279,7 @@ "compounds": [ { "name": "flatten_hierarchy", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "io_nodes", @@ -374,7 +381,7 @@ "compounds": [ { "name": "get_prim_hierarchy", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "ViewportRect", @@ -559,7 +566,7 @@ }, { "name": "reparent_prims", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "_recentNode_", @@ -685,7 +692,7 @@ "compounds": [ { "name": "get_prim_spec_hierarchy", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "io_nodes", @@ -1255,7 +1262,7 @@ }, { "name": "add_relationships", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "icon", @@ -1382,7 +1389,7 @@ "compounds": [ { "name": "add_relationships", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "_recentNode_", @@ -1509,7 +1516,7 @@ "compounds": [ { "name": "iterate_on_relationships", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "icon", @@ -2290,7 +2297,7 @@ }, { "name": "iterate_on_top_parents", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "icon", @@ -2449,7 +2456,7 @@ "compounds": [ { "name": "add_variant_sets", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "io_nodes", @@ -2551,7 +2558,7 @@ "compounds": [ { "name": "has_variant_sets", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "ViewportRect", @@ -2722,7 +2729,7 @@ }, { "name": "iterate_on_variant_sets", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "icon", @@ -3149,7 +3156,7 @@ }, { "name": "set_variant_sets_selection", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "io_nodes", @@ -3251,7 +3258,7 @@ "compounds": [ { "name": "has_variant_sets", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "ViewportRect", @@ -3422,7 +3429,7 @@ }, { "name": "iterate_on_variant_sets", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "icon", @@ -4035,7 +4042,7 @@ }, { "name": "build_children_prims", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "_recentNode_", @@ -4186,7 +4193,7 @@ "compounds": [ { "name": "iterate_to_create_prims", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "icon", @@ -4369,7 +4376,7 @@ "compounds": [ { "name": "add_and_select_variant", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "io_nodes", @@ -5041,7 +5048,7 @@ }, { "name": "set_prims_active", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "icon", @@ -5168,7 +5175,7 @@ "compounds": [ { "name": "set_active", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "_recentNode_", @@ -5636,7 +5643,7 @@ }, { "name": "iterate_to_add_connections_and_relationships", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "icon", @@ -5803,7 +5810,7 @@ "compounds": [ { "name": "set_variant_selection", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "io_nodes", @@ -6185,7 +6192,7 @@ }, { "name": "add_attribute_connections", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "_recentNode_", @@ -6312,7 +6319,7 @@ "compounds": [ { "name": "iterate_on_attributes", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "icon", @@ -6459,7 +6466,7 @@ "compounds": [ { "name": "has_connection", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "ViewportRect", @@ -6633,7 +6640,7 @@ }, { "name": "add_or_remove_attribute_connection", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "_recentNode_", @@ -6754,7 +6761,7 @@ "compounds": [ { "name": "build_source", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "io_nodes", @@ -7669,7 +7676,7 @@ }, { "name": "resolve_material_assign", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "_recentNode_", @@ -7819,7 +7826,7 @@ "compounds": [ { "name": "get_material_prims", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "ViewportRect", @@ -7903,7 +7910,7 @@ "compounds": [ { "name": "filter_prims_by_type", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "ViewportRect", @@ -8216,7 +8223,7 @@ }, { "name": "get_prims_with_material_tag_attribute", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "ViewportRect", @@ -8300,7 +8307,7 @@ "compounds": [ { "name": "filter_prims_by_attribute", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "ViewportRect", @@ -8573,7 +8580,7 @@ }, { "name": "iterate", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "icon", @@ -8711,7 +8718,7 @@ "compounds": [ { "name": "iterate", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "icon", @@ -8874,7 +8881,7 @@ "compounds": [ { "name": "get_prim_name", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "io_nodes", @@ -8995,7 +9002,7 @@ }, { "name": "material_prim_path", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "io_nodes", @@ -9836,7 +9843,7 @@ }, { "name": "add_relationships", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "io_nodes", @@ -9938,7 +9945,7 @@ "compounds": [ { "name": "iterate_on_relationships", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "icon", @@ -10952,7 +10959,7 @@ }, { "name": "has_variant_sets", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "ViewportRect", @@ -11315,7 +11322,7 @@ }, { "name": "set_parent_active", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "_recentNode_", @@ -11716,7 +11723,7 @@ }, { "name": "add_attribute_connections", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "_recentNode_", @@ -11843,7 +11850,7 @@ "compounds": [ { "name": "iterate_on_attributes", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "icon", @@ -11980,7 +11987,7 @@ "compounds": [ { "name": "has_connection", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "ViewportRect", @@ -12154,7 +12161,7 @@ }, { "name": "add_or_remove_attribute_connection", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "_recentNode_", @@ -12275,7 +12282,7 @@ "compounds": [ { "name": "build_source", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "io_nodes", @@ -13465,7 +13472,7 @@ }, { "name": "update_paths", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "_recentNode_", @@ -13592,7 +13599,7 @@ "compounds": [ { "name": "for_each_top_parent", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "icon", @@ -13725,7 +13732,7 @@ "compounds": [ { "name": "for_each_child", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "icon", @@ -13839,7 +13846,7 @@ "compounds": [ { "name": "update_prim_def_paths", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "ViewportRect", @@ -13931,7 +13938,7 @@ "compounds": [ { "name": "update_prim_path", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "ViewportRect", @@ -14023,7 +14030,7 @@ "compounds": [ { "name": "array_is_one_element", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "ViewportRect", @@ -14501,7 +14508,7 @@ }, { "name": "update_reference_prim", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "ViewportRect", @@ -14593,7 +14600,7 @@ "compounds": [ { "name": "iterate", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "icon", @@ -15161,7 +15168,7 @@ }, { "name": "update_relationship_target", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "ViewportRect", @@ -15253,7 +15260,7 @@ "compounds": [ { "name": "iterate", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "icon", @@ -15665,7 +15672,7 @@ }, { "name": "update_target_prim", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "ViewportRect", @@ -15757,7 +15764,7 @@ "compounds": [ { "name": "iterate", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "icon", @@ -16382,7 +16389,7 @@ }, { "name": "update_prim_def_paths", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "ViewportRect", @@ -16474,7 +16481,7 @@ "compounds": [ { "name": "update_prim_path", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "ViewportRect", @@ -16566,7 +16573,7 @@ "compounds": [ { "name": "array_is_one_element", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "ViewportRect", @@ -17044,7 +17051,7 @@ }, { "name": "update_reference_prim", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "ViewportRect", @@ -17136,7 +17143,7 @@ "compounds": [ { "name": "iterate", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "icon", @@ -17704,7 +17711,7 @@ }, { "name": "update_relationship_target", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "ViewportRect", @@ -17796,7 +17803,7 @@ "compounds": [ { "name": "iterate", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "icon", @@ -18208,7 +18215,7 @@ }, { "name": "update_target_prim", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "ViewportRect", @@ -18300,7 +18307,7 @@ "compounds": [ { "name": "iterate", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "icon", @@ -19118,7 +19125,7 @@ }, { "name": "set_variant_selections", - "uriImported": "stream:/bifrostGraph_create_instancerShape", + "uriImported": "file:///add_to_stage.json", "metadata": [ { "metaName": "icon", @@ -19130,6 +19137,11 @@ "metaType": "string", "metaValue": "../icons/LoopIterate.svg" }, + { + "metaName": "icon", + "metaType": "string", + "metaValue": "../icons/LoopIterate.svg" + }, { "metaName": "io_nodes", "metadata": [ @@ -19542,14 +19554,14 @@ "metaValue": "2" }, { - "metaName": "zValue", + "metaName": "LayoutPos", "metaType": "string", - "metaValue": "43.000000" + "metaValue": "-771.007 1015.38" }, { - "metaName": "LayoutPos", + "metaName": "zValue", "metaType": "string", - "metaValue": "-771.007 1015.38" + "metaValue": "35.000000" } ] }, @@ -19563,14 +19575,14 @@ "metaValue": "2" }, { - "metaName": "zValue", + "metaName": "LayoutPos", "metaType": "string", - "metaValue": "42.000000" + "metaValue": "-767.837 698.926" }, { - "metaName": "LayoutPos", + "metaName": "zValue", "metaType": "string", - "metaValue": "-767.837 698.926" + "metaValue": "34.000000" } ] }, @@ -19586,12 +19598,12 @@ { "metaName": "LayoutPos", "metaType": "string", - "metaValue": "-1093.01 509.771" + "metaValue": "-1093.01 498.458" }, { "metaName": "zValue", "metaType": "string", - "metaValue": "41.000000" + "metaValue": "38.000000" } ] }, @@ -19607,12 +19619,12 @@ { "metaName": "LayoutPos", "metaType": "string", - "metaValue": "-1687.16 763.49" + "metaValue": "-1352.97 737.736" }, { "metaName": "zValue", "metaType": "string", - "metaValue": "33.000000" + "metaValue": "41.000000" } ] }, @@ -19633,7 +19645,7 @@ { "metaName": "zValue", "metaType": "string", - "metaValue": "35.000000" + "metaValue": "31.000000" } ] }, @@ -19647,14 +19659,14 @@ "metaValue": "2" }, { - "metaName": "zValue", + "metaName": "LayoutPos", "metaType": "string", - "metaValue": "45.000000" + "metaValue": "-1584.03 246.361" }, { - "metaName": "LayoutPos", + "metaName": "zValue", "metaType": "string", - "metaValue": "-1674.54 187.908" + "metaValue": "37.000000" } ] }, @@ -19667,15 +19679,36 @@ "metaType": "string", "metaValue": "2" }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "-419.732 733.409" + }, { "metaName": "zValue", "metaType": "string", - "metaValue": "44.000000" + "metaValue": "36.000000" + } + ] + }, + { + "nodeName": "resolve_layer_index", + "nodeType": "USD::Layer::resolve_layer_index", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" }, { "metaName": "LayoutPos", "metaType": "string", - "metaValue": "-419.732 733.409" + "metaValue": "-1932.26 562.101" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "39.000000" } ] } @@ -19717,14 +19750,6 @@ "source": ".parent_path", "target": "flatten_hierarchy.parent_path" }, - { - "source": ".layer_index", - "target": "set_edit_layer.layer_index" - }, - { - "source": ".layer_index", - "target": "iterate_on_top_parents.layer_index" - }, { "source": ".use_material_name_or_tag", "target": "iterate_on_top_parents.use_material_name_or_tag" @@ -19752,6 +19777,26 @@ { "source": "set_variant_selections.out_stage", "target": "if.true_case" + }, + { + "source": ".stage", + "target": "resolve_layer_index.stage" + }, + { + "source": ".layer_index", + "target": "resolve_layer_index.layer_index" + }, + { + "source": ".layer", + "target": "resolve_layer_index.layer" + }, + { + "source": "resolve_layer_index.out_layer_index", + "target": "set_edit_layer.layer_index" + }, + { + "source": "resolve_layer_index.out_layer_index", + "target": "iterate_on_top_parents.layer_index" } ], "values": [ @@ -19794,4 +19839,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/src/nodedefs/compounds/add_to_stage_in_variant.json b/src/nodedefs/compounds/add_to_stage_in_variant.json index 96cea5e7..b4df595b 100644 --- a/src/nodedefs/compounds/add_to_stage_in_variant.json +++ b/src/nodedefs/compounds/add_to_stage_in_variant.json @@ -12,6 +12,7 @@ "compounds": [ { "name": "USD::VariantSet::add_to_stage_in_variant", + "uriImported": "file:///add_to_stage_in_variant.json", "metadata": [ { "metaName": "icon", @@ -64,6 +65,9 @@ }, { "metaName": "use_material_name_or_tag" + }, + { + "metaName": "layer" } ] }, @@ -138,7 +142,7 @@ { "metaName": "zValue", "metaType": "string", - "metaValue": "38.000000" + "metaValue": "37.000000" } ] } @@ -171,7 +175,7 @@ { "metaName": "zValue", "metaType": "string", - "metaValue": "40.000000" + "metaValue": "39.000000" } ] } @@ -179,21 +183,6 @@ } ] }, - { - "metaName": "PortExpandedState", - "metadata": [ - { - "metaName": "Settings", - "metaType": "string", - "metaValue": "0" - }, - { - "metaName": "prim_definitions", - "metaType": "string", - "metaValue": "0" - } - ] - }, { "metaName": "_recentNode_", "metaType": "string", @@ -220,14 +209,24 @@ "metaValue": "BifrostGraph,USD::VariantSet,clear_variant_selection" }, { - "metaName": "ViewportRect", - "metaType": "string", - "metaValue": "-1413.91 -364.272 2404.52 697.973" + "metaName": "NodeValueDisplay", + "metadata": [ + { + "metaName": "show", + "metaType": "string", + "metaValue": "1" + }, + { + "metaName": "format", + "metaType": "string", + "metaValue": "Add to Stage in variant {variant_set_name}/{variant_name}" + } + ] }, { - "metaName": "UILayout", + "metaName": "ViewportRect", "metaType": "string", - "metaValue": "{\n \"NodeLayout\": {\n \"hideUndeclaredPorts\": false,\n \"items\": [\n {\n \"port\": \"stage\"\n },\n {\n \"port\": \"prim_definitions\"\n },\n {\n \"expanded\": false,\n \"group\": \"Settings\",\n \"items\": [\n {\n \"port\": \"enable\"\n },\n {\n \"port\": \"parent_path\"\n },\n {\n \"port\": \"layer_index\"\n },\n {\n \"port\": \"use_material_name_or_tag\"\n },\n {\n \"port\": \"enable_variant\"\n },\n {\n \"condition\": {\n \"action\": \"show\",\n \"op\": \"==\",\n \"port\": \"enable_variant\",\n \"value\": \"\"\n },\n \"group\": \"Show based on: enable_variant\",\n \"items\": [\n {\n \"expanded\": false,\n \"group\": \"Variant\",\n \"items\": [\n {\n \"port\": \"inside_current_variant\"\n },\n {\n \"port\": \"variant_set_name\"\n },\n {\n \"port\": \"variant_name\"\n },\n {\n \"port\": \"select\"\n }\n ],\n \"unique_id\": 18\n }\n ],\n \"unique_id\": 29\n }\n ],\n \"unique_id\": 9\n }\n ]\n }\n}\n" + "metaValue": "-645.673 -740.218 1077.5 1307.19" }, { "metaName": "DisplayMode", @@ -237,25 +236,25 @@ { "metaName": "LayoutPos", "metaType": "string", - "metaValue": "512.876 -59.4859" + "metaValue": "480.528 -323.074" }, { "metaName": "zValue", "metaType": "string", - "metaValue": "66.000000" + "metaValue": "54.000000" }, { - "metaName": "NodeValueDisplay", + "metaName": "UILayout", + "metaType": "string", + "metaValue": "{\n \"NodeLayout\": {\n \"hideUndeclaredPorts\": false,\n \"items\": [\n {\n \"port\": \"stage\"\n },\n {\n \"port\": \"prim_definitions\"\n },\n {\n \"expanded\": false,\n \"group\": \"Settings\",\n \"items\": [\n {\n \"port\": \"enable\"\n },\n {\n \"port\": \"parent_path\"\n },\n {\n \"port\": \"layer\"\n },\n {\n \"condition\": {\n \"action\": \"disable\",\n \"op\": \"==\",\n \"port\": \"layer\",\n \"value\": \"\"\n },\n \"group\": \"Disable based on: layer\",\n \"items\": [\n {\n \"port\": \"layer_index\"\n }\n ],\n \"unique_id\": 42\n },\n {\n \"port\": \"layer_display_name\"\n },\n {\n \"port\": \"use_material_name_or_tag\"\n },\n {\n \"port\": \"enable_variant\"\n },\n {\n \"condition\": {\n \"action\": \"show\",\n \"op\": \"==\",\n \"port\": \"enable_variant\",\n \"value\": \"\"\n },\n \"group\": \"Show based on: enable_variant\",\n \"items\": [\n {\n \"expanded\": false,\n \"group\": \"Variant\",\n \"items\": [\n {\n \"port\": \"inside_current_variant\"\n },\n {\n \"port\": \"variant_set_name\"\n },\n {\n \"port\": \"variant_name\"\n },\n {\n \"port\": \"select\"\n }\n ],\n \"unique_id\": 18\n }\n ],\n \"unique_id\": 29\n }\n ],\n \"unique_id\": 9\n }\n ]\n }\n}\n" + }, + { + "metaName": "PortExpandedState", "metadata": [ { - "metaName": "show", - "metaType": "string", - "metaValue": "1" - }, - { - "metaName": "format", + "metaName": "Settings", "metaType": "string", - "metaValue": "Add to Stage in variant {variant_set_name}/{variant_name}" + "metaValue": "0" } ] } @@ -339,6 +338,10 @@ "portDirection": "input", "portType": "bool", "portDefault": "true" + }, + { + "portName": "layer", + "portDirection": "input" } ], "compounds": [ @@ -2225,19 +2228,19 @@ "metaValue": "Add to Stage (Layer index {layer_index})" }, { - "metaName": "DisplayMode", + "metaName": "LayoutPos", "metaType": "string", - "metaValue": "1" + "metaValue": "115.889 -456.216" }, { - "metaName": "LayoutPos", + "metaName": "DisplayMode", "metaType": "string", - "metaValue": "115.889 -456.216" + "metaValue": "2" }, { "metaName": "zValue", "metaType": "string", - "metaValue": "36.000000" + "metaValue": "43.000000" } ] }, @@ -2258,7 +2261,7 @@ { "metaName": "zValue", "metaType": "string", - "metaValue": "37.000000" + "metaValue": "36.000000" } ] }, @@ -2279,7 +2282,7 @@ { "metaName": "zValue", "metaType": "string", - "metaValue": "44.000000" + "metaValue": "42.000000" } ] }, @@ -2314,7 +2317,7 @@ { "metaName": "zValue", "metaType": "string", - "metaValue": "42.000000" + "metaValue": "41.000000" } ] }, @@ -2356,7 +2359,7 @@ { "metaName": "zValue", "metaType": "string", - "metaValue": "39.000000" + "metaValue": "38.000000" } ] }, @@ -2398,7 +2401,7 @@ { "metaName": "zValue", "metaType": "string", - "metaValue": "41.000000" + "metaValue": "40.000000" } ] }, @@ -2441,10 +2444,6 @@ "source": ".use_material_name_or_tag", "target": "add_to_stage.use_material_name_or_tag" }, - { - "source": ".prim_definitions", - "target": "add_to_stage.prim_definitions.prim_definitions" - }, { "source": ".variant_set_name", "target": "create_vset_and_select_variant.variant_set_name" @@ -2548,6 +2547,14 @@ { "source": ".inside_current_variant", "target": "create_vset_and_select_variant.inside_current_variant" + }, + { + "source": ".prim_definitions", + "target": "add_to_stage.prim_definitions.prim_definitions" + }, + { + "source": ".layer", + "target": "add_to_stage.layer" } ], "values": [ diff --git a/src/nodedefs/compounds/resolve_layer_index.json b/src/nodedefs/compounds/resolve_layer_index.json new file mode 100644 index 00000000..0f7b3f46 --- /dev/null +++ b/src/nodedefs/compounds/resolve_layer_index.json @@ -0,0 +1,2226 @@ +{ + "header": { + "metadata": [ + { + "metaName": "adskFileFormatVersion", + "metaValue": "100L" + } + ] + }, + "namespaces": [], + "types": [], + "compounds": [ + { + "name": "USD::Layers::_resolve_layer_index", + "metadata": [ + { + "metaName": "internal", + "metaValue": "true" + }, + { + "metaName": "ViewportRect", + "metaType": "string", + "metaValue": "-512.59 -665.361 2368.96 2021" + }, + { + "metaName": "io_nodes", + "metadata": [ + { + "metaName": "io_inodes", + "metadata": [ + { + "metaName": "input", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "-342.73 779.5" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "60.000000" + }, + { + "metaName": "io_ports", + "metadata": [ + { + "metaName": "layer" + } + ] + } + ] + }, + { + "metaName": "input1", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "-330 -397" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "33.000000" + }, + { + "metaName": "io_ports", + "metadata": [ + { + "metaName": "stage" + } + ] + } + ] + }, + { + "metaName": "input2", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "3034.81 185.596" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "55.000000" + }, + { + "metaName": "io_ports", + "metadata": [ + { + "metaName": "layer_index" + } + ] + } + ] + } + ] + }, + { + "metaName": "io_onodes", + "metadata": [ + { + "metaName": "output", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "3679.52 199.5" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "54.000000" + }, + { + "metaName": "io_ports", + "metadata": [ + { + "metaName": "out_layer_index" + } + ] + } + ] + } + ] + } + ] + }, + { + "metaName": "backdrop", + "metadata": [ + { + "metaName": "type", + "metaType": "string", + "metaValue": "backdrop" + }, + { + "metaName": "color", + "metaType": "string", + "metaValue": "#28da9652" + }, + { + "metaName": "coords", + "metaType": "string", + "metaValue": "1117.36 -1329.84 842.02 376.727" + }, + { + "metaName": "title", + "metaType": "string", + "metaValue": "If the root layer identifier match input layer identifier" + } + ] + }, + { + "metaName": "backdrop1", + "metadata": [ + { + "metaName": "type", + "metaType": "string", + "metaValue": "backdrop" + }, + { + "metaName": "color", + "metaType": "string", + "metaValue": "#28da9652" + }, + { + "metaName": "coords", + "metaType": "string", + "metaValue": "1659.76 -918.123 766.09 434.978" + }, + { + "metaName": "title", + "metaType": "string", + "metaValue": "Or if the root layer display name match input layer display name" + } + ] + }, + { + "metaName": "backdrop2", + "metadata": [ + { + "metaName": "type", + "metaType": "string", + "metaValue": "backdrop" + }, + { + "metaName": "title", + "metaType": "string", + "metaValue": "Target root layer" + }, + { + "metaName": "color", + "metaType": "string", + "metaValue": "#28da9652" + }, + { + "metaName": "coords", + "metaType": "string", + "metaValue": "1080.7 -1398.83 1393.12 1163.27" + } + ] + }, + { + "metaName": "backdrop3", + "metadata": [ + { + "metaName": "type", + "metaType": "string", + "metaValue": "backdrop" + }, + { + "metaName": "coords", + "metaType": "string", + "metaValue": "178.097 -96.5228 1090.02 789.24" + }, + { + "metaName": "title", + "metaType": "string", + "metaValue": "If a sublayer iddentifer match input layer identifier" + }, + { + "metaName": "color", + "metaType": "string", + "metaValue": "#28825fc8" + } + ] + }, + { + "metaName": "backdrop4", + "metadata": [ + { + "metaName": "type", + "metaType": "string", + "metaValue": "backdrop" + }, + { + "metaName": "title", + "metaType": "string", + "metaValue": "If a sublayer iddentifer match input layer display name" + }, + { + "metaName": "coords", + "metaType": "string", + "metaValue": "613.217 864.311 991.749 572.639" + }, + { + "metaName": "color", + "metaType": "string", + "metaValue": "#28825fc8" + } + ] + }, + { + "metaName": "sticky_note", + "metadata": [ + { + "metaName": "type", + "metaType": "string", + "metaValue": "sticky_note" + }, + { + "metaName": "text", + "metaType": "string", + "metaValue": "Set index to -1 to target stage's root layer" + }, + { + "metaName": "color", + "metaType": "string", + "metaValue": "#ffe0a66c" + }, + { + "metaName": "coords", + "metaType": "string", + "metaValue": "1769.56 -367.871 455.196 56" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "40.000000" + } + ] + }, + { + "metaName": "sticky_note1", + "metadata": [ + { + "metaName": "type", + "metaType": "string", + "metaValue": "sticky_note" + }, + { + "metaName": "color", + "metaType": "string", + "metaValue": "#ff7b99d5" + }, + { + "metaName": "format", + "metaType": "string", + "metaValue": "md" + }, + { + "metaName": "coords", + "metaType": "string", + "metaValue": "-289.838 -1321.84 744.238 320" + }, + { + "metaName": "text", + "metaType": "string", + "metaValue": "# The logic behind this graph\nWe compare the stage's layer identifiers with the **layer** input identifier. If there is no match, we compare the stage's layer display names. This is because layers created or modified are anonymous and will use different identifier names if they are modified in more than one branch of the graph (the fan-out port scenario). \nStill we find it handy to be able to connect a layer with a matching disaplay name.\nTo bypass such rule (like when several layers are using the same display name), do not connect the **layer** input to let the **layer_index** input be used." + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "59.000000" + } + ] + }, + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "315 11" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "34.000000" + } + ], + "ports": [ + { + "portName": "stage", + "portDirection": "input", + "portType": "BifrostUsd::Stage", + "portDefault": {} + }, + { + "portName": "layer_index", + "portDirection": "input", + "portType": "int", + "portDefault": "-1L" + }, + { + "portName": "layer", + "portDirection": "input", + "portType": "BifrostUsd::Layer", + "portDefault": {} + }, + { + "portName": "out_layer_index", + "portDirection": "output", + "portType": "int" + } + ], + "compounds": [ + { + "name": "get_sublayer_display_names", + "metadata": [ + { + "metaName": "ViewportRect", + "metaType": "string", + "metaValue": "-67.2065 -744 2211.41 1829" + }, + { + "metaName": "io_nodes", + "metadata": [ + { + "metaName": "io_inodes", + "metadata": [ + { + "metaName": "input", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "49.1579 65.6138" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "39.000000" + }, + { + "metaName": "io_ports", + "metadata": [ + { + "metaName": "stage" + } + ] + } + ] + } + ] + }, + { + "metaName": "io_onodes", + "metadata": [ + { + "metaName": "output", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1902.63 24.5658" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "38.000000" + }, + { + "metaName": "io_ports", + "metadata": [ + { + "metaName": "display_names" + } + ] + } + ] + } + ] + } + ] + } + ], + "ports": [ + { + "portName": "stage", + "portDirection": "input", + "portType": "BifrostUsd::Stage" + }, + { + "portName": "display_names", + "portDirection": "output", + "portType": "array" + } + ], + "compoundNodes": [ + { + "nodeName": "array_size", + "nodeType": "Core::Array::array_size", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "643.827 -400.154" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "36.000000" + } + ] + }, + { + "nodeName": "get_layer", + "nodeType": "USD::Layer::get_layer", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1230 47" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "32.000000" + } + ] + }, + { + "nodeName": "get_layer_display_name", + "nodeType": "USD::Layer::get_layer_display_name", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1535 24" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "31.000000" + } + ] + }, + { + "nodeName": "get_sublayer_paths", + "nodeType": "USD::Layer::get_sublayer_paths", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "360.5 -268.807" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "37.000000" + } + ] + }, + { + "nodeName": "sequence_array", + "nodeType": "Core::Array::sequence_array", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "927 -230" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "33.000000" + } + ] + }, + { + "nodeName": "value", + "valueType": "int", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "1" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "40.000000" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "635.953 -72.2982" + } + ] + }, + { + "nodeName": "value1", + "valueType": "int", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "1" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "640.827 -219.547" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "35.000000" + } + ] + } + ], + "connections": [ + { + "source": "array_size.size", + "target": "sequence_array.size" + }, + { + "source": "get_layer.layer", + "target": "get_layer_display_name.layer" + }, + { + "source": "get_layer_display_name.display_name", + "target": ".display_names" + }, + { + "source": "get_sublayer_paths.sub_layer_paths", + "target": "array_size.array" + }, + { + "source": "sequence_array.sequence", + "target": "get_layer.layer_index" + }, + { + "source": "value.output", + "target": "sequence_array.step" + }, + { + "source": "value1.output", + "target": "sequence_array.start" + }, + { + "source": ".stage", + "target": "get_layer.stage" + }, + { + "source": ".stage", + "target": "get_sublayer_paths.stage" + } + ], + "values": [ + { + "valueName": "sequence_array.start", + "valueType": "int", + "value": "0L" + }, + { + "valueName": "sequence_array.step", + "valueType": "int", + "value": "1L" + }, + { + "valueName": "value.value", + "valueType": "int", + "value": "1L" + }, + { + "valueName": "value1.value", + "valueType": "int", + "value": "0L" + } + ], + "reservedNodeNames": [ + { + "name": "input" + }, + { + "name": "output" + } + ] + }, + { + "name": "get_sublayer_identifiers", + "metadata": [ + { + "metaName": "_recentNode_", + "metaType": "string", + "metaValue": "BifrostGraph,USD::Layer,get_layer_identifier" + }, + { + "metaName": "_recentNode_", + "metaType": "string", + "metaValue": "BifrostGraph,Core::Logic,if" + }, + { + "metaName": "_recentNode_", + "metaType": "string", + "metaValue": "BifrostGraph,Core::Logic,equal" + }, + { + "metaName": "_recentNode_", + "metaType": "string", + "metaValue": "BifrostGraph,USD::Layer,get_layer_display_name" + }, + { + "metaName": "_recentNode_", + "metaType": "string", + "metaValue": "BifrostGraph,USD::Layer,get_root_layer" + }, + { + "metaName": "ViewportRect", + "metaType": "string", + "metaValue": "-82.4118 -743.163 2244.74 1828.17" + }, + { + "metaName": "io_nodes", + "metadata": [ + { + "metaName": "io_inodes", + "metadata": [ + { + "metaName": "input", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "49.1579 65.6138" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "38.000000" + }, + { + "metaName": "io_ports", + "metadata": [ + { + "metaName": "stage" + } + ] + } + ] + } + ] + }, + { + "metaName": "io_onodes", + "metadata": [ + { + "metaName": "output", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "43.000000" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1902.63 26.7264" + }, + { + "metaName": "io_ports", + "metadata": [ + { + "metaName": "identifiers" + } + ] + } + ] + } + ] + } + ] + } + ], + "ports": [ + { + "portName": "stage", + "portDirection": "input", + "portType": "BifrostUsd::Stage" + }, + { + "portName": "identifiers", + "portDirection": "output", + "portType": "array" + } + ], + "compoundNodes": [ + { + "nodeName": "array_size", + "nodeType": "Core::Array::array_size", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "643.827 -400.154" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "35.000000" + } + ] + }, + { + "nodeName": "get_layer", + "nodeType": "USD::Layer::get_layer", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1230 47" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "32.000000" + } + ] + }, + { + "nodeName": "get_sublayer_paths", + "nodeType": "USD::Layer::get_sublayer_paths", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "360.5 -268.807" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "36.000000" + } + ] + }, + { + "nodeName": "sequence_array", + "nodeType": "Core::Array::sequence_array", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "927 -230" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "33.000000" + } + ] + }, + { + "nodeName": "value", + "valueType": "int", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "1" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "635.953 -72.2982" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "39.000000" + } + ] + }, + { + "nodeName": "value1", + "valueType": "int", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "1" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "640.827 -219.547" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "34.000000" + } + ] + }, + { + "nodeName": "get_layer_identifier", + "nodeType": "USD::Layer::get_layer_identifier", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "42.000000" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1514.57 80.6943" + } + ] + } + ], + "connections": [ + { + "source": "array_size.size", + "target": "sequence_array.size" + }, + { + "source": "get_layer.layer", + "target": "get_layer_identifier.layer" + }, + { + "source": "get_sublayer_paths.sub_layer_paths", + "target": "array_size.array" + }, + { + "source": "sequence_array.sequence", + "target": "get_layer.layer_index" + }, + { + "source": "value.output", + "target": "sequence_array.step" + }, + { + "source": "value1.output", + "target": "sequence_array.start" + }, + { + "source": "get_layer_identifier.identifier", + "target": ".identifiers" + }, + { + "source": ".stage", + "target": "get_layer.stage" + }, + { + "source": ".stage", + "target": "get_sublayer_paths.stage" + } + ], + "values": [ + { + "valueName": "sequence_array.start", + "valueType": "int", + "value": "0L" + }, + { + "valueName": "sequence_array.step", + "valueType": "int", + "value": "1L" + }, + { + "valueName": "value.value", + "valueType": "int", + "value": "1L" + }, + { + "valueName": "value1.value", + "valueType": "int", + "value": "0L" + } + ], + "reservedNodeNames": [ + { + "name": "input" + }, + { + "name": "output" + } + ] + } + ], + "compoundNodes": [ + { + "nodeName": "get_sublayer_display_names", + "nodeType": "get_sublayer_display_names", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "648.566 1177.5" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "51.000000" + } + ] + }, + { + "nodeName": "array_size", + "nodeType": "Core::Array::array_size", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "705.374 233.84" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "44.000000" + } + ] + }, + { + "nodeName": "find_in_array", + "nodeType": "Core::Array::find_in_array", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "718.123 -20.9759" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "43.000000" + }, + { + "metaName": "NodeValueDisplay", + "metadata": [ + { + "metaName": "format", + "metaType": "string", + "metaValue": "Find {value} in array" + }, + { + "metaName": "show", + "metaType": "string", + "metaValue": "0" + } + ] + } + ] + }, + { + "nodeName": "if1", + "nodeType": "Core::Logic::if", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "2206.72 304.72" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "52.000000" + } + ] + }, + { + "nodeName": "less", + "nodeType": "Core::Logic::less", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1033.12 107.759" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "46.000000" + }, + { + "metaName": "NodeValueDisplay", + "metadata": [ + { + "metaName": "format", + "metaType": "string", + "metaValue": "Less than {second}" + }, + { + "metaName": "show", + "metaType": "string", + "metaValue": "0" + } + ] + } + ] + }, + { + "nodeName": "to_int", + "nodeType": "Core::Type_Conversion::to_int", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "3049.29 418.598" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "56.000000" + } + ] + }, + { + "nodeName": "get_root_layer", + "nodeType": "USD::Layer::get_root_layer", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1127.36 -1138.11" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "37.000000" + } + ] + }, + { + "nodeName": "get_root_layer_display_name", + "nodeType": "USD::Layer::get_layer_display_name", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1669.76 -762.796" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "34.000000" + } + ] + }, + { + "nodeName": "equal", + "nodeType": "Core::Logic::equal", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1724.38 -1206.62" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "36.000000" + }, + { + "metaName": "NodeValueDisplay", + "metadata": [ + { + "metaName": "format", + "metaType": "string", + "metaValue": "Equal to {second}" + }, + { + "metaName": "show", + "metaType": "string", + "metaValue": "0" + } + ] + } + ] + }, + { + "nodeName": "if", + "nodeType": "Core::Logic::if", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "2624.7 -216.006" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "39.000000" + } + ] + }, + { + "nodeName": "value", + "valueType": "long", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "1" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "2227.7 -396.55" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "38.000000" + } + ] + }, + { + "nodeName": "get_layer_identifier", + "nodeType": "USD::Layer::get_layer_identifier", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "188.097 507.717" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "45.000000" + } + ] + }, + { + "nodeName": "get_sublayer_identifiers", + "nodeType": "get_sublayer_identifiers", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "195.543 218.374" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "42.000000" + } + ] + }, + { + "nodeName": "get_root_layer_identifier", + "nodeType": "USD::Layer::get_layer_identifier", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1423.58 -1254.29" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "35.000000" + } + ] + }, + { + "nodeName": "equal1", + "nodeType": "Core::Logic::equal", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1918.04 -692.145" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "31.000000" + }, + { + "metaName": "NodeValueDisplay", + "metadata": [ + { + "metaName": "format", + "metaType": "string", + "metaValue": "Equal to {second}" + }, + { + "metaName": "show", + "metaType": "string", + "metaValue": "0" + } + ] + } + ] + }, + { + "nodeName": "get_layer_display_name", + "nodeType": "USD::Layer::get_layer_display_name", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "623.217 939.858" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "50.000000" + } + ] + }, + { + "nodeName": "or", + "nodeType": "Core::Logic::or", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "2190.86 -842.575" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "32.000000" + } + ] + }, + { + "nodeName": "array_size1", + "nodeType": "Core::Array::array_size", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1039.1 1251.95" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "47.000000" + } + ] + }, + { + "nodeName": "find_in_array1", + "nodeType": "Core::Array::find_in_array", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1036.1 1009.95" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "48.000000" + }, + { + "metaName": "NodeValueDisplay", + "metadata": [ + { + "metaName": "format", + "metaType": "string", + "metaValue": "Find {value} in array" + }, + { + "metaName": "show", + "metaType": "string", + "metaValue": "0" + } + ] + } + ] + }, + { + "nodeName": "less1", + "nodeType": "Core::Logic::less", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1346.1 1084.95" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "49.000000" + }, + { + "metaName": "NodeValueDisplay", + "metadata": [ + { + "metaName": "format", + "metaType": "string", + "metaValue": "Less than {second}" + }, + { + "metaName": "show", + "metaType": "string", + "metaValue": "0" + } + ] + } + ] + }, + { + "nodeName": "if2", + "nodeType": "Core::Logic::if", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1952.93 516.888" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "53.000000" + } + ] + }, + { + "nodeName": "string_empty", + "nodeType": "Core::String::string_empty", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "3050.85 -34.85" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "57.000000" + } + ] + }, + { + "nodeName": "if3", + "nodeType": "Core::Logic::if", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "3361.23 193.298" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "41.000000" + } + ] + }, + { + "nodeName": "value1", + "valueType": "long", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "1" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1773.55 896.912" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "58.000000" + } + ] + } + ], + "connections": [ + { + "source": "get_sublayer_display_names.display_names", + "target": "array_size1.array" + }, + { + "source": "get_sublayer_display_names.display_names", + "target": "find_in_array1.input" + }, + { + "source": "array_size.size", + "target": "less.second" + }, + { + "source": "find_in_array.found_index", + "target": "less.first" + }, + { + "source": "find_in_array.found_index", + "target": "if1.true_case" + }, + { + "source": "if1.output", + "target": "if.false_case" + }, + { + "source": "less.output", + "target": "if1.condition" + }, + { + "source": "to_int.int", + "target": "if3.false_case" + }, + { + "source": "get_root_layer.layer", + "target": "get_root_layer_display_name.layer" + }, + { + "source": "get_root_layer.layer", + "target": "get_root_layer_identifier.layer" + }, + { + "source": "get_root_layer_display_name.display_name", + "target": "equal1.first" + }, + { + "source": "equal.output", + "target": "or.first" + }, + { + "source": "if.output", + "target": "to_int.from" + }, + { + "source": "value.output", + "target": "if.true_case" + }, + { + "source": "get_layer_identifier.identifier", + "target": "find_in_array.value" + }, + { + "source": "get_layer_identifier.identifier", + "target": "equal.second" + }, + { + "source": "get_layer_identifier.identifier", + "target": "string_empty.string" + }, + { + "source": "get_sublayer_identifiers.identifiers", + "target": "array_size.array" + }, + { + "source": "get_sublayer_identifiers.identifiers", + "target": "find_in_array.input" + }, + { + "source": "get_root_layer_identifier.identifier", + "target": "equal.first" + }, + { + "source": "equal1.output", + "target": "or.second" + }, + { + "source": "get_layer_display_name.display_name", + "target": "equal1.second" + }, + { + "source": "get_layer_display_name.display_name", + "target": "find_in_array1.value" + }, + { + "source": "or.output", + "target": "if.condition" + }, + { + "source": "array_size1.size", + "target": "less1.second" + }, + { + "source": "find_in_array1.found_index", + "target": "less1.first" + }, + { + "source": "find_in_array1.found_index", + "target": "if2.true_case" + }, + { + "source": "less1.output", + "target": "if2.condition" + }, + { + "source": "if2.output", + "target": "if1.false_case" + }, + { + "source": "string_empty.empty", + "target": "if3.condition" + }, + { + "source": "if3.output", + "target": ".out_layer_index" + }, + { + "source": "value1.output", + "target": "if2.false_case" + }, + { + "source": ".stage", + "target": "get_sublayer_display_names.stage" + }, + { + "source": ".stage", + "target": "get_root_layer.stage" + }, + { + "source": ".stage", + "target": "get_sublayer_identifiers.stage" + }, + { + "source": ".layer_index", + "target": "if3.true_case" + }, + { + "source": ".layer", + "target": "get_layer_identifier.layer" + }, + { + "source": ".layer", + "target": "get_layer_display_name.layer" + } + ], + "values": [ + { + "valueName": "get_sublayer_display_names.stage", + "valueType": "BifrostUsd::Stage", + "value": {} + }, + { + "valueName": "value.value", + "valueType": "long", + "value": "-1" + }, + { + "valueName": "get_sublayer_identifiers.stage", + "valueType": "BifrostUsd::Stage", + "value": {} + }, + { + "valueName": "value1.value", + "valueType": "long", + "value": "-1" + } + ], + "reservedNodeNames": [ + { + "name": "input" + }, + { + "name": "input1" + }, + { + "name": "input2" + }, + { + "name": "output" + } + ] + }, + { + "name": "USD::Layer::resolve_layer_index", + "uriImported": "stream:/bifrostGraphShape1", + "metadata": [ + { + "metaName": "internal", + "metaValue": "true" + }, + { + "metaName": "io_nodes", + "metadata": [ + { + "metaName": "io_inodes", + "metadata": [ + { + "metaName": "input", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "10 58" + }, + { + "metaName": "io_ports", + "metadata": [ + { + "metaName": "stage" + }, + { + "metaName": "layer_index" + }, + { + "metaName": "layer" + } + ] + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "31.000000" + } + ] + } + ] + }, + { + "metaName": "io_onodes", + "metadata": [ + { + "metaName": "output", + "metadata": [ + { + "metaName": "io_ports", + "metadata": [ + { + "metaName": "out_layer_index" + } + ] + }, + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "620 10" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "32.000000" + } + ] + } + ] + } + ] + }, + { + "metaName": "ViewportRect", + "metaType": "string", + "metaValue": "-68.5 -277 994 848" + }, + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "39.000000" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "202.842 -32.3598" + } + ], + "isDefaultOverload": "true", + "ports": [ + { + "portName": "stage", + "portDirection": "input", + "portType": "BifrostUsd::Stage", + "portDefault": {} + }, + { + "portName": "layer_index", + "portDirection": "input", + "portType": "int", + "portDefault": "-1L" + }, + { + "portName": "layer", + "portDirection": "input", + "portType": "BifrostUsd::Layer", + "portDefault": {} + }, + { + "portName": "out_layer_index", + "portDirection": "output", + "portType": "int" + } + ], + "compoundNodes": [ + { + "nodeName": "_resolve_layer_index", + "nodeType": "USD::Layers::_resolve_layer_index", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "40.000000" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "322 19" + } + ] + } + ], + "connections": [ + { + "source": "_resolve_layer_index.out_layer_index", + "target": ".out_layer_index" + }, + { + "source": ".stage", + "target": "_resolve_layer_index.stage" + }, + { + "source": ".layer_index", + "target": "_resolve_layer_index.layer_index" + }, + { + "source": ".layer", + "target": "_resolve_layer_index.layer" + } + ], + "values": [], + "reservedNodeNames": [ + { + "name": "input" + }, + { + "name": "output" + } + ] + }, + { + "name": "USD::Layer::resolve_layer_index", + "uriImported": "stream:/bifrostGraphShape1", + "metadata": [ + { + "metaName": "internal", + "metaValue": "true" + }, + { + "metaName": "io_nodes", + "metadata": [ + { + "metaName": "io_inodes", + "metadata": [ + { + "metaName": "input", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "io_ports", + "metadata": [ + { + "metaName": "stage" + }, + { + "metaName": "layer_index" + }, + { + "metaName": "layer" + } + ] + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "34.000000" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "-147 15" + } + ] + } + ] + }, + { + "metaName": "io_onodes", + "metadata": [ + { + "metaName": "output", + "metadata": [ + { + "metaName": "io_ports", + "metadata": [ + { + "metaName": "out_layer_index" + } + ] + }, + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "620 10" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "32.000000" + } + ] + } + ] + } + ] + }, + { + "metaName": "ViewportRect", + "metaType": "string", + "metaValue": "-120.884 -276.09 1099.9 847.153" + }, + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "202.842 -32.3598" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "40.000000" + } + ], + "ports": [ + { + "portName": "stage", + "portDirection": "input", + "portType": "BifrostUsd::Stage", + "portDefault": {} + }, + { + "portName": "layer_index", + "portDirection": "input", + "portType": "int", + "portDefault": "-1L" + }, + { + "portName": "layer", + "portDirection": "input", + "portType": "string", + "portDefault": "" + }, + { + "portName": "out_layer_index", + "portDirection": "output", + "portType": "int" + } + ], + "compoundNodes": [ + { + "nodeName": "_resolve_layer_index", + "nodeType": "USD::Layers::_resolve_layer_index", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "322 19" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "33.000000" + } + ] + }, + { + "nodeName": "create_usd_layer", + "nodeType": "USD::Layer::create_usd_layer", + "fanInPortNames": { + "sublayers": [] + }, + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "NodeValueDisplay", + "metadata": [ + { + "metaName": "format", + "metaType": "string", + "metaValue": "Create Layer {layer}" + }, + { + "metaName": "show", + "metaType": "string", + "metaValue": "0" + } + ] + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "37.000000" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "93.3111 189.452" + } + ] + } + ], + "connections": [ + { + "source": "_resolve_layer_index.out_layer_index", + "target": ".out_layer_index" + }, + { + "source": ".stage", + "target": "_resolve_layer_index.stage" + }, + { + "source": ".layer_index", + "target": "_resolve_layer_index.layer_index" + }, + { + "source": ".layer", + "target": "create_usd_layer.layer" + }, + { + "source": "create_usd_layer.new_layer", + "target": "_resolve_layer_index.layer" + } + ], + "values": [], + "reservedNodeNames": [ + { + "name": "input" + }, + { + "name": "output" + } + ] + } + ] +} diff --git a/src/nodedefs/header_parser_macros.h b/src/nodedefs/header_parser_macros.h index a2e4a3d3..4b50922d 100644 --- a/src/nodedefs/header_parser_macros.h +++ b/src/nodedefs/header_parser_macros.h @@ -26,7 +26,7 @@ /// \brief Set annotation with node's name, documentation, icon and more. /// -/// Annotate a node definition with its name, tis documentation file name, its +/// Annotate a node definition with its name, its documentation file name, its /// icon file name and any number of extra annotation parameters such as /// Amino::DefaultOverload, Amino::Converter, Amino::Promoter, etc... #define USDNODE_DOC_ICON_X(NAME, DOC_FILENAME, ICON_FILENAME, EXTRA) \ diff --git a/src/nodedefs/logger.cpp b/src/nodedefs/logger.cpp index 4e7f8a9a..a80ba4b1 100644 --- a/src/nodedefs/logger.cpp +++ b/src/nodedefs/logger.cpp @@ -1,5 +1,5 @@ //- -// Copyright 2022 Autodesk, Inc. +// Copyright 2024 Autodesk, Inc. // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -15,7 +15,6 @@ //+ #include "logger.h" -#include #include namespace { @@ -35,21 +34,15 @@ void Logger::setErrorVerboseLevel(int in_errorVerboseLevel) { } void Logger::info(const Amino::String& in_message) const { - auto msg = - Amino::RuntimeMessage(Amino::RuntimeMessageCategory::kInfo, in_message); - m_runtimeServices.logMessage(msg); + m_runtimeServices.logInfo(in_message); } void Logger::warn(const Amino::String& in_message) const { - auto msg = Amino::RuntimeMessage(Amino::RuntimeMessageCategory::kWarning, - in_message); - m_runtimeServices.logMessage(msg); + m_runtimeServices.logWarning(in_message); } void Logger::error(const Amino::String& in_message) const { - auto msg = Amino::RuntimeMessage(Amino::RuntimeMessageCategory::kError, - in_message); - m_runtimeServices.logMessage(msg); + m_runtimeServices.logError(in_message); } void log_exception(const char* func_name, std::exception const& e) { diff --git a/src/nodedefs/usd_layer_nodedefs.cpp b/src/nodedefs/usd_layer_nodedefs.cpp index 17d592d2..1fe093d7 100644 --- a/src/nodedefs/usd_layer_nodedefs.cpp +++ b/src/nodedefs/usd_layer_nodedefs.cpp @@ -204,6 +204,17 @@ void USD::Layer::get_layer_identifier(const BifrostUsd::Layer& layer, } } +void USD::Layer::get_layer_display_name(const BifrostUsd::Layer& layer, + Amino::String& display_name) { + try { + if (layer) { + display_name = layer->GetDisplayName().c_str(); + } + } catch (std::exception& e) { + log_exception("get_layer_display_name", e); + } +} + void USD::Layer::get_layer_file_path(const BifrostUsd::Layer& layer, Amino::String& file) { file = layer.getFilePath().c_str(); diff --git a/src/nodedefs/usd_layer_nodedefs.h b/src/nodedefs/usd_layer_nodedefs.h index 4b242114..04ea6b32 100644 --- a/src/nodedefs/usd_layer_nodedefs.h +++ b/src/nodedefs/usd_layer_nodedefs.h @@ -84,6 +84,11 @@ void get_layer_identifier(const BifrostUsd::Layer& layer, Amino::String& identifier) USDNODE_DOC_ICON("get_layer_identifier", "USD_Layer_get_layer_identifier.md", "usd_layers.svg"); +USD_NODEDEF_DECL +void get_layer_display_name(const BifrostUsd::Layer& layer, + Amino::String& display_name) + USDNODE_DOC_ICON("get_layer_display_name", "USD_Layer_get_layer_display_name.md", "usd_layers.svg"); + USD_NODEDEF_DECL void get_layer_file_path(const BifrostUsd::Layer& layer, Amino::String& file) USDNODE_DOC_ICON("get_layer_file_path", "USD_Layer_get_layer_file_path.md", "usd_layers.svg"); diff --git a/src/nodedefs/usd_stage_nodedefs.cpp b/src/nodedefs/usd_stage_nodedefs.cpp index 70a058e9..549aa1f9 100644 --- a/src/nodedefs/usd_stage_nodedefs.cpp +++ b/src/nodedefs/usd_stage_nodedefs.cpp @@ -17,6 +17,7 @@ #include "usd_stage_nodedefs.h" #include +#include #include #include #include @@ -166,22 +167,48 @@ void USD::Stage::open_stage_from_cache(const Amino::long_t id, assert(stage); } -void USD::Stage::set_edit_layer(BifrostUsd::Stage& stage, - const int layer_index) { +void USD::Stage::set_edit_layer(BifrostUsd::Stage& stage, + const int layer_index, + const Amino::String& layer_display_name) { if (!stage) { return; } try { - // First verify given index. We do nothing if it is invalid: - const PXR_NS::SdfLayerHandle sdfLayer = stage.get().GetRootLayer(); - const int numLayers = static_cast(sdfLayer->GetNumSubLayerPaths()); - if (layer_index >= -1 && layer_index < numLayers) { - // Reverse the given index to match the order of sublayers - // in the Pixar USD Layer: - int reversedIndex = (layer_index == -1) ? -1 : - USDUtils::reversedSublayerIndex(layer_index, numLayers); - stage.setEditLayerIndex(reversedIndex, false); + const PXR_NS::SdfLayerHandle rootLayer = stage.get().GetRootLayer(); + + bool targetIsSet = false; + if (!layer_display_name.empty()) { + const auto subLayerPaths = rootLayer->GetSubLayerPaths(); + for (size_t i = 0; i < subLayerPaths.size(); ++i) { + const auto layer = PXR_NS::SdfLayer::Find(subLayerPaths[i]); + if (layer) { + if (Amino::StringView(layer->GetDisplayName().c_str()) == + layer_display_name) { + stage->SetEditTarget(layer); + targetIsSet = true; + break; + } + } + } } + + // If setting edit layer using the display name did not work, try using + // the index. + if (!targetIsSet) { + // First verify given index. We do nothing if it is invalid: + const int numLayers = + static_cast(rootLayer->GetNumSubLayerPaths()); + if (layer_index >= -1 && layer_index < numLayers) { + // Reverse the given index to match the order of sublayers + // in the Pixar USD Layer: + int reversedIndex = (layer_index == -1) + ? -1 + : USDUtils::reversedSublayerIndex( + layer_index, numLayers); + stage.setEditLayerIndex(reversedIndex, false); + } + } + } catch (std::exception& e) { log_exception("set_edit_layer", e); } diff --git a/src/nodedefs/usd_stage_nodedefs.h b/src/nodedefs/usd_stage_nodedefs.h index 41263bbb..80b84745 100644 --- a/src/nodedefs/usd_stage_nodedefs.h +++ b/src/nodedefs/usd_stage_nodedefs.h @@ -58,7 +58,8 @@ void open_stage_from_cache(const Amino::long_t id AMINO_ANNOTATE("A USD_NODEDEF_DECL void set_edit_layer(BifrostUsd::Stage& stage USDPORT_INOUT("out_stage"), - const int layer_index) + const int layer_index, + const Amino::String& layer_display_name = Amino::String()) USDNODE_DOC_ICON("set_edit_layer", "USD_Stage_set_edit_layer.md", "make_target.svg"); USD_NODEDEF_DECL diff --git a/src/resources/docs/CMakeLists.txt b/src/resources/docs/CMakeLists.txt index 8a34762a..2043a4fd 100644 --- a/src/resources/docs/CMakeLists.txt +++ b/src/resources/docs/CMakeLists.txt @@ -47,6 +47,7 @@ set(doc_files USD_Layer_export_layer_to_file.md USD_Layer_export_layer_to_string.md USD_Layer_get_layer.md + USD_Layer_get_layer_display_name.md USD_Layer_get_layer_file_path.md USD_Layer_get_layer_identifier.md USD_Layer_get_root_layer.md diff --git a/src/resources/docs/USD_Layer_get_layer_display_name.md b/src/resources/docs/USD_Layer_get_layer_display_name.md new file mode 100644 index 00000000..697f4c4b --- /dev/null +++ b/src/resources/docs/USD_Layer_get_layer_display_name.md @@ -0,0 +1,15 @@ +# `get_layer_display_name` + +This node returns the layer's display name. +The display name is the base filename of the identifier. + +## Inputs + +### `layer` +The USD layer. + +## Outputs + +### `display_name` +The display_name of the layer. + diff --git a/src/resources/docs/USD_Stage_add_to_stage.md b/src/resources/docs/USD_Stage_add_to_stage.md index 4ca8420d..9cf7bfc2 100644 --- a/src/resources/docs/USD_Stage_add_to_stage.md +++ b/src/resources/docs/USD_Stage_add_to_stage.md @@ -26,6 +26,12 @@ The path of a prim to which the connected prims are to be added as children. For - If `parent_path` is omitted, the prims are added to the root. - If one or more prims in the full path do not already exist on the stage, "placeholder" prims are automatically added to the hierarchy using the `def` specifier. The specifier of these can be changed downstream in the graph using another `add_to_stage` node. +### `layer` + +The layer to which the prim definitions are to be added. You can use a *BifrostUsd::Layer* or a *string*. +If you connect a *BifrostUsd::Layer* and its layer identifier match one of the sublayer identifiers or the root layer identifier, it will target such layer, else the `layer_index` will be used as a fallback. +If you use a *string*, you can use the layer display name instead of the identifier. If more than one layer in the stage are using such display name, the prims will be added to the layer with the strongest opinion. + ### `layer_index` The index of the layer to which the prim definitions are to be added. Sublayers are indexed consecutively with 0 at the bottom of the stack and each successive layer above the previous. Layer 0 holds the weakest opinions, which is the opposite of how sublayers are ordered when using the USD Python or C++ API. The default of -1 refers to the root layer. The default of -1 refers to the root layer. If you specify an index that does not exist, layer -1 is used. diff --git a/src/resources/docs/USD_Stage_set_edit_layer.md b/src/resources/docs/USD_Stage_set_edit_layer.md index 97c58584..af5b0af0 100644 --- a/src/resources/docs/USD_Stage_set_edit_layer.md +++ b/src/resources/docs/USD_Stage_set_edit_layer.md @@ -11,4 +11,11 @@ The stage in which to set the edit layer. The sublayer index to set as the stage's EditTarget. The last element in the list of sublayers is the strongest of the sublayers in the Pixar USD root layer. The index -1 identifies the root layer. If the index is not -1 and does not identify an existing sublayer, this node does nothing and the current stage's EditTarget is preserved. +### `layer_display_name` +Set the stage's EditTarget using the display name of the layer. The display name is the base filename of the identifier. +Note that the layer identifier can not be used as it can change at every execution of the graph when such layer is an anonymous layer (like a new layer created by Bifrost USD). On the other hand, the display name of an anonymous layer won't change per execution. However, if several layers are using the same display name (for example if there is a "look.usd" sublayer from directory "A" and an other "look.usd" sublayer in directory "B"), then the layer on top of the other one with same display name will be targeted. In such scenario the `layer_index` should be used instead to remove any ambiguity on which layer you want to target. + ## Outputs + +### `out_stage` +The modified USD stage. \ No newline at end of file diff --git a/src/watchpoints/usd_watchpoint.cpp b/src/watchpoints/usd_watchpoint.cpp index 0110748e..45da3702 100644 --- a/src/watchpoints/usd_watchpoint.cpp +++ b/src/watchpoints/usd_watchpoint.cpp @@ -1,5 +1,5 @@ //- -// Copyright 2023 Autodesk, Inc. +// Copyright 2024 Autodesk, Inc. // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -55,6 +55,7 @@ BIFUSD_WARNING_DISABLE_MSC(4244) BIFUSD_WARNING_POP using CallBackFunc = BifrostGraph::Executor::Watchpoint::CallBack; +using Watcher = BifrostGraph::Executor::Watchpoint::Watcher; using Records = BifrostGraph::Executor::Watchpoint::Records; namespace { @@ -481,6 +482,14 @@ class USDWatchpoint : public BifrostGraph::Executor::Watchpoint { void deleteThis() noexcept override; + void getSupportedTypeIds(TypeIdArray& typeIds) const noexcept override; + + CallBackFunc getCallBackFunction( + const Amino::TypeId& typeId) const noexcept override; + + Watcher* createWatcher(Amino::TypeId const& typeId, + Watcher::Flags flags) const noexcept override; + void getSupportedTypeNames(StringArray& out_names) const noexcept override; CallBackFunc getCallBackFunction( @@ -511,6 +520,23 @@ USDWatchpoint::~USDWatchpoint() noexcept = default; void USDWatchpoint::deleteThis() noexcept { delete this; } +void USDWatchpoint::getSupportedTypeIds( + TypeIdArray& /*typeIds*/) const noexcept { + // TODO - replaces getSupportedTypeNames +} + +CallBackFunc USDWatchpoint::getCallBackFunction( + const Amino::TypeId& /*typeId*/) const noexcept { + // TODO - replaces getCallBackFunction(Type) + return nullptr; +} + +Watcher* USDWatchpoint::createWatcher(Amino::TypeId const& /*typeId*/, + Watcher::Flags /*flags*/) const noexcept { + // TODO - replaces createClientData/releaseClientData + return nullptr; +} + void USDWatchpoint::getSupportedTypeNames( StringArray& out_names) const noexcept { out_names.push_back(kUsdLayerName); diff --git a/test/BifrostUsd/CMakeLists.txt b/test/BifrostUsd/CMakeLists.txt index 16e9b053..67135f3d 100644 --- a/test/BifrostUsd/CMakeLists.txt +++ b/test/BifrostUsd/CMakeLists.txt @@ -1,6 +1,6 @@ #- #***************************************************************************** -# Copyright 2022 Autodesk, Inc. +# Copyright 2024 Autodesk, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -45,5 +45,6 @@ foreach(test_file ${test_files}) ENV_VARS USD_TEST_RESOURCES_DIR=${resources_dir} PXR_AR_DEFAULT_SEARCH_PATH=${resources_dir} USD_TEST_OUTPUT_DIR=${CMAKE_CURRENT_BINARY_DIR} + ${asan_options} ) endforeach() diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index ecc279e6..c1c25fda 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -1,6 +1,6 @@ #- #***************************************************************************** -# Copyright 2022 Autodesk, Inc. +# Copyright 2024 Autodesk, Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -27,5 +27,15 @@ if(NOT DEFINED BIFUSD_BIFCMD_LOCATION) set(BIFUSD_BIFCMD_LOCATION "${BIFROST_LOCATION}/bin") endif() +# The google tests are causing some issues with Clang address sanitizer when linking with USD libraries. +# The sanitizer will detect some container overflows in USD libs just be creating +# an executable with the following empty google test "TEST(TEST_EMPTY, empty_test) {}"! +# +# See this ticket related to sanitizer errors in OpenUSD: +# https://github.com/PixarAnimationStudios/OpenUSD/issues/3088 +if (NOT BIFUSD_ENABLE_ADDRESS_SANITIZER) + set(asan_options ASAN_OPTIONS=detect_container_overflow=0) +endif() + add_subdirectory(BifrostUsd) add_subdirectory(nodedefs) diff --git a/test/compounds/layer/resolve_layer_index_test00.json b/test/compounds/layer/resolve_layer_index_test00.json new file mode 100644 index 00000000..35107076 --- /dev/null +++ b/test/compounds/layer/resolve_layer_index_test00.json @@ -0,0 +1,1565 @@ +{ + "header": { + "metadata": [ + { + "metaName": "adskFileFormatVersion", + "metaValue": "100L" + } + ] + }, + "namespaces": [], + "types": [], + "compounds": [ + { + "name": "USD::Test::Layer::resolve_layer_index_test_00", + "uriImported": "stream:/stream", + "metadata": [ + { + "metaName": "io_nodes", + "metadata": [ + { + "metaName": "io_inodes" + }, + { + "metaName": "io_onodes", + "metadata": [ + { + "metaName": "output", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "1" + }, + { + "metaName": "io_ports", + "metadata": [ + { + "metaName": "test_info" + }, + { + "metaName": "failure_msgs" + } + ] + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "88.000000" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "3567.6 -907.138" + } + ] + } + ] + } + ] + }, + { + "metaName": "backdrop", + "metadata": [ + { + "metaName": "type", + "metaType": "string", + "metaValue": "backdrop" + }, + { + "metaName": "color", + "metaType": "string", + "metaValue": "#28da9652" + }, + { + "metaName": "coords", + "metaType": "string", + "metaValue": "1596.65 -2146.5 691.613 511.157" + }, + { + "metaName": "title", + "metaType": "string", + "metaValue": "Invalid Layer" + } + ] + }, + { + "metaName": "backdrop1", + "metadata": [ + { + "metaName": "type", + "metaType": "string", + "metaValue": "backdrop" + }, + { + "metaName": "title", + "metaType": "string", + "metaValue": "Empty String" + }, + { + "metaName": "color", + "metaType": "string", + "metaValue": "#28da9652" + }, + { + "metaName": "coords", + "metaType": "string", + "metaValue": "1600.28 -1604.56 683.184 511.157" + } + ] + }, + { + "metaName": "backdrop2", + "metadata": [ + { + "metaName": "type", + "metaType": "string", + "metaValue": "backdrop" + }, + { + "metaName": "color", + "metaType": "string", + "metaValue": "#28da9652" + }, + { + "metaName": "title", + "metaType": "string", + "metaValue": "Invalid String" + }, + { + "metaName": "coords", + "metaType": "string", + "metaValue": "1321.25 -1079.87 981.582 511.157" + } + ] + }, + { + "metaName": "backdrop3", + "metadata": [ + { + "metaName": "type", + "metaType": "string", + "metaValue": "backdrop" + }, + { + "metaName": "color", + "metaType": "string", + "metaValue": "#28da9652" + }, + { + "metaName": "coords", + "metaType": "string", + "metaValue": "1335.07 -511.424 691.613 511.157" + }, + { + "metaName": "title", + "metaType": "string", + "metaValue": "Layer 0" + } + ] + }, + { + "metaName": "backdrop4", + "metadata": [ + { + "metaName": "type", + "metaType": "string", + "metaValue": "backdrop" + }, + { + "metaName": "color", + "metaType": "string", + "metaValue": "#28da9652" + }, + { + "metaName": "title", + "metaType": "string", + "metaValue": "Layer 1" + }, + { + "metaName": "coords", + "metaType": "string", + "metaValue": "1336.56 24.5937 691.613 511.157" + } + ] + }, + { + "metaName": "_recentNode_", + "metaType": "string", + "metaValue": "BifrostGraph,Wedging,wedge_parameter" + }, + { + "metaName": "_recentNode_", + "metaType": "string", + "metaValue": "BifrostGraph,USD::Stage,create_usd_stage" + }, + { + "metaName": "_recentNode_", + "metaType": "string", + "metaValue": "BifrostGraph,Core::Compound_Tests,expect_equal" + }, + { + "metaName": "_recentNode_", + "metaType": "string", + "metaValue": "BifrostGraph,Core::Logic,equal" + }, + { + "metaName": "_recentNode_", + "metaType": "string", + "metaValue": "BifrostGraph,Core::Logic,not_equal" + }, + { + "metaName": "backdrop5", + "metadata": [ + { + "metaName": "type", + "metaType": "string", + "metaValue": "backdrop" + }, + { + "metaName": "color", + "metaType": "string", + "metaValue": "#28da9652" + }, + { + "metaName": "title", + "metaType": "string", + "metaValue": "Layer Display Name 0" + }, + { + "metaName": "coords", + "metaType": "string", + "metaValue": "968.608 624.529 1058.12 511.157" + } + ] + }, + { + "metaName": "backdrop6", + "metadata": [ + { + "metaName": "type", + "metaType": "string", + "metaValue": "backdrop" + }, + { + "metaName": "color", + "metaType": "string", + "metaValue": "#28da9652" + }, + { + "metaName": "title", + "metaType": "string", + "metaValue": "Layer Display Name 1" + }, + { + "metaName": "coords", + "metaType": "string", + "metaValue": "991.346 1165.85 1042.19 511.157" + } + ] + }, + { + "metaName": "backdrop7", + "metadata": [ + { + "metaName": "type", + "metaType": "string", + "metaValue": "backdrop" + }, + { + "metaName": "color", + "metaType": "string", + "metaValue": "#28da9652" + }, + { + "metaName": "coords", + "metaType": "string", + "metaValue": "1001.73 1731.89 1042.19 511.157" + }, + { + "metaName": "title", + "metaType": "string", + "metaValue": "Layer Display Name does not exist" + } + ] + }, + { + "metaName": "ViewportRect", + "metaType": "string", + "metaValue": "-226.517 -2862.02 4573.96 4473.72" + }, + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "15.8463 329.296" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "70.000000" + } + ], + "terminalStates": [ + { + "name": "Core::Graph::terminal::diagnostic", + "enabled": "true" + }, + { + "name": "Core::Graph::terminal::proxy", + "enabled": "true" + }, + { + "name": "Core::Graph::terminal::final", + "enabled": "true" + } + ], + "ports": [ + { + "portName": "test_info", + "portDirection": "output", + "portType": "string" + }, + { + "portName": "failure_msgs", + "portDirection": "output", + "portType": "array" + } + ], + "compoundNodes": [ + { + "nodeName": "test_info", + "valueType": "string", + "metadata": [ + { + "metaName": "valuenode_defaultvalue", + "metaType": "string", + "metaValue": "Test description goes here" + }, + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "1" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "89.000000" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "3224.81 -1047.89" + } + ] + }, + { + "nodeName": "build_array", + "nodeType": "Core::Array::build_array", + "multiInPortNames": [ + "result", + "result1", + "result2" + ], + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "2468.06 -1493.22" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "41.000000" + } + ] + }, + { + "nodeName": "resolve_layer_index", + "nodeType": "USD::Layer::resolve_layer_index", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1620 -2061" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "42.000000" + } + ] + }, + { + "nodeName": "expect_equal", + "nodeType": "Core::Compound_Tests::expect_equal", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1961.74 -1979.31" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "43.000000" + } + ] + }, + { + "nodeName": "value", + "valueType": "int", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "1" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1612 -1820" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "32.000000" + } + ] + }, + { + "nodeName": "expect_equal1", + "nodeType": "Core::Compound_Tests::expect_equal", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1971 -1447" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "34.000000" + } + ] + }, + { + "nodeName": "resolve_layer_index1", + "nodeType": "USD::Layer::resolve_layer_index", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1625 -1526" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "31.000000" + } + ] + }, + { + "nodeName": "value1", + "valueType": "int", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "1" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1619 -1259" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "33.000000" + } + ] + }, + { + "nodeName": "resolve_layer_index2", + "nodeType": "USD::Layer::resolve_layer_index", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1645.04 -1002.76" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "37.000000" + } + ] + }, + { + "nodeName": "expect_equal2", + "nodeType": "Core::Compound_Tests::expect_equal", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1990.04 -923.757" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "36.000000" + } + ] + }, + { + "nodeName": "value2", + "valueType": "int", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "1" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1638.04 -736.757" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "35.000000" + } + ] + }, + { + "nodeName": "value3", + "valueType": "string", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "1" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1349.73 -871.621" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "40.000000" + } + ] + }, + { + "nodeName": "create_usd_stage", + "nodeType": "USD::Stage::create_usd_stage", + "fanInPortNames": { + "sublayers": [ + "new_layer", + "new_layer1" + ] + }, + "metadata": [ + { + "metaName": "PortExpandedState", + "metadata": [ + { + "metaName": "sublayers", + "metaType": "string", + "metaValue": "1" + } + ] + }, + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "1" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "95.000000" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "674.288 -815.239" + } + ] + }, + { + "nodeName": "create_usd_layer", + "nodeType": "USD::Layer::create_usd_layer", + "fanInPortNames": { + "sublayers": [] + }, + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "1" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "94.000000" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "221.458 -390.401" + } + ] + }, + { + "nodeName": "create_usd_layer1", + "nodeType": "USD::Layer::create_usd_layer", + "fanInPortNames": { + "sublayers": [] + }, + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "1" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "93.000000" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "234.632 40.1487" + } + ] + }, + { + "nodeName": "build_array1", + "nodeType": "Core::Array::build_array", + "multiInPortNames": [ + "array2", + "result", + "result1", + "array1" + ], + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "87.000000" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "3083.7 -814.544" + } + ] + }, + { + "nodeName": "resolve_layer_index3", + "nodeType": "USD::Layer::resolve_layer_index", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1382.64 -421.079" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "44.000000" + } + ] + }, + { + "nodeName": "value4", + "valueType": "int", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "1" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1350.42 -184.924" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "47.000000" + } + ] + }, + { + "nodeName": "expect_equal3", + "nodeType": "Core::Compound_Tests::expect_equal", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1709.84 -353.924" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "48.000000" + } + ] + }, + { + "nodeName": "resolve_layer_index4", + "nodeType": "USD::Layer::resolve_layer_index", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "62.000000" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1381.47 93.6706" + } + ] + }, + { + "nodeName": "expect_equal4", + "nodeType": "Core::Compound_Tests::expect_equal", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "52.000000" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1711.33 182.094" + } + ] + }, + { + "nodeName": "value5", + "valueType": "int", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "1" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "53.000000" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1390.67 353.516" + } + ] + }, + { + "nodeName": "build_array2", + "nodeType": "Core::Array::build_array", + "multiInPortNames": [ + "result", + "result1", + "result2" + ], + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "58.000000" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "2291.95 857.863" + } + ] + }, + { + "nodeName": "expect_equal5", + "nodeType": "Core::Compound_Tests::expect_equal", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "57.000000" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1709.89 782.029" + } + ] + }, + { + "nodeName": "resolve_layer_index5", + "nodeType": "USD::Layer::resolve_layer_index", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "55.000000" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1382.69 714.874" + } + ] + }, + { + "nodeName": "resolve_layer_index6", + "nodeType": "USD::Layer::resolve_layer_index", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "59.000000" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1389.49 1256.2" + } + ] + }, + { + "nodeName": "value6", + "valueType": "int", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "1" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "56.000000" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1350.47 951.029" + } + ] + }, + { + "nodeName": "expect_equal6", + "nodeType": "Core::Compound_Tests::expect_equal", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "60.000000" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1716.69 1323.35" + } + ] + }, + { + "nodeName": "value7", + "valueType": "int", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "1" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "70.000000" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1396.03 1494.77" + } + ] + }, + { + "nodeName": "value8", + "valueType": "string", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "1" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "80.000000" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "998.087 708.546" + } + ] + }, + { + "nodeName": "value9", + "valueType": "string", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "1" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "75.000000" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1047.03 1320.55" + } + ] + }, + { + "nodeName": "value10", + "valueType": "int", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "1" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1406.42 2060.8" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "83.000000" + } + ] + }, + { + "nodeName": "expect_equal7", + "nodeType": "Core::Compound_Tests::expect_equal", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1727.08 1889.38" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "84.000000" + } + ] + }, + { + "nodeName": "resolve_layer_index7", + "nodeType": "USD::Layer::resolve_layer_index", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "2" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "76.000000" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1399.88 1822.24" + } + ] + }, + { + "nodeName": "value11", + "valueType": "string", + "metadata": [ + { + "metaName": "DisplayMode", + "metaType": "string", + "metaValue": "1" + }, + { + "metaName": "LayoutPos", + "metaType": "string", + "metaValue": "1057.42 1886.59" + }, + { + "metaName": "zValue", + "metaType": "string", + "metaValue": "81.000000" + } + ] + } + ], + "connections": [ + { + "source": "test_info.output", + "target": ".test_info" + }, + { + "source": "resolve_layer_index.out_layer_index", + "target": "expect_equal.first" + }, + { + "source": "value.output", + "target": "expect_equal.second" + }, + { + "source": "expect_equal.result", + "target": "build_array.first.result" + }, + { + "source": "resolve_layer_index1.out_layer_index", + "target": "expect_equal1.first" + }, + { + "source": "value1.output", + "target": "expect_equal1.second" + }, + { + "source": "expect_equal1.result", + "target": "build_array.first.result1" + }, + { + "source": "resolve_layer_index2.out_layer_index", + "target": "expect_equal2.first" + }, + { + "source": "value2.output", + "target": "expect_equal2.second" + }, + { + "source": "expect_equal2.result", + "target": "build_array.first.result2" + }, + { + "source": "value3.output", + "target": "resolve_layer_index2.layer" + }, + { + "source": "create_usd_layer.new_layer", + "target": "create_usd_stage.sublayers.new_layer" + }, + { + "source": "create_usd_layer1.new_layer", + "target": "create_usd_stage.sublayers.new_layer1" + }, + { + "source": "create_usd_stage.stage", + "target": "resolve_layer_index.stage" + }, + { + "source": "create_usd_stage.stage", + "target": "resolve_layer_index1.stage" + }, + { + "source": "create_usd_stage.stage", + "target": "resolve_layer_index2.stage" + }, + { + "source": "resolve_layer_index3.out_layer_index", + "target": "expect_equal3.first" + }, + { + "source": "value4.output", + "target": "expect_equal3.second" + }, + { + "source": "create_usd_stage.stage", + "target": "resolve_layer_index3.stage" + }, + { + "source": "build_array1.array", + "target": ".failure_msgs" + }, + { + "source": "create_usd_layer.new_layer", + "target": "resolve_layer_index3.layer" + }, + { + "source": "resolve_layer_index4.out_layer_index", + "target": "expect_equal4.first" + }, + { + "source": "value5.output", + "target": "expect_equal4.second" + }, + { + "source": "create_usd_stage.stage", + "target": "resolve_layer_index4.stage" + }, + { + "source": "create_usd_layer1.new_layer", + "target": "resolve_layer_index4.layer" + }, + { + "source": "expect_equal5.result", + "target": "build_array2.first.result" + }, + { + "source": "resolve_layer_index5.out_layer_index", + "target": "expect_equal5.first" + }, + { + "source": "resolve_layer_index6.out_layer_index", + "target": "expect_equal6.first" + }, + { + "source": "value6.output", + "target": "expect_equal5.second" + }, + { + "source": "expect_equal6.result", + "target": "build_array2.first.result1" + }, + { + "source": "value7.output", + "target": "expect_equal6.second" + }, + { + "source": "create_usd_stage.stage", + "target": "resolve_layer_index5.stage" + }, + { + "source": "create_usd_stage.stage", + "target": "resolve_layer_index6.stage" + }, + { + "source": "value8.output", + "target": "resolve_layer_index5.layer" + }, + { + "source": "value9.output", + "target": "resolve_layer_index6.layer" + }, + { + "source": "value10.output", + "target": "expect_equal7.second" + }, + { + "source": "resolve_layer_index7.out_layer_index", + "target": "expect_equal7.first" + }, + { + "source": "value11.output", + "target": "resolve_layer_index7.layer" + }, + { + "source": "create_usd_stage.stage", + "target": "resolve_layer_index7.stage" + }, + { + "source": "expect_equal7.result", + "target": "build_array2.first.result2" + }, + { + "source": "build_array.array", + "target": "build_array1.first.array2" + }, + { + "source": "expect_equal3.result", + "target": "build_array1.first.result" + }, + { + "source": "expect_equal4.result", + "target": "build_array1.first.result1" + }, + { + "source": "build_array2.array", + "target": "build_array1.first.array1" + } + ], + "values": [ + { + "valueName": "test_info.value", + "valueType": "string", + "value": "Test resolve_layer_index compound" + }, + { + "valueName": "resolve_layer_index.stage", + "valueType": "BifrostUsd::Stage", + "value": {} + }, + { + "valueName": "resolve_layer_index.layer_index", + "valueType": "int", + "value": "-1L" + }, + { + "valueName": "expect_equal.second", + "valueType": "int", + "value": "-1L" + }, + { + "valueName": "expect_equal.msg_if_failed", + "valueType": "string", + "value": "layer index is not equal to -1" + }, + { + "valueName": "value.value", + "valueType": "int", + "value": "-1L" + }, + { + "valueName": "expect_equal1.second", + "valueType": "int", + "value": "-1L" + }, + { + "valueName": "expect_equal1.msg_if_failed", + "valueType": "string", + "value": "layer index is not equal to -1" + }, + { + "valueName": "resolve_layer_index1.stage", + "valueType": "BifrostUsd::Stage", + "value": {} + }, + { + "valueName": "resolve_layer_index1.layer_index", + "valueType": "int", + "value": "-1L" + }, + { + "valueName": "resolve_layer_index1.layer", + "valueType": "string", + "value": "" + }, + { + "valueName": "value1.value", + "valueType": "int", + "value": "-1L" + }, + { + "valueName": "resolve_layer_index2.stage", + "valueType": "BifrostUsd::Stage", + "value": {} + }, + { + "valueName": "resolve_layer_index2.layer_index", + "valueType": "int", + "value": "-1L" + }, + { + "valueName": "resolve_layer_index2.layer", + "valueType": "string", + "value": "" + }, + { + "valueName": "expect_equal2.second", + "valueType": "int", + "value": "-1L" + }, + { + "valueName": "expect_equal2.msg_if_failed", + "valueType": "string", + "value": "layer index is not equal to -1" + }, + { + "valueName": "value2.value", + "valueType": "int", + "value": "-1L" + }, + { + "valueName": "value3.value", + "valueType": "string", + "value": "does_not_exist.usd" + }, + { + "valueName": "create_usd_stage.layer", + "valueType": "string", + "value": "root.usd" + }, + { + "valueName": "create_usd_layer.layer", + "valueType": "string", + "value": "s0.usd" + }, + { + "valueName": "create_usd_layer1.layer", + "valueType": "string", + "value": "s1.usd" + }, + { + "valueName": "create_usd_layer1.file_format", + "valueType": "string", + "value": "Binary" + }, + { + "valueName": "create_usd_layer1.sublayers", + "valueType": "array", + "value": [] + }, + { + "valueName": "resolve_layer_index3.stage", + "valueType": "BifrostUsd::Stage", + "value": {} + }, + { + "valueName": "resolve_layer_index3.layer_index", + "valueType": "int", + "value": "-1L" + }, + { + "valueName": "value4.value", + "valueType": "int", + "value": "0L" + }, + { + "valueName": "expect_equal3.second", + "valueType": "int", + "value": "-1L" + }, + { + "valueName": "expect_equal3.msg_if_failed", + "valueType": "string", + "value": "layer index is not equal to 0" + }, + { + "valueName": "resolve_layer_index4.stage", + "valueType": "BifrostUsd::Stage", + "value": {} + }, + { + "valueName": "resolve_layer_index4.layer_index", + "valueType": "int", + "value": "-1L" + }, + { + "valueName": "expect_equal4.second", + "valueType": "int", + "value": "-1L" + }, + { + "valueName": "expect_equal4.msg_if_failed", + "valueType": "string", + "value": "layer index is not equal to 1" + }, + { + "valueName": "value5.value", + "valueType": "int", + "value": "1L" + }, + { + "valueName": "expect_equal5.second", + "valueType": "int", + "value": "-1L" + }, + { + "valueName": "expect_equal5.msg_if_failed", + "valueType": "string", + "value": "layer index is not equal to 0" + }, + { + "valueName": "resolve_layer_index5.stage", + "valueType": "BifrostUsd::Stage", + "value": {} + }, + { + "valueName": "resolve_layer_index5.layer_index", + "valueType": "int", + "value": "-1L" + }, + { + "valueName": "resolve_layer_index5.layer", + "valueType": "string", + "value": "" + }, + { + "valueName": "resolve_layer_index6.stage", + "valueType": "BifrostUsd::Stage", + "value": {} + }, + { + "valueName": "resolve_layer_index6.layer_index", + "valueType": "int", + "value": "-1L" + }, + { + "valueName": "value6.value", + "valueType": "int", + "value": "0L" + }, + { + "valueName": "expect_equal6.second", + "valueType": "int", + "value": "-1L" + }, + { + "valueName": "expect_equal6.msg_if_failed", + "valueType": "string", + "value": "layer index is not equal to 1" + }, + { + "valueName": "value7.value", + "valueType": "int", + "value": "1L" + }, + { + "valueName": "value8.value", + "valueType": "string", + "value": "s0.usd" + }, + { + "valueName": "value9.value", + "valueType": "string", + "value": "s1.usd" + }, + { + "valueName": "value10.value", + "valueType": "int", + "value": "-1L" + }, + { + "valueName": "expect_equal7.second", + "valueType": "int", + "value": "-1L" + }, + { + "valueName": "expect_equal7.msg_if_failed", + "valueType": "string", + "value": "layer index is not equal to -1" + }, + { + "valueName": "resolve_layer_index7.stage", + "valueType": "BifrostUsd::Stage", + "value": {} + }, + { + "valueName": "resolve_layer_index7.layer_index", + "valueType": "int", + "value": "-1L" + }, + { + "valueName": "value11.value", + "valueType": "string", + "value": "DOES_NOT_EXIST.usd" + } + ], + "reservedNodeNames": [ + { + "name": "output" + } + ] + } + ] +} diff --git a/test/nodedefs/CMakeLists.txt b/test/nodedefs/CMakeLists.txt index 68e304cb..77edd7ad 100644 --- a/test/nodedefs/CMakeLists.txt +++ b/test/nodedefs/CMakeLists.txt @@ -53,6 +53,7 @@ function(configure_bifusd_nodedefs_unittests) ENV_VARS USD_TEST_RESOURCES_DIR=${resources_dir} PXR_AR_DEFAULT_SEARCH_PATH=${resources_dir} USD_TEST_OUTPUT_DIR=${CMAKE_CURRENT_BINARY_DIR} + ${asan_options} ) endforeach() @@ -102,8 +103,14 @@ function(configure_bifusd_runtime_unittests) endforeach() endfunction() -if( NOT BIFUSD_IS_DEBUG ) +# Bifrost USD maps coverage to BIFUSD_IS_RELEASE but +# we may be asked to run Coverage from other tool chains. +# We found that the python test test_graphs.py hangs in that case. +bifusd_set_if_matches(coverage_demanded CMAKE_BUILD_TYPE "^(Coverage)$") + +if( NOT BIFUSD_IS_DEBUG AND NOT coverage_demanded ) # Testing graphs in DEBUG with bifcmd in release will fail. + # When Coverage is demanded, the test hangs # See BIFROST-8039 configure_bifusd_runtime_unittests() endif() diff --git a/test/nodedefs/testLayerNodeDefs.cpp b/test/nodedefs/testLayerNodeDefs.cpp index 08e73dd4..9f8a47e7 100644 --- a/test/nodedefs/testLayerNodeDefs.cpp +++ b/test/nodedefs/testLayerNodeDefs.cpp @@ -274,6 +274,15 @@ TEST(LayerNodeDefs, get_layer_identifier) { ASSERT_LT(identifier.find("my_layer.usd"), identifier.length()); } +TEST(LayerNodeDefs, get_layer_display_name) { + auto layerTag = Amino::String("my_layer.usd"); + auto layer = BifrostUsd::Layer(layerTag); + + Amino::String display_name = ""; + USD::Layer::get_layer_display_name(layer, display_name); + ASSERT_EQ(display_name, layerTag); +} + TEST(LayerNodeDefs, export_layer_to_string) { const char* helloworldContent = R"usda(#usda 1.0 diff --git a/test/nodedefs/testStageNodeDefs.cpp b/test/nodedefs/testStageNodeDefs.cpp index 958025dd..0fb92faf 100644 --- a/test/nodedefs/testStageNodeDefs.cpp +++ b/test/nodedefs/testStageNodeDefs.cpp @@ -58,7 +58,7 @@ TEST(StageNodeDefs, set_edit_layer) { // Case 1: test with no sublayers { - std::string title("\t Case 1: Test when root has no sublayers - "); + std::string title("\t Case 1a: Test when root has no sublayers with layer_index - "); // Open an SdfLayer with no sublayer in it: PXR_NS::SdfLayerRefPtr sdfRootLayer = PXR_NS::SdfLayer::FindOrOpen(rootName.c_str()); @@ -96,6 +96,26 @@ TEST(StageNodeDefs, set_edit_layer) { << "After an attempt to change the edit layer to index=" << i << ", the BifrostUsd::Stage's EditLayerIndex was expected to remain -1\n"; } + + title = "\t Case 1b: Test when root has no sublayers with layer_display_name - "; + // Try changing edit layer using a display name that cannot be found + Amino::String unExpectedDisplayName = "ThisDisplayNameDoesNotExist.usd"; + USD::Stage::set_edit_layer(stage, -1, unExpectedDisplayName); + // Check current edit layer on BifrostUsd::Stage + EXPECT_EQ(stage.getEditLayerIndex(), -1) + << title + << "After an attempt to change the edit layer using display name'" << unExpectedDisplayName.c_str() + << "', the BifrostUsd::Stage's EditLayerIndex was expected to remain -1\n"; + + title = "\t Case 1c: Test when root has no sublayers with valid layer_display_name - "; + // Try changing edit layer using a display name that cannot be found + USD::Stage::set_edit_layer(stage, -1, rootName); + // Check current edit layer on BifrostUsd::Stage + EXPECT_EQ(stage.getEditLayerIndex(), -1) + << title + << "After an attempt to change the edit layer using display name'" << rootName.c_str() + << "', the BifrostUsd::Stage's EditLayerIndex was expected to remain -1\n"; + } } @@ -187,6 +207,39 @@ TEST(StageNodeDefs, set_edit_layer) { << lastReversedEditIndex << "\n"; } } + + // Case 4: test with multiple sublayers and a non empty layer display name: + if(layer && stage) { + std::string title("\t Case 4: Test with the layer display name - "); + + Amino::String expectedDisplayName = "Mushroom1.usd"; + USD::Stage::set_edit_layer(stage, 0, expectedDisplayName); + + // Check current edit layer through Pixar interface + std::string displayName = stage.get().GetEditTarget().GetLayer()->GetDisplayName(); + + // Mushroom1.usd should be at index 0 + EXPECT_EQ(stage.getEditLayerIndex(), 0); + EXPECT_EQ(displayName, std::string(expectedDisplayName.c_str())) + << title + << "After an attempt to change the edit layer using the display name '" << displayName + << "', the USD::Stage's EditTarget now has a layer display name `" << displayName + << "` but we expect it to be `" << expectedDisplayName.c_str() << "`\n"; + + Amino::String unExpectedDisplayName = "ThisDisplayNameDoesNotExist.usd"; + USD::Stage::set_edit_layer(stage, -1, unExpectedDisplayName); + // Check current edit layer through Pixar interface + // Since the display name is not valid, it should use the layer index + EXPECT_EQ(stage.getEditLayerIndex(), -1); + + displayName = stage.get().GetEditTarget().GetLayer()->GetDisplayName(); + title = "\t Case 4: Test with multiple sublayers and an non existing layer display name - "; + EXPECT_NE(displayName, std::string(unExpectedDisplayName.c_str())) + << title + << "After an attempt to change the edit layer using the display name '" << unExpectedDisplayName.c_str() + << "', the USD::Stage's EditTarget now has a layer display name `" << displayName + << "` but we expect it to be `" << expectedDisplayName.c_str() << "`\n"; + } } } diff --git a/test/nodedefs/test_graphs.py b/test/nodedefs/test_graphs.py index 8fef4425..ddc863d1 100644 --- a/test/nodedefs/test_graphs.py +++ b/test/nodedefs/test_graphs.py @@ -354,6 +354,7 @@ def test_multipleTaskDescriptions(self): # Layer Tests "tasks_create_empty_layer.json", "tasks_export_layer_to_file.json", + "tasks_resolve_layer_index.json", # Prim Tests "tasks_create_prim_hierarchy.json", "tasks_create_geom_subset.json", diff --git a/test/taskDescriptions/tasks_resolve_layer_index.json b/test/taskDescriptions/tasks_resolve_layer_index.json new file mode 100644 index 00000000..d10e1013 --- /dev/null +++ b/test/taskDescriptions/tasks_resolve_layer_index.json @@ -0,0 +1,14 @@ +{ + "schemaVersion": "1.0.0", + "comment": "Test resolve_layer_index compound", + "options": { + "definitionFiles": [ + "resolve_layer_index_test00.json" + ], + "compound": "USD::Test::Layer::resolve_layer_index_test_00" + }, + "task": { + "type": "single", + "name": "Use Default Params" + } +}