Skip to content

Commit 617cf82

Browse files
committed
发布0.1.2。
1 parent 2ac4d62 commit 617cf82

File tree

5 files changed

+46
-15
lines changed

5 files changed

+46
-15
lines changed

README.md

Lines changed: 6 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# Shadow Editor
22

33
* 名称:Shadow Editor
4-
* 版本:v0.1.2(开发中)
4+
* 版本:v0.1.2
55
* 简介:基于`three.js`的场景编辑器。
66

77
<table>
@@ -23,21 +23,12 @@
2323
</tr>
2424
</table>
2525

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更新
3627

3728
1. 场景新增版本控制。场景表仅保存最新场景,历史数据保存在`场景名称_history`表中。
3829
2. 保存材质自动生成材质球缩略图。
3930
3. 保存载入服务端模型修改后的材质。
40-
4. 正方体、圆形、圆柱体、二十面体、酒杯、平面、球体、茶壶、轮胎、纽结都支持刚体组件,提供正方体和球体物理形状设置
31+
4. 正方体、圆形、圆柱体、二十面体、酒杯、平面、球体、茶壶、轮胎、纽结、加载模型都支持刚体组件。支持可视化设置碰撞体形状(正方体、球体)、质量和惯性
4132
5. 新增正方体和球体物理形状帮助器。
4233

4334
## 主要功能
@@ -60,14 +51,14 @@
6051
16. 提供历史记录和日志功能,支持撤销、重做。
6152
17. 支持导出`gltf``obj``ply``stl`模型。
6253
18. 支持地形:柏林地形、着色器地形。现仅提供示例,待开发完善。
63-
19. 支持`bullet`物理引擎。现仅提供示例,待开发完善
54+
19. 支持`bullet`物理引擎。正方体、圆形、圆柱体、二十面体、酒杯、平面、球体、茶壶、轮胎、纽结和加载的模型都支持刚体组件。支持可视化设置碰撞体形状(正方体、球体)、质量和惯性。
6455
20. 具有平移、旋转、缩放、在物体表面绘制点、线、贴花的工具,实时统计场景种物体、顶点、三角形数量。
6556

6657
## 项目截图
6758

68-
大型舞会现场。
59+
混乱的世界。(物理引擎刚体组件演示)
6960

70-
![image](images/scene20181223.png)
61+
![image](images/scene20190111.png)
7162

7263
[点击此处](images/README.md)查看更多截图。
7364

ShadowEditor.Web/src/player/component/PlayerPhysics.js

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,11 @@ function PlayerPhysics(app) {
6161
this.events = [
6262
new ThrowBallEvent(this.app, this.world, this.rigidBodies)
6363
];
64+
65+
// api函数
66+
Object.assign(app, {
67+
addPhysicsObject: this.addPhysicsObject.bind(this)
68+
});
6469
}
6570

6671
PlayerPhysics.prototype = Object.create(PlayerComponent.prototype);
@@ -196,4 +201,26 @@ PlayerPhysics.prototype.createRigidBody = function (obj) {
196201
return new Ammo.btRigidBody(info);
197202
};
198203

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+
199226
export default PlayerPhysics;

UpdateLog.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,16 @@
11
# 更新日志
22

3+
**v0.1.2**
4+
5+
* 发布日期:2019年1月11日
6+
* 更新日志:
7+
8+
1. 场景新增版本控制。场景表仅保存最新场景,历史数据保存在`场景名称_history`表中。
9+
2. 保存材质自动生成材质球缩略图。
10+
3. 保存载入服务端模型修改后的材质。
11+
4. 正方体、圆形、圆柱体、二十面体、酒杯、平面、球体、茶壶、轮胎、纽结、加载模型都支持刚体组件。支持可视化设置碰撞体形状(正方体、球体)、质量和惯性。
12+
5. 新增正方体和球体物理形状帮助器。
13+
314
**v0.1.1**
415

516
* 发布日期:2018年12月30日

images/README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
# 更多截图
22

3+
![image](scene20190111.png)
4+
35
![image](scene20181223.png)
46

57
![image](scene20181215.png)

images/scene20190111.png

1.25 MB
Loading

0 commit comments

Comments
 (0)