Jump to content
 

InfiniteVR

Verified Members
  • Content Count

    4
  • Joined

  • Last visited

Community Reputation

0 Neutral

About InfiniteVR

  • Rank
    Contributor
  1. I found a solution. I changed the tracker role to a different for each one (left foot, right foot etc.) and I'm getting the input for the menu button even when the 2 controllers are connected ! I first tried it with the SteamVR beta version but it also seem to work on the normal 1.12.5 one.
  2. Hi @chengnay, I posted some screenshots of my manager vive trackers in steam VR Settings, please se my first post on page3.. Concerning the json changes, i reverted them, so the tracker i as tracker again and not a controller 😉 VIU Plugin version : yes i did a mistake, it was 1.11.0 and not 1.0.11 Here is a link to download the Unity Project :https://we.tl/t-6O96Vz2mjs I started from a blank unity project, imported VIU, then, Steam VR. The scene you should open is named "MultiTrackers" and is under the "Assets/_MultiTrackers/Scenes/" folder I took the VUI example scene "Assets\HTC.UnityPlugin\ViveInputUtility\Examples\7.RoleBindingExample\RoleBindingExample.unity" as a start and added some cubes and the "TrackerFollow.cs" script i made to track the different trackers. I associated the trackers roles with the VIU roles panel (VIUBindingInterface) then tested the pogo pin input on the trackers : When using only two trackers (without controllers), connecting pin 2 and 6 (menu button) with a wire works nicely on both of them (The cubes scale up ) When i add more trackers or the controllers, the pogopin input will not work consistently anymore. If you need more info i can make a video to show exactly the problem and how it is reproduced step by step
  3. I did some further investigation with 6 trackers at the same time. Here are the results : The tests are with the two controllers turned off. Test1 : Connect all the trackers at the same time, launch my Unity App : No input at all is detetected (reproduced 3 times) Test 2 : turn off all the tracker, turn on tracker n°1 : Trigger is detected on tracker 1 : OK Test 2 : turn on tracker n°2 ; Trigger is detected on tracker 1 & tracker 2 : OK Test 3 : Turn on tracker n°3 ; Trigger is only detected on Tracker 1 & 2 not the n°3 : NOK Test 4 : Turn on tracker n°4 : trigger is only detected on Tracker 1 and tracker 3 !!!??!! : NOK Test 5 : Turn on tracker n°5 : trigger is only detected on Tracker 1 and tracker 4 !!!??!! : NOK Test 6 : Turn on tracker n°6 : trigger is only detected on Tracker 1 and tracker 5 !!!??!! : NOK So thats very strange behaviour.... and i could reproduce it with different tracker orders. I have only 2 trackers at the same time that can trigger input with pogo pins Sometimes they don't work at all( when i start all the trackers simultaneously before playing the Unity App) Some more precisions : i used the VIU RoleBindingExample scene to assign tracker numbers from one to 6. The 6 trackers are correctly positionned in the scene. I use the following code to detect trigger press : bool triggerPressed = ViveInput.GetPress(m_ViveRole, ControllerButton.Trigger); as it does not always work, i also use bool menuPressed = ViveInput.GetPress(m_ViveRole, ControllerButton.Menu); which works in all scenarios when there are only 2 trackers at the same time. The m_ViveRole variable is assigned in the inspector : public ViveRoleProperty m_ViveRole; overall the code looks like this : public class TrackerFollow : MonoBehaviour { public ViveRoleProperty m_ViveRole; private void Update() { gameObject.transform.position = VivePose.GetPose(m_ViveRole).pos; gameObject.transform.rotation = VivePose.GetPose(m_ViveRole).rot; bool menuPressed = ViveInput.GetPress(m_ViveRole, ControllerButton.Menu); if (menuPressed) { Debug.Log("MenuPressed"); } bool triggerPressed = ViveInput.GetPress(m_ViveRole, ControllerButton.Trigger); float scale = 0.2f; if (triggerPressed || menuPressed) { Debug.Log("Scale!" + name); scale = 0.4f; } gameObject.transform.localScale = Vector3.one * scale; } } This script is attached to cubes in the scene, each cube has its ViveRole property set to its corresponding tracker id. See screenshot in attachement.
  4. I have quite a similar problem and despite all my efforts i could'nt fix it. I can only get input from two devices at the same time. It depends of the order i connect them. If i connect my two controllers, then my two trackers. Then I will only get trigger input from the controllers. If i turn the controllers off, then i will be able to get the trigger input from the trackers using the Pogo Pins (by connecting the pin 2 and 4 with a wire) My problem seems a bit different than the one you got @chengnay because it doesn't seem to be a unity problem : i can reproduce it using the input debuger tool of steam VR. (see attached screenshot) I tried your fix Chengnay, but it didnt work. I also found this method on this post :https://www.reddit.com/r/beatsaber/comments/bn6e4u/ragesaqs_school_of_making_a_vive_tracker_maul/ involving changing the tracker json configuration file but it didn't work either. Here are the versions i use Unity version : 2019.3.7.f1 VIU plugin : could reproduce the problem on v1.0.6, v1.0.7 and v1.0.11 (downloaded directly on Github page) SteamVR Plugin : 2.5.0 (sdk 1.8.19) SteamVR Utility : 1.12.5 If needed i can send the Unity Project. Help would be really appreciated as this limitation is a blocker for our project. Thank you
×
×
  • Create New...