This report describes Infernux, an open-source game engine that pairs a C++17/Vulkan real-time core with a Python production layer connected through a single pybind11 boundary. To close the throughput gap between Python scripting and native-code engines, Infernux combines two established techniques - batch-oriented data transfer and JIT compilation - into a cohesive engine-level integration: (i) a batch data bridge that transfers per-frame state into contiguous NumPy arrays in one boundary crossing, and (ii) an optional JIT path via Numba that compiles annotated update functions to LLVM machine code with automatic loop parallelization. We compare against Unity 6 as a reference on three workloads; readers should note differences in shading complexity, draw-call batching, and editor tooling maturity between the two engines. Infernux is MIT-licensed and available at https://chenlizheme.github.io/Infernux/.
翻译:本报告介绍了Infernux,一款通过单一pybind11边界将C++17/Vulkan实时核心与Python生产层相结合的开源游戏引擎。为弥合Python脚本与原生代码引擎之间的吞吐量差距,Infernux将两种成熟技术——批量导向数据传输与JIT编译——整合为连贯的引擎级集成方案:(i)批量数据桥接器,通过单次边界穿越将每帧状态传输至连续NumPy数组;(ii)基于Numba的可选JIT路径,将带注释的更新函数编译为LLVM机器码,并实现自动循环并行化。我们以Unity 6为参考基准,在三种工作负载下进行比较;读者需注意两引擎在着色复杂度、绘制调用批处理及编辑器工具成熟度上的差异。Infernux采用MIT许可协议,可通过https://chenlizheme.github.io/Infernux/获取。