📄️ 对象模型
虚幻引擎的应用层采用 C++/脚本混合开发的模式,而 Z# 是一个非完全基于 UObject 系统的脚本引擎,因此无法像蓝图一样将底层细节完全抽象掉。
📄️ 互操作协议
为了同时支持多种 .NET 运行时,Z# 放弃了针对特定实现的互操作方案,选择只依赖 ECMA-335 中明确定义的特性来定义自己的互操作协 议。
📄️ 环境隔离
部分 .NET 实现不支持多实例,也不支持热重启(如 CoreCLR)。因此,Z# 使用 .NET 内置的 AssemblyLoadContext (ALC) 实现环境隔离。
📄️ 运行时
Z# 内置 和 两种 .NET 运行时。