
Armor Render Lib
Активный0.0
Установок
Последнее обновление
Версии
Armor Render Lib
Armor Render Lib представляет собой легковесную библиотеку-расширение для модуля fabric-rendering-v1 из Fabric API. Поскольку стандартная реализация Fabric API является довольно абстрактной, для некоторых специфических случаев применения требуется более целенаправленный подход. Данная библиотека была создана для многократного использования кода в различных модах автора.
Особенности
Библиотека отличается надежностью и использует минимальное количество целевых миксинов. Она полностью совместима с такими модами, как Cosmetic Armor и GeckoLib.
Интеграция в проект
Для подключения библиотеки к вашему проекту добавьте следующие строки в файл build.gradle
:
repositories {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
content {
includeGroup "maven.modrinth"
}
}
}
dependencies {
modImplementation "maven.modrinth:armor-render-lib:<version>"
include "maven.modrinth:armor-render-lib:<version>"
}
Применение
Armor Render Lib добавляет слои отрисовки брони - объекты, содержащие динамическое расположение текстуры, цвет и параметр свечения, которые отвечают за визуализацию брони для предмета или нескольких предметов. По функциональности они схожи с методом ArmorRenderer#renderPart
из Fabric API, но с возможностью динамического определения текстуры, цвета и эффекта свечения на основе ItemStack
, LivingEntity
и EquipmentSlot
.
Регистрация слоев отрисовки осуществляется следующим образом:
public class ExampleMod implements ClientModInitializer {
private static ArmorRenderProvider render(ItemStack stack, LivingEntity entity, EquipmentSlot slot) {
// Динамический путь к текстуре
String texture = "examplemod:textures/model/armor/example_chestplate.png";
// Динамический цвет
int color = 0xFF00FF;
return data -> data.accept(texture, color, stack.hasGlint());
}
@Override
public void onInitializeClient() {
ArmorRenderLib.register(ExampleMod::render, Items.IRON_CHESTPLATE);
}
}
Важные особенности
- К одному предмету можно привязать несколько различных слоев отрисовки брони
- Один и тот же слой отрисовки может использоваться для нескольких разных предметов
- Регистрация слоя отрисовки для стандартного предмета брони (или другого броневого предмета) переопределяет стандартную отрисовку брони, что позволяет изменять текстуру, цвет и/или эффект зачарования стандартной брони