From c2ac4b04f6f999aad9a44fd682ca2c2d6ee5a8ba Mon Sep 17 00:00:00 2001 From: Victor Giers Date: Sat, 4 Apr 2026 19:07:42 +0200 Subject: [PATCH] Update createWireframeDisplayMaterial to handle different material types --- src/viewport-three/viewport-host.ts | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/src/viewport-three/viewport-host.ts b/src/viewport-three/viewport-host.ts index 9ecf54e0..3aa14ddf 100644 --- a/src/viewport-three/viewport-host.ts +++ b/src/viewport-three/viewport-host.ts @@ -12,6 +12,7 @@ import { Group, LineBasicMaterial, LineSegments, + Material, Mesh, MeshBasicMaterial, MeshStandardMaterial, @@ -700,12 +701,18 @@ export class ViewportHost { this.applyOrthographicCameraPose(); } - private createWireframeDisplayMaterial(material: MeshStandardMaterial | MeshBasicMaterial): MeshBasicMaterial { + private createWireframeDisplayMaterial(material: Material): MeshBasicMaterial { + const source = material as Material & { + color?: { getHex(): number }; + transparent?: boolean; + opacity?: number; + }; + return new MeshBasicMaterial({ - color: material.color.getHex(), + color: source.color?.getHex() ?? FALLBACK_FACE_COLOR, wireframe: true, - transparent: material.transparent === true || material.opacity < 1, - opacity: material.opacity, + transparent: source.transparent === true || (source.opacity ?? 1) < 1, + opacity: source.opacity ?? 1, depthWrite: false }); }