Starbound

Starbound

Not enough ratings
Кратко о Color Options Picker
By Demexis
Краткий путеводитель по использованию программы "Color Options Picker", облегчающую процесс редактирования параметра "colorOptions" для одежды при создании модификации.
   
Award
Favorite
Favorited
Unfavorite
Основные сведения


Эта малая программа была создана с целью - упростить редактирование записей для параметра "colorOptions", в том случае, если не используется стандартная четырехцветная оранжевая палитра (заготовка ключ-значений шестнадцатеричных RGB значений, которые за-copy-paste-щены в каждую ванильную одежду).

Для работы приложения необходим .NET Framework 4.5[www.microsoft.com].

Ссылка на раздел с релизами: https://github.com/Demexis/Starbound-ColorOptionsPicker/releases
Ссылка на страницу в GitHub: https://github.com/Demexis/Starbound-ColorOptionsPicker
Использование: Загрузка файлов
Если вы успешно скачали, разархивировали и запустили приложение, то мы можем начинать.

Обращаем своё внимание на меню. Нажимаем "File -> Open...".














Выскакивает диалоговое окно, выбираем папку в которой находятся спрайты и JSON файлы с типами .chest, .head, .legs, .back. Нажимаем "Открыть".




Использование: Настройка кадра
В случае успешной загрузки файлов, в окне должны появится два изображения вашей одежды. Первое - с исходными цветами, как оно есть. Второе - раскрашенный вариант с учетом записей при текущем красителе.

Касаемо позы, по умолчанию стоит первый кадр idle-анимации. Позу и номер кадра можно спокойно поменять, воспользовавшись выпадающими списками.


Также здесь можно изменить пол и снять/установить флажок на отображение манекена.

Небольшой пример:
Использование: Выбор типа красителя
Одновременно изменять цвета можно только для одного типа красителей. Сменить его можно из выпадающего списка "Color Option".

Использование: Добавление записей с "переходом цвета"
После загрузки JSON файлов, у вас, вероятнее всего, загрузились уже существующие записи параметра "colorOptions" в список "Color Transitions". Если таковых не было, или вы хотите добавить в список другие цвета которые будете в дальнейшем изменять, необходимо выделить эти цвета в списке "Original Sprite's Colors" и нажать кнопку "Add Transition".

Соответственно, выделение множества цветов происходит посредством использования комбинаций клавиш "Shift + ЛКМ" или "Ctrl + ЛКМ".














Есть также альтернативный вариант. Вы можете кликнуть на конкретный пиксель изображения под ярлыком "Original Sprite". Если выбрать пиксель в изображении под ярлыком "Colored Sprite", то помимо добавления, также откроется окно для редактирования выбранного цвета.

Использование: Редактирование цвета
Мы подошли к части по редактированию цвета. Выделите одну или несколько записей в списке "Color Transitions". Теперь нам доступны три кнопки:














  • Кнопка "Remove" - удаляет выбранные записи из списка. Их можно вернуть, повторив действия из предыдущего раздела.



  • Кнопка "Edit..." - открывает окно для задания выбранным записям изменение цвета на ОДИН - конкретный.


Рассказывать здесь особо не о чем. Вы изменяете цвет либо по модели RGB (Red, Green, Blue), либо по модели HSV (Hue, Saturation, Value). Дополнительно можно воспользоваться кругом для задания оттенка и насыщенности (яркость остаётся неизменной). Также можно выбрать один из "старых" цветов, кликнув на одну из полосок под ярлыком "Old:". Изменение цвета можно наблюдать в основном окне под ярлыком "Colored Sprite".



  • Кнопка "Hue / Saturation..." - открывает окно для задания выбранным записям индивидуального изменения цвета по модели HSV.




Не забывайте нажимать кнопку "OK" для того, чтобы сохранить выбранные цвета. Нажатие на "крестик" или кнопку "Отмена" - вернёт старые цвета.
Использование: Экспорт данных в JSON
Как только вы закончили делать все изменения для цветов и захотели экспортировать их обратно в параметр "colorOptions" с соответствующим синтаксисом JSON-а, необходимо обратится к меню и нажать "File -> Export -> Color Options..." (Можно воспользоваться комбинацией клавиш "Ctrl + S").















Возникнет следующее окно в котором вы сможете указать те наборы цветов которые вам нужны (то же самое применимо и для импорта):















При нажатии кнопки "ОК", появится другое окно в котором будет текст с необходимым синтаксисом JSON-a:




Теперь вы можете либо собственноручно выделить и скопировать нужную вам часть при помощи "Ctrl + C", либо нажать на кнопку "Copy to Clipboard", чтобы скопировать текст в буфер обмена, либо нажать на кнопку "Save As", чтобы сохранить экспорт в текстовый файл.
Дополнительно: Авто-генерация переходов цветов
Нововведением утилиты (v1.1) стала генерация переходов цветов. При генерации используются оригинальные цвета отображаемые в одноименном списке в главном окне.

Для того, чтобы воспользоваться этой опцией, необходимо в области меню нажать "Tools -> Generate Color Transitions...".





Появится следующее диалоговое окно:














Первым делом здесь можно выбрать один из методов генерации:

  • HSV - генерируемый переходный цвет имеет ту же насыщенность и яркость, что и оригинальный цвет, но изменяется сам оттенок. Черный, серый и белый цвет являются исключениями из правил, так как у них отсутствует насыщенность вовсе. Вдобавок, для набора черных цветов понижается значение яркости, в то время как для белых яркость повышается.

  • Random - скорее шуточный вариант, нежели эффективный метод для генерации гармонично выглядящих цветов. Данный метод руководствуется правилами первого, однако значение яркости и насыщенности ставятся абсолютно случайные. Порой этот метод всё же может привести к любопытным результатам.



Дополнительно на текущий момент присутствуют две опции.

Пропуск случаев генерации зависимых переходов относится к ситуации, когда один из сгенерированных цветов имеет то же самое значение, что и один из оригинальных цветов.

Например:
Red -> Orange
Orange -> Green

Такая ситуация нежелательна по той причине, что последовательно (сверху вниз) обработав эти записи из примера, программа отрисует зеленый цвет на месте как оранжевого, так и красного.

Что же программа сделает, если галочка на этом параметре будет стоять, и такая зависимость найдется?

- При использовании метода HSV - пропустится цвет из-за которого возникает эта проблема.
- При методе Random - просто сгенерируется другой случайный цвет, и так по рекурсии, если новые генерируемые цвета тоже будут вызывать зависимости.



Параметр заменяющий существующие переходы просто очищает список переходов перед тем, как сгенерировать новые. Если галочка на этом параметре не стоит, тогда сгенерируются переходы лишь для тех цветов, что его не имеют. С этим параметром имеется один удобный нюанс: если галочка на нём стоит, а в качестве метода выбран "Random" - окно генератора не закроется после завершения процесса генерации.



Ниже приведён результат генерации по методу HSV.
Дополнительно: Настройки
В настройки можно зайти кликнув "File -> Settings".




Ныне присутствуют лишь настройки импорта.
Маленькое уточнение, эти настройки относятся к импорту спрайтов и JSON файлов, в тот момент, когда вы указываете папку. (см. раздел "Использование: Загрузка файлов")

Название параметра
Описание
Transparency Cut
Вырезает все пиксели, значение альфа-канала которых менее назначенного числа [0 - 255].

Необходимо сделать примечание, что пиксели которые в оригинальном импортируемом изображении имеют прозрачность, в программе будут отображаться без прозрачности.
Ignore '.head' files
Игнорирует спрайты головы и файлы с типом .head во время импорта.
Ignore '.chest' files
Игнорирует спрайты торса и файлы с типом .chest во время импорта.
Ignore '.legs' files
Игнорирует спрайты ног и файлы с типом .legs во время импорта.
Ignore '.back' files
Игнорирует спрайты спины и файлы с типом .back во время импорта.
Ignore masks
Игнорирует импорт и применение масок.