#editor #inspector #gamedev

guiedit

轻松为任何图形应用程序添加开发者GUI

1 个不稳定版本

0.1.0 2022年11月12日

#456 in 可视化

MIT/Apache

50KB
728

guiedit

guiedit 是一个Rust库,用于轻松为任何图形应用程序添加开发者GUI。

Sokoban with guiedit screenshot

当前状态

该软件包目前处于一个非常实验性的状态。尽管它可用,但任何一点都可能会发生变化。树节点和检查器已经实现,但支持的唯一后端是SFML。如果您使用SFML,可以自由地包含此软件包,但预计将看到许多破坏性变化。

非常感谢任何问题报告和PR!

目标

该软件包的目标是能够通过更改现有或新代码库中的几行代码,立即获得编辑器视口、对象检查器、图形工具,甚至状态加载/保存和热代码重新加载。您可以在下面的“进度”部分阅读更多详细信息。

教程

待办事项;目前请检查示例

进度

符号 含义
完成;已实现
☑️ 部分实现
🚧 进行中
计划;排队

编辑器和通用功能

功能 状态
支持 Inspectable 对象的检查器
#[derive(Inspectable)] 为结构体
#[derive(Inspectable)] 为枚举
支持 TreeNode 对象的对象树
#[derive(TreeNode)] 为结构体
#[derive(TreeNode)] 用于枚举
Inspectable 实现用于 std 和 core 类型 ☑️🚧
TreeNode 实现用于 std 和 core 类型 ☑️🚧
热代码重载
图形小工具支持

sfml 集成

功能 状态
将所有用户渲染转发到离屏纹理
从编辑器捕获事件并转发给用户端 ☑️
通过 UI 检查对象
窗口调整大小
Inspectable 实现用于 SFML 类型 ☑️🚧
Drawable 的图形小工具

依赖关系

~4–9.5MB
~83K SLoC