How to handle BABYLON.ActionManager.OnPointerOutTrigger in touchscreen?

Mesh added OnPointerOverTrigger and OnPointerOutTrggier when mouse over mesh setting hightlight, mouse exit mesh dispose highlight.
Some trouble in touchscreen, it’s hard to judge the timing exit mesh, the mesh always hightlight in scene. How to handle exit mesh action in touchscreen?

Hi DWork,

From a design perspective, I don’t think you can effectively use mouse-over or “hover” logic on a touchscreen because the screen can’t tell where a finger that’s not touching the screen is. Since a finger that is down is either “clicking” or “dragging” (mapped to cursor behavior) while a finger that is up is “nonexistent,” I think the first question that’d need to be answered is, “What behavior are you going for?” Do you want the mesh to highlight when it’s clicked or dragged over? If so, you’ll probably need to disable highlighting manually when all fingers are up because, as mentioned before, cursor-based paradigms don’t translate perfectly to touchscreen scenarios. Hope this helps, and best of luck!

1 Like

My project have to use both mouse and touchscreen. That’s make me confused about control behavior. As you see, how to solve it? How to judge use touchscreen or use mouse?

I think there are two main options: you can either design your experience using only the “common subset,” or you can design interfaces for multiple different input mechanisms and pick the best one based on what your user is using at that time. For the first option, pretty much every platform has a concept of clicking (single pointer), so if you design your entire interface around the idea of one-pointer clicks, that should work for every platform. Pretty constraining, but very straightforward.

If you want to be able to use platform-specific interactions (mouse-wheel, gesture zoom, hover, long-click, etc.), they you’ll probably need to implement multiple input interfaces and swap between them based on what the user is doing. This is much more laborious, but it may yield a much better user experience, so you’ll have to decide if that tradeoff is right for your scenario. Regarding how to implement these multiple input mechanisms, I know @PolygonalSun has been working on some cool stuff on this axis, but I’m not 100% sure of the details or current state.

Hello @DWork just checking in, was your question answered?