Главная страница
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.04 c
8-1086717077
Дана
2004-06-08 21:51
2004.08.29
Градиентная заливка формы


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


1-1092203163
RDen
2004-08-11 09:46
2004.08.29
по StringGrid


9-1084382986
Dimaxx
2004-05-12 21:29
2004.08.29
Раскраска текстуры


3-1091784291
Самовар
2004-08-06 13:24
2004.08.29
Сортировка