From e96448d66f86ebccd0560d3da4c52295ad9674c4 Mon Sep 17 00:00:00 2001 From: Alexei Kotov Date: Fri, 10 Feb 2023 15:17:48 +0300 Subject: [PATCH] Use model template as a fallback in BetaComment --- apps/openmw/mwscript/miscextensions.cpp | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/apps/openmw/mwscript/miscextensions.cpp b/apps/openmw/mwscript/miscextensions.cpp index d7a6c55aad..b8e6d2f16f 100644 --- a/apps/openmw/mwscript/miscextensions.cpp +++ b/apps/openmw/mwscript/miscextensions.cpp @@ -1425,7 +1425,21 @@ namespace MWScript SceneUtil::PositionAttitudeTransform* baseNode = ptr.getRefData().getBaseNode(); if (baseNode) baseNode->accept(visitor); - msg << "Bound textures: "; + // The instance might not have a physical model due to paging or scripting. + // If this is the case, fall back to the template + if (visitor.mTextures.empty()) + { + Resource::SceneManager* sceneManager + = MWBase::Environment::get().getResourceSystem()->getSceneManager(); + const_cast(sceneManager->getTemplate(model).get())->accept(visitor); + msg << "Bound textures: [None]" << std::endl; + if (!visitor.mTextures.empty()) + msg << "Model textures: "; + } + else + { + msg << "Bound textures: "; + } if (!visitor.mTextures.empty()) { msg << std::endl;