@@ -669,6 +669,13 @@ function setLineObjectPoints(lineObject, points = []) {
669669 for ( const p of points ) {
670670 flat . push ( p . x || 0 , p . y || 0 , p . z || 0 ) ;
671671 }
672+ // Debug mode: disable Line2 geometry reuse to isolate stateful buffer issues.
673+ const NextGeometry = lineObject . geometry ?. constructor ;
674+ const next = NextGeometry ? new NextGeometry ( ) : null ;
675+ if ( next ?. setPositions ) {
676+ lineObject . geometry ?. dispose ?. ( ) ;
677+ lineObject . geometry = next ;
678+ }
672679 lineObject . geometry . setPositions ( flat ) ;
673680 lineObject . computeLineDistances ?. ( ) ;
674681 lineObject . geometry . computeBoundingSphere ?. ( ) ;
@@ -765,6 +772,13 @@ function applyPreviewExternalWorld(rec, mode, editing, colors) {
765772 verts . push ( b . x , b . y , b . z ) ;
766773 }
767774 if ( segments . material ?. isLineMaterial && segments . geometry ?. setPositions ) {
775+ // Debug mode: disable LineSegments2 geometry reuse to isolate stateful buffer issues.
776+ const NextGeometry = segments . geometry ?. constructor ;
777+ const next = NextGeometry ? new NextGeometry ( ) : null ;
778+ if ( next ?. setPositions ) {
779+ segments . geometry ?. dispose ?. ( ) ;
780+ segments . geometry = next ;
781+ }
768782 segments . geometry . setPositions ( verts ) ;
769783 segments . computeLineDistances ?. ( ) ;
770784 segments . geometry . computeBoundingSphere ?. ( ) ;
@@ -822,6 +836,13 @@ function applyPreviewFaceSegments(rec, mode, editing, colors) {
822836 return ;
823837 }
824838 if ( rec . previewFaceSegments . material ?. isLineMaterial && rec . previewFaceSegments . geometry ?. setPositions ) {
839+ // Debug mode: disable LineSegments2 geometry reuse to isolate stateful buffer issues.
840+ const NextGeometry = rec . previewFaceSegments . geometry ?. constructor ;
841+ const next = NextGeometry ? new NextGeometry ( ) : null ;
842+ if ( next ?. setPositions ) {
843+ rec . previewFaceSegments . geometry ?. dispose ?. ( ) ;
844+ rec . previewFaceSegments . geometry = next ;
845+ }
825846 rec . previewFaceSegments . geometry . setPositions ( verts ) ;
826847 rec . previewFaceSegments . computeLineDistances ?. ( ) ;
827848 rec . previewFaceSegments . geometry . computeBoundingSphere ?. ( ) ;
0 commit comments