Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.08.29;
Скачать: CL | DM;

Вниз

Раскраска текстуры   Найти похожие ветки 

 
Dimaxx ©   (2004-05-12 21:29) [0]

Сабж. Есть текстура туманности. Она в оттенках красного (с примесью других цветов, но может быть и синего, принципиально неважно). Мне нужно получить другой цвет этой туманности. Например, желтовато-зеленый, с сохранением внешнего вида и сохраненным черным цветом фона. Есть какой-нить алгоритм для перекрашивания изображения. Цвет не фиксирован, нужна универсальность. Текстура, допустим, фиксирована. Цвет ее зависит, скажем, от звезды. Вот и нужно перекрасить в цвет свечения звезды.


 
Thor ©   (2004-05-12 21:32) [1]

первое, что приходит на ум - менять цветовую схему с, положим, RGB на BGR и т.п.


 
Mihey ©   (2004-05-12 22:19) [2]

Серой текстуру сделать - это будут оттенки будущего цвета.


 
wiz ©   (2004-05-12 22:48) [3]

to Dimaxx:

Mihey в целом прав, делаешь grayscale текстуру, а потом домножаешь на определённый цвет, получаешь то, что нужно...

способ второй (более геморойный), сделать алгоритм изменения Hue ("цветность") а-ля мощные редакторы (Photoshop и проч.). Алгоритм должен работать примерно следующим образом:
1) переводим пиксел картинки из RGB в HSB (Hue/Saturation/Brightness)
2) добавляем к значению Hue нужное число X
3) переводим обратно в RGB

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

перевод RGB->HSB искать на просторах интернету...
(например http://vedenev.gorodok.net/RGB_HSB/)


 
Dimaxx ©   (2004-05-13 22:44) [4]

Примерчик про перемножение цвета в grayscale мона? Я тока начинаю с этим работать, поэтому и возникают такие глупые вопросы.


 
Mihey ©   (2004-05-13 22:58) [5]

Примерчик...
http://delphibase.endimus.ru/?action=viewfunc&topic=mediaimg&id=10178


 
MeF88 ©   (2004-05-14 09:59) [6]

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


 
Dimaxx ©   (2004-05-14 23:40) [7]

Mihey - super!!! Respect.



Страницы: 1 вся ветка

Текущий архив: 2004.08.29;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.039 c
14-1092367704
Новенький
2004-08-13 07:28
2004.08.29
Ищу компонент


14-1091834254
Piter
2004-08-07 03:17
2004.08.29
Лицо со шрамом


11-1080145786
nester
2004-03-24 19:29
2004.08.29
Почему не срабатывает ItemData в ListView?


14-1092127735
KSergey
2004-08-10 12:48
2004.08.29
Множественное наследование: почему его нет?


3-1091864650
serg128
2004-08-07 11:44
2004.08.29
Как сортировать по вычислимому полю?