GanyJS icon indicating copy to clipboard operation
GanyJS copied to clipboard

IsoSurface: Wrong triangle normals

Open martinRenou opened this issue 6 years ago • 0 comments

Triangle indices are not ordered correctly in the IsoSurface computation, resulting in the triangle normals to be randomly chosen.

Normals are important for face culling: (Using the ThreeJS default culling: THREE.FrontSide only triangles facing the camera are displayed, this depends on the triangle normal) isosurface_front

(Using THREE.DoubleSide all the triangle are displayed) isosurface_double

Concerning the iso-surface computation, we should use the THREE.DoubleSide option anyway, because the surface has no "side". But concerning the threshold computation, it will be important to get normal rights (especially for transparent meshes, because transparency depends a lot on culling).

martinRenou avatar Nov 28 '19 12:11 martinRenou