This app was mentioned in 10 comments, with an average of 2.00 upvotes
コントローラー不要のゲームならThe HeightかLost in the Kismetとかがいいと思う
端末にもよるけどストビューはVRに標準対応してるよ
My personal immersion test is The Height. I am afraid of heights, and in Cardboard my heart starts racing whenever I get close to an edge. With the regular Xiaozhai lenses the same didn't trigger any reaction, instead I started walking across edges, just to see what happens. There was no threat, it simply didn't feel real. Accidentally doing the same in Cardboard leads to a huge adrenalin spike. One scene in 4 Rooms requires jumping onto a key from a platform about 25m high, and even though I have done this dozens of times, I still approach the edge as slow as possible and loath having to jump, as the feeling of it being real remains.
I have a number of plastic viewers, and so far like the Xiaozhai best due to adjustable IPD, the lens screws, the phone holder, low weight and a hack friendly case. I was aware of the low FoV when ordering them and got them as a base for modifications, because creating something with similar slim and flexible lens holders is rather difficult. Before I had build several viewers out of cardboard, but as I have a lower than average IPD, I need to adjust the lens distance rather often for different apps or videos, requiring some type of thin, but stable lens holders. Having a large nose, it was also necessary to remove a lot of plastic to get it to fit in, and even now the lens holders almost touch the nose. It pretty much only works because the holders are connected to the case at the top and thus float freely next to the nose.
The Height is probably still the best, as it precedes Cardboard and was targeting smartphones released around 2010. It was a demo game for the Durovis Dive and contrary to many of the earlier VR apps it is a full game, requires no controller and works and looks very smooth even on low end devices. As the name implies, height is an important factor, and as looking down a steep edge in VR is a very intense feeling, it is an impressive introduction to virtual worlds.
Another fun, but slightly shorter game running fast on slow phones would be VR Jump n Run from /u/tuyga.
It's a Xiaozhai 360 and this remote.
If you move the joystick now, you should see a mouse cursor. The start button acts as left mouse button and is the only thing most apps will recognize, as it does the same as tapping the screen. In Cardboard.app you can use it as an alternative to the magnet.
Moving the switch from Key to Game puts the controller into gamepad mode, but currently only a few apps support using a gamepad. It works in The height and I could use it to move around in the Google Earth section of the Cardboard.app in previous versions, which now always crashes, so I'm not sure it still works. Be aware that the gamepad is rotated by 90° counter clock wise.
100均で材料揃えてGoogleCardboardを作ろう
https://play.google.com/store/apps/details?id=com.divegames.theheight&hl=ja
https://play.google.com/store/apps/details?id=com.PixelsOfEight.SGVRlogRide&hl=ja
こういうVRゲームが堪能できるぞ
ちなみにAmazonでも1000円ぐらいでこのゴーグル売ってる
Have you tried the calibration from the Dive SDK, e.g in The height, where you have to place the phone on a desk for about 10sec, and afterwards it compensates the measured drift in the app? Sort of works, but seems to never store the data, so one has to do it every time the app is started. The Dive SDK is closed source, so if the results are similar, Foculus might be very useful for Cardboard developers. It also uses the magnetometer, so the improved precision may be the result of sensor fusion, but then the calibration shouldn't make such a big difference.
From the change log it seems that the sensors can be queried in 0.65ms, or at about 1500Hz, but it is unclear if the sensors actually deliver these many data points. Can you set the frequency or see how often they are actually pulled? I'll definitely have to take a closer look at their calibration code.
Thanks for the infos btw, very interesting project.
Not sure if this a misunderstanding. Only GearVR apps scale up, and there is no 1080p phone that works with GearVR apps, so there cannot be any gain. The advantages of using a higher resolution screen even if you only upscale is partly a reduced screen door effect due to smaller pixels, but also due to the fact that the upscaling is actually good. You really get the full 2560 * 1440 pixels, it's only that some of them are created by interpolation instead of rendering. That doesn't help when looking directly at high resolution textures, but it helps if you look at geometry, as all the edges will look better.
And the importance of high end textures depends a lot on the way a scene is build. One of the problems with textures is always that you watch them from different distances. Let's say you are standing in an hallway with several doors. You can look at the one next to you, and because you are so close, you will immediately notice that it is pixilated. It would require insanely high resolution textures or procedural shaders to avoid that. Lowres textures might look better at close range with a lower resolution screen, as a lowres screen partly covers it up. You'll still see the pixels, but you'll attribute this to the screen, not the texture.
Now if you look at a door even slightly further away, the image will become so small that the texture actually has to be downscaled. And this is where hires screens can shine, as they provide more details. Rendering at native resolution will be the best, but upscaled scenes will look better too.
The higher resolution even helps with stereoscopy: 3D in VR is created by rendering different images for each eye. In these images objects are moved slightly to the left or right. But the further away an object is, the less it has to be moved, and at one point the movement becomes smaller than one pixel, so both eyes get the same image. For the DK2 with 1920 * 1080 this means that objects that are further than about 9m away will always be rendered monoscopic and other depth cues are required for the brain to determine depth and size. This is a normal part of human vision, if you look at a mountain or the moon, the parallax is always null, but a higher resolution means that stereoscopy works for objects slightly further away.
And everything that is pure geometry will obviously look very crisp. Due to the magnification something like The height shows a lot of aliasing on a lowres phone unless you force it to use 4x MSAA. It should look a lot better in 1440p. As upscaling implies some antialiasing, it would actually be hard to tell the difference between a natively rendered or upscaled scene that only contains untextured geometry.
It is called drift and is a side effect of uncalibrated gyroscope sensors. Drift affects different phones differently, some like the Galaxy S4 drift horribly. As this depends on the sensors in your phone (and the firmware they are running on), there is nothing you can do yourself to stop it.
Because this has been a problem for some time, several approaches to counteract drift exist, but only a few work for Cardboard apps. The best way is to compare the rotation reported by the gyro to some absolute values, e.g. reported from a compass or an external, fixed object like the Oculus Rift DK2 camera. Cardboard lacks an external fixed reference point, and the magnet switch in Cardboard v1 messed up the option to use the compass. The second best way is to calibrate the sensors to determine the "phantom rotation" and subtract it from the measured movement. This is done e.g. on the Gear VR, but as far as we know no phone manufacturer does this.
As none of these work for Cardboard, newer versions of the SDKs (software development kit) used to create VR software introduced a statistical approach: they observe the measured rotation for some time, and if they detect a constant, small movement in one direction, they assume that this is phantom rotation and remove it from the measured rotation data. This approach is somewhat flawed, as the drift isn't necessarily constant, but it can turn the experience from unbearable to usable.
Unfortunately it is impossible to tell which VR apps actually used SDKs that support drift correction. The two most often used SDKs capable to do this are the Durovis Dive SDK and the Cardboard SDK. The Dive SDK requires setting down the phone for about 10-20sec to measure drift, the Cardboard SDK tries to do this on the fly. To check if this works for you, try The Height Android/iOS for Dive SDK and the official Cardboard.app Android/iOS for Cardboard SDK. Both should stop to drift after a few seconds of not moving the phone.
If this stops the drift on your phone, you can basically only hope that all apps will switch to the newer SDKs over time. If you have an app that drifts, you can try to contact the author about an update, but by now most of the apps that are still maintained would have been updated to sufficiently new SDK versions. There are some other things you can try like restarting the phone to reset the sensors, but usually the gyro error causing drift is permanent and cannot be fixed without buying another phone.
> but there is a defined difference
I agree with you that the Rift and Gear VR are playing in another league. Where I don't agree is that there is a "defined difference". It is actually a pretty arbitrary difference. Before Oculus/Samsung came out with the Gear VR, pretty much everybody agreed that VR required a fast PC, a last gen graphics card and at least 75Hz, 90Hz would be better. Then Oculus said it would also work on a phone with a CPU/GPU capable of handling about 1/100th the draw calls of the current desktop GPUs and without positional tracking at 60Hz. The DK1 is considered a VR HMD, but pretty much any 1080p phone in Cardboard will look better (not necessarily feel better) due to the higher resolution. On 1440p phones most no longer recognize any screen door effect, party due to the lower FoV in Cardboard.
The only absolute condition for VR I'd accept is a sufficiently high FoV, because this is required for immersion. What number this means is up for debate, as there isn't even a clear definition how to measure FoV, but for me personally there is a very simple test: my stomach. I am afraid of heights, and of course this happens in VR too. It is not particularly desirable trait, but very useful for testing immersion.
The first time I experienced this was in <em>The Height</em>. I started building DIY Cardboards immediately after Google I/O 2014, initially with some 3x magnifying glasses, until I finally got the lenses recommended by Google. The Height was developed for the Durovis Dive, a phone based VR viewer preceding Cardboard and features, well, heights. This did nothing to me with the lower FoV provided by the magnifying glasses, but the first time I looked down from a high platform with a sufficiently large FoV, my stomach immediately cramped.
This wasn't expected, as I had stood at the same place before, just using different lenses. Since then I have modified a number of 3D viewers that were clearly intended for watching movies, not VR. These are sold cheap on ebay and Amazon and usually feature a focal length of about 75mm, resulting in an FoV of about 55°, compared to 80° on a 5" phone in Cardboard. The effect is always the same:
This is a completely instinctive reaction. I've had to jump down a high ledge in 4Rooms (one of my standard test apps) dozens of times over the last year to catch a key, and I never get used to it with a decently high FoV, my heart always starts racing and I have to approach the ledge very slowly.
Otherwise I'm one of the lucky persons who can stomach pretty much everything in VR: miserable frame rates, low resolution, picture getting stuck, having camera control taken away, even glitches that make the image jump around. I do a lot of experimentation with high and low end phones, and the only factor that really counts for me is FoV. Fast phone, high resolution, low magnification: it doesn't feel real. Very old phone, 720p resolution, 15fps, high magnification: my brain switches to panic mode.
This is certainly not the average case. I've seen people feel sick for half an hour after trying a demo for five minutes, so every optimization that Oculus added to Android for Gear VR is important and at least for a part of the users even essential. Brendan Iribe, the CEO of Oculus VR, is one of the persons who are very sensitive and said that the Crescent Bay prototype of the Oculus Rift was the first one that he could actually use for more than a few minutes.
So if there could be any "defined difference" indicating a) what a VR device is and b) what a usable VR device is, I'd say a) everything that feels real (as in immersion, not as in presence) and b) everything that you can comfortably use for a longer stretch of time. These definitions obviously depend on the individual and the exact use case. For some a USD 1.56 Cardboard with USD 0.79 head straps and a used USD 45 Samsung Galaxy S II from ebay will be a usable VR device. For a few unlucky ones not even the Oculus Rift CV1 will be sufficient, so it makes little sense to define a DK1 as VR and a Note 4 in Cardboard 2.0 as a 3D view finder.
The biggest advantage of Gear VR is currently the 20ms motion-to-photon latency, compared to about 50ms in the DK1 and about 80ms on a Nexus 5 with Cardboard. This makes a huge difference to people sensitive to lag, and hardly any difference to someone who isn't. The other performance improvements are nice to keep a constant high frame rate with good graphics, but this again depends on sensitivity and most Cardboard apps are designed with much lower graphics performance in mind to achieve 60fps. Less pretty, but it works too. There is nothing absolutely necessary for everybody that could ultimately distinguish Gear VR as VR and Cardboard as not VR. And most of the GearVR improvements are expected to appear in the AndroidVR version too, blurring the difference even more. So even if you pick an arbitrary set of specs today which allows you to introduce a separation, this will be obsolete within a year.
Thanks a lot for the detailed review. If you don't mind, I have two additional questions:
1) Geometric distortion: I use several plastic HMDs modified to increase the FoV, and while this works, it emphasizes the fact that most Cardboard apps render an image that has the correct perspective only when displayed on a flat plane like a monitor. But for the eye to perceive it as correct, it would have to be projected onto the inside of a sphere. Consequently the perspective seems correct in the center of the image, but the further you move to the edge, the worse the discrepancy gets. This is especially visible when rotating the head, all the edges move at the wrong speed. As a higher FoV the edges further out, the mismatch becomes more visible, the world "bends".
The Fibrum apps switched to the Cardboard SDK some times ago, and this can enable barrel distortion correction on sufficiently fast phones, so the effect is possibly more visible on older apps using the Dive SDK like The height with its simple, geometric architecture. I assume that Tridef can also compensate for distortion introduced by the lenses/projection, and in addition allows setting the FoV. If this assumption is true, do you notice a significant difference in distortion between games rendered on the PC and (old) games rendered on the Note due to the higher FoV?
2) Weight: Unfortunately there are no technical details on either the Homido product page, the FAQ or the manual, which instead lists helpful tips like "Do not use while driving a vehicle. Do not use while playing sports." I found the Xiaozhai at 198g to be pleasant to wear, but the Unicorn VR at 320g too heavy, even though its padding is much better, therefore I'm looking for some numbers.