mirror of
https://github.com/tengge1/ShadowEditor.git
synced 2026-01-25 15:08:11 +00:00
Shadow Editor
- 名称:Shadow Editor
- 版本:v0.0.6(开发中)
- 说明:基于
three.js的场景编辑器。 - 源码:https://github.com/tengge1/ShadowEditor
- 示例:https://github.com/tengge1/ShadowEditor-examples
- 文档:https://tengge1.github.io/ShadowEditor/docs/release/index.html
主要功能
- 3D场景在线编辑。
- 内置多种几何体、光源,场景支持雾效、影子、反光、背景图片等。
- 支持导入多种不同格式的3D模型。
- 服务端使用
MongoDB保存模型和场景数据。 - 可视化修改场景、相机、几何体、材质、音频播放器、粒子发射器等属性。
- js脚本、着色器脚本在线编辑,带智能提示。
- 自带播放器,实时演示场景动态效果。
使用方法
该项目仅支持Windows系统,电脑上需要安装.Net Framework 4.5。
- 安装
NodeJs,转到ShadowEditor.Web目录,执行以下命令。
npm install
npm run build
- 下载
MongoDB,安装并启动MongoDB服务。MongoDB服务的默认端口为27017。
mongod --dbpath=D:\mongodb\db --logpath=D:\mongodb\log\mongoDB.log --install --serviceName MongoDB
net start MongoDB
- 编辑文件
ShadowEditor.Web/Web.config,将27017修改为你电脑上MongoDB服务的端口。
<add key="mongo_connection" value="mongodb://127.0.0.1:27017" />
-
使用
Visual Studio 2017打开项目,生成ShadowEditor.Web项目。 -
将
ShadowEditor.Web部署在iis上即可在浏览器中访问。
项目截图
更多截图请参见示例:https://github.com/tengge1/ShadowEditor-examples
开发日志
v0.0.5
- 发布日期:2018年9月16日
- 更新日志:
- 布局修改:右侧改为两栏,左边栏提供场景层次图和js脚本管理功能,右边栏是属性、设置和历史面板。 在编辑场景下方新增动画编辑(未完成),并把日志查看移动到这里。
- 属性面板组件化改造,新增基本信息、相机、几何体、光源、材质、粒子发射器、物理配置、场景、影子、 位移、音频监听器、背景音乐等多个组件。
- 背景音乐支持保存载入,提供音频管理。
- 修复编辑着色器程序功能,实时查看着色器效果。
- 新增茶壶参数编辑组件。
- 各种几何体都可以开启反射。
v0.0.4
- 发布日期:2018年9月2日
- 更新日志:
- 脚本编辑优化,脚本不再跟物体绑定,可以跟场景一起保存载入,提供
javascript、vertexShader、fragmentShader、programInfo示例脚本。
说明:自定义脚本中,默认有scene、camera、renderer三个全局变量,全局和事件中this都指代scene,可以使用函数
scene.getObjectByName获取场景对象,例如:
var box = this.getObjectByName('正方体1');
// 程序运行过程中,每帧都要执行
function update(clock, deltaTime) {
box.rotation.x += 0.01;
}
自定义脚本种支持init、start、update、stop、onClick、onDblClick、onKeyDown、onKeyUp、onMouseDown、onMouseMove、
onMouseUp、onMouseWheel、onResize 13种事件。
-
背景支持纯色、背景图片、立体贴图三种不同类型,可以保存载入。
-
新增网格、相机、点光源、平行光、聚光灯、半球光、矩形光、帮助器、骨骼9种帮助器的显示隐藏设置。
-
新增日志面板。
-
平板新增镜面特效。
v0.0.3
- 发布日期:2018年8月15日
- 更新日志:
- 使用
asp.net开发web服务端,使用MongoDB保存模型和场景数据。 - 15种格式3D模型的上传,并可以保存到场景。
- 场景的创建、保存、载入。
- 组、12种内置几何体、5种光源可以保存场景并载入。
- 85种three.js对象的序列化和反序列化。
v0.0.2
- 发布时间:2018年6月9日
- 更新日志:
- 使用
rollup重构three.js自带编辑器的代码。
v0.0.1
- 发布时间:2017年6月21日
- 更新日志:
- 主要完成three.js自带编辑器的翻译。
相关链接
- Three.js官网:https://threejs.org/
- Three.js源码:https://github.com/mrdoob/three.js/
- LOL模型:http://www.lolking.net/models
Description
Cross-platform 3D scene editor based on three.js, golang and mongodb for desktop and web. https://tengge1.github.io/ShadowEditor-examples/
Languages
JavaScript
89.7%
Go
4.9%
GLSL
3.6%
CSS
0.9%
HTML
0.9%
