[rust]Fyrox – 一个现代 Rust 游戏引擎

有时间就看了看rust开发的Fyrox引擎。同样支持rust还有godot,但是仅为脚本使用。Fyrox则可以全部用rust开发,包括给他贡献代码。还支持编辑器功能,非常非常像早期unity,但它开源。

讨论组:

Join the Discord server

Fyrox:

一个功能丰富、可用于生产的通用 2D/3D 游戏引擎,用 Rust 编写,带有场景编辑器。以前称为 rg3d。授权为MIT license

特性:

卓越的安全性、可靠性和速度。
PC (Windows、Linux、macOS) 和 Web (WebAssembly) 支持。
现代 3D 渲染管道。
全面的文档。
指南书
2D支持。
场景编辑器。
快速迭代编译。
经典的面向对象设计。
很多例子。

渲染:

  • 自定义着色器、材质和渲染技术。
  • 基于物理的渲染(PBRT)。
  • 金属度工作流程。
  • 高动态范围 (HDR) 渲染。
  • 色调映射。
  • 颜色分级。
  • 自动曝光。
  • 伽玛校正。
  • 延迟着色。
  • 定向光。
  • 点光源+阴影。
  • 聚光灯+阴影。
  • 屏幕空间环境光遮蔽 (SSAO)。
  • 柔和的阴影。
  • 体积光(聚光、点光)。
  • 批处理。
  • 实例化。
  • 快速近似抗锯齿 (FXAA)。
  • 法线映射。
  • 视差映射。
  • 渲染纹理。
  • 透明对象的前向渲染。
  • 天空盒子。
  • 延时贴花。
  • 多机位渲染。
  • 光照贴图。
  • 软粒子。
  • 完全可定制的顶点格式。
  • 压缩纹理支持。
  • 高质量的 mip-map 按需生成。

场景编辑器:

多个场景。
功能齐全的场景图。
细节层次 (LOD) 支持。
GPU蒙皮。

各种场景节点支持(Node Editor):

  • 锚点.
  • 摄像机.
  • 贴花.
  • 网格.
  • 粒子系统.
  • 精灵.
  • 多层地形.
  • 2D 精灵
  • 刚体+刚体(2D)
  • 碰撞器+碰撞器(2D)
  • 关节+ 关节2D

音频:

动画:

  • 动画混合状态机 – 类似于 Unity Engine 中的 Mecanim。
  • 动画重定向 – 允许您将动画从一个模型重新映射到另一个模型。

资源管理:

  • 完全异步资产加载.
  • PNG、JPG、TGA、DDS 等纹理.
  • FBX格式加载.
  • WAV、OGG 声音格式.
  • 压缩纹理支持(DXT1、DXT3、DTX5)

AI:

  • A*.
  • 导航网格.
  • 行为树.

UI:

  • 具有大量小部件的基于节点的高级 UI
  • 完全可定制

物理引擎:

  • 高级物理(感谢 rapier 物理引擎)
  • 刚体。
  • 丰富的各种对撞机
  • 关节.
  • 射线检测.
  • 2D 支持.

例子截图

1

4编辑器

editor