Tuesday, August 7, 2018

Dev Update #43 - VRidge 2.2 is now LIVE!

We’ve been waiting for this moment for a long time. Finally we have released version 2.2 of VRidge to everyone. Your RiftCat desktop client and VRidge mobile app should automatically update.

We couldn’t have made it without your intensive Beta tests! Thank you for helping us bringing this update to everyone.

Deployment status:
Platform Version Status Link
PC 2.2 Deployed Link
Viveport 2.2 Deployed Link
Oculus Home (Go and Gear VR) 2.2 Deployed Link
Google Play 2.2 Deployed Link
Daydream Store 2.2 Deployed Link


HTC Vive Focus, Oculus Go, Gear VR, Daydream View official support

With this update we were able to utilize all major SDKs to bring you the support of these extraordinary all-in-one headsets. If you own any of these, your experience with VRidge will now go to the next level.



We also want VRidge to be distributed via their official stores for easier installation. HTC Vive Focus version is already available on the Viveport mobile store. Oculus Home and Daydream version is in the approval process.

3-DOF controllers support

You can now use HTC Vive Focus, Gear VR, Oculus Go or Daydream controller in SteamVR! We have came up with an idea how to map the missing HTC Vive buttons to the controllers by using a little bit of space from the touchpad.


To read how to operate these controllers, simply take a look at our Help Center article to learn how to use them.

Reprojection for VR ready devices

If your phone or AIO headset is HTC Vive Focus, Daydream, Gear VR or Oculus Go compatible it will now use reprojection. Thanks to it, the experience is much better, basically getting rid of the jitter. If you have an optimal setup - your experience should be flawless now.

We will investigate if we could deliver different custom reprojection method for phones that are not VR ready. This might happen with the next update.

You might want to select Prevent frame loss as "Connection mode" if you're using stable connection (5 GHz / tethering) to prevent artifacting. This usually could introduce some extra latency, but it should be smoothed out by reprojection.

Reworked connection screen to include various devices

With multiple supported devices we had to upgrade our user experience to make it easier to pick the appropriate version.


We hope that with this change it’s going to be easier to install the appropriate VRidge version for your device.

CPU performance boost

We have made several iterations of optimizations for VRidge which allowed us to significantly reduce CPU usage:

Reduced CPU usage when using NVENC
Reduced VRidge's CPU load by 30-40% when using NVENC.

Many Android optimizations - CPU usage should be lower across all Android devices.
On average, you should see 15-20% system CPU load instead of 50-60%. This also means that heat generation should be significantly lower resulting in less "device too hot to run VR" errors.

The image shows the CPU usage when optimizations are turned OFF and ON.


In extremely rare cases this may lower VRidge performance. See this explanation to disable those optimizations.

We have also disabled MSAA on Daydream to save some GPU cycles and we have updated Google VR SDK to 1.80.

Automatic FPS selection

VRidge will now automatically select FPS based on the device refresh rate. For example, if you’ll connect to VRidge with 75Hz HTC Vive Focus headset - 75 FPS will be selected.


You may override device provided values by modifying vridge.cfg. Simply change the variables to:

"Video.FPS.Mode": "Custom",
"Video.FPS.Value": <your value>,

New languages supported

We were able to deploy six new languages: Bulgarian, Lithuanian, Indonesian, Korean, Italian and Hungarian. Old languages got updated as well.


Thank you for everyone’s contribution at our CrowdIn campaign. You did a tremendous job! All active translators will be rewarded with free VRidge key!

Unfortunately we weren’t able to include some translations in this patch as they missed the submission deadline. They will be deployed with patch 2.3 so they will have to wait for the next release.

Improved picture clarity on some Daydream devices

This should be quite noticeable at 1440p resolution as unintentional downscaling and filtering was in effect until now.

Automatic Field of View adjustment

FoV will now be selected automatically to improve the image quality. It will be especially effective on headsets with asymmetric FoV.

Other changes

  • Changed the way "End of Trial session" message is being displayed to user. Instead of displaying message (in one eye only due to very old bug) it will go back to lobby with localized notification message.
  • Added Project Cars tutorial to Discover view.
  • You will no longer be able to switch encoder when HEVC is enabled. This doesn't hot-switch on mobile side and it was freezing VRidge.
  • Lobby text ("Connected, waiting for SteamVR" should no longer become stuck and displayed on top of streaming window.
  • Fixed a crash on startup that could happen when FreeTrack was enabled.
  • Mobile app should no longer crash on reconnect sometimes.
  • VRidge settings should no longer incorrectly stay on top of all windows in certain cases.
  • Tethering tooltip no longer clips in certain localizations.
  • Removed artificial +170cm HMD height that could sometimes cause incorrect API controller calculation when paired with headset that didn't send positional data.
  • steamvr.vrsettings read-only flag will now be automatically switched off. If the file still remains locked, error message will be displayed instead of crashing. Generally other software should never lock this file but certain drivers aren't always interop-friendly.
  • VRidge and SteamVR should now automatically start on dedicated GPU, if available. This should fix a crash on Nvidia Optimus laptops.
  • VRidge.log will now contain information which GPU drives VRidge.
  • Fixed driver crash on Windows 7

Final notes

We hope that the new update will bring your VRidge experience to the next level. We will now decide on our next development cycle so expect more news coming soon!

If there is any feedback you would like to give us, send it to support@riftcat.com - the team will see it :)

Thanks to all Beta testers and translators who helped us bring this version to everyone. We have the best community in the world.

22 comments:

  1. Flawless operation. Well done peeps. :D

    ReplyDelete
  2. Very excited to install the update, keep at it!

    ReplyDelete
  3. I've tried the new version and my phone gets pretty dang hot. But I am seeing an increase to quality AND I'm loving the fixed reconnect issue I was having. Great job! I'm using the Beta 2.2.5 on a Galaxy S7. However, I would rather use the GearVR version.I am unable to use Oculus Home to install the GearVR version due to an odd issue. Basically my phone's not allowing me to install facebook so that I can install things from the Oculus Home. I can't fix that part unless I do a hard reset and I'm not wanting to do that. I have the previous GearVR version from SideloadVR but it will not connect to the beta for obvious reasons. Anyway you can upload this to SideloadVR or email me the .apk if possible? Thanks!

    ReplyDelete
    Replies
    1. Current Sideload VR Beta (2.2.5) should be compatible with PC Stable and Beta channels (currently both are 2.2.5). Oculus Home 2.2.6 release only contains several utility changes to pass Oculus approval process.

      But the current situation is limiting several scenarios.
      We will create an article describing the process how to install older versions manually (basically: download your osig from oculus, unpack apk, paste your osig, repack the APK, install via ADB).

      If you don't need the article and you know your way around the process, please contact us at support@rifcat.com and mention this blog post and that kogi asked you to send an e-mail. I'll send you current Sideload (2.2.5) and Oculus Home (2.2.6) builds. Both should be compatible with stable PC client (2.2.5) combined with Gear VR and Oculus Go.

      Delete
    2. So the Sideload VR Beta is NOT the GearVR version correct? I will try and get the gearvr to work with the latest beta. However, I can get the Sideload VR Beta to work with my el cheapo wally world headset but would much rather have the higher quality GearVR :) I can add the gearvr version to my oculus account but can't install so I'm unsure how the apk unpack/repack will work for the oculus version. Sorry for the redundancy, I want to be clear. You devs rock btw!

      Delete
    3. Gear VR and Oculus Go builds are the same APK file. Current Oculus Home version is a bit different from Sideload's because we had to apply some non-gameplay changes (app icons, manifests, etc) to be accepted on the store.

      Oculus Go can accept apps from Oculus Store or from USB ADB sideload (without signature problems).

      Gear VR can accept apps from Oculus Store but ADB sideloaded apks need to be signed with personal signature of your device. This is why Sideload is needed in the process - we can't provide a simple APK download because it won't install. Sideload VR automagically applies your personal signature and repackages the install on the go.

      Sideload VR's beta should work with current PC stable and beta client as it's nearly the same APK as the one on the Oculus Store.

      When the time comes to release the next version, we will try to figure something out for people that can't use Oculus Home to install VRidge. Probably a script and step-by-step instructions. It shouldn't take more than 3-5 minutes to install it manually. It will be even faster after one-time setup (preparing the signature and downloading ADB+APKTool). No need to worry about it now as Sideload's beta is comaptible with PC stable.

      Delete
  4. I have a problem that has remained since the beta version. In the previous stable version of such a problem was not 100%.
    After the program is turned on, the phone starts to display a picture (SteamVR), but it has large lags, about 1 frame in 5 seconds, and in the following time it completely disconnects and a space appears asking to connect the Riftkat. But in the computer, the composite screen continues to show the position of my phone, albeit with a small FPS.

    https://youtu.be/m9wSlw5tuuw

    ReplyDelete
    Replies
    1. What graphics card is it?

      Can you make a screenshot or video of frame timings? Right click SteamVR floating window, select settings -> Video -> Display Frame Timing.

      Delete
    2. Geforce GTX 960 4gb. I will repeat, in the old version Riftcat it worked all the way. Yes, the phone was heated a little, but it worked. Now you see for yourself what's going on .... I did not find where to include the FPS counter in SteamVR. But there is not more than 15 of them. And in the phone, the picture stops almost immediately after switching on, then it shows only the space (the message with the request to include the Riftcat).

      Now I'm uploading a new video in Youtube.

      Delete
    3. https://youtu.be/25LptgWXkKE

      Delete
    4. I see.

      Can you try changing both of these values to Aggressive and see if it improves the framerate?

      https://trello.com/c/TpqESHUP/127-android-cpu-heat-generation-optimizations

      If it doesn't help, please contact us at support@riftcat.com as it's isolated problem and it's easier to troubleshoot for the team.

      Delete
    5. I changed both parameters and unfortunately it did not help ...
      Well, OK I'll write in support.
      Recently I became a beta tester that would test the performance of the new version 2.2.5, but when I saw these wild lags I refused and returned my stable version 2.1.5(seems), which worked smoothly.

      Delete
  5. Awesome work guys!
    What about Lenovo Mirage Solo support? :)

    ReplyDelete
    Replies
    1. We haven't drafted the final schedules for our next plans but I'm sure it will be very high on the priority list. We just need a bit more hotfixing with 2.2 over the course of next week or two before we move on to the next thing.

      Delete
  6. Hello, i have 2 daydream controllers, can i use them at the same time?

    ReplyDelete
    Replies
    1. No, unfortunately Daydream runtime works with one controller only currently. There are some changes in the most recent Daydream SDK that lead us to believe that they are working on dual controller setups. As soon as Google allows it, we will add this option, too.

      Delete
  7. Congrats to the team! You are doing an amazing work, i have a question, i don't understand how the controllers are being tracked, i know from ps move for example uses color tracking by the bulb and sending this information to the cameras, but this? How?

    ReplyDelete
    Replies
    1. Controllers provide only rotational data (and sometimes velocity/acceleration, too). We combine this data with headset's tracking system and fuse it together with some math that transforms the data according to human-like shoulder, elbow and wrist characteristics.

      It's kind of like inverse kinematics engine for game. For example, when you traverse stairs, the engine manipulates player model to realistically bend your knees.

      It won't map all poses accurately because there is simple not enough dimensions of data to do it but it should feel quite natural in most scenarios. You can easily shoot, slash or press buttons. High precision 3D drawing might be tricky, though.

      Delete
  8. The new beta still will not connect to the sideload version of gear VR.

    ReplyDelete
  9. Settings Aggressive for decoding in config crash mobile app on gear vr.

    ReplyDelete