Руководство по спрайтингу: различия между версиями
imported>Kysovich  Первая половина переведена, нужен ревью  | 
				imported>Kysovich  Завершил перевод, накидал форматирования  | 
				||
| Строка 1: | Строка 1: | ||
ПРЕДУПРЕЖДЕНИЕ: Это не техническое руководство по созданию страйтов в графическом ПО, это руководство предназначено для участников, которые знают азы спрайтинга, но которым необходимо знать конкретные требования к новым спрайтам, когда в них возникает потребность.  | ПРЕДУПРЕЖДЕНИЕ: Это не техническое руководство по созданию страйтов в графическом ПО, это руководство предназначено для участников, которые знают азы спрайтинга, но которым необходимо знать конкретные требования к новым спрайтам, когда в них возникает потребность.  | ||
Большинство спрайтов имеет разрешение 32х32 пикселей и используют 32-битные цвета (24-битная кодировка цвета + альфа-канал)  | Большинство спрайтов имеет разрешение 32х32 пикселей и используют 32-битные цвета (24-битная кодировка цвета + альфа-канал)  | ||
| Строка 7: | Строка 5: | ||
В игре используется 4 типа объектов  | В игре используется 4 типа объектов  | ||
*'''Зона'''   | *'''Зона''' — нам это не интересно, поскольку объекты данного типа не отображаются в игре, а уже имеющейся работы более, чем достаточно.  | ||
*'''Моб'''   | *'''Моб''' — куклы игроков, животные, киборги, ксеноморфы и прочая живность, встречающаяся на станции.  | ||
*'''Объект'''   | *'''Объект''' — машины, двери, шлюзы, предметы и прочее.  | ||
*'''Покрытие'''   | *'''Покрытие''' — полы, стены и открытый космос.  | ||
== Формат DMI ==  | == Формат DMI ==  | ||
Спрайты в SS13 упакованы в файлы формата .dmi. Чтобы создать новый DMI-файл, откройте DreamMaker, выберите   | Спрайты в SS13 упакованы в файлы формата <code>.dmi</code>. Чтобы создать новый DMI-файл, откройте DreamMaker, выберите '''File''' > '''New''' > '''Icon file (dmi)'''. Укажите путь для файла и сохраните его.  | ||
В новом окне появится пустой файл. В верхнем  | В новом окне появится пустой файл. В верхнем правом углу окна находятся две области, отображающие измерения спрайта. Большинство спрайтов имеют разрешение 32х32, и, к сожалению, в одном файле нельзя хранить спрайты разных разрешений.    | ||
Нажмите ПКМ на пустом полотне. Существует два типа спрайтов: `карта` и `ролик`. Отличие лишь в том, что '''карта''' статична, когда '''ролик''' может быть анимирован и ориентирован на множество направлений. Давайте создадим спрайт-ролик (`New movie`).  | Нажмите ПКМ на пустом полотне. Существует два типа спрайтов: `карта` и `ролик`. Отличие лишь в том, что '''карта''' статична, когда '''ролик''' может быть анимирован и ориентирован на множество направлений. Давайте создадим спрайт-ролик (`New movie`).  | ||
| Строка 24: | Строка 22: | ||
Предположим, что мы сделали наши спрайты. Вернёмся в файл .dmi (на окно, которое появилось при создании файла). Предполагая, что вы закончили спрайт, вы можете увидеть его в списке. Двойной клик под спрайтом в списке отобразит окно переименования (также можно нажать F2). Дайте название спрайту. Обычно оно отражает состояние иконки, как если бы оно было определено в коде в качестве имени переменной.  | Предположим, что мы сделали наши спрайты. Вернёмся в файл .dmi (на окно, которое появилось при создании файла). Предполагая, что вы закончили спрайт, вы можете увидеть его в списке. Двойной клик под спрайтом в списке отобразит окно переименования (также можно нажать F2). Дайте название спрайту. Обычно оно отражает состояние иконки, как если бы оно было определено в коде в качестве имени переменной.  | ||
Также заметьте что вы можете импортировать и экспортировать файлы изображений, выбирая файлы для экспорта в редакторе (Ctrl+ЛКМ для   | Также заметьте что вы можете импортировать и экспортировать файлы изображений, выбирая файлы для экспорта в редакторе (Ctrl+ЛКМ для множественного выбора), и выбрав '''ПКМ''' > '''Export''' или '''ПКМ''' > '''Import''' в свободной части окна редактора для импорта. DMI схож с PNG, так что простое переименование файла под формат PNG сделает его доступным для редактирования в большинстве графических редакторов. Обычно это работает и в обратном направлении. Это делает процесс перекраски быстрее.  | ||
Надеюсь, теперь это вся информация, которая нужна для создания спрайтов в формате DMI.  | Надеюсь, теперь это вся информация, которая нужна для создания спрайтов в формате DMI.  | ||
== Требуемые спрайты   | == Требуемые спрайты ==  | ||
Пара слов о том, какие спрайты каждого типа нам нужны:  | |||
=== Мобы ===  | |||
*Мобам нужны спрайты на каждое из 4 направлений. Если вы хотите, чтобы моб мог носить одежду, держать предметы, надевать перчатки, очки и прочие аксессуары, то те части спрайта, которые вам нужны, потребуется оставить на тех же местах, как у спрайта человека во всех 4 направлениях. Согласны, это сильно вас ограничивает.  | |||
===   | === Покрытия ===  | ||
<!-- Turf - газон, дерн, надо подобрать вариант получше -->  | |||
*  | *Полы находятся в файле <code>icons/turf/floors.dmi</code> — Загляните в файл для примера  | ||
*Стены находятся в файле <code>icons/turf/walls.dmi</code> — Загляните в файл для примера  | |||
*Все остальное ищите в папке <code>icons/turf/</code>  | |||
*Пояснять не нужно.  | |||
===   | === Объекты ===  | ||
*  | *Предметы, всякое барахло, которое игрок будет подбирать и использовать в целом имеет свой основной спрайт и спрайт, используемый, когда предмет находится в руке. Основные спрайты предметов лежат в <code>icons/obj/items.dmi</code> (или в других файлах), спрайты для предметов в руках должны лежать в файлах:  | ||
*  | **<code>icons/mob/items_lefthand.dmi</code> - для левой руки;  | ||
*  | **<code>icons/mob/items_righthand.dmi</code> - для правой руки.  | ||
*  | *Одежда: Одеваемое барахло: Требует спрайт предмета в соответствующем DMI-файле в папке <code>icons/obj/clothing/</code>, спрайты "в руках" в <code>icons/mob/items_lefthand.dmi</code> и <code>items_righthand.dmi</code>, а также спрайт предмета, одетого на моба в соответствующей папке в <code>icons/mob/</code>  | ||
*Машины: Обычно используют один спрайт или несколько для состояний "ВКЛ/ВЫКЛ". Варьируется от машины к машине.  | |||
== Расположение спрайтов ==  | |||
Для большинства объектов двойной ЛКМ в дереве объектов (левая часть экрана DreamMaker) выведет их определение в коде. В подсвеченных переменных обычно написано что-то вроде:  | |||
=  | <code>icon = 'abc.dmi'  | ||
icon_state = "sprite_name"</code>  | |||
Переменная <code>icon</code> определяет файл, в котором содержится необходимый спрайт. Переменная <code>icon_state</code> указывает на имя спрайта в этом файле.   | |||
Иногда эти переменные не будут выведены под определением. Это лишь означает, что они находятся на родительском уровне. Если вы ищете, к примеру, <code>/obj/item/weapon/storage/belt/full</code> и не можете найти переменные, попробуйте подняться на уровень выше — <code>/obj/item/weapon/storage/belt</code>. Не нашли? Поднимайтесь дальше — <code>/obj/item/weapon/storage</code>, и так далее.  | |||
Заметьте, что могут возникнуть ситуации, когда двойной клик по объекту в дереве не отобразит определение этого объекта. Это можно понять по тому факту, что выделенная строка не совпадает с путем к объекту, который вы дважды щелкнули в обозревателе объектов. Поиск определения в таких случаях может быть немного сложным, поэтому не стесняйтесь обращаться за помощью в Discord.  | |||
==   | == Добавление спрайтов и поиск запросов ==  | ||
https://github.com/ss220-space/Paradise -   | https://github.com/ss220-space/Paradise - Наш Github  | ||
https://discord.com/channels/617003227182792704/618952559607939072 -   | https://discord.com/channels/617003227182792704/618952559607939072 - Предложка в Discord  | ||
{{Contribution Guides}}  | {{Contribution Guides}}  | ||
[[Category:Guides]] [[Category:Game Resources]]  | [[Category:Guides]] [[Category:Game Resources]]  | ||
Версия от 12:19, 6 декабря 2022
ПРЕДУПРЕЖДЕНИЕ: Это не техническое руководство по созданию страйтов в графическом ПО, это руководство предназначено для участников, которые знают азы спрайтинга, но которым необходимо знать конкретные требования к новым спрайтам, когда в них возникает потребность. Большинство спрайтов имеет разрешение 32х32 пикселей и используют 32-битные цвета (24-битная кодировка цвета + альфа-канал)
Объекты
В игре используется 4 типа объектов
- Зона — нам это не интересно, поскольку объекты данного типа не отображаются в игре, а уже имеющейся работы более, чем достаточно.
 - Моб — куклы игроков, животные, киборги, ксеноморфы и прочая живность, встречающаяся на станции.
 - Объект — машины, двери, шлюзы, предметы и прочее.
 - Покрытие — полы, стены и открытый космос.
 
Формат DMI
Спрайты в SS13 упакованы в файлы формата .dmi. Чтобы создать новый DMI-файл, откройте DreamMaker, выберите File > New > Icon file (dmi). Укажите путь для файла и сохраните его.
В новом окне появится пустой файл. В верхнем правом углу окна находятся две области, отображающие измерения спрайта. Большинство спрайтов имеют разрешение 32х32, и, к сожалению, в одном файле нельзя хранить спрайты разных разрешений.
Нажмите ПКМ на пустом полотне. Существует два типа спрайтов: `карта` и `ролик`. Отличие лишь в том, что карта статична, когда ролик может быть анимирован и ориентирован на множество направлений. Давайте создадим спрайт-ролик (`New movie`).
Открывается окно с четырьмя стрелками направлений и тремя рамками для каждой из них, все они серые. BYOND понимает 8 направлений. Вы можете выбрать, сколько из них вы хотите использовать под самими спрайтами: 1, 4 или 8. Вы также можете выбрать, сколько кадров должно быть в анимации. Если вы создаете статичный спрайт с несколькими направлениями, создайте ролик с 1 кадром, без анимации, но с 4 или 8 направлениями, в зависимости от того, сколько вам нужно. Если вы хотите, чтобы спрайт был анимирован, вас также может заинтересовать то, что вы можете установить задержку в 1/10 секунды над конкретным кадром. Итак, надеюсь, вы поняли, что делать дальше. Встроенный инструмент редактирования спрайтов очень примитивен, и единственное, о чем в нем стоит упомянуть, - это применение альфа-фильтра. Если вы дважды щелкните по любому изображению, то попадете в редактор спрайтов, а справа от него находится вертикальный ползунок, который управляет альфа-каналом. Также стоит упомянуть, что копирование из редактора может вести себя немного странно, заливая полный фон, несмотря на установленный альфа-фильтр. Просто "залейте" фон цветом с альфа-значением 0 или используйте "импорт", который работает нормально.
Предположим, что мы сделали наши спрайты. Вернёмся в файл .dmi (на окно, которое появилось при создании файла). Предполагая, что вы закончили спрайт, вы можете увидеть его в списке. Двойной клик под спрайтом в списке отобразит окно переименования (также можно нажать F2). Дайте название спрайту. Обычно оно отражает состояние иконки, как если бы оно было определено в коде в качестве имени переменной.
Также заметьте что вы можете импортировать и экспортировать файлы изображений, выбирая файлы для экспорта в редакторе (Ctrl+ЛКМ для множественного выбора), и выбрав ПКМ > Export или ПКМ > Import в свободной части окна редактора для импорта. DMI схож с PNG, так что простое переименование файла под формат PNG сделает его доступным для редактирования в большинстве графических редакторов. Обычно это работает и в обратном направлении. Это делает процесс перекраски быстрее.
Надеюсь, теперь это вся информация, которая нужна для создания спрайтов в формате DMI.
Требуемые спрайты
Пара слов о том, какие спрайты каждого типа нам нужны:
Мобы
- Мобам нужны спрайты на каждое из 4 направлений. Если вы хотите, чтобы моб мог носить одежду, держать предметы, надевать перчатки, очки и прочие аксессуары, то те части спрайта, которые вам нужны, потребуется оставить на тех же местах, как у спрайта человека во всех 4 направлениях. Согласны, это сильно вас ограничивает.
 
Покрытия
- Полы находятся в файле 
icons/turf/floors.dmi— Загляните в файл для примера - Стены находятся в файле 
icons/turf/walls.dmi— Загляните в файл для примера - Все остальное ищите в папке 
icons/turf/ - Пояснять не нужно.
 
Объекты
- Предметы, всякое барахло, которое игрок будет подбирать и использовать в целом имеет свой основной спрайт и спрайт, используемый, когда предмет находится в руке. Основные спрайты предметов лежат в 
icons/obj/items.dmi(или в других файлах), спрайты для предметов в руках должны лежать в файлах:icons/mob/items_lefthand.dmi- для левой руки;icons/mob/items_righthand.dmi- для правой руки.
 - Одежда: Одеваемое барахло: Требует спрайт предмета в соответствующем DMI-файле в папке 
icons/obj/clothing/, спрайты "в руках" вicons/mob/items_lefthand.dmiиitems_righthand.dmi, а также спрайт предмета, одетого на моба в соответствующей папке вicons/mob/ - Машины: Обычно используют один спрайт или несколько для состояний "ВКЛ/ВЫКЛ". Варьируется от машины к машине.
 
Расположение спрайтов
Для большинства объектов двойной ЛКМ в дереве объектов (левая часть экрана DreamMaker) выведет их определение в коде. В подсвеченных переменных обычно написано что-то вроде:
icon = 'abc.dmi'
icon_state = "sprite_name"
Переменная icon определяет файл, в котором содержится необходимый спрайт. Переменная icon_state указывает на имя спрайта в этом файле. 
Иногда эти переменные не будут выведены под определением. Это лишь означает, что они находятся на родительском уровне. Если вы ищете, к примеру, /obj/item/weapon/storage/belt/full и не можете найти переменные, попробуйте подняться на уровень выше — /obj/item/weapon/storage/belt. Не нашли? Поднимайтесь дальше — /obj/item/weapon/storage, и так далее.
Заметьте, что могут возникнуть ситуации, когда двойной клик по объекту в дереве не отобразит определение этого объекта. Это можно понять по тому факту, что выделенная строка не совпадает с путем к объекту, который вы дважды щелкнули в обозревателе объектов. Поиск определения в таких случаях может быть немного сложным, поэтому не стесняйтесь обращаться за помощью в Discord.
Добавление спрайтов и поиск запросов
https://github.com/ss220-space/Paradise - Наш Github
https://discord.com/channels/617003227182792704/618952559607939072 - Предложка в Discord
| Как внести свой вклад? | |
|---|---|
| Общее | Руководство по разработке | 
| Сервер | Настройка базы данных, Запуск локального сервера | 
| Код | Структура кода SS13, SS13 для опытных программистов, Форматирование текста, Как делать перевод игры | 
| Маппинг | Руководство по маппингу | 
| Спрайтинг | Руководство по спрайтингу | 
| Вики | Руководство по редактированию вики |