Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 04.09.2014, 18:54
ther вне форума Посмотреть профиль Отправить личное сообщение для ther Найти все сообщения от ther
  № 1  
Ответить с цитированием
ther

Регистрация: Apr 2008
Сообщений: 211
По умолчанию помогите с заменой цвета

задача такая: заменить определенный цвет на изображении на заданный
я подгружаю png, где, к примеру, рубашка, На этом изображении цвет, который нужно в последствии менять, я заменил на белый. Вот как мне теперь заменить на изображении белый цвет, на любой другой, пусть будет красный?
я смотрел в сторону
Код AS3:
			var colorTransformer:ColorTransform = loader.transform.colorTransform; 
			colorTransformer.redMultiplier = 0x00CC00;
но, я или неправильно его юзаю, или он не для того.

спасибо

Старый 04.09.2014, 20:07
samana вне форума Посмотреть профиль Отправить личное сообщение для samana Найти все сообщения от samana
  № 2  
Ответить с цитированием
samana
 
Аватар для samana

блогер
Регистрация: Mar 2008
Адрес: Днепропетровск
Сообщений: 1,783
Записей в блоге: 3
Не забудьте, что после манипуляций с ColorTransform, его необходимо обратно назначить объекту.
Код AS3:
var colorTransformer:ColorTransform = loader.transform.colorTransform; 
colorTransformer.redMultiplier = 0x00CC00;
loader.transform.colorTransform = colorTransformer; <-----

Старый 04.09.2014, 20:19
ther вне форума Посмотреть профиль Отправить личное сообщение для ther Найти все сообщения от ther
  № 3  
Ответить с цитированием
ther

Регистрация: Apr 2008
Сообщений: 211
samana
это понятно, я просто не весь код привел

что бы было понятней, креплю файл, вот как заменить только видимый красный цвет на другой?


Последний раз редактировалось ther; 04.09.2014 в 21:59.
Старый 06.09.2014, 04:19
expl вне форума Посмотреть профиль Отправить личное сообщение для expl Найти все сообщения от expl
  № 4  
Ответить с цитированием
expl

блогер
Регистрация: Feb 2006
Сообщений: 1,474
Записей в блоге: 3
Если бы спросили 3 года назад, то поворотом цвета shader-фильтром. Шейдер поворота цвета надо найти или написать в Pixel Bender (полноценный поворот ColorMatrixFilter-ом не сделать)

Нет уверенности просто, что другого АПИ не появилось
И что со старыми шейдерами в новых флешплеерах ничего не случилось уверенность только 90%

Старый 06.09.2014, 16:29
ZackMercury вне форума Посмотреть профиль Отправить личное сообщение для ZackMercury Найти все сообщения от ZackMercury
  № 5  
Ответить с цитированием
ZackMercury
 
Аватар для ZackMercury

блогер
Регистрация: Jul 2013
Адрес: Север
Сообщений: 1,918
Записей в блоге: 23
Отправить сообщение для ZackMercury с помощью ICQ Отправить сообщение для ZackMercury с помощью Skype™
Самое первое, что пришло в голову - проходиться по всем пикселам и, где белый цвет - менять его на нужный.

Код AS3:
for(var oy:int = 0; oy < bmd.height; oy ++)
{
 
for(var ox:int = 0; ox < bmd.width; ox ++)
{
 
if(bmd.getPixel(ox, oy) == 0xFFFFFF)
bmd.setPixel(ox, oy, 0xFFAACC);
 
}
 
}
P.S. насчёт оттенков, это уже другой разговор.
Если у вас не чисто белый, то заменить его будет сложней.
__________________
There is no thing in this world that is not simple.


Последний раз редактировалось ZackMercury; 06.09.2014 в 16:48.
Старый 06.09.2014, 17:09
ther вне форума Посмотреть профиль Отправить личное сообщение для ther Найти все сообщения от ther
  № 6  
Ответить с цитированием
ther

Регистрация: Apr 2008
Сообщений: 211
спасибо, я думал есть способ по проще, нежели бегать по пикселям, ну да лан

Старый 07.09.2014, 15:14
GBee вне форума Посмотреть профиль Отправить личное сообщение для GBee Найти все сообщения от GBee
  № 7  
Ответить с цитированием
GBee
 
Аватар для GBee

Регистрация: Jan 2009
Сообщений: 3,067
Записей в блоге: 3
Отправить сообщение для GBee с помощью Skype™
Есть способ попроще - рубашку сделать отдельным элементом и менять цвет Тинтом вроде.
__________________
Чтобы доказать, что вы не робот, причините вред другому человеку.

Старый 07.09.2014, 18:19
ther вне форума Посмотреть профиль Отправить личное сообщение для ther Найти все сообщения от ther
  № 8  
Ответить с цитированием
ther

Регистрация: Apr 2008
Сообщений: 211
а что такое "тинт"? что то не нахожу

Старый 07.09.2014, 21:50
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 9  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Цитата:
менять цвет Тинтом вроде.
Ты случаем со старлингом не путаешь?
В чистом флеше этого нет. Там надо будет ColorTransform задействовать
__________________
Ко мне можно и нужно обращаться на ты)

Старый 07.09.2014, 21:55
Tails вне форума Посмотреть профиль Отправить личное сообщение для Tails Найти все сообщения от Tails
  № 10  
Ответить с цитированием
Tails
 
Аватар для Tails

блогер
Регистрация: Dec 2008
Адрес: г. Чебоксары
Сообщений: 2,259
Записей в блоге: 6
Вот блин, я столько времени потратил, пока сидел и раскуривал статью по цветовому тону https://ru.wikipedia.org/wiki/HSV_(%...5%D0%BB%D1%8C))
Всё оказалось гораздо проще, фильтр уже написан добрыми адобовцами: http://help.adobe.com/ru_RU/FlashPla...justColor.html

Вообщем, это делается через hue:
AdjustColor.swf   (21.3 Кб)
Вложения
Тип файла: rar AdjustColor.rar (54.4 Кб, 18 просмотров)
Тип файла: swf AdjustColor.swf (21.3 Кб, 75 просмотров)
__________________
Дети не должны знать о своих родителях

Создать новую тему Ответ Часовой пояс GMT +4, время: 12:32.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 12:32.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.