feng3d是使用TypeScript进行编写基于WebGL的3D游戏引擎,致力于打造一个优秀的3d游戏引擎以及易用且可以快速开发项目的配套编辑器。
源码:https://gitee.com/feng3d/feng3d.git
文档:https://feng3d.com/feng3d/docs
npm install feng3d
import { Color4, Node3D, ticker } from 'feng3d';
// 创建根结点
const root = new Node3D();
root.addComponent('WebGLRenderer3D');
const scene = root.addComponent('Scene3D');
scene.background = new Color4(0.408, 0.38, 0.357, 1.0);
const camera = new Node3D().addComponent('Camera3D');
scene.entity.addChild(camera.entity);
const cube = Node3D.createPrimitive('Cube');
cube.y = -1;
cube.z = 3;
scene.entity.addChild(cube);
ticker.onFrame(() =>
{
cube.ry++;
});
- @feng3d/event 基于TypeScript实现的事件系统。
- @feng3d/bezier 解决n次Bézier曲线拟合与求解问题。
- @feng3d/objectview 实现由数据对象自动生成界面的一套框架。
- @feng3d/polyfill 基础工具。
- @feng3d/task 用于处理同步或者异步任务。
- @feng3d/watcher 用于监听对象属性的变化以及同步两个对象的属性值。
- @feng3d/serialization 任意对象序列化反序列化。
- @feng3d/math 数学库。
- @feng3d/filesystem 文件系统。
- @feng3d/shortcut 快捷键系统。
- @feng3d/renderer 渲染库。
- @feng3d/core 核心库。
- @feng3d/terrain 地形库。
- @feng3d/particlesystem 粒子系统。
- @feng3d/assets 资源管理库。
- @feng3d/parsers 解析器。
- @feng3d/ui UI库。
- 提供优质的typescript编辑器
- 支持脚本,你能够在这里实现所有你想做的事情。
- 支持自定义材质,只需要你提供shader代码以及所有到的数据结构就可以实现你想要的渲染效果。
引擎提供基础技术库支持,编辑器提供以及其插件系统提供多样化的开放设计平台,网站提供设计师学习沟通分享与资源交易平台。
目的:为制作(游戏)项目提供常用的基础框架,缩短项目开发周期。
内容:2D、3D、常用工具、数学库、渲染库、物理库、文件管理、声音、网络通讯、动画、粒子、特效、地形、UI、插件等基本模块。
特点:易用、灵活、易扩展、开源、入门程序员可直接上手。
目的:为引擎开一扇窗户,让每个人都可成为设计师;解放策划与程序员的无尽纠葛,策划可以尽情设计场景,程序可以尽情实现功能逻辑。最终目标是让设计师无需编程即可完成理想中的项目。
内容:属性编辑器、层级树、场景编辑器、资源管理器、(图像化)脚本编辑器、粒子编辑器、动画编辑器、地形编辑器、UI编辑器、账号系统、云存储、项目管理、(多平台多用户)协同设计、商场系统、插件管理器、等。
特点:易用、灵活、易扩展、小学门槛。
目的:为程序员设计师轻易上手feng3d,交流展示作品。
内容:在线编辑器、示例、文档、资源商场、论坛、设计师空间等。
特点:学习、交流、分享。
- 引擎
- 数学库
- 渲染库
- 物理库
- 文件资源系统
- 声音
- 网络库
- 寻路导航
- 等等
- 编辑器
- 属性编辑
- 场景编辑
- 资源管理
- 资源商城
- 账号系统
- 云存储
- 协同设计
- 粒子编辑器
- 脚本编辑器
- 动画编辑器
- 地形编辑器
- 导航网格生成
- 各类插件
- 设计图
- UI编辑
- 游戏制作套件
- RPG游戏模板
- 建模
- 思维导图
- 网站
- 在线编辑器
- 文档
- 示例
- 资源商城
- 论坛
- 设计师空间
- 跨平台
- 网页端
- 客户端
-
引擎
- 序列化系统
- 事件系统
- 监听器
- 数学库
- 数据结构库
- 文件系统
- 对象视图框架
- 快捷键系统
- 渲染库
- 实体组件系统
- 动画
- 通用属性动画
- 骨骼动画
- 粒子系统
- 音频
- 资源系统
- 摄像机
- 控制器
- 纹理
- 材质
- 几何体
- 灯光
- 天空盒
- 地形
- 水
- 场景
- 射线拾取
- 游戏对象支持鼠标事件
- 布局组件
-
2d模块
- 画布
- [x]
-
编辑器
首先感谢天底下所有愿意奉献的人!
- 如果你有什么想法或者需求欢迎在 issues 发布
-
gitee 提供了不亚于github的功能。除了知名度,国内访问速度非常快,开发效率,作为主要仓库。
-
github 国内访问较慢,有时甚至无法访问,放弃作为主仓库,将会不定期从gitee上同步。
gitlab: https://gitlab.com/feng3d/feng3d.git
getee:https://gitee.com/feng3d
github:https://github.com/feng3d-labs
feng3d交流QQ群:519732759