Near interaction improvements
See original GitHub issueAfter trying out near interaction on 3D GUI elements, I found several improvement that I would like to discuss with you @RaananW @satyapoojasama :
-
Near grab requires a ray to be hitting the mesh to trigger when the user pinches his fingers. This is okay for bigger meshes, but for little meshes, like resize handles, i can be hard to get a hit. I feel like near grab, like near press, should pick meshes only from a distance hit test (what you implemented as
pickWithMesh
) -
Near press is not implemented, it is not possible to press buttons just by getting your index finger close. Everything is already there though, we just need to trigger pointerDown and Up events.
-
There is a small bug where nearGrab always takes precedence on nearPick, even when no hit was found, or mesh doesn’t have
isNearGrabbable
set to true (causing near pick to have ahit === false
). -
pickWithMesh
is rather inefficient, we hit test a sphere mesh versus another meshes, causing a lot of triangle-triangle intersections. We can just perform distance-to-triangle tests instead.
I already started with implementing some of that because I need these improvements to test the new NearMenu
, but I would be happy to get your opinion on these.
Issue Analytics
- State:
- Created 2 years ago
- Reactions:1
- Comments:5 (5 by maintainers)
Top GitHub Comments
@rickfromwork all points referenced above should are fixed by the linked PR. I will update the issue or create a new one with other small near interaction issues that I found out recently.
Hi @CraigFeldspar , thank you for testing near interaction thoroughly! I am fairly new to writing code in javascript and hand interactions in general which has been a challenge for me. I have switched teams recently and will not be able to work on this anymore. I appreciate you working on them.