Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Полезные советы для моддинга HMMIII
DF2 :: ФОРУМЫ > Игровые форумы > Heroes of Might & Magic III > Моды
FCst1
Делимся своими советами. Флуд будет удаляться.

Создание и редактирование графики (bmp, индексированные цвета)
Обычно, с редактированием или созданием, а также последующим внедрением в игру графики не бывает особых проблем, единственной загвоздкой есть и будет палитра индексированных цветов. Не секрет, что первые 10 цветов палитры должны быть заняты спец. цветами HMMIII, но проблема в том, что не все их знают или не знают, как их внедрить в палитру цветов. Для этого я создал специальную палитру и небольшой урок для программы Photoshop CS-версий.
Итак, допустим, вы хотите заменить AISHIELD.bmp на вот эту картинку:
стоит отметить, что картинка по размеру должна быть идентична оригинальной
Открываем Фотошоп, подгружаем туда наше изображение. Переводим картинку в индексированные цвета (вкладка изображение/режим). В появившемся окне выставляем:
Палитра: "локальная" (можно выбрать любой тип - для картинок с малым разрешением это особой роли не играет)
Цвета: ничего не трогать (по умолчанию - 256)
Принудительные: тут необходимо выбрать режим "заказные", скачать файл с настройками палитры нажать кнопку загрузить и выбрать данный файл.
Прозрачность необходимо отключить.
Также можно включить диффузию (дизеринг) на степень 50-75%, если изображение слишком сильно теряет в цвете.
Сохраняем полученный файл в формате *.PCX , но, т.к. Фотошоп приписывает к каждому файлу 2 лишних байта, работа над изображением ещё не окончена. Необходимо открыть файл любым графическим просмотрщиком-конвертатором (ACD See, Fast Stone, Ifran View и тп) или другим растровым редактором (Corel, PhotoFiltre и тп) и сохранить файл в этом же (PCX) формате с перезаписью. я использую для этого встроенный в Pica View конвертер
Изображение получено, помещаем его в папку Data и наслаждаемся новым "щитом" smile.gif

Создание существ в DefTool 3.2, если изображение были обработаны/созданы в Photoshop.
Недавно я наткнулся на проблему (когда редактировал Умертвие), что созданные в DefTool'е существа, палитра которых состояла из разных индексированных цветов (т.е. каждая картинка имела свой набор) весили ~15mb, хотя должны были - 500kb. Я решил найти обходной способ решения данной проблемы и понял, что если картинку не приводить к формату индексированных цветов, а просто оставить в RGB (bmp, 24-разрядный рисунок), при этом в DefTool'е выставить галочки всех обязательных цветов, то DEF получается малым по размеру. Найти объяснение этому я не могу...

Пользуйтесь данной палитрой для создания всех файлов для Героев в Фотошопе!
Maestro
Небольшие советы и рекомендации по созданию и использованию существ:
1) При создании ДЕФа нужно учесть, что все кадры должны быть СТРОГО одного разрешения (стандартно 450х400). Разноразмерные картинки собрать не удастся!
2) При использовании монстра нужно учесть все его ДЕЙСТВИЯ! Учтите, что не все монстры умеют стрелять или колдовать. И если вы поменяете ДЕФ лучника на ДЕФ ангела, то игра у вас будет вылетать при всякой попытке произвести выстрел!!!
3) Все монстры должны иметь аниммации смерти, атаки, блока и получения удара. при их отсутствии игра будет вылетать при попытке обращения к этому действию.
4) Движение монстра. Интересный факт, но если оставить поле Движения пустым - монстр будет телепортироваться (моментальное перемещение из точки А в точку Б). Но вот начало и конец движения должны содержать как минимум 1 кадр!
5) Универсальный монстр. Универсальный монстр - это такой монстр, который имеет все возможные анимации. Такое существо сможет приспособиться как для воина, лучника или мага без возможности испортить игру (при попытке обращения к действию).
6) Не делайте очень малое количество кадров к каком-либо действии! Особенно это касается анимаций атаки, смерти, блока, получения урона. Делайте минимум 6 кадров, тогда исключается вероятность возникновения следующей ошибки:
монстр начинает атаковать...проходит 4 кадра...цель получает урон и отшатывается...монстр завершает свой удар. Вы поняли? Монстр не бьет сразу, а после удара цель отшатывается. Происходит некая одновременность событий, что завязано на кадрах анимации. Если анимация атаки у вас будет состоять из 3х кадров, а в игре прописано, что лишь на 4м кадре цель должна получить урон - игра зависнет и выскочит ошибка!
MasterOfPuppets
Цитата(FCst1 @ 14 Nov 2009, 19:11)
Недавно я наткнулся на проблему (когда редактировал Умертвие), что созданные в DefTool'е существа, палитра которых состояла из разных индексированных цветов (т.е. каждая картинка имела свой набор) весили ~15mb, хотя должны были - 500kb. Я решил найти обходной способ решения данной проблемы и понял, что если картинку не приводить к формату индексированных цветов, а просто оставить в RGB (bmp, 24-разрядный рисунок), при этом в DefTool'е выставить галочки всех обязательных цветов, то DEF получается малым по размеру. Найти объяснение этому я не могу...

Тому есть простое объяснение. Если картинка не индексирована, DefTool сама её индексирует, и делает это весьма плохо, уменьшая кол-во цветов в кадре до менее 256 и соответственно - уменьшая его объём. Но главное - никакого сглаживания она не использует. На монстрах, артефактах и прочей стандартной геройской графике этих недостатков не заметно, так как их качество изменяется от этого незначительно. Однако, когда я делал большие портреты героев, пропуская RGB через DefTool, получались унылые разводы.
Astaroth
Цитата
Цитата
Недавно я наткнулся на проблему (когда редактировал Умертвие), что созданные в DefTool'е существа, палитра которых состояла из разных индексированных цветов (т.е. каждая картинка имела свой набор) весили ~15mb, хотя должны были - 500kb. Я решил найти обходной способ решения данной проблемы и понял, что если картинку не приводить к формату индексированных цветов, а просто оставить в RGB (bmp, 24-разрядный рисунок), при этом в DefTool'е выставить галочки всех обязательных цветов, то DEF получается малым по размеру. Найти объяснение этому я не могу...

Тому есть простое объяснение. Если картинка не индексирована, DefTool сама её индексирует, и делает это весьма плохо, уменьшая кол-во цветов в кадре до менее 256 и соответственно - уменьшая его объём. Но главное - никакого сглаживания она не использует. На монстрах, артефактах и прочей стандартной геройской графике этих недостатков не заметно, так как их качество изменяется от этого незначительно. Однако, когда я делал большие портреты героев, пропуская RGB через DefTool, получались унылые разводы.

Поэтому чтоб не натыкаться на на пролую графику в игре и шоб Дефы весили немного. Просто загоняем все кадры в фотошоп. Берем кадр, на котором, по нашему мнению, представлены все цвета, загоняем его в индекс, при этом все цвета близкий к фоновому (R=0,G=255,B=255) меняем на фоновый, сохраняем таблицу в файл. А затем при индексации всех остальных кадров просто загружаем эту таблицу. Также еще хорошо ввести первые 10 цветов в таблицу, но это не критично
gamecreator
в последнем дефтуле изменен алгоритм индексации. пробуйте.
packa
Может это кто то сочтет за Флуд, однако:

Прежде чем спрашивать, попытайтесь сами найти ответ на интересующий вас вопрос.
Или постарайтесь сами додуматься, прежде чем обращаться за помощью (шевелить мозгами очень полезно rolleyes.gif )
FCst1
Цитата(MoP)
Цитата(FCst1)
Недавно я наткнулся на проблему (когда редактировал Умертвие), что созданные в DefTool'е существа, палитра которых состояла из разных индексированных цветов (т.е. каждая картинка имела свой набор) весили ~15mb, хотя должны были - 500kb. Я решил найти обходной способ решения данной проблемы и понял, что если картинку не приводить к формату индексированных цветов, а просто оставить в RGB (bmp, 24-разрядный рисунок), при этом в DefTool'е выставить галочки всех обязательных цветов, то DEF получается малым по размеру. Найти объяснение этому я не могу...


Тому есть простое объяснение. Если картинка не индексирована, DefTool сама её индексирует, и делает это весьма плохо, уменьшая кол-во цветов в кадре до менее 256 и соответственно - уменьшая его объём. Но главное - никакого сглаживания она не использует. На монстрах, артефактах и прочей стандартной геройской графике этих недостатков не заметно, так как их качество изменяется от этого незначительно. Однако, когда я делал большие портреты героев, пропуская RGB через DefTool, получались унылые разводы.


Да, для больших файлов в DEF лчше использовать зарание от-индексированную палитру. НО если этот большое (по размеру px) изображение состоит из нескольких кадров? И, на каждом из них цвета палитры меняются...
Astaroth
Цитата
Да, для больших файлов в DEF лчше использовать зарание от-индексированную палитру. НО если этот большое (по размеру px) изображение состоит из нескольких кадров? И, на каждом из них цвета палитры меняются...

Тогда зачем такие Дефы собирать? Проще так изображения отиндексировать и в Лод залить и так потом использовать. Дефы на то и созданы, чтоб хранить либо анимацию либо набор мелких кадров одного назначения, а не для огромных картин.
Или если нужна анимация, проще видео склепать
FCst1
Astaroth, посмотри, например, файл TPMrkS.DEF в h3sprite.lod...
Astaroth
У меня в лоде нет такого файла...
Iv
Цитата(Astaroth @ 15 Nov 2009, 20:05)
Цитата
Да, для больших файлов в DEF лчше использовать зарание от-индексированную палитру. НО если этот большое (по размеру px) изображение состоит из нескольких кадров? И, на каждом из них цвета палитры меняются...

Тогда зачем такие Дефы собирать? Проще так изображения отиндексировать и в Лод залить и так потом использовать. Дефы на то и созданы, чтоб хранить либо анимацию либо набор мелких кадров одного назначения, а не для огромных картин.
Или если нужна анимация, проще видео склепать

Видно, добавлять новых монстров (делать def'ы) ты не пробовал..
Astaroth
Цитата
Видно, добавлять новых монстров (делать def'ы) ты не пробовал..

Делал и в данный момент делаю. А ты к чему это?
tolich
Видимо, к тому, что деф монстра - большая такая картинка.
Astaroth
Цитата
Видимо, к тому, что деф монстра - большая такая картинка.

Я знаю, я это и указал
Цитата
Дефы на то и созданы, чтоб хранить либо анимацию

Под анимацией я имел в виду именно дефы монстров, героев, заклинаний и т.п. Ведь, если я не ошибаюсь огромный разброс цветов в Дефе редкость. И даже если есть можно выбрать наиболее "стандартный" кадр, т.е. кадр, который, по нашему мнению, содержит все цвета монстра.
Цитата
НО если этот большое (по размеру px) изображение состоит из нескольких кадров? И, на каждом из них цвета палитры меняются...

А под этой фразой я понял набор кадров, в которых очень сильно меняются цвета. Просто не учел, что это могут быть и монстры, моя оплошность
sergroj
Цитата(Master Of Puppets @ 14 Nov 2009, 23:37)
Тому есть простое объяснение. Если картинка не индексирована, DefTool сама её индексирует, и делает это весьма плохо, уменьшая кол-во цветов в кадре до менее 256 и соответственно - уменьшая его объём.

Вне зависимости от качества Def должен занимать одинаковый объем. Его размер зависит только от кол-ва спец. цветов (в первую очередь, прозрачного) и их расположения. Такие огромные дефы могут получиться, если отключить прозрачный цвет в DefTool.
Ты уверен, что кол-во цветов уменьшается до менее 256?
Преобразование палитры качественно можно делать с помощью Combine/Uncombine из DefTool 2 и графическо редактора.
FCst1
Назначения цветов палитры большинства геройских файлов

Таблица цветов одного из изображений HMMIII:

Итак, начнём по порядку:
первые 10 цветов – стандартные, ниже представлены их назначения и параметры в RGB
1 – голубой, предназначен для создания прозрачности картинки; R – 0 , G – 255 , B – 255.
2 – светло-розовый, предназначен для создания прозрачности 50%; R – 255 , G – 150 , B – 255.
3, 4 – оттенки розового, также нужны для обозначения прозрачности, но используются редко (если честно – я точно не знаю их назначения, скорее всего планировались для некоторых монстров) Но, для создания палитры их нужно заполнить; R – 255 , G – 100;50 , B – 255.
5 – тёмно-розовый, предназначен для создания прозрачности 75%; R – 255 , G – 0 , B – 255.
6 – жёлтый, предназначен для обозначения выделения (монстры) и цвета флага (объекты для карты); R – 255 , G – 255 , B – 0.
7 – фиолетовый, предназначен для создания обводки на прозрачности 50%; R – 180 , G – 0 , B – 255.
8 – зелёный, предназначен для создания обводки на прозрачности 75%; R –0 , G – 255 , B – 0.
9, 10 – 2 непонятных одинаковых цвета, непонятно зачем созданные smile.gif ; R – 255 , G – 128 , B – 255.

следующие 214 цветов – основные цвета изображения, настраивайте автоматически при индексации.

последние 32 цвета – так называемые «изменчивые» цвета, меняются в зависимости от игрока (их используют только некоторые элементы интерфейса, часть BMP-картинок) Если вы создаёте монстра или объект их можно добавить к основным цветам изображения. В BMP-файлах последние 32 цвета лучше делать полностью чёрными; R – 0 , G – 0 , B – 0.
FCst1
Поставил работающие ссылки на палитру. Если получится - верну картинки...
Etoprostoya
1) Почему в ДЕФе четыре поворота и все одинаковые (все или как правило)?
2) Какое минимальное количество кадров нужно для каждого действия в ДЕФе? Маэстро говорил о количестве кадров в атаке и перемещении, а как в других?
3) Есть какие-то ммм... законы жанра или особенности, что ли, в анимации "standing" и "mouse over", которые хорошо бы соблюсти? Например, в анимации "mouse over" юниты почти всегда поднимают или двигают оружие и т.п.
4) Можно ли как-то использовать "неиспользуемую смерть"?
FCst1
Ответ пришёл внезапно и очень быстро.
1) 2 для "влево" и 2 для "вправо". Почему? Нужно спрашивать у разработчиков.
2) Видел деф монстра, где на каждое действие приходилось 4-5 кадров. И ничего, работал.
3) standing - лёгкое покачивание влево и вправо
mouse over - поигрывание оружием (подъём, поворачивание и т.п.), если оно есть, если нет - устрашение противника, кривляние, показ спец. способности.
4) Вроде никак.
Haart of the Abyss
1. Подозреваю, что там не 2 "влево" и 2 "вправо", а по одной анимации на "слева направо" и "справа налево". Хм, что-то непонятно выразился. Поясняю на картинках: не "←< >→ ←< >→", а "←<>→ ←<>→". Короче, когда монстр поворачивается, игра не сшивает вместе две анимации поворота на 90 градусов, а использует одну но на 180.
Надеюсь. кто-нибудь поймёт, что я тут написал, потому что вышло всё равно сбивчиво. К тому же я могу и ошибаться.
hippocamus
Вопрос для FCst на засыпку.
Деф воды имеет N (12-32, не помню) цветов в конце палитры, которые не используются в самом дефе, но используются для её "анимации", на самом деле - циклической смене цветов в палитре.
Например, я хочу сделать чёрную воду для подземелий, лаву, взяв текстуру из лавовых озёр, мутную воду (из рек), и "зелёную" воду для заболоченных территорий. Никакие конверторы не позволят мне сохранить индексацию палитры в первозданном виде, и анимация теряется. Что сделать, чтобы всё работало?
FCst1
hippocamus, схожую проблему я наблюдал, когда делал кнопку для меню, где в дефе нужно было сохранить последние 32 цвета. Def Tool цвета мешает, а вот старые (8.0 и назад в прошлое) версии Def Maker'a - нет. Рекомендую попробовать его smile.gif
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2025 IPS, Inc.