Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Ablesons
three.js
提交
eca1b949
T
three.js
项目概览
Ablesons
/
three.js
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
three.js
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
eca1b949
编写于
1月 17, 2019
作者:
D
Diego Marcos
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Accomodate Chrome m73 WebXR API changes. Function renaming.
上级
3c863b82
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
36 addition
and
10 deletion
+36
-10
src/renderers/webvr/WebXRManager.js
src/renderers/webvr/WebXRManager.js
+36
-10
未找到文件。
src/renderers/webvr/WebXRManager.js
浏览文件 @
eca1b949
...
...
@@ -78,7 +78,19 @@ function WebXRManager( renderer ) {
this
.
setDevice
=
function
(
value
)
{
if
(
value
!==
undefined
)
device
=
value
;
if
(
value
instanceof
XRDevice
)
gl
.
setCompatibleXRDevice
(
value
);
if
(
value
instanceof
XRDevice
)
{
if
(
gl
.
setCompatibleXRDevice
!==
undefined
)
{
gl
.
setCompatibleXRDevice
(
value
);
}
else
{
gl
.
makeXRCompatible
();
}
}
};
...
...
@@ -99,6 +111,17 @@ function WebXRManager( renderer ) {
}
function
onRequestFrameOfReference
(
value
)
{
frameOfReference
=
value
;
renderer
.
setFramebuffer
(
session
.
baseLayer
.
framebuffer
);
animation
.
setContext
(
session
);
animation
.
start
();
}
this
.
setFramebufferScaleFactor
=
function
(
value
)
{
framebufferScaleFactor
=
value
;
...
...
@@ -123,16 +146,19 @@ function WebXRManager( renderer ) {
session
.
addEventListener
(
'
end
'
,
onSessionEnd
);
session
.
baseLayer
=
new
XRWebGLLayer
(
session
,
gl
,
{
framebufferScaleFactor
:
framebufferScaleFactor
}
);
session
.
requestFrameOfReference
(
frameOfReferenceType
).
then
(
function
(
value
)
{
frameOfReference
=
value
;
if
(
session
.
requestFrameOfReference
!==
undefined
)
{
renderer
.
setFramebuffer
(
session
.
baseLayer
.
framebuffer
);
session
.
requestFrameOfReference
(
frameOfReferenceType
).
then
(
onRequestFrameOfReference
);
animation
.
setContext
(
session
);
animation
.
start
();
}
else
{
}
);
session
.
requestReferenceSpace
(
{
type
:
'
stationary
'
,
subtype
:
'
eye-level
'
}
).
then
(
onRequestFrameOfReference
);
}
//
...
...
@@ -217,18 +243,18 @@ function WebXRManager( renderer ) {
function
onAnimationFrame
(
time
,
frame
)
{
pose
=
frame
.
getDevicePose
(
frameOfReference
);
pose
=
frame
.
getDevicePose
!==
undefined
?
frame
.
getDevicePose
(
frameOfReference
)
:
frame
.
getViewerPose
(
frameOfReference
);
if
(
pose
!==
null
)
{
var
layer
=
session
.
baseLayer
;
var
views
=
frame
.
views
;
var
views
=
frame
.
views
||
pose
.
views
;
for
(
var
i
=
0
;
i
<
views
.
length
;
i
++
)
{
var
view
=
views
[
i
];
var
viewport
=
layer
.
getViewport
(
view
);
var
viewMatrix
=
pose
.
getViewMatrix
(
view
);
var
viewMatrix
=
view
.
viewMatrix
||
pose
.
getViewMatrix
(
view
);
var
camera
=
cameraVR
.
cameras
[
i
];
camera
.
matrix
.
fromArray
(
viewMatrix
).
getInverse
(
camera
.
matrix
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录