|
1 | 1 | # Pointers |
2 | 2 |  |
3 | 3 |
|
4 | | -A pointer is something attached to a controller that gives focus and dispatches inputs to the game object it is pointing to <sup>[1](https://github.com/luis-valverde-ms/MixedRealityToolkit-Unity/blob/feature/input_docs/Documentation/Input/InputSystem.md)</sup>. |
| 4 | +A pointer is something attached to a controller that gives focus and dispatches inputs to the game object it is pointing to. Learn more about the MRTK input system [here](./Input/Overview.md), and a scripting/engineering overview of pointers [here](./Input/Pointers.md). |
5 | 5 |
|
6 | 6 | For a game object to be able to receive focus it must have a collider (so it can be hit by physics raycasts) and belong to one of the layers defined in the Pointer Raycast Layer Masks in the Pointer Profile. |
7 | 7 |
|
@@ -56,14 +56,31 @@ Debug Mode - If true, draw the sphere that is used to query for grabbable object |
56 | 56 |
|
57 | 57 | Poke pointer is for near interactions, specifically for touching objects via the hand / controller. |
58 | 58 |
|
| 59 | +**NOTE:** Only items with _Near Interaction Touchable_ components will respond to the poke pointer. |
| 60 | + |
| 61 | +#### Poke Pointer Properties |
| 62 | +- distBack - how far input point can go behind surface before release event occurs |
| 63 | +- distFront - how far input point needs to be in front of surface before press event occurs |
| 64 | +- debounceThreshold - once touching, the distance back hand needs to be pulled from surface before a touch release occurs. |
| 65 | + |
| 66 | +#### Configuring NearInteractionTouchable |
| 67 | +When configuring your _Near Interaction Touchable_, make sure to configure the _localForward_ parameter to point out of the front of the button or other object you wish to make touchable. Also make sure that the touchable's _bounds_ matches the bounds of your touchable object. |
| 68 | + |
| 69 | +Other parameters: |
| 70 | + |
| 71 | +- eventsToReceive - if set to Touch, the object will receive _OnTouchDown_ _OnTouchUpdate_ and _OnTouchUp_ events. If set to pointer, the object will receive _OnPointerDown_ and _OnPointerUp_ events. |
| 72 | +- touchableSurface - use this to help compute the bounds of the surface. Bounds will automatically adjust to the attached BoxCollider, UnityUI element, or can be set manually by adjusting _bounds_. |
| 73 | +- visuals - Game Object used to render finger tip visual (the ring on finger, by default) |
| 74 | +- line - optional line to draw from fingertip to the active input surface. |
| 75 | + |
59 | 76 |
|
60 | 77 |
|
61 | 78 | ### Mouse pointer |
62 | 79 |  |
63 | 80 |
|
64 | | -Mouse pointer is used for interacting with the mouse. |
| 81 | +Mouse pointer is used for interacting with the mouse. This pointer will only be used if the active input is a mouse. By default, the MRTK Profile does not provide a mouse as an input provider, as mouse input is instead used to simulate hand input. You may add a mouse in your MRTK profily by modifying the _Registered Service Providers_ in your MRTK profile. |
65 | 82 |
|
66 | 83 | ### Teleport pointer |
67 | 84 | <img src="/External/ReadMeImages/Pointers/MRTK_Pointers_Parabolic.png" width="600"> |
68 | 85 |
|
69 | | -Teleport pointer is used for teleportation. |
| 86 | +Teleport pointer is used for teleportation. This pointer will only be active when using a controller that supports teleportation (such as a motion controller like in Oculus, Vive, Windows Mixed Reality). |
0 commit comments