From eafa66ff40eabc8006ea221da64470a63ed5d047 Mon Sep 17 00:00:00 2001 From: Alexei Dobrohotov Date: Wed, 6 Apr 2022 06:42:06 +0300 Subject: [PATCH] Don't consider NiCollisionSwitch unoptimizeable --- components/nifosg/nifloader.cpp | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/components/nifosg/nifloader.cpp b/components/nifosg/nifloader.cpp index 3007bc6cf2..8ed17f3901 100644 --- a/components/nifosg/nifloader.cpp +++ b/components/nifosg/nifloader.cpp @@ -517,13 +517,6 @@ namespace NifOsg if (!node) node = new NifOsg::MatrixTransform(nifNode->trafo); - if (nifNode->recType == Nif::RC_NiCollisionSwitch && !(nifNode->flags & Nif::NiNode::Flag_ActiveCollision)) - { - node->setNodeMask(Loader::getIntersectionDisabledNodeMask()); - // This node must not be combined with another node. - dataVariance = osg::Object::DYNAMIC; - } - node->setDataVariance(dataVariance); return node; @@ -639,6 +632,9 @@ namespace NifOsg node->setNodeMask(Loader::getHiddenNodeMask()); } + if (nifNode->recType == Nif::RC_NiCollisionSwitch && !(nifNode->flags & Nif::NiNode::Flag_ActiveCollision)) + node->setNodeMask(Loader::getIntersectionDisabledNodeMask()); + osg::ref_ptr composite = new SceneUtil::CompositeStateSetUpdater; applyNodeProperties(nifNode, node, composite, imageManager, boundTextures, animflags);