8000
Skip to content

Add first person observer view - #57

Merged
Manishearth merged 5 commits into
immersive-web:masterfrom
Manishearth:fpo
Jun 18, 2020
Merged

Add first person observer view#57
Manishearth merged 5 commits into
immersive-web:masterfrom
Manishearth:fpo

Conversation

@Manishearth
Copy link
Copy Markdown
Contributor

This adds a first-person-observer feature flag that can be used to signal support for a first person observer view.

cc @cabanier @thetuvix

Fixes #53

Comment thread index.bs Outdated

[=First-person observer views=] MAY use a different [=blend technique=] over the primary [=views=]. In such a case, this [=blend technique=] MAY be exposed on the {{XRView}} through {{XRView/overrideBlendMode}}.

The <dfn attribute for=XRView>overrideBlendMode</dfn> attribute is <code>null</code> for all primary [=views=], and is the [=view=]'s [=blend technique=] for [=views=] where the [=blend technique=] differs from the {{XRSession/environmentBlendMode}}.
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

When will an observer view ever be not alpha-blend'?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hm that's a good point.

I actually wrote this text back when I was thinking of having a general "secondary-views" feature (as discussed in the other spec) and in that case you definitely want this. But if we're doing FPO only it seems reasonable to mandate that the blend mode is always alpha-blend.

Comment thread index.bs Outdated

Many AR devices have a camera, however the camera is typically not aligned with the eyes. When doing video capture of the session for streaming or saving to a file, it is suboptimal to simply composite this camera feed with one of the rendered eye feeds as there will be an internal offset. Devices may use reprojection or other tricks to fix up the stream, but some may expose a third [=view=], the <dfn>first-person observer view</dfn>, which has an [=view/eye=] of {{XREye/"none"}}.

Most content will not expect more than two [=view=]s, and content MUST explicitly opt-in to receiving a [=first-person observer view=] by enabling a "<dfn>first-person-observer</dfn>" [=feature descriptor=].
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Most content will not expect more than two [=view=]s, and

remove this sentence

Comment thread index.bs Outdated
First Person Observer Views {#first-person-observer}
--------------------------------

Many AR devices have a camera, however the camera is typically not aligned with the eyes. When doing video capture of the session for streaming or saving to a file, it is suboptimal to simply composite this camera feed with one of the rendered eye feeds as there will be an internal offset. Devices may use reprojection or other tricks to fix up the stream, but some may expose a third [=view=], the <dfn>first-person observer view</dfn>, which has an [=view/eye=] of {{XREye/"none"}}.
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Mark this as non-normative

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It can't be, we're defining the view type.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe you can break it apart in 2 sections.

@Manishearth
Copy link
Copy Markdown
Contributor Author

This has been tweaked to have the feature descriptor be more generic and in the core spec (immersive-web/webxr#1083)

@toji toji left a comment
Copy link 8000
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@Manishearth
Manishearth merged commit dd8c83f into immersive-web:master Jun 18, 2020
@Manishearth
Manishearth deleted the fpo branch June 18, 2020 20:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Global environment blend mode does not work with "third eye" video capture views

3 participants

0