diff --git a/apps/openmw/mwrender/objectpaging.cpp b/apps/openmw/mwrender/objectpaging.cpp index 2140bd5412..4d847a3619 100644 --- a/apps/openmw/mwrender/objectpaging.cpp +++ b/apps/openmw/mwrender/objectpaging.cpp @@ -8,6 +8,7 @@ #include #include #include +#include #include #include @@ -643,7 +644,9 @@ namespace MWRender { if (cnode->getNumChildrenRequiringUpdateTraversal() > 0 || SceneUtil::hasUserDescription(cnode, Constants::NightDayLabel) - || SceneUtil::hasUserDescription(cnode, Constants::HerbalismLabel)) + || SceneUtil::hasUserDescription(cnode, Constants::HerbalismLabel) + || (cnode->getName() == "Collada visual scene group" + && dynamic_cast(cnode->getUpdateCallback()))) continue; else refnumSet->mRefnums.push_back(pair.first); diff --git a/components/resource/scenemanager.cpp b/components/resource/scenemanager.cpp index 06fbd8470f..b6a22c08a4 100644 --- a/components/resource/scenemanager.cpp +++ b/components/resource/scenemanager.cpp @@ -636,6 +636,9 @@ namespace Resource backToOriginTrans->addChild(newRiggeometryHolder); group->addChild(backToOriginTrans); + + node->getOrCreateUserDataContainer()->addUserObject( + new TemplateRef(newRiggeometryHolder->getGeometry(0))); } } }