From 47130e21559261eae08d52fa4aeb7bf717abc9c0 Mon Sep 17 00:00:00 2001 From: Alexei Kotov Date: Sat, 23 Aug 2025 09:13:30 +0300 Subject: [PATCH] Don't run osg::Depth replacement visitor for NIF templates --- components/resource/scenemanager.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/components/resource/scenemanager.cpp b/components/resource/scenemanager.cpp index 6100d0ccaa..8d8b0d3491 100644 --- a/components/resource/scenemanager.cpp +++ b/components/resource/scenemanager.cpp @@ -701,6 +701,10 @@ namespace Resource node->accept(renamingVisitor); } + // Replace osg::Depth with reverse-Z-compatible SceneUtil::AutoDepth + SceneUtil::ReplaceDepthVisitor replaceDepthVisitor; + node->accept(replaceDepthVisitor); + for (osg::Node* foundRigNode : rigFinder.mFoundNodes) { if (foundRigNode->libraryName() == std::string_view("osgAnimation")) @@ -1019,9 +1023,6 @@ namespace Resource mMinFilter, mMagFilter, mMaxAnisotropy); loaded->accept(setFilterSettingsControllerVisitor); - SceneUtil::ReplaceDepthVisitor replaceDepthVisitor; - loaded->accept(replaceDepthVisitor); - osg::ref_ptr shaderVisitor(createShaderVisitor()); loaded->accept(*shaderVisitor);