XRRenderState: baseLayer 屬性
XRRenderState 介面的只讀 **baseLayer** 屬性返回 XRWebGLLayer 例項,該例項是點陣圖影像的來源,並描述了影像如何在裝置中渲染。
此屬性是隻讀的;但是,您可以透過 XRSession.updateRenderState 間接更改其值。
值
一個 XRWebGLLayer 物件,在渲染場景的每一幀時,它被用作世界內容的來源。
請參閱下面的示例,瞭解如何使用 updateRenderState() 來設定當前用於渲染場景的 XRWebGLLayer。
示例
您可以透過呼叫 updateRenderState() 來設定渲染使用的 XRWebGLLayer,如下所示:
js
let canvas = document.querySelector("canvas");
gl = canvas.getContext("webgl", { xrCompatible: true });
setNewWebGLLayer();
function setNewWebGLLayer(gl) {
if (!gl) {
/* WebGL not available */
return;
}
xrSession.updateRenderState({
baseLayer: new XRWebGLLayer(xrSession, gl),
});
}
在這裡,第一行獲得的 canvas 是 WebGL 將要繪製的 canvas。該上下文被傳遞給 XRWebGLLayer() 以建立一個 XRWebGLLayer,該 XRWebGLLayer 在呈現時使用 WebGL 上下文 gl 的內容作為世界影像的來源。
規範
| 規範 |
|---|
| WebXR Device API # dom-xrrenderstate-baselayer |
瀏覽器相容性
載入中…