1作者: TiernanDeFranco大约 2 个月前原帖
在过去的几个月里,我一直在构建Perro,一个游戏引擎,它可以将你的C#、TypeScript或Pup(引擎领域特定语言)脚本转换为有效的Rust脚本。 这个Rust脚本是引擎核心(用Rust编写)直接从script.init()和script.update()调用的。 我这样做的主要想法是,避免处理脚本层、间接调用和解释器,而是利用Rust的性能和LLVM优化,让开发者能够以类似于在Godot或Unity中开发游戏的方式进行开发,但速度却是Rust的速度。 目前这个代码库是开源的,且是公开的,但还没有编辑器,并且仅支持基本的2D和3D渲染。我工作的核心是设置主要功能,区别在于在开发中通过加载DLL构建脚本与将脚本与整个项目静态链接以创建优化的二进制文件之间的差异。 这要么是非常愚蠢,要么是非常聪明,因为这个转译器使得可以使用多种语言,而无需支持不同的运行时和编译器。 一切在底层都是Rust。 请告诉我你的想法。