From 49f568a7a8cece517eaea37098f714290bddd57d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rob=20Piek=C3=A9?= Date: Wed, 11 Sep 2024 10:26:02 +0100 Subject: [PATCH] Restore original function as well, since the RenderMan plugin uses that API --- pxr/imaging/hd/materialSchema.cpp | 14 ++++++++++++++ pxr/imaging/hd/materialSchema.h | 3 +++ 2 files changed, 17 insertions(+) diff --git a/pxr/imaging/hd/materialSchema.cpp b/pxr/imaging/hd/materialSchema.cpp index 589047ef37..00ea6928d1 100644 --- a/pxr/imaging/hd/materialSchema.cpp +++ b/pxr/imaging/hd/materialSchema.cpp @@ -40,6 +40,20 @@ HdMaterialSchema::GetMaterialNetwork() HdMaterialSchemaTokens->universalRenderContext)); } +HdMaterialNetworkSchema +HdMaterialSchema::GetMaterialNetwork(TfToken const &context) +{ + if (auto b = _GetTypedDataSource(context)) { + return HdMaterialNetworkSchema(b); + } + + // If we can't find the context-specific binding, return the fallback. + return + HdMaterialNetworkSchema( + _GetTypedDataSource( + HdMaterialSchemaTokens->universalRenderContext)); +} + HdMaterialNetworkSchema HdMaterialSchema::GetMaterialNetwork(TfTokenVector const &contexts) { diff --git a/pxr/imaging/hd/materialSchema.h b/pxr/imaging/hd/materialSchema.h index 3b07607ef9..a7d05e9d1d 100644 --- a/pxr/imaging/hd/materialSchema.h +++ b/pxr/imaging/hd/materialSchema.h @@ -68,6 +68,9 @@ class HdMaterialSchema : public HdSchema HD_API HdMaterialNetworkSchema GetMaterialNetwork(); + HD_API + HdMaterialNetworkSchema GetMaterialNetwork(TfToken const &context); + HD_API HdMaterialNetworkSchema GetMaterialNetwork(TfTokenVector const &contexts);