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
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?
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.