Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
车家大少爷
three.js
提交
a3e8db4c
T
three.js
项目概览
车家大少爷
/
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,发现更多精彩内容 >>
提交
a3e8db4c
编写于
8月 16, 2017
作者:
M
Mr.doob
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Editor: Updated WebVR code.
上级
f8ac3ca2
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
25 addition
and
165 deletion
+25
-165
editor/index.html
editor/index.html
+0
-47
editor/js/Editor.js
editor/js/Editor.js
+0
-7
editor/js/Menubar.File.js
editor/js/Menubar.File.js
+1
-15
editor/js/Viewport.js
editor/js/Viewport.js
+3
-62
editor/js/libs/app.js
editor/js/libs/app.js
+21
-34
未找到文件。
editor/index.html
浏览文件 @
a3e8db4c
...
...
@@ -85,8 +85,6 @@
<script
src=
"js/Player.js"
></script>
<script
src=
"js/Script.js"
></script>
<script
src=
"../examples/js/effects/VREffect.js"
></script>
<script
src=
"../examples/js/controls/VRControls.js"
></script>
<script
src=
"../examples/js/vr/WebVR.js"
></script>
<script
src=
"js/Storage.js"
></script>
...
...
@@ -392,51 +390,6 @@
}, false );
*/
// VR
var
groupVR
;
// TODO: Use editor.signals.enteredVR (WebVR 1.0)
editor
.
signals
.
enterVR
.
add
(
function
()
{
if
(
groupVR
===
undefined
)
{
groupVR
=
new
THREE
.
HTMLGroup
(
viewport
.
dom
);
editor
.
sceneHelpers
.
add
(
groupVR
);
var
mesh
=
new
THREE
.
HTMLMesh
(
sidebar
.
dom
);
mesh
.
position
.
set
(
15
,
0
,
15
);
mesh
.
rotation
.
y
=
-
0.5
;
groupVR
.
add
(
mesh
);
var
signals
=
editor
.
signals
;
function
updateTexture
()
{
mesh
.
material
.
map
.
update
();
}
signals
.
objectSelected
.
add
(
updateTexture
);
signals
.
objectAdded
.
add
(
updateTexture
);
signals
.
objectChanged
.
add
(
updateTexture
);
signals
.
objectRemoved
.
add
(
updateTexture
);
signals
.
sceneGraphChanged
.
add
(
updateTexture
);
signals
.
historyChanged
.
add
(
updateTexture
);
}
groupVR
.
visible
=
true
;
}
);
editor
.
signals
.
exitedVR
.
add
(
function
()
{
if
(
groupVR
!==
undefined
)
groupVR
.
visible
=
false
;
}
);
</script>
</body>
</html>
editor/js/Editor.js
浏览文件 @
a3e8db4c
...
...
@@ -22,13 +22,6 @@ var Editor = function () {
startPlayer
:
new
Signal
(),
stopPlayer
:
new
Signal
(),
// vr
enterVR
:
new
Signal
(),
enteredVR
:
new
Signal
(),
exitedVR
:
new
Signal
(),
// actions
showModal
:
new
Signal
(),
...
...
editor/js/Menubar.File.js
浏览文件 @
a3e8db4c
...
...
@@ -273,8 +273,6 @@ Menubar.File = function ( editor ) {
if
(
vr
)
{
includes
.
push
(
'
<script src="js/VRControls.js"></script>
'
);
includes
.
push
(
'
<script src="js/VREffect.js"></script>
'
);
includes
.
push
(
'
<script src="js/WebVR.js"></script>
'
);
}
...
...
@@ -297,19 +295,7 @@ Menubar.File = function ( editor ) {
if
(
vr
)
{
loader
.
load
(
'
../examples/js/controls/VRControls.js
'
,
function
(
content
)
{
zip
.
file
(
'
js/VRControls.js
'
,
content
);
}
);
loader
.
load
(
'
../examples/js/effects/VREffect.js
'
,
function
(
content
)
{
zip
.
file
(
'
js/VREffect.js
'
,
content
);
}
);
loader
.
load
(
'
../examples/js/WebVR.js
'
,
function
(
content
)
{
loader
.
load
(
'
../examples/js/vr/WebVR.js
'
,
function
(
content
)
{
zip
.
file
(
'
js/WebVR.js
'
,
content
);
...
...
editor/js/Viewport.js
浏览文件 @
a3e8db4c
...
...
@@ -22,18 +22,6 @@ var Viewport = function ( editor ) {
var
objects
=
[];
//
var
vrEffect
,
vrControls
;
if
(
WEBVR
.
isAvailable
()
===
true
)
{
var
vrCamera
=
new
THREE
.
PerspectiveCamera
();
vrCamera
.
projectionMatrix
=
camera
.
projectionMatrix
;
camera
.
add
(
vrCamera
);
}
// helpers
var
grid
=
new
THREE
.
GridHelper
(
60
,
60
);
...
...
@@ -283,12 +271,6 @@ var Viewport = function ( editor ) {
}
);
signals
.
enterVR
.
add
(
function
()
{
vrEffect
.
isPresenting
?
vrEffect
.
exitPresent
()
:
vrEffect
.
requestPresent
();
}
);
signals
.
themeChanged
.
add
(
function
(
value
)
{
switch
(
value
)
{
...
...
@@ -345,19 +327,6 @@ var Viewport = function ( editor ) {
container
.
dom
.
appendChild
(
renderer
.
domElement
);
if
(
WEBVR
.
isAvailable
()
===
true
)
{
vrControls
=
new
THREE
.
VRControls
(
vrCamera
);
vrEffect
=
new
THREE
.
VREffect
(
renderer
);
window
.
addEventListener
(
'
vrdisplaypresentchange
'
,
function
(
event
)
{
effect
.
isPresenting
?
signals
.
enteredVR
.
dispatch
()
:
signals
.
exitedVR
.
dispatch
();
},
false
);
}
render
();
}
);
...
...
@@ -557,49 +526,21 @@ var Viewport = function ( editor ) {
//
function
animate
()
{
requestAnimationFrame
(
animate
);
if
(
vrEffect
&&
vrEffect
.
isPresenting
)
{
render
();
}
}
function
render
()
{
sceneHelpers
.
updateMatrixWorld
();
scene
.
updateMatrixWorld
();
if
(
vrEffect
&&
vrEffect
.
isPresenting
)
{
renderer
.
render
(
scene
,
camera
);
vrControls
.
update
();
if
(
renderer
instanceof
THREE
.
RaytracingRenderer
===
false
)
{
camera
.
updateMatrixWorld
();
vrEffect
.
render
(
scene
,
vrCamera
);
vrEffect
.
render
(
sceneHelpers
,
vrCamera
);
}
else
{
renderer
.
render
(
scene
,
camera
);
if
(
renderer
instanceof
THREE
.
RaytracingRenderer
===
false
)
{
renderer
.
render
(
sceneHelpers
,
camera
);
}
renderer
.
render
(
sceneHelpers
,
camera
);
}
}
requestAnimationFrame
(
animate
);
return
container
;
};
editor/js/libs/app.js
浏览文件 @
a3e8db4c
...
...
@@ -9,19 +9,17 @@ var APP = {
var
loader
=
new
THREE
.
ObjectLoader
();
var
camera
,
scene
,
renderer
;
var
controls
,
effect
,
cameraVR
,
isVR
;
var
events
=
{};
this
.
dom
=
document
.
createElement
(
'
div
'
);
var
dom
=
document
.
createElement
(
'
div
'
);
this
.
dom
=
dom
;
this
.
width
=
500
;
this
.
height
=
500
;
this
.
load
=
function
(
json
)
{
isVR
=
json
.
project
.
vr
;
renderer
=
new
THREE
.
WebGLRenderer
(
{
antialias
:
true
}
);
renderer
.
setClearColor
(
0x000000
);
renderer
.
setPixelRatio
(
window
.
devicePixelRatio
);
...
...
@@ -36,7 +34,13 @@ var APP = {
}
this
.
dom
.
appendChild
(
renderer
.
domElement
);
if
(
json
.
project
.
vr
)
{
renderer
.
vr
.
enabled
=
true
;
}
dom
.
appendChild
(
renderer
.
domElement
);
this
.
setScene
(
loader
.
parse
(
json
.
scene
)
);
this
.
setCamera
(
loader
.
parse
(
json
.
camera
)
);
...
...
@@ -116,26 +120,20 @@ var APP = {
camera
.
aspect
=
this
.
width
/
this
.
height
;
camera
.
updateProjectionMatrix
();
if
(
isVR
===
true
)
{
if
(
renderer
.
vr
.
enabled
)
{
cameraVR
=
new
THREE
.
PerspectiveCamera
();
cameraVR
.
projectionMatrix
=
camera
.
projectionMatrix
;
camera
.
add
(
cameraVR
);
WEBVR
.
checkAvailability
().
catch
(
function
(
message
)
{
controls
=
new
THREE
.
VRControls
(
cameraVR
);
effect
=
new
THREE
.
VREffect
(
renderer
);
dom
.
appendChild
(
WEBVR
.
getMessageContainer
(
message
)
);
if
(
WEBVR
.
isAvailable
()
===
true
)
{
}
);
this
.
dom
.
appendChild
(
WEBVR
.
getButton
(
effect
)
);
}
WEBVR
.
getVRDisplay
(
function
(
device
)
{
if
(
WEBVR
.
isLatestAvailable
()
===
false
)
{
renderer
.
vr
.
setDevice
(
device
);
dom
.
appendChild
(
WEBVR
.
getButton
(
device
,
renderer
.
domElement
)
);
this
.
dom
.
appendChild
(
WEBVR
.
getMessage
()
);
}
}
);
}
...
...
@@ -193,18 +191,7 @@ var APP = {
}
if
(
isVR
===
true
)
{
camera
.
updateMatrixWorld
();
controls
.
update
();
effect
.
render
(
scene
,
cameraVR
);
}
else
{
renderer
.
render
(
scene
,
camera
);
}
renderer
.
render
(
scene
,
camera
);
prevTime
=
time
;
...
...
@@ -247,9 +234,9 @@ var APP = {
this
.
dispose
=
function
()
{
while
(
this
.
dom
.
children
.
length
)
{
while
(
dom
.
children
.
length
)
{
this
.
dom
.
removeChild
(
this
.
dom
.
firstChild
);
dom
.
removeChild
(
dom
.
firstChild
);
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录