1
0
Fork 0
mirror of https://github.com/OpenMW/openmw.git synced 2025-02-06 11:45:35 +00:00

Do not try to handle shape controllers as node controllers

This commit is contained in:
Andrei Kortunov 2018-07-30 21:45:17 +04:00
parent bc82dbbd1b
commit 469bb29621

View file

@ -579,13 +579,11 @@ namespace NifOsg
if (composite->getNumControllers() > 0) if (composite->getNumControllers() > 0)
node->addUpdateCallback(composite); node->addUpdateCallback(composite);
// Note: NiTriShapes are not allowed to have KeyframeControllers (the vanilla engine just crashes when there is one). // Note: NiTriShapes are not allowed to have KeyframeControllers (the vanilla engine just crashes when there is one).
// We can take advantage of this constraint for optimizations later. // We can take advantage of this constraint for optimizations later.
if (!nifNode->controller.empty() && node->getDataVariance() == osg::Object::DYNAMIC) if (nifNode->recType != Nif::RC_NiTriShape && !nifNode->controller.empty() && node->getDataVariance() == osg::Object::DYNAMIC)
handleNodeControllers(nifNode, static_cast<osg::MatrixTransform*>(node.get()), animflags); handleNodeControllers(nifNode, static_cast<osg::MatrixTransform*>(node.get()), animflags);
if (nifNode->recType == Nif::RC_NiLODNode) if (nifNode->recType == Nif::RC_NiLODNode)
{ {
const Nif::NiLODNode* niLodNode = static_cast<const Nif::NiLODNode*>(nifNode); const Nif::NiLODNode* niLodNode = static_cast<const Nif::NiLODNode*>(nifNode);