OR-Lib

OR-Lib

轻松创建3D渲染小饰品及更多内容

基础库

OR-LIB – 可穿戴物品与渲染库(Fabric)

OR-LIB 是一个小型 Fabric 库,旨在让处理可穿戴物品(戒指、护符、饰品等)及其在第一人称和第三人称下的渲染变得简单且一致。 它的设计目标是在同一整合包中被多个模组复用,这样你就不必为姿势、变换和自定义槽位反复编写相同的代码。

🎯 目的

提供一套简洁的 API,用于定义带有专属属性的可穿戴物品。

集中管理可穿戴物品的注册、渲染和变换逻辑。

提供与外部槽位系统(类似饰品槽位)的便捷集成,同时不强制使用它的模组采用特定设计。

🔧 要求

  • 模组加载器:Fabric

  • Trinkets

它与添加戒指、珠宝或其他饰品类的内容模组搭配使用时尤其有用。

仍在开发中

该库仍在开发中,某些功能可能无法按预期工作。

✨ 主要特性

该库的一些主要特性:

  • 专注于可穿戴物品的 API

  • 用于 WearableItem、WearableType 及相关属性的类和接口。

  • 用于属性、加成和可穿戴行为的构建器风格配置。

  • 集中式注册表

  • WearablesRegistry 和 WearableContentRegistry,将所有基于 OR-LIB 的内容集中在一处。

  • 标签和辅助类(ORLibItemTags、槽位辅助类等),用于干净地集成。

  • 高级可穿戴渲染

  • 适用于基础场景的简单即用渲染器(SimpleWearableRenderer)。

  • 使用 SlotTransform、SlotTransforms、BodyAnchor、WearablePoseContext 和默认变换提供者的姿势与变换系统。

  • 专用的第一人称渲染器(FirstPersonWearableRenderer),让玩家视角和外部模型保持同步。

  • 包含钩子与 Mixin

  • 客户端集成,用于模型加载(WearableModelLoaderMixin)以及渲染穿戴或手持的物品。

  • 集中式渲染引导(WearableRenderingBootstrap、WearableRenderRegistry),以有条理的方式初始化一切。

  • 类似饰品的槽位兼容性

  • 像 TrinketSlotUtil 这样的工具,让你更容易与额外槽位系统交互,这样你可以专注于物品的外观和行为,而不是样板代码。

🧑‍💻 致模组开发者

将 OR-LIB 作为依赖添加到你的项目中(Gradle 和加载器元数据)。

通过扩展/实现提供的类(例如 WearableItem)并使用构建器进行配置,来创建新的可穿戴物品。

在 OR-LIB 的注册表(可穿戴类型、内容、标签以及任何自定义槽位)中注册你的可穿戴物品。

(可选)如果你需要更高级的视觉效果,可通过客户端 API 附加自定义渲染器。

(可选)使用 OR-LIB 的工具接入外部槽位系统(类似饰品),而不必自己编写胶水代码。

⚙️ 设计与可扩展性

OR-LIB 被设计为一个基础层:

它本身不添加可见内容。

它专注于 API、注册表、辅助类和渲染。