[webvr] ThreeJS WebVR examples are appearing black in WebVR

RESOLVED FIXED

Status

()

Core
Graphics
RESOLVED FIXED
2 years ago
2 years ago

People

(Reporter: kip, Assigned: kip)

Tracking

Trunk
All
Windows
Points:
---

Firefox Tracking Flags

(firefox52 affected)

Details

(URL)

(Assignee)

Description

2 years ago
I have reproduced the black screen within the HMD with the threejs WebVR video example with an Oculus DK2 and the current Nightly.

The video was playing correctly on the 2d monitor before entering VR, suggesting that it is not an unsupported codec.
(Assignee)

Comment 1

2 years ago
I have confirmed that this issue is also affecting OpenVR / HTC Vive
(Assignee)

Comment 2

2 years ago
It appears that this occurs for all Threejs.org webvr examples and is not specific to video.
Summary: [webvr] 360 Video Sites are appearing black in WebVR → [webvr] ThreeJS WebVR examples are appearing black in WebVR
(Assignee)

Comment 3

2 years ago
An update to the VREffect.js used by threejs caused the regression.

There is a difference in how Firefox and the Chromium experimental builds return VRLayer.leftBounds and VRLayer.rightBounds.

When not set, Firefox is returning an empty array for these attributes, while Chromium is returning null.

Brian Chirls will be updating the VREffect.js to compensate.

I'll add an issue on the WebVR spec to ensure the WebIDL defines the attributes as not nullable.
(Assignee)

Comment 4

2 years ago
dictionary VRLayer {
  VRSource? source = null;
  sequence<float>? leftBounds = [ ];
  sequence<float>? rightBounds = [ ];
};

Must become:

dictionary VRLayer {
  VRSource? source = null;
  sequence<float> leftBounds = [ ];
  sequence<float> rightBounds = [ ];
};

Firefox already has this fix, but the WebIDL in the spec is still including the nullability.
(Assignee)

Comment 5

2 years ago
I have added a PR to the spec to update the WebIDL to match that used by Firefox:

https://github.com/w3c/webvr/pull/96

I'll close this issue as no changes will be required, assuming the WebIDL change can be merged into the spec.
Status: NEW → RESOLVED
Last Resolved: 2 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.