sceneview-android
sceneview-android copied to clipboard
Fix gestures after refactoring and supporting selection of multiple nodes
Current Issues:
- [ ] The move gesture moves the node but it jumps back when released.
- [x] The scale gesture doesn't seem to work at first but then scales the node down or up very rapidly.
- [ ] The gestures are only applied if they start within a node.
Desired Behavior:
| Selected Nodes | Move | Rotate | Scale |
|---|---|---|---|
| Single | The node is moved when the gesture starts within it. | The node is rotated if it is selected (full-screen gesture) or the gesture starts within it. | The node is scaled if it is selected (full-screen gesture) or the gesture starts within it. |
| Multiple | The node is moved when the gesture starts within it. Other selected nodes aren't moved. | All selected nodes are rotated (full-screen gesture) or a new node is added to the selection and rotated together with other nodes if the gesture starts within it. | All selected nodes are scaled (full-screen gesture) or a new node is added to the selection and scaled together with other nodes if the gesture starts within it. |
In all cases, if the node isn't selected and the gesture starts within it, the node is selected.
Should we support this behavior or require prior node selection by tapping on it?
Personally, I would prefer to see an "immediate gesture" model, where the loaded objects are directly interactable and transformable without prior selection. This is how it's done with iOS' RealityKit, and it feels very intuitive to just immediately drag or twist an object in place. Also, with multiple models, it helps to lessen confusion about which, if any, object is selected. This, of course, works best for either large models, or on tabletops, so perhaps (time and resources allowing) a mode selection feature could help developers tailor the interactions to their needs.
@m-paunovic-vegait This will be the case, just like with Realitykit.
The default behavior will be selectionMode=Single AND this mode will select the first (or latest?) added node.
We will soon change the selectionVisualizer so it will be more obvious that an added selectable is in selected/editing mode.
Hey there, it looks like there has been no activity on this issue recently. Has the issue been fixed, or does it still require the community's attention? This issue may be closed if no further activity occurs. Thank you for your contributions.
Closing this issue after a prolonged period of inactivity. If this issue is still present in the latest release, please feel free to create a new issue with up-to-date information.