doom2d.org

Главная база плоских морпехов
Текущее время: 30 мар 2017, 15:33

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 8 ] 
Автор Сообщение
СообщениеДобавлено: 02 дек 2009, 19:38 
Не в сети
Site Admin
Аватара пользователя

Зарегистрирован: 17 окт 2009, 23:43
Сообщения: 5585
Откуда: \\NEGRO
Проблема
На текстурах с альфой часто образуется мерзкая белая кромка по краю. Особенно это заметно на джибсах моделек (куски мяса, на которые разрывает думера слишком мощный дамаг. Мясо в этом случае выглядит слегка подгнившим.).
Изображение

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

Теория
Это происходит за счет смешивания крайних пикселей картинки с крайними пикселями фона. Так работает OpenGL. Чтобы побороть эту мерзость, надо определенным образом обрабатывать края спрайта под альфой:
Изображение

Практика
Второй вариант "без кромок". реализуется в фотошопе за десять секунд:
    1. Убеждаемся, что спрайт у нас обтравлен и находится на отдельном слое.
    2. Делаем альфу, как обычно.
    3. Переключаемся на слой со спрайтом.
      3.1 Ctrl-A (выделили весь слой)
      3.2 Ctrl-влево, Сtrl-вправо (выделили все значащие пиксели слоя)
      3.3 Зажимаем Сtrl-Alt и начинаем танцевать:
        влево-влево, вправо-вправо; (создали слева двухпиксельную обводку цвета пикселей границы спрайта, вернули спрайт в исходную точку)
        вверх-вверх, вниз-вниз;
        вправо-вправо, влево-влево;
        вниз-вниз, вверх-вверх.

      Здесь это выглядит страшно, но на практике делается за пять секунд.
      Главное понять, что при этом проиходит.
      Отпускаем Сtrl-Alt.
    4. Проверяем, что центр спрайта не сдвинулся относительно альфы.
    5. Сохраняем и смотрим, что получилось, в игре.

У меня получилось так:
Изображение

P.S. В процессе создания иллюстраций было пущено на ветчину штук десять L.A.R.D от Chaos Knight. Ни один думер не пострадал.
P.P.S. Мда, на старом форуме эта статья была лучше.

_________________
И неважно, что нет морей на Марсе, каждый морпех носит море в сердце.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 03 дек 2009, 17:30 
Не в сети
Аватара пользователя

Зарегистрирован: 18 окт 2009, 19:53
Сообщения: 163
Такое получается только если альфа составлен неправильно.
Я ни на одной текстуре такого не замечал у себя.
Кстати есть такая кнопочка - уточнить край. Там можно выделение настроить по своему усмотрению.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 03 дек 2009, 18:32 
Не в сети
Site Admin
Аватара пользователя

Зарегистрирован: 17 окт 2009, 23:43
Сообщения: 5585
Откуда: \\NEGRO
На джибсах такое получается и с аккуратной альфой.

_________________
И неважно, что нет морей на Марсе, каждый морпех носит море в сердце.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 03 дек 2009, 22:09 
Не в сети
Аватара пользователя

Зарегистрирован: 18 окт 2009, 19:53
Сообщения: 163
Получается это баг игры...


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 05 дек 2009, 00:47 
Не в сети
Site Admin
Аватара пользователя

Зарегистрирован: 17 окт 2009, 23:43
Сообщения: 5585
Откуда: \\NEGRO
Нет, так работает OpenGL.

_________________
И неважно, что нет морей на Марсе, каждый морпех носит море в сердце.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 05 дек 2009, 16:11 
Не в сети
Аватара пользователя

Зарегистрирован: 18 окт 2009, 19:53
Сообщения: 163
То есть он не умеет правильно поворачивать текстуры?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 05 дек 2009, 19:08 
Не в сети
Site Admin
Аватара пользователя

Зарегистрирован: 17 окт 2009, 23:43
Сообщения: 5585
Откуда: \\NEGRO
Умеет. Но при этом происходит смешение пикселей на границе области, закрытой альфой и открытой.

_________________
И неважно, что нет морей на Марсе, каждый морпех носит море в сердце.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 15 янв 2010, 12:06 
Не в сети
Приколист
Аватара пользователя

Зарегистрирован: 18 окт 2009, 04:01
Сообщения: 5699
Откуда: Владивосток
Jabberwock писал(а):
P.P.S. Мда, на старом форуме эта статья была лучше.

Я считаю иначе. Тут она информативнее.

_________________
Чёрный Думер, Чёрный Думер
С монстрами сражается.
Чёрный Думер, Чёрный Думер
Рокетланчер плавится.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 8 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
doom2d.org, since 2007