Question;I am working with the UI sample of Sliders and they are working fine in Unity but not in HOlolens. The slider do not changes. It seems ManipulationUpdate do not change status for updating Slider Value
Having the same issue, using Unity 2017.1.2f1 with the v1.2017.2.0 release.
Hi,
I'm experiencing the same issue and doing development for HoloLens on Unity 2017.1.2p2 with the v1.2017.2.0 release of the MRTK. I'm building with SDK version 10.0.15063.0. Are there any news concerning this?
The issue concerns all examples that include the GestureInteractive.cs script, e.g. SliderSamples.unity, GestureInteractiveExample or the slider prefabs I want to use in my app. I can not manipulate them via gestures when the app is built on HoloLens or using the Hologrpahic Emulation Mode. Though, it works fine in the Unity Playmode by simulating the gestures with the mouse.
What works on the HoloLens is visual feedback on focus, hold and release (for both slider and cursor).
As far as I have understood the scripts, I guess it is due to a problem with the variable mCurrentHandPosition in GestureInteractive.cs which remains zero throughout the interaction when built on Hololens.
Before, I developed with Unity 2017.2 and SDK version 10.0.16299.0 and there were no issues. I do have the issues, too, in a completely new project which only imports Holotoolkit and Holotoolkit-Examples.
2017.1.2p2
v1.2017.2.0
Thanks for the much more detailed response.
As I dived deeper into the input system of the MRTK out of curiosity, I found a possible fix for this issue which worked for me:
In GestureInteractive.cs the method InputSource.TryGetGripPosition() is called three times (when the gestures starts, while it is updated and when the gesture stops) and is supposed to assign a Vector3 value to the variable handPostion. Unfortunately, it always returns zero (in unity 2017.1.2). Why I don't know.
Replacing the three method calls in GestureInteractive.cs of mCurrentInputSource.TryGetGripPosition(mCurrentInputSourceId, out handPosition) with mCurrentInputSource.TryGetPointerPosition(mCurrentInputSourceId, out handPosition) worked for me.
TryGetPointerPosition is also used in HandDraggable.cs to get the hand position. I don't really no the difference between the methods, but it worked in both the master release v1.2017.2.0 of MRTK as well when you clone and build manually. I can't guarantee that there are no issues with that solution, but maybe some of you can use it, too.
I have this issue as well.
Is this because GripPosition doesn't work in Unity 2017.1.2p2?
There's some conditional compiler tags referencing Unity 2017.2 in InteractionInputSource.cs
@vpuls Just tried your workaround and it works for me now! Thank you very much for finding that!
Guys I'm pretty sure I've fixed this in #1361 but I'd like confirmation.
I'll also look into the GestureInteractive.cs to see exactly what's going on there as well. I think that class in in the UX folders correct?
Ohh I see, it's in the examples folder
Looks like GitHub didn't automatically close these issues when merged into master. I'll close these manually and look into why.
Most helpful comment
Ohh I see, it's in the examples folder