File tree Expand file tree Collapse file tree 5 files changed +46
-15
lines changed
ShadowEditor.Web/src/player/component Expand file tree Collapse file tree 5 files changed +46
-15
lines changed Original file line number Diff line number Diff line change 1
1
# Shadow Editor
2
2
3
3
* 名称:Shadow Editor
4
- * 版本:v0.1.2(开发中)
4
+ * 版本:v0.1.2
5
5
* 简介:基于` three.js ` 的场景编辑器。
6
6
7
7
<table >
23
23
</tr>
24
24
</table >
25
25
26
- ## v0.1.1更新
27
-
28
- * 发布日期:2018年12月30日
29
- * 更新日志:
30
-
31
- 1 . 修复mmd动画和音频不同步问题。支持多个mmd模型与模型动画、相机动画同步。
32
- 2 . 新增点阵化特效、颜色偏移特效、残影特效、背景虚化、快速近似抗锯齿(FXAA)、毛刺特效、半色调特效、全屏抗锯齿(SSAA)、像素特效、可扩展环境光遮挡(SAO)、多重采样抗锯齿(SMAA)、屏幕空间环境光遮蔽(SSAO)、时间抗锯齿(TAA)。
33
- 3 . 新增粒子、预设体、角色面板。(暂未实现具体功能)
34
-
35
- ## v0.1.2即将更新
26
+ ## v0.1.2更新
36
27
37
28
1 . 场景新增版本控制。场景表仅保存最新场景,历史数据保存在` 场景名称_history ` 表中。
38
29
2 . 保存材质自动生成材质球缩略图。
39
30
3 . 保存载入服务端模型修改后的材质。
40
- 4 . 正方体、圆形、圆柱体、二十面体、酒杯、平面、球体、茶壶、轮胎、纽结都支持刚体组件,提供正方体和球体物理形状设置 。
31
+ 4 . 正方体、圆形、圆柱体、二十面体、酒杯、平面、球体、茶壶、轮胎、纽结、加载模型都支持刚体组件。支持可视化设置碰撞体形状(正方体、球体)、质量和惯性 。
41
32
5 . 新增正方体和球体物理形状帮助器。
42
33
43
34
## 主要功能
60
51
16 . 提供历史记录和日志功能,支持撤销、重做。
61
52
17 . 支持导出` gltf ` 、` obj ` 、` ply ` 、` stl ` 模型。
62
53
18 . 支持地形:柏林地形、着色器地形。现仅提供示例,待开发完善。
63
- 19 . 支持` bullet ` 物理引擎。现仅提供示例,待开发完善
54
+ 19 . 支持` bullet ` 物理引擎。正方体、圆形、圆柱体、二十面体、酒杯、平面、球体、茶壶、轮胎、纽结和加载的模型都支持刚体组件。支持可视化设置碰撞体形状(正方体、球体)、质量和惯性。
64
55
20 . 具有平移、旋转、缩放、在物体表面绘制点、线、贴花的工具,实时统计场景种物体、顶点、三角形数量。
65
56
66
57
## 项目截图
67
58
68
- 大型舞会现场。
59
+ 混乱的世界。(物理引擎刚体组件演示)
69
60
70
- ![ image] ( images/scene20181223 .png )
61
+ ![ image] ( images/scene20190111 .png )
71
62
72
63
[ 点击此处] ( images/README.md ) 查看更多截图。
73
64
Original file line number Diff line number Diff line change @@ -61,6 +61,11 @@ function PlayerPhysics(app) {
61
61
this . events = [
62
62
new ThrowBallEvent ( this . app , this . world , this . rigidBodies )
63
63
] ;
64
+
65
+ // api函数
66
+ Object . assign ( app , {
67
+ addPhysicsObject : this . addPhysicsObject . bind ( this )
68
+ } ) ;
64
69
}
65
70
66
71
PlayerPhysics . prototype = Object . create ( PlayerComponent . prototype ) ;
@@ -196,4 +201,26 @@ PlayerPhysics.prototype.createRigidBody = function (obj) {
196
201
return new Ammo . btRigidBody ( info ) ;
197
202
} ;
198
203
204
+ // --------------------------------- API函数 ------------------------------------------------
205
+
206
+ /**
207
+ * 添加一个物理物体
208
+ * @param {* } obj
209
+ */
210
+ PlayerPhysics . prototype . addPhysicsObject = function ( obj ) {
211
+ this . scene . add ( obj ) ;
212
+ if ( obj . userData && obj . userData . physics && obj . userData . physics . enabled ) {
213
+ var body = this . createRigidBody ( obj ) ;
214
+ if ( body ) {
215
+ obj . userData . physics . body = body ;
216
+ this . world . addRigidBody ( body ) ;
217
+
218
+ if ( obj . userData . physics . mass > 0 ) {
219
+ this . rigidBodies . push ( obj ) ;
220
+ body . setActivationState ( 4 ) ;
221
+ }
222
+ }
223
+ }
224
+ } ;
225
+
199
226
export default PlayerPhysics ;
Original file line number Diff line number Diff line change 1
1
# 更新日志
2
2
3
+ ** v0.1.2**
4
+
5
+ * 发布日期:2019年1月11日
6
+ * 更新日志:
7
+
8
+ 1 . 场景新增版本控制。场景表仅保存最新场景,历史数据保存在` 场景名称_history ` 表中。
9
+ 2 . 保存材质自动生成材质球缩略图。
10
+ 3 . 保存载入服务端模型修改后的材质。
11
+ 4 . 正方体、圆形、圆柱体、二十面体、酒杯、平面、球体、茶壶、轮胎、纽结、加载模型都支持刚体组件。支持可视化设置碰撞体形状(正方体、球体)、质量和惯性。
12
+ 5 . 新增正方体和球体物理形状帮助器。
13
+
3
14
** v0.1.1**
4
15
5
16
* 发布日期:2018年12月30日
Original file line number Diff line number Diff line change 1
1
# 更多截图
2
2
3
+ ![ image] ( scene20190111.png )
4
+
3
5
![ image] ( scene20181223.png )
4
6
5
7
![ image] ( scene20181215.png )
You can’t perform that action at this time.
0 commit comments