Приветствую, милсдари-читатели! В прологе моей серии статей мы остановились на папке ctm. Давайте же продолжим работать над этой интересной темой!
Итак, у нас есть папка ctm. Её содержимое будет полностью зависеть от вас - там нет чёткой структуры, необходимой для выполнения нужных нам вещей.
Теперь хотелось бы рассказать о том, что же такое CTM.
CTM - акроним (аббревиатура), обозначающий Connected Textures Mod.
Изначально это был мод, делающий стекло, книжные полки и прочие текстуры безрамочными. Спустя какое-то время его функционал был включён в MCPatcher, а функционал MCPatcher - в Optifine. Именно поэтому нам необходим установленный Optifine - это заставляет работать наш ресурспак.
Разберём теорию, то есть, что можно сделать с помощью ctm и как.
Посредством создания текстового файла .properties и набора текстур можно творить очень интересные вещи.
Структура файла .properties
Каждый файл .properties может называться как угодно, однако есть нюанс: если название файла имеет формат block<id>.properties, вам не нужно будет указывать один из компонентов. К слову о них - файл состоит из нескольких обязательных компонентов:
method=
matchBlocks=
matchTiles=
tiles=<список текстур>
Сейчас объясню, что значат все эти магические слова)
Для начала, поговорим про method.
Методы CTM
В CTM есть несколько видов методов, определяющих работу этой функции:
method=ctm
ИЛИ horizontal
vertical
horizontal+vertical
vertical+horizontal
top
random
repeat
fixed
Поговорим подробнее про каждый метод.
method=ctm - классическое соединение, характерное блокам, к примеру, стекла.
method=horizontal соединяет блоки, стоящие на одном уровне.
method=vertical соединяет блоки по вертикали.
method=horizontal+vertical (можно сократить до method=v+h), соответственно соединяет как по вертикали, так и по горизонтали, при этом имеет значение, какой из методов стоит первым - он получает приоритет.
method=top соединяет блоки таким образом, что верхнюю грань имеет только верхний блок, а остальные соединяются бесшовно.
method=random позволяет сделать множество разных текстур одному блоку, которые будут видны случайным образом.
method=repeat - один из моих любимых, он позволяет отобразить большую текстуру за счёт множества блоков. Прекрасный пример - мои породы камня в ресурспаке TerraFirmaCraft, который я так и не довёл до совершенства.
method=fixed просто заменяет текстуру блока (равносилен method=random с всего одной текстурой)
method=overlay накладывает текстуру поверх обычной текстуры блока, если выполняются указанные условия.
Теперь про остальные параметры.
Напомню вам вид нашего файла block<id>.properties:
method=
matchBlocks=
matchTiles=
tiles=<список текстур>
Важно: matchBlocks и matchTiles являются взаимоисключающими, а потому в один момент использоваться может только один из этих компонентов.
matchBlocks имеет вид
matchBlocks=<id> или <minecraft:буквенный_id>
Пример:
matchBlocks=1
ИЛИ
matchBlocks=minecraft:stone
Это заставит соединение применяться к обычному камню.
matchTiles же имеет вид:
matchTiles=<имя текстуры блока>
Я предпочитаю использовать matchBlocks в тех случаях, когда это возможно (matchTiles, тем не менее, может быть полезен, если необходимо, к примеру, заменить текстуру растущей моркови/пшеницы/любого другого растения - посмотреть id этого блока не представляется возможным)
Имя текстуры блока можно посмотреть в файлах игры.
В следующих гайдах мы подробно рассмотрим каждый из видов соединения!
Я буду очень признателен, если вы подпишетесь на канал, поставите лайк и оставите свой комментарий, будь то критика или дельное предложение.
До скорых встреч!
Навигационный модуль:
Пролог - ТЫК!
Следующая часть - ТЫК!