Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
车家大少爷
three.js
提交
6fcef0fb
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,发现更多精彩内容 >>
提交
6fcef0fb
编写于
1月 28, 2014
作者:
M
Mr.doob
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'patch-1' of
https://github.com/jox81/three.js
into dev
上级
2eac8943
ec089b7e
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
180 addition
and
0 deletion
+180
-0
examples/index.html
examples/index.html
+1
-0
examples/webgl_animation_keys
examples/webgl_animation_keys
+179
-0
未找到文件。
examples/index.html
浏览文件 @
6fcef0fb
...
...
@@ -105,6 +105,7 @@
"
webgl_animation_cloth
"
,
"
webgl_animation_skinning
"
,
"
webgl_animation_skinning_morph
"
,
"
webgl_animation_keys
"
,
"
webgl_buffergeometry
"
,
"
webgl_buffergeometry_custom_attributes_particles
"
,
"
webgl_buffergeometry_lines
"
,
...
...
examples/webgl_animation_keys
0 → 100644
浏览文件 @
6fcef0fb
<!DOCTYPE html>
<html
lang=
"en"
>
<head>
<title>
three.js webgl - animation - basic
</title>
<meta
charset=
"utf-8"
>
<meta
name=
"viewport"
content=
"width=device-width, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0"
>
<style>
body
{
color
:
#fff
;
font-family
:
Monospace
;
font-size
:
13px
;
text-align
:
center
;
background-color
:
#000
;
margin
:
0px
;
overflow
:
hidden
;
}
#info
{
position
:
absolute
;
top
:
0px
;
width
:
100%
;
padding
:
5px
;
}
a
{
color
:
#f00
;
}
</style>
</head>
<body>
<div
id=
"container"
></div>
<div
id=
"info"
>
<a
href=
"http://threejs.org"
target=
"_blank"
>
three.js
</a>
webgl - animation - basic use
</div>
<script
src=
"../build/three.min.js"
></script>
<script
src=
"js/Detector.js"
></script>
<script
src=
"js/libs/stats.min.js"
></script>
<script>
if
(
!
Detector
.
webgl
)
Detector
.
addGetWebGLMessage
();
var
container
,
stats
;
var
scene
,
camera
,
renderer
;
var
clock
=
new
THREE
.
Clock
();
var
init
=
function
(){
container
=
document
.
getElementById
(
'
container
'
);
camera
=
new
THREE
.
PerspectiveCamera
(
53
,
window
.
innerWidth
/
window
.
innerHeight
,
1
,
1000
);
camera
.
position
.
x
=
0
;
camera
.
position
.
y
=
0
;
camera
.
position
.
z
=
100
;
camera
.
lookAt
(
new
THREE
.
Vector3
(
0
,
0
,
0
));
renderer
=
new
THREE
.
WebGLRenderer
();
renderer
.
setSize
(
window
.
innerWidth
,
window
.
innerHeight
);
renderer
.
setClearColor
(
0x555555
,
1
);
container
.
appendChild
(
renderer
.
domElement
);
stats
=
new
Stats
();
stats
.
domElement
.
style
.
position
=
'
absolute
'
;
stats
.
domElement
.
style
.
top
=
'
0px
'
;
container
.
appendChild
(
stats
.
domElement
);
window
.
addEventListener
(
'
resize
'
,
onWindowResize
,
false
);
};
var
onWindowResize
=
function
()
{
windowHalfX
=
window
.
innerWidth
/
2
;
windowHalfY
=
window
.
innerHeight
/
2
;
camera
.
aspect
=
window
.
innerWidth
/
window
.
innerHeight
;
camera
.
updateProjectionMatrix
();
renderer
.
setSize
(
window
.
innerWidth
,
window
.
innerHeight
);
}
var
createScene
=
function
(){
scene
=
new
THREE
.
Scene
();
var
axisHelper
=
new
THREE
.
AxisHelper
(
1
);
scene
.
add
(
axisHelper
);
//SphereGeometry
var
sphereGeometry
=
new
THREE
.
SphereGeometry
(
5
,
32
,
32
);
var
material
=
new
THREE
.
MeshBasicMaterial
(
{
color
:
0xffff00
}
);
var
sphereMesh
=
new
THREE
.
Mesh
(
sphereGeometry
,
material
);
//Setup animation
sphereMesh
.
animation
=
{
"
name
"
:
"
Action
"
,
"
fps
"
:
25
,
"
length
"
:
2.0
,
"
hierarchy
"
:
[
{
"
parent
"
:
-
1
,
//root
"
keys
"
:
[
{
"
time
"
:
0
,
"
pos
"
:[
0
,
0
,
0
],
"
rot
"
:[
0
,
0
,
0
],
"
scl
"
:[
1
,
1
,
1
]
},
{
"
time
"
:
1.0
,
"
pos
"
:[
30
,
0
,
0
]
}
,
{
"
time
"
:
2.0
,
"
pos
"
:[
0
,
0
,
0
]
}
]
}
]
};
ensureLoop
(
sphereMesh
.
animation
);
THREE
.
AnimationHandler
.
add
(
sphereMesh
.
animation
);
var
sphereMeshAnimation
=
new
THREE
.
Animation
(
sphereMesh
,
sphereMesh
.
animation
.
name
,
THREE
.
AnimationHandler
.
LINEAR
)
sphereMeshAnimation
.
play
(
true
,
0
);
scene
.
add
(
sphereMesh
);
};
var
ensureLoop
=
function
(
animation
)
{
for
(
var
i
=
0
;
i
<
animation
.
hierarchy
.
length
;
i
++
)
{
var
obj
=
animation
.
hierarchy
[
i
];
var
first
=
obj
.
keys
[
0
];
var
last
=
obj
.
keys
[
obj
.
keys
.
length
-
1
];
last
.
pos
=
first
.
pos
;
last
.
rot
=
first
.
rot
;
last
.
scl
=
first
.
scl
;
}
};
var
animate
=
function
()
{
requestAnimationFrame
(
animate
);
var
delta
=
clock
.
getDelta
();
THREE
.
AnimationHandler
.
update
(
delta
);
render
();
};
var
render
=
function
()
{
renderer
.
render
(
scene
,
camera
);
stats
.
update
();
};
try
{
init
();
createScene
();
animate
();
}
catch
(
e
)
{
var
errorReport
=
"
Your program encountered an unrecoverable error. Error was:<br/><br/>
"
;
alert
(
errorReport
+
e
);
}
</script>
</body>
</html>
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录