Nibre / MotherVR

This Mod brings current generation VR support to the game Alien: Isolation
https://twitter.com/nibre_
958 stars 56 forks source link

Observation about unwanted head translation (re. issues #34 and #11) #85

Open r0b1nw opened 6 years ago

r0b1nw commented 6 years ago

Noticed that in this latest v0.6.0 release the issue described in #11 and #34 now only manifests after running and crouching. To reproduce: 1 - Start a new game, or load an existing save. 2 - Get close to an eye-level object with some depth (for example, the box on the wall where you save your game). Turn your head first in the X direction and then the Y direction while closely observing your chosen object. Note that rotation seems good - there is no unwanted translation of your viewpoint. 3 - Crouch or Run. 4 - Repeat step 2. An undesirable viewpoint translation has been introduced when turning your head. This issue persists until the game is restarted/loaded.

Nibre commented 6 years ago

Thank you, I have been able to recreate what you're seeing. This will go a long way to helping me figure out what's wrong!

You mentioned that it only manifests itself now after running and crouching. How did this change with the newest update (as in, when did it happen before)?

r0b1nw commented 6 years ago

Hi Nibre. Sorry for not getting back to you earlier, but life got in the way for a few hours...besides which I wanted to actually take the time to load both versions of MotherVR and report this properly, so here goes...hope it helps :)

MotherVR v0.4.0

Avatar in standing position (regardless of whether you have been running or whether game has just been loaded/reloaded):

Test A1 Recalibrate position with LB + RB. Without leaning forward or back: Look left and right: Rotation is good. Translation may be present but is very slight. Look up and down. Rotation is good. Translation may be present but is very slight.

Test A2 Now lean forward slightly (ie. lean into the environment). Look left and right: Rotation is good. Translation may be present but is very slight. Look up and down. Rotation is good. Translation may be present but is very slight.

Test A3 Now lean back slightly (back past the point that your head was at when you recalibrated position). Look left and right: Rotation is good. Significant translation opposite to rotation. (eg. rotate left, view translates right). Look up and down. Rotation is good. Slight translation in direction of rotation (ie. rotate up, view translates up).

Other observations when standing: Leaning backwards, the further from the head viewpoint 'origin' (at the point when you recalibrated or loaded a level) the more pronounced the translation in the X direction (does not seem to affect the Y translation). Leaning forwards, distance from viewpoint 'origin' does not increase the observed translation.

Avatar in crouched position (regardless of whether you have been running or whether game has just been loaded/reloaded):

Test B1 Recalibrate position with LB + RB. Without leaning forward or back: Look left and right: Rotation is good. Translation is present but is slight. Look up and down. Rotation is good. Translation is present but is slight.

Test B2 Now lean forward slightly (ie. lean into the environment). Look left and right: Rotation is good. Significant translation in direction of rotation. (eg. rotate left, view translates left). Look up and down. Rotation is good. Slight translation in direction of rotation (ie. rotate up, view translates up).

Test B3 Now lean back slightly (back past the point that your head was at when you recalibrated position). Look left and right: Rotation is good. Significant translation opposite to rotation. (eg. rotate left, view translates right). Look up and down. Rotation is good. Significant translation in direction of rotation (ie. rotate up, view translates up).

Other observations when crouching: Leaning backwards, the further from the head viewpoint 'origin' (at the point when you recalibrated or loaded a level) the more pronounced the translation. (does not seem to affect the Y translation). Leaning forwards, the further from the head viewpoint 'origin' (at the point when you recalibrated or loaded a level) the more pronounced the translation. (does not seem to affect the Y translation). Oddly, when crouching there seems to be a 'sweet spot' very slighty behind the viewpoint 'origin' (ie. when leaning back) where translation is minimal.

MotherVR v0.6.0

Immediately after loading a save game or starting a new game (and before running or crouching):

Test C1 Without leaning forward or back: Look left and right: Rotation is good. No unwanted translation. Look up and down. Rotation is good. No unwanted translation.

Test C2 Now lean forward slightly (ie. lean into the environment). Look left and right: Rotation is good. No unwanted translation. Look up and down. Rotation is good. No unwanted translation.

Test C3 Now lean back slightly (back past the point that your head was at when you recalibrated position). Look left and right: Rotation is good. No unwanted translation. Look up and down. Rotation is good. No unwanted translation.

Other observations: Recalibrating position with LB + RB does not change outcome of the C tests. Distance from viewpoint 'origin' does not change outcome of the C tests.

After running or crouching:

Test D1 (In standing or crouched position) Without leaning forward or back: Look left and right: Rotation is good. Significant translation in direction of rotation. (eg. rotate left, view translates left). Look up and down. Rotation is good. Translation is present in direction of rotation but is slight.

Test D2 (In standing or crouched position) Now lean forward slightly (ie. lean into the environment). Look left and right: Rotation is good. Significant translation in direction of rotation. (eg. rotate left, view translates left). Look up and down. Rotation is good. Translation is present in direction of rotation but is slight.

Test D3 (In standing or crouched position) Now lean back slightly (back past the point that your head was at when you recalibrated position). Look left and right: Rotation is good. Significant translation in direction of rotation. (eg. rotate left, view translates left). Look up and down. Rotation is good. Translation is present in direction of rotation but is slight.

Other observations after running or crouching: Recalibrating position with LB + RB does not change outcome of the D tests. Distance from viewpoint 'origin' does not change outcome of the D tests. Unwanted translation remains until game is reloaded.

gusmanb commented 6 years ago

Same observation here. It seems like the camera pivot point is displaced after crouching or running and there's no way to return it to it's original position. Also, something I have noticed, if you go to a phone to save the game, while you're on the phone the displacement disappears, you can look around without any distortion, when you have finished saving the game and leave the phone the problem arises again.

Wokstar commented 6 years ago

First up, thanks Nibre. This mod is awesome, currently playing through on the Vive pro and it’s been one of my favourite VR experiences yet.

In regards to this issue I’ve noticed it happens after crouching, running, equipping an item (flare). It doesn’t seem to happen after using a save station (unless it is already applied from one of the above).

Do you know of a work-around that doesn’t involve re-loading the game? It’s not as much of an issue when in larger open areas, but when close to walls or in corridors the additional movement is a motion sickness inducer!

Thanks again and keep up the good work…

jonnypanic commented 5 years ago

I noticed this a little on 0.8 using WMR. It seems more subtle than I remember from 0.6, but it's there.