diff --git a/Changes b/Changes index dde0822df9..7fb1a42534 100644 --- a/Changes +++ b/Changes @@ -1,3 +1,10 @@ +Fixes +--- + +- IECoreMaya.SceneShapeSubSceneOverride : Visibility override fixes (#1320). + - Removed SceneInterface visibility check, as it is now obsolete and causing issues. + - Check visibility for root locations, so bounds aren't incorrectly drawn. + 10.4.3.0 (relative to 10.4.2.1) ======== @@ -135,6 +142,16 @@ Build - Updated IE options file to support Nuke 13.x custom dependencies (#1263). +10.3.8.1 (relative to 10.3.8.0) +======== + +Fixes +--- + +- IECoreMaya.SceneShapeSubSceneOverride : Visibility override fixes (#1320). + - Removed SceneInterface visibility check, as it is now obsolete and causing issues. + - Check visibility for root locations, so bounds aren't incorrectly drawn. + 10.3.8.0 (relative to 10.3.7.2) ======== diff --git a/src/IECoreMaya/SceneShapeSubSceneOverride.cpp b/src/IECoreMaya/SceneShapeSubSceneOverride.cpp index b1eb89c544..419086c5e9 100644 --- a/src/IECoreMaya/SceneShapeSubSceneOverride.cpp +++ b/src/IECoreMaya/SceneShapeSubSceneOverride.cpp @@ -1418,16 +1418,6 @@ void SceneShapeSubSceneOverride::visitSceneLocations( const SceneInterface *scen return; } - // respect visibility attribute - if( sceneInterface->hasAttribute( SceneInterface::visibilityName ) ) - { - ConstBoolDataPtr vis = runTimeCast( sceneInterface->readAttribute( SceneInterface::visibilityName, m_time ) ); - if( vis && !vis->readable() ) - { - return; - } - } - MMatrix accumulatedMatrix; if( !isRoot ) { @@ -1473,6 +1463,10 @@ void SceneShapeSubSceneOverride::visitSceneLocations( const SceneInterface *scen int count = 0; for( const auto &instance : m_instances ) { + if ( !instance.visible ) + { + continue; + } std::string instanceName = rootItemName + "_" + std::to_string( count++ ); MString itemName( instanceName.c_str() ); MRenderItem *renderItem = acquireRenderItem( container, IECore::NullObject::defaultNullObject(), instance, relativeLocation, bound, itemName, RenderStyle::BoundingBox );