Libsm64是一个开源项目,将《超级马里奥64》的运动和渲染代码通过SM64反编译项目的逆向工程成果封装为共享库1。该项目为开发者提供了清晰的API接口,使其能够将马里奥角色集成到现有游戏引擎或系统中1。
项目支持广泛的平台和语言绑定1。开发者可通过Rust、Odin和C#绑定使用该库,同时还提供了面向主流游戏引擎的集成方案,包括Unity插件、Godot附加组件、Game Maker 8扩展以及Unity MelonLoader模组和BepInEx插件1。此外,项目还包含Blender附加组件,支持在三维建模软件中使用相关功能1。
Libsm64的部署和编译相对灵活1。开发者可通过运行make命令进行构建,并支持通过设置LIBSM64_MUSL=1标志来编译支持musl libc的版本1。项目依赖SDL2和GLEW库,在Ubuntu系统上对应的包名为libsdl2-dev和libglew-dev1。此外,项目还支持WebAssembly编译,开发者可通过emmake make CC=emcc命令生成相应对象1。
使用该库的前置要求是在项目根目录放置名为baserom.us.z64的《超级马里奥64》美版ROM文件1。运行时系统将加载此官方ROM以获取纹理和动画数据1。
Libsm64 is an open-source project that extracts the movement and rendering code from Super Mario 64—reverse-engineered through the SM64 decompilation initiative—and packages it as a shared library for integration into external game engines and systems.1 The project provides a clean API interface that enables developers to embed the Mario character into existing platforms without reimplementing core gameplay mechanics.1
The library supports bindings and plugins across multiple programming languages and game engines, including Rust, Odin, Unity, Godot, Game Maker, and Blender.1 It also offers specialized extensions such as MelonLoader and BepInEx mods for Unity, as well as C# bindings for broader compatibility.1 At runtime, the library loads texture and animation data from an official Super Mario 64 US ROM file, which must be placed in the repository root directory as baserom.us.z64.1
Building the library requires SDL2 and GLEW dependencies (libsdl2-dev and libglew-dev on Ubuntu) and is accomplished by running make.1 For specialized builds, developers can enable musl libc support with the LIBSM64_MUSL=1 flag, or compile to WebAssembly using emmake make CC=emcc.1
评论
还没有评论,欢迎留下第一条。