Ideas about root cause of erroneous mesh clipping [Solved]

clipping
#1

I am using a modified orbit control to move the camera around. The THREE.Mesh (comprised of THREE.ShaderMaterial and THREE.BufferGeometry) being viewed sometimes disappears entirely at certain rotation or zoom levels, even though I would expect many of its geometry instances to still be within the viewing frame. Does some sort of clipping/culling occur at the mesh/object level? I haven’t set any clipping planes myself and from what I see in the documentation, clipping planes are not used by default.

#2

Does it also happen if you disable view frustum culling like so: mesh.frustumCulled = false;

#3

Thanks, that did it. I expect that Frustum.js:intersectsObject() is returning false and that BufferGeometry.computeBoundingSphere() is not able to correctly compute a bounding sphere. Is that sensible? I don’t know how a bounding sphere could be computed properly without the BufferGeometry inspecting the triangle vertices, but even then it couldn’t necessarily know which attribute to inspect.

Anyway, thanks for your help.

#4

As long as your geometry has a proper position attribute the method is able to compute the bounding sphere.