a month ago
Hi everyone!
I am using the Quest 3 for my research in Robotics. I am facing an issue where the physics of the robot seem to be neglected when I upload the program to the Quest 3. The program is very simple and it just changes the pose of the robot. To put it simply, at the beginning the robot starts at a certain pose, and then I move it to another pose. The program works well on the Meta Simulator and also works well when used over Cable Link, for example the following image shows the pose of the robot that matches the one in the script I am running:
Which also had the same result over Cable Link. But then, I upload the same program to the Quest 3 and the robot becomes loose and jiggles around (except for the base as it is fixed in the space):
I am using Unity, and the robot body is imported from URDF as a set of links, each modelled as an Articulation Body. I am using the xDrive function to move the robot joints to the desired position.
My guess is that the Quest 3 hardware may not be enough for controlling Articulation Body components so the device is just ignoring the codes related to these parts? I came to this conclusion because when URDF bodies are imported through Unity, there is a "Controller" script attached to them, which is used to drive the robot joints. I tried deactivating this Controller script, and the behavior I see on the Quest 3 also happened on the Simulator and Cable Link, which indicates that this Controller script seems to get deactivated whenever the program is uploaded to the Quest 3.
Is this actually a hardware limitation on the Quest 3? Or is there anything I can change in the settings to potentially solve this? I tried different timesteps and changing to a Balanced URP renderer but in vain.
Thanks a lot!