Перейти к содержанию

Сообщения от Смена иконки у героев

Пока нет оценок — будьте первым!
5 лет назад
Думаю из названия все понятно. Хочу например изменить иконку дугала, может даже просто ретекстурнуть, но когда я ретекстурил выходит что игра вместо иконки показывает непонятно что. в чем может быть проблема? Юнитов помню также менял, вроде все хорошо было.
Аватар пользователя
5 лет назад
Вы меняете файл dds? Тогда вам нужно убедиться, что сохраняете его в том же формате, что он есть в игре. Бывают, например, DXT1, DXT3, TF8888.
Код формата содержится в xdb файле, который описывает картинку.
Но я обычно туда не смотрю. Потому что если вес сохранённого файла правильный (такой же, как у старой иконки в вашем случае), то скорее всего, всё в порядке.
В ответ пользователю Ment
5 лет назад
Да, я уже исправил, но теперь новая напасть, когда сохраняю, то удаленный фон(пустые места), становятся белыми. Все форматы уже перепробовал. Можно поподробнее, где именно в xdb файле указан формат?*
TF_8888 - данная строчка? Просто я не нашел формата TF-8888
В ответ пользователю Dorg
Аватар пользователя
5 лет назад
Dorg
Да, я уже исправил, но теперь новая напасть, когда сохраняю, то удаленный фон(пустые места), становятся белыми. Все форматы уже перепробовал. Можно поподробнее, где именно в xdb файле указан формат?*
TF_8888 - данная строчка? Просто я не нашел формата TF-8888
Здравствуйте. У меня в подписи есть руководство: Как создать своего героя?. Там разбирается в том числе и добавление иконки.
В ответ пользователю Dorg
Аватар пользователя
5 лет назад
Dorg
Да, я уже исправил, но теперь новая напасть, когда сохраняю, то удаленный фон(пустые места), становятся белыми. Все форматы уже перепробовал. Можно поподробнее, где именно в xdb файле указан формат?*
TF_8888 - данная строчка? Просто я не нашел формата TF-8888
День добрый. Белый фон связан с тем что у вас нету или не настроен альфа-канал.

В разделе Channels Добавьте новый канал и в нём закрашиваете то что должно быть видимым белым, то что должно быть прозрачным чёрным и сохраняете. Тогда всё будет работать правильно!

Вот результат представленных выше скринов:
Аватар пользователя
5 лет назад
День добрый. Белый фон связан с тем что у вас нету или не настроен альфа-канал.
Как я понял, это скорее бага с разными цветами прозрачной альфы, а не факта её отсутствия. Прозрачные пиксели в формате TF_8888 должны быть именно чёрными, и частичная прозрачность не поддерживается. Белые прозрачные пиксели будут отображаться именно белыми, а не прозрачными. В фоторедакторе это можно исправить, впрочем, но я в своё время тоже намучился.
В ответ пользователю Waterfall_13
5 лет назад
Waterfall_13
День добрый. Белый фон связан с тем что у вас нету или не настроен альфа-канал.

В разделе Channels Добавьте новый канал и в нём закрашиваете то что должно быть видимым белым, то что должно быть прозрачным чёрным и сохраняете. Тогда всё будет работать правильно!

Вот результат представленных выше скринов:
Спасибо большое, ваш метод мне действительно помог! Так и знал, что проблема в альфа-канале, но как с этим бороться - не имел представленя.

Добавлено через 40 секунд
}{0TT@6bI4
Здравствуйте. У меня в подписи есть руководство: Как создать своего героя?. Там разбирается в том числе и добавление иконки.
Спасибо, обязательно гляну. думаю навык создания новых героев в целом - мне пригодится!

Добавлено через 31 секунду
Большое спасибо всем, кто отозвался! Я думал на меня забьют и никто не ответит, но здесь столько отзывчивых людей, что даже слегка неловко выходит :)

Добавлено через 51 минуту
Блин, возникла новая беда, вставляю картинку, вроде делаю как выше, но у аватарки персонажа видны белые проблеки. Вот например у Фарамира возле волос белые блики, везде по чуть чуть, пыталс и белого и черного больше добавить, и саму картинку подрезать, не выходит.*
https://imgur.com/a/3AhgNVS
Аватар пользователя
5 лет назад
Значит, эти конкретные пиксели неправильного цвета, только и всего.
Надо сказать, что в непосредственной вблизи от самой морды героя в любом случае будет некрасиво и, если не блики, то пиксельно -- поэтому надо обвести изображение умеренно толстой чёрной рамкой! Лучше создать новый слой под основным и сделать эту чёрную рамку в нём.
В ответ пользователю Ment
5 лет назад
Ment
Значит, эти конкретные пиксели неправильного цвета, только и всего.
Надо сказать, что в непосредственной вблизи от самой морды героя в любом случае будет некрасиво и, если не блики, то пиксельно -- поэтому надо обвести изображение умеренно толстой чёрной рамкой! Лучше создать новый слой под основным и сделать эту чёрную рамку в нём.
А конкретные пиксели на самой рамке героя, или на черном цвете, который я делал фоном для альфа канала? Просто я итак итак пытался, что то ничего не меняется)
Аватар пользователя
5 лет назад
Я скажу честно, я вообще не работал с фотошопом и альфа каналами. Самым простым способом мне показалось в своё время брать пустую иконку, которую я нашёл где-то в data.pak, она там нужного размера и с нужной чёрной прозрачностью. Я копирую этот файл, дальше делаю у изображения второй слой и во второй слой вставляю то, что не должно быть прозрачным (видимые пиксели). И ничего больше, чтобы не было такого, что оно неправильно наложится и в итоге выйдет неправильная прозрачность )
Это наименее морочно мне показалось, чем выискивать "неправильные" пиксели.
Соответственно, чёрную рамку тоже можно рисовать на нижнем, прозрачном, слое.

Разумеется, для этого способа годится не только пустая иконка, но и любая не пустая, где все пиксели, которые у вас будут прозрачными -- прозрачные. Но универсальнее найти пустую.

Ну, если вам подскажут по другим способам, то хорошо, может, оно будет и удобнее )
----
И ещё одно, если нужно, цвет пикселя в любом редакторе можно определить после сведения изображения, с помощью пипетки на нужном пикселе. Там и посмотрите, чёрный он или белый (прозрачным он, судя по всему, в любом случае должен быть).
----
Вообще, в таком описании это звучит суперсложно, но в реальности оно... Попроще будет. Так что если ещё будет актуально, завтра попробую наделать скриншотов в paint.net, как я это там делаю.
В ответ пользователю Ment
5 лет назад
Ment
Я скажу честно, я вообще не работал с фотошопом и альфа каналами. Самым простым способом мне показалось в своё время брать пустую иконку, которую я нашёл где-то в data.pak, она там нужного размера и с нужной чёрной прозрачностью. Я копирую этот файл, дальше делаю у изображения второй слой и во второй слой вставляю то, что не должно быть прозрачным (видимые пиксели). И ничего больше, чтобы не было такого, что оно неправильно наложится и в итоге выйдет неправильная прозрачность )
Это наименее морочно мне показалось, чем выискивать "неправильные" пиксели.
Соответственно, чёрную рамку тоже можно рисовать на нижнем, прозрачном, слое.

Разумеется, для этого способа годится не только пустая иконка, но и любая не пустая, где все пиксели, которые у вас будут прозрачными -- прозрачные. Но универсальнее найти пустую.

Ну, если вам подскажут по другим способам, то хорошо, может, оно будет и удобнее )
----
И ещё одно, если нужно, цвет пикселя в любом редакторе можно определить после сведения изображения, с помощью пипетки на нужном пикселе. Там и посмотрите, чёрный он или белый (прозрачным он, судя по всему, в любом случае должен быть).
----
Вообще, в таком описании это звучит суперсложно, но в реальности оно... Попроще будет. Так что если ещё будет актуально, завтра попробую наделать скриншотов в paint.net, как я это там делаю.

Было бы здорово) Еще хотелось бы попросить это пустое изображение, на которое вы накладываете иконки :)
Я тоже paint.net пользуюсь, пока что, так что думаю все понять должен)
Аватар пользователя
5 лет назад
Окей, давайте возьмём одну из карт Мастера для примера (просто потому, что там как раз недавно речь шла об иконках) и сделаем иконку для Эльвы!

1.
Вот, мы её выгрузили на рабочий стол.

Проверим её размер в проводнике -- показывает
64,1 КБ (65*664 байт)


Запомните это число -- если наша конечная иконка размера 128x128 весит столько же, то скорее всего мы сохранили её правильно. Но я всё же приложу потом скриншот, в каком формате сохранял я, чтобы точно не запутаться.

2.
Если у вас уже есть шаблон изображения с прозрачным чёрным цветом размера 128x128, или если вы его сделали раньше (нашли, скачали из этого сообщения: я приложу его с названием base.dds), то этот пункт можно пропустить.

Для того, чтобы добавить на эту иконку прозрачность, я предлагаю создать в paint.NET новое пустое изображение размера 128x128



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



Выбираем наш (единственный) фоновый слой, жмём в панели слоёв на кнопочку с гаечным ключом ("Свойства")



и устанавливаем слою непрозрачность на 0



Сохраняем, закрываем изображение, открываем снова (просто у меня не работала корректно пипетка, прежде чем я не закрыл изображение и не открыл снова).

В каком формате сохранить? На данном этапе годится просто png с прозрачностью, но, если хотите сохранить в правильном dds, то смотрите пункт 5 ближе к концу, когда будем сохранять финальный уже результат.

Итак, открываем наш шаблон -- и вы великолепны, оно действительно чёрно-прозрачное, как того и требует игра! Смотрите действие пипетки на скриншоте.



3.
Давайте займёмся эльфийкой. Итак, открываем.



Берём ластик с какой-нибудь разумной жёсткостью и размером, и аккуратно удаляем фон. Особенно аккуратно возле ушек, Эльфийские Ушки Важны!



Берём волшебную палочку и тыкаем в одну из прозрачных областей рисунка, в данном случае -- слева. Настраиваем чувствительность волшебной палочки, чтобы вся эта область оказалась выделена, и при этом не заезжала на нашу эльфийку (пограничные полупрозрачные пиксели также не должны войти в выделение).



Зажимаем Ctrl и тычем волшебной палочкой теперь уже в правую область от эльфки.



А теперь идём в пункт меню "Правка" и обращаем выделение.



У нас оказалась выделена только эльфийка и ничего лишнего.



Делаем Ctrl+C. Открываем наш шаблон base.dds из пункта 2. Делаем в нём Ctrl+Shift+V.
С самым главным справились!

4.
Итак, у нас есть изменённое изображение base.dds с двумя слоями, нижний -- прозрачный, верхний -- эльфка.
Переходим в нижний слой и под эльфкой рисуем чёрную границу, толщиной примерно в два пикселя или чуть толще. Я делал это кисточкой. Не исключаю, что аккуратнее оно может получиться, если использовать инструмент "Линия / Кривая", в таком случае следует рисовать именно кривые линии. Но вот результат у меня:



Финальные штрихи. Берём инструмент рисования "фигуры", выбираем "прямоугольник" и "только заливка". Основной цвет -- чёрный.



И рисуем прямоугольники на верхнем слое (где эльфийка) в тех местах, где эльфийка касается края картинки. Толщиной ровно два пикселя.



Когда вы с этим закончили, слои можно объединять. Результат:



5.
Сохраняем изображение в dds (Direct Draw Surface). Для иконок -- вот в таком формате я сохранял:



Базу не испортите, лучше сохранять в новый файл.
Также, я в своё время делал только иконки 128x128. Всякие 64x64 и 32x32 игра сама может отмасштабировать из большой версии, впрочем, о качестве не знаю -- возможно, оно того не стоит. И всё же разработчики дополнения "Повелители Орды" используют в своих файлах только большие иконки.

[spoiler=Результат в игре:][/spoiler]

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


Вроде бы на этом всё.

Прикладываю результат и базу (шаблон) в архиве elf + base.zip
Аватар пользователя
5 лет назад
Интересный способ. Есть ещё вариант: лассом аккуратно выделяем эльфийку (с ушками), копируем; затем выделяем всё полотно и нажимаем Backspace. Прозрачный фон готов. Копируем туда эльфийку, обводим чёрным, сохраняем tga и экспортируем в карту через редактор. Как альтернатива.
Аватар пользователя
5 лет назад
Можно лассо, но с помощью лассо сложнее будет сделать полупрозрачные пиксели на границе.
Экспорт tga -- ну это можно попробовать, да, если редактор сам поправит прозрачность при экспорте, заменив белую на чёрную. Не пробовал, но возможно.
В ответ пользователю Ment
5 лет назад
Ment
Окей, давайте возьмём одну из карт Мастера для примера (просто потому, что там как раз недавно речь шла об иконках) и сделаем иконку для Эльвы!

1.
Вот, мы её выгрузили на рабочий стол.

Проверим её размер в проводнике -- показывает



Запомните это число -- если наша конечная иконка размера 128x128 весит столько же, то скорее всего мы сохранили её правильно. Но я всё же приложу потом скриншот, в каком формате сохранял я, чтобы точно не запутаться.

2.
Если у вас уже есть шаблон изображения с прозрачным чёрным цветом размера 128x128, или если вы его сделали раньше (нашли, скачали из этого сообщения: я приложу его с названием base.dds), то этот пункт можно пропустить.

Для того, чтобы добавить на эту иконку прозрачность, я предлагаю создать в paint.NET новое пустое изображение размера 128x128



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



Выбираем наш (единственный) фоновый слой, жмём в панели слоёв на кнопочку с гаечным ключом ("Свойства")



и устанавливаем слою непрозрачность на 0


Сохраняем, закрываем изображение, открываем снова (просто у меня не работала корректно пипетка, прежде чем я не закрыл изображение и не открыл снова).

В каком формате сохранить? На данном этапе годится просто png с прозрачностью, но, если хотите сохранить в правильном dds, то смотрите пункт 5 ближе к концу, когда будем сохранять финальный уже результат.

Итак, открываем наш шаблон -- и вы великолепны, оно действительно чёрно-прозрачное, как того и требует игра! Смотрите действие пипетки на скриншоте.


3.
Давайте займёмся эльфийкой. Итак, открываем.



Берём ластик с какой-нибудь разумной жёсткостью и размером, и аккуратно удаляем фон. Особенно аккуратно возле ушек, Эльфийские Ушки Важны!


Берём волшебную палочку и тыкаем в одну из прозрачных областей рисунка, в данном случае -- слева. Настраиваем чувствительность волшебной палочки, чтобы вся эта область оказалась выделена, и при этом не заезжала на нашу эльфийку (пограничные полупрозрачные пиксели также не должны войти в выделение).


Зажимаем Ctrl и тычем волшебной палочкой теперь уже в правую область от эльфки.


А теперь идём в пункт меню "Правка" и обращаем выделение.


У нас оказалась выделена только эльфийка и ничего лишнего.


Делаем Ctrl+C. Открываем наш шаблон base.dds из пункта 2. Делаем в нём Ctrl+Shift+V.
С самым главным справились!

4.
Итак, у нас есть изменённое изображение base.dds с двумя слоями, нижний -- прозрачный, верхний -- эльфка.
Переходим в нижний слой и под эльфкой рисуем чёрную границу, толщиной примерно в два пикселя или чуть толще. Я делал это кисточкой. Не исключаю, что аккуратнее оно может получиться, если использовать инструмент "Линия / Кривая", в таком случае следует рисовать именно кривые линии. Но вот результат у меня:


Финальные штрихи. Берём инструмент рисования "фигуры", выбираем "прямоугольник" и "только заливка". Основной цвет -- чёрный.


И рисуем прямоугольники на верхнем слое (где эльфийка) в тех местах, где эльфийка касается края картинки. Толщиной ровно два пикселя.


Когда вы с этим закончили, слои можно объединять. Результат:


5.
Сохраняем изображение в dds (Direct Draw Surface). Для иконок -- вот в таком формате я сохранял:


Базу не испортите, лучше сохранять в новый файл.
Также, я в своё время делал только иконки 128x128. Всякие 64x64 и 32x32 игра сама может отмасштабировать из большой версии, впрочем, о качестве не знаю -- возможно, оно того не стоит. И всё же разработчики дополнения "Повелители Орды" используют в своих файлах только большие иконки.

[spoiler=Результат в игре:][/spoiler]

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


Вроде бы на этом всё.

Прикладываю результат и базу (шаблон) в архиве elf + base.zip


Спасибо большое, и не лень же вам было это все делать
Я по сути все тоже самое делал, но вот рамку не додумывался сделать, чтобы разграничить это изображение, теперь пожалуй буду
Спасибо еще раз большое!

Статистика

Приветствуем новейшего участника: recijeb

Сейчас на сайте 4 пользователей 1276 гостей