安全上下文
此特征只可用于
安全上下文
(HTTPS),在某些或所有
支持浏览器
.
WebXR 设备 API
XRWebGLLayer()
constructor creates and returns a new
XRWebGLLayer
object, providing the linkage between the WebXR device and the WebGL graphics layer used to render the 3D scene.
let glLayer = new XRWebGLLayer(session, context, layerInit);
session
XRSession
object specifying the WebXR session which will be rendered using the WebGL context.
context
WebGLRenderingContext
or
WebGL2RenderingContext
identifying the WebGL drawing context to use for rendering the scene for the specified WebXR session.
layerInit
可选
An object conforming to the
XRWebGLLayerInit
dictionary, providing configuration options for the new
XRWebGLLayer
. The options available are:
alpha
可选
alpha
Boolean property is
true
. Otherwise, the color buffer will not have an alpha channel. The default value is
true
.
antialias
可选
true
if anti-aliasing is to be used when rendering in the context; otherwise
false
. The browser selects the anti-aliasing method to use; there is no support for requesting a specific mode yet. The default value is
true
.
depth
可选
true
, requests that the new layer have a depth buffer; otherwise, no depth layer is allocated. The default is
true
.
framebufferScaleFactor
可选
XRWebGLLayer
function
XRWebGLLayer.getNativeFramebufferScaleFactor()
returns the scale that would result in a 1:1 pixel ratio, thereby ensuring that the rendering is occurring at the device's native resolution. The default is 1.0.
ignoreDepthValues
可选
false
.
stencil
可选
true
, requests that the new layer include a stencil buffer. Otherwise, no stencil buffer is allocated. The default is
false
.
A newly-created
XRWebGLLayer
which links the specified
XRSession
to the WebGL context given by
context
, which will be used as the renderer for the session. Any options specified in
layerInit
are used to tailor the rendering system's configuration.
InvalidStateError
新的
XRWebGLLayer
could not be created due to one of a number of possible state errors:
XRSession
指定通过
session
has already been stopped.
context
,
has been lost
for any reason, such as a GPU switch or reset.
session
is immersive but the
context
is not WebXR compatible.
OperationError
The resources (including memory buffers) needed for the layer to operate could not be allocated.
| 规范 | 状态 | 注释 |
|---|---|---|
|
WebXR 设备 API
The definition of 'XRWebGLLayer()' in that specification. |
工作草案 | 初始定义。 |
| 桌面 | 移动 | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
XRWebGLLayer()
构造函数
|
Chrome 79 | Edge 79 | Firefox No | IE No | Opera No | Safari No | WebView Android No | Chrome Android 79 | Firefox Android No | Opera Android No | Safari iOS No | Samsung Internet Android 11.2 |
完整支持
不支持
XRWebGLLayer
XRWebGLLayer()
Navigator.xr
WebGLRenderingContext.makeXRCompatible()
XR
XRBoundedReferenceSpace
XRFrame
XRInputSource
XRInputSourceArray
XRInputSourceEvent
XRInputSourcesChangeEvent
XRPose
XRReferenceSpace
XRReferenceSpaceEvent
XRRenderState
XRRigidTransform
XRSession
XRSessionEvent
XRSpace
XRView
XRViewerPose
XRViewport