Meshes hiding on different view and movements

Hi, I created a intersection mesh between different models and it is not stable for viewing, on one direction it is visible and on another direction it is becoming invisible and after certain movements it is becoming visible. What properties should i need to change
image
image

first picture shows the green meshes that created and
second image shows green meshes invisible, after i slightly moved the whole group of model

material.side=THREE.DoubleSide

Already given that @manthrax

If you render your source meshes (before csg) without side:DoubleSide, do they render with alternating in/out faces?

It could also be a depth sorting issue, but the alternating face dropout is a bit strange… I might have to see it live to make heads or tails of it.

before csg , the source meshes are behaving good without any trouble without doubleside.

const intersectionMaterial = new MeshStandardMaterial({
color: 0x00ff00 ,
transparent: true,
blending: THREE.AdditiveBlending,
clippingPlanes: clippingPlanes,
side: THREE.DoubleSide,
flatShading: true,
});
Intersections.forEach((mesh) => {
mesh.visible = edgesVisible;
mesh.material = intersectionMaterial;
mesh.material.depthTest = false;
mesh.material.side = DoubleSide;
mesh.material.clippingPlanes = clippingPlanes;
mesh.material.transparent = true;
groupRef.current?.add(mesh);
});

i used these for rendering csg intersection meshes

Which CSG library are you using… mesh-bvh-csg?

yeah. @manthrax

Can you use the GLTFExporter to export your scene?

Make sure to set the binary:true option in the export…

https://threejs.org/docs/#examples/en/exporters/GLTFExporter

and drag the .glb file here.