

Suspicious Shapes
Активный0.0
Установок
Последнее обновление
Версии
glTF модели для всего
Этот мод использует frapi (Fabric Rendering API) для перехвата запросов к моделям блоков. Когда система запрашивает glTF файлы, мод предоставляет их как статические модели, которые затем интегрируются в геометрию чанков стандартным образом. Работая полностью на стороне клиента, эта модификация позволяет создавать "проклятые" ресурспаки, заменяющие обычные блоки на нестандартные формы, которые невозможно создать в ванильной версии игры.
Также Suspicious Shapes может использоваться как встроенная библиотека для реализации некубических блоков в других модах.
Создание совместимых моделей
Самый простой способ создания моделей - использование Blockbench:
- Откройте программу и выберите "New → Low Poly / Generic Model", затем нажмите "Create new model"
- Любые идентификаторы, режимы UV и другие настройки подойдут
- После завершения работы с моделью экспортируйте её через "File → Export → Export glTF Model"
- Blockbench игнорирует большинство настроек, поэтому стандартные значения вполне подходят
- Поместите экспортированный файл в папку, где обычно находятся json модели блоков (например,
assets/minecraft/models/block
) - Создайте дочернюю модель, ссылающуюся на gltf модель как родительскую, с корневой парой ключ-значение
"loader": "suspicious_shapes:gltf"
. Здесь же можно указать текстуры и индексы цветов - Отредактируйте текст glTF модели, заменив data URL текстуры на ссылку на текстуру
Работа с текстурами
Самая сложная часть - замена текстуры. В файле вы увидите примерно такой код:
"images":[{"mimeType":"image/png","uri":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAr0lEQVQ4y6WTMQrCQBBFt0xtk0YQL+QR0mpnYyk5QbDObTc84YVB0NnFgSGTyf7/5w+bUpJ4LMdaeuI6jzWC5/Vcm0kAAyAleE6Hd00vkn8Fq0oCJv32up9yEg6REPGEQDLemyYR6DS3y7ATp3tQTTCEWqH3U50DcQccRl0b9lKSuAvV0wXG+AQyRTOYiDughkB76bXVgiDr5gkEeYEAu8iuf0L/WiD/Iii94diZ+gZo3N9oOnqLFAAAAABJRU5ErkJggg=="}]
Это изображение текстуры в base64 кодировке. Поскольку модели блоков не могут использовать случайные текстуры вне атласа, это нужно исправить. Замените каждую непонятную строку "uri" на ссылку на текстуру Minecraft:
"images":[{"mimeType":"image/png","uri":"minecraft:blocks/stone"}]
Или, если вы создаёте несколько моделей с такой формой, можно использовать родительскую модель с обычной ссылкой на текстуру:
"images":[{"mimeType":"image/png","uri":"#all"}]
Ваша дочерняя модель может выглядеть так:
{
"parent": "minecraft:block/sphere_all.gltf",
"loader": "suspicious_shapes:gltf",
"textures": {
"all": "minecraft:block/acacia_leaves"
},
"colorIndexes": [ 0 ]
}
Вот и всё! Запустите Minecraft или перезагрузите ресурспаки, и вы увидите свою модель!