I am in a university class which has us developing on Unity for VR. Students are given a Quest if they have none - and I myself have a Vive (base station tracking). As a result, I do not know how to develop for the quest, when all I have is a Vive for testing. We have group projects, so my contributions must work for the Quest when they load the build. I do not believe my partners want to use oculus link to run steamVR.

Is it possible to develop a way to differentiate between vive/quest on a user basis? Or will we need to develop different builds? My hope was to spawn the character with quest assests, or with steamVR assets if the hardware existed instead.

Since the Quest is android, I fear this may not be possible. What do you think? If I could emulate the quest with my Vive, that would also be acceptable. We do not need to offer Vive support - I simply need somthing for testing.

1

There are 1 best solutions below

1
On

You should use the SteamVR SDK for the Vive and then read up on How to port a SteamVR to Oculus Quest.

That page explains a lot details for creating an app that supports both.

E.g. in particular in order to detect on which platform you are you can use Platform dependent compilation via #if pre-processor tags

#if UNITY_ANDROID && !UNITY_EDITOR
  //Oculus Quest code
#else
  //SteamVR code
#endif

In the end of course you will still have to do two builds but this way you can implement both and test in the Vive and in the end build for the Oculus.

Either way of course you should see that you can at least once or twice test the basic functionality of the Oculus part .. don't wait with that until presentation day ;)