I have a large terrain (ie, the ground in repro). In my use case, pointermove drops my fps so by design, I made my ground not pickable by default and toggle it when needed. It works great. But pointermove now triggers when mousing over the occluded part of the sphere. So ideally, I’m looking to have renderOverlay only trigger when user mouse-over the unoccluded part of the sphere and still keep the ground not pickable. What mesh property can I use in the predicate ? Or is there a way for me to insert a custom trianglePredicate in the scene to filter out pickedPoint.y > 0?
Managed to get the trianglepicking predicate in, but the action manager doesn’t seem to recognize it. What should I do to get the action manager to use my pickinfo for triggering? Or do I have to ditch action managers and process everything in my own pointermove observable loop? If so, wouldn’t there be 2 pointermoves triggering in the scene every mouse move (bjs default+user custom)? Is there a way to switch the default off?
Maybe in your custom picking you can register a boolean in your scene with true/false depending on your pick result and use this as your actions conditions.
After in you prefer to build your own custom code it might be simpler to manage and you should in this case not have overhead cause only the meshes with actionManager would go through the process.
I want to avoid the custom code in the obs. When the number of spheres/objects grow, said custom code becomes monolithic very quickly. Hence the reason for action manager. I’m going to investigate if its worth a PR for scene.trianglePickingPredicate and modify pointerMove events in the input manager to take advantage of it.
I think this is back compat? Now, the biggest question is: I don’t think tpp is the the best param name ever, so looking for suggestions ! And scene.ts already uses trianglePredicate and trianglePickingPredicate everywhere. What’s a better name than tpp? hmm…
done and done…but lint failed and my eyes are not seeing where the problem is. I need a feature request for old people with bad eyes, automatic lint correction when PR.requester.eyes.age === "old".