2 个不稳定版本
使用旧的 Rust 2015
0.2.0 | 2017年6月27日 |
---|---|
0.1.0 | 2017年6月25日 |
20 在 #reload
23KB
210 行
实时重新加载
本库受到 Chris Wellons 的文章 "Interactive Programming in C" 和 Handmade Hero 的视频 "Loading Game Code Dynamically" 的启发。
基本思路是您的宿主程序是一个动态库的包装器,该库执行游戏中所有有趣的工作。这意味着您可以在游戏运行时简单地重新加载库,并使游戏实时更新。然而,作为后果,您不能在库中保留任何全局状态,所有内容都必须由宿主所有,以避免与库一起卸载。
入门指南
将此添加到您的 Cargo.toml
[lib]
name = "<your library name>"
crate-type = ["cdylib"]
[dependencies]
live-reload = "0.2"
要进行实时重新加载,您需要构建库和二进制文件。在宿主二进制文件中,您希望使用 live-reload
extern crate live_reload;
在库中,您需要使用宏来声明实时重新加载 API,因此您需要
#[macro_use] extern crate live_reload;
有关如何使用库创建库和宿主程序的说明,请参阅 文档。
依赖项
~0.5–8MB
~54K SLoC