The 2018 Oculus Go V1
This is my personal review of the 2018 Oculus Go VR headset and controller.
I usually limit my postings to purely objective engineering talk (Qs and As), but Oculus have stirred my heart here and I have to share:
Over the past few years I’ve collected many VR headsets: DK1, DK2, OVR2, GearVR1, GearVR2, Daydream, Cardboards, Plastic cardboards on ebay etc.
When I ordered my Oculus Go I was expecting a GearVR with slightly weaker performance, I’ve been pleasantly surprised:
My current nearly finished WIP game (MechZ) has been written to push daydream/GearVR devices to their limits, the scenes are procedurally generated and I have the ability to wind back triangle count if I need to for weaker platforms.
So knowing Oculus Go utilizes older Qualcomm 821 chipset… I was expecting to have to wind back the triangle count in order to hold 60Hz… Now here’s the kicker… I’m able to hold 72Hz and I have not had to reduce triangle count. I only had to enable fixed foveation to achieve it, which by the way is unnoticeable (does not reduce perceived visual quality) in my game.
Hardware Headset
The headset ergonomics are good, I have a relatively high and pronounced nose bridge, on many other headsets I am unable to get my pupils in the sweet spot without putting pressure on my nose bridge, not so with the Go, it’s super comfortable for me, and It has been for every other person I’ve had try it.
Thermal management is also excellent, the front panel being a plate of aluminium with heat pipes routing to SOC… I have never seen temps raise much more than 10°C above ambient.
HMD battery life: Yes… it’s relatively short at <2 hours, but… I just keep it plugged into my PC via USB during dev and debug and it basically just stays charged. So despite Oculus recommending against using while charging… it looks like you can, perhaps operating in high ambient temperatures it could be a problem and I am not advising any players to do this (play while charging) just mentioning that it’s possible.
Facial interface is synthetic lycra like fabric over memory foam, you can easily pop it out to wash.
Headmount/Strap: It’s ski goggle style, but the facial interface foam is comfortable enough that it’s not an issue.
Hardware Controller
Comfortable for me and all testers I have handed it to, perfect ergenomics IMO. The trigger is a great addition and has a pleasing tactility.
The controller operates on any old single 1.5V A cell even when its voltage is relatively low, so it’s employing a charge pump (aka Joule thief) in order to feed the CMOS logic, I really love this… the scheme will squeeze mega Joules of otherwise wasted energy from old batteries people have hanging around.
Scrutinizing the controller up close… the injection moulding is perfect quality and finish, same as the whole headset.
Optics
Resin hybrid lenses (convex with fresnel), I was preparing for the inevitable “god rays” that I’m accustomed to on fresnels… what is this sorcery? no god rays to speak of and a super wide sweet spot, chromatic aberration is acceptably low right to the edge.
The screen is full RGB rectangle triplets per square subpixel, I can’t perceive any “screen door” unless I really look for it. Usually with all my other HMDs… If I look at a contrastful stationary objects and slowly yaw my neck I can see the image racing over the static pixel array, i.e. I can perceive the stationary pixels of the display if I look for them, I can’t see that on Go. I am guessing that Oculus is sub pixel interpolating, i.e. the effective horizontal resolution is 3X, so a pixel may be RGB or GBR or BRG, this works out perfectly because most neck movements are Yaw.
It’s the best looking VR display I have experienced full stop. I was expecting gray blacks because not OLed, but the blacks look very black. No noticable pixel persistence, it just looks and feels “solid” and really pops presence when running 72Hz, I like it a lot!
Audio
The sound pipes on the head strap work well, I was expecting a puny bass response, but the sound is surprisingly full, I don’t hanker for any more bass really. Turned up to max… psytrance tunes are kicking it!
It’s super convenient, certainly for developing: just lift the HMD up to my face and I’m visual/audio interfaced in seconds.
Have yet to test in built microphone (I do plan using it for in game VOIP eventually).
Software
The hardware/software synergy Oculus have achieved is crystal solid, It feels like John Carmack got free reign here, the thing flies!.. No background Android processes interfere with VR, every clock cycle on this thing is dedicated to VR and it shows.
Fixed foveated rendering works well, hiding in the lenses edges it is not easy to perceive when in action, this coupled with single pass stereo rendering enables big scenes to run buttery at 72Hz.
Integration with Unity is great, if you’re already building for GearVR, it’s pretty much just plug and play.
We can employ all cores nicely: Thanks to great thermal management you can put stuff on a seperate thread without worrying about early throttling, I’m running FMOD radio player on a thread and it just chews through it without noticing. Usually with phones: Putting stuff on a seperate thread is a losing battle because you can achieve thermal saturation with just one core and thus if you go onto other threads your just going to get your main render thread throttled which sucks. Go frees the cores, it’s more like a console or PC like that.
Problems I encountered
No fault of Oculus: I initially had problems achieving ADB connection to my Go, as others have to. Even after updating the Go ADB drivers to V2, I could not see the device in ADB… turns out I was running an old version of Android platform tools ADB.exe, to check if you have latest version, open CMD prompt on your dev PC and type “adb version” you should see latest version like below, if you dont… fix it using Android Studio.
C:\Users\userx>adb version
Android Debug Bridge version 1.0.39
Version 0.0.1-4500957
Installed as C:\Android\sdk\platform-tools\adb.exe
Final verdict
For ~200, I can say with hand on my heart: Oculus Go is the best value gaming system (including non VR systems) I have ever purchased in my life. The Joy to ratio is high. The quality of the entire system hardware/software is excellent for such a low price.
My overall rating:
9.5/10
Anyone thinking of experimenting with Unity and VR… no brainer… Just get one.