художественный pipeline
Вложений: 1
В общем как выглядит это в большинстве проектов :
1) дизайнер делает концепты 2) программист пытается вникать 3) дизайнер делает продакшен арт в своих фотошопах 4) программист пытается советовать 5) дизайнер нарезает 6) программист\инженер\левелдизайнер\etc вставляет это в игру 7) if продюсер.бугорт() then goto 1 else goto 3 8) где-то тут конец разработки В проектах где арта куда больше чем чего либо другого (тысячи интерфейсов, тысячи всего остального - hidden object games), нужна автоматизация конвейера с 4 по 6 пункт. Общая идея заключается в том что дизайнер из своего творческого psd делает "экспортный вариант" psd в фотошопе, а именно разворачивает всё что надо нарезать по слоям\папкам и называет с префиксами чтобы движок потом подцепил кнопки, анимации, шейдера и тд. А теперь как это выглядит физически, у нас был подход №1 - парсить psd руками, наткнулся на так званый psdparse ( http://www.telegraphics.com.au/svn/psdparse/ ), но это тупо провал, он даже группы не выцепляет. Подход №2 : пишем плагин (скрипт) для фотошопа ! это оказалось проще простого ! наш скрипт будет вырезать все слои и составлять json файл с необходимым описанием, дальше это скармливается редактору и мы получаем все объекты на местах сразу же, из префиксов в названиях слоёв можно даже логику сразу же цеплять. Ссылки откуда можно выцепить примеры скриптов : 1) Exporting QML from Photoshop and GIMP и конкретно код : http://qt.gitorious.org/qt-labs/phot...port%20QML.jsx 2) просто экспорт слоёв с nested группами : https://gist.github.com/2892034 Как видим код топорнее некуда, за 2 рабочих дня вполне можно организовать конвейер и навсегда забыть про муки постоянной интеграции актуальной версии интерфейса. ----------------------------- экспортёр из psd в json, версия 0.01a (photoshop jsx psd exporter to json and pngs, version 0.01a, for gamedev, для поисковиков на всяк случай) инструкция : 1) положить jsx файл из архива в аттаче в папку presets\scripts фотошопа 2) если запущен фотошоп - перезапускаем 3) открываем psd, нажимаем file->script->tatengine_export 4) в папке где лежит psd появляется папка export с кучей png файлов и файлом export.json пример файла export.json : http://pastebin.com/7MXdNiNf nodeIndex это порядковый номер слоя, нужен чтобы zorder потом нормально сделать |
Ответ: художественный pipeline
добавил версию экспортера 0.01a
|
Ответ: художественный pipeline
Вложений: 4
первоначальной задумки оказалось не достаточно, хочется прямо в фотошопе задавать анимации, указывать логику и тд :crazy:
проще всего оказалось разработать дополнительную панель для фотошопа, они разрабатываются на смеси флеша и javascript :crazy: в общем у меня ушло около 10 рабочих часов на панельку, куча геморроя с перекидыванием данных из actionscript в javascript и обратно (они там через xml перекидываются, base64 от текста надо брать, потом оказалось что кодировщик base64 вставляет перенос строки каждые 76 символов бл*ть, и всё ломалось) чтобы разрабатывать панель вам понадобится фотошоп cs5+ (cs4 по-идее тоже должен работать), flex builder 3+, flex sdk 3.6 (какого хрена оно отдельно от билдера я не знаю, но надо качать последний), adobe photoshop sdk cs5 (только он, в cs6 сдк уже удалили семплы флеш панелей и кинули их хрен знает куда) выглядит в итоге это так : 1) у слоя указываем пресет button и он становится кнопкой Вложение 17554 2) у слоя указываем пресет альфа анимации и он становится будет анимироватся Вложение 17555 3) експортим из фотошопа и импортим в свой редактор, всё, теперь у нас и кнопка и анимация Вложение 17556 кухня внутри : сама панелька генерирует слою поле метаданных tatengineMetaData, те все пресеты и их параметры в итоге просто генерят текст, сам генератор описан в TatEnginePanel.jsx, если поставить флаг custom то генератор отключится и мы можем писать любой код уже руками (чисто для программистов фишка) tatengineMetaData в export.json называется metaData и кодируется в base64 чтобы не было проблем, вы можете её вешать на текст, группу или обычный слой осталось только вам в вашем редакторе написать скрипт импорта, мы используем json формат команд для импорта как устанавливать : TatEnginePanel.jsx и swf нужно положить в plugins\panels, а tatengine_export.jsx в presets\scripts |
Ответ: художественный pipeline
Наверное в ближайшее время заюзаем твою интеграцию для экспорта в Unity :)
|
Ответ: художественный pipeline
В шестом фотошопе панелька не работает, нашел вот такую инфу (пробовал из татэнджина тоже)
http://forums.adobe.com/message/4687211#4687211 |
Ответ: художественный pipeline
Цитата:
|
Ответ: художественный pipeline
Вложений: 1
Немного переписано, добавлено использование вложенных папок. Парсит только то, что мне нужно было для экспорта и расстановке в Unity.
Итоговый формат файла показан в примере, при наличии вложенных папок в рутовой создается идентичная, все спрайты складываются в нее. То есть мы получаем идентичную структуру с PSD.Задачи поддержать множественное вложение не было. Требования к PSD- никакой кириллицы(даже нижнее подчеркивание на русской раскладке фотошоп пропишет как пробел), в пределах одной папки не должно быть одинаково названных слоев. Требования хоть и забавно выглядят с одной стороны, но большинство художников, как оказалось народ задорный. Код:
[ |
Ответ: художественный pipeline
Я правильно понимаю, что скрипт создает из psd набор png + json? А как потом это в unity импортировать?
|
Ответ: художественный pipeline
Видимо пропарсить json и создать спрайты Editor-скриптом.
Можешь попробовать это например https://github.com/Banbury/UnityPsdImporter как альтенрнативу |
Ответ: художественный pipeline
Ок, посмотрю. Вот только он не понимает одноименные слои (одна и та же картинка разных размеров), но это можно попробовать исправить. А есть ли где-нибудь то же самое, но для 2dtoolkit? Нашел только платный вариант.
|
Часовой пояс GMT +4, время: 05:51. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot