So I’m kind of wondering why when a mesh is hidden by a null lod level that it still evaluates out to isVisible === true? I understand isEnabled === true because yes it still needs its matrices updated and to be evaluated as an active mesh, but why isVisible still true? If its at a null LOD step its obviously not visible.
It leads to interesting situations like this:
Where there is no visible element but it still has pointer observables firing on it and hover cursor effects. Rather interesting.
Right now to fix it I have a predicate override that checks the meshes current LOD level. Which works but ideally isVisible would just respect the LOD null and then none of that would be necessary.
Oh ok, for some reason I used to think that it was a getter also for if it was culled or something, so that was my misunderstanding. What about the adt pointer events still being able to be triggered even though the mesh is not really there?
Is my only option to do the mesh.getLOD(camera) in the predicate? That seems kind of intensive.
Technically the lod has a rendering only. For all the operations like picking, physics or collisions or anything geometry related the system uses the root mesh.