File tree Expand file tree Collapse file tree 1 file changed +9
-0
lines changed
contrib/IECoreUSD/src/IECoreUSD Expand file tree Collapse file tree 1 file changed +9
-0
lines changed Original file line number Diff line number Diff line change @@ -532,6 +532,15 @@ class USDScene::IO : public RefCounted
532532 return m_allTags;
533533 }
534534
535+ // / \todo This "flattens" material assignment, so that materials assigned at `/root` are loaded as attributes
536+ // / on `/root/child` as well. This is not really what we want - we want to load sparsely and let attribute
537+ // / inheritance do the rest. This would be complicated by two factors :
538+ // /
539+ // / - USD's collection-based bindings. A collection-based binding on an ancestor prim would need to be transformed
540+ // / into a Cortex attribute on the prim, if the collection includes the prim.
541+ // / - USD's `bindingStrength` concept, where `UsdShadeTokens->strongerThanDescendants` allows an ancestor's
542+ // / binding to clobber descendant bindings during resolution. It is not clear how to represent that in Cortex -
543+ // / perhaps by not loading the descendant attributes at all?
535544 pxr::UsdShadeMaterial computeBoundMaterial ( const pxr::UsdPrim &prim, const pxr::TfToken &materialPurpose )
536545 {
537546 // This should be thread safe, despite using caches, because
You can’t perform that action at this time.
0 commit comments