From 4079f7c870ff711b0c5a51e35c547180d9fd7680 Mon Sep 17 00:00:00 2001 From: Dimitrie Stefanescu Date: Thu, 16 Oct 2025 14:35:32 +0100 Subject: [PATCH] Fixes visibility check using instance IDs Ensures visibility checks within the filtering extension correctly use instance IDs instead of raw object IDs. This resolves issues where visibility states were not being correctly applied to render view nodes, especially for instanced geometry. --- packages/viewer/src/modules/extensions/FilteringExtension.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/viewer/src/modules/extensions/FilteringExtension.ts b/packages/viewer/src/modules/extensions/FilteringExtension.ts index 2410f8686..dcf7e23cf 100644 --- a/packages/viewer/src/modules/extensions/FilteringExtension.ts +++ b/packages/viewer/src/modules/extensions/FilteringExtension.ts @@ -171,9 +171,9 @@ export class FilteringExtension extends Extension { this.WTI.walk((node: TreeNode) => { if (!node.model.atomic || this.WTI.isRoot(node)) return true const rvNodes = this.WTI.getRenderTree().getRenderViewNodesForNode(node) - if (!this.VisibilityState.ids[node.model.raw.id]) { + if (!this.VisibilityState.ids[node.model.id]) { rvNodes.forEach((rvNode: TreeNode) => { - if (!this.VisibilityState.ids[rvNode.model.raw.id]) + if (!this.VisibilityState.ids[rvNode.model.id]) rvMap[rvNode.model.id] = rvNode.model.renderView }) } else {