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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 22.03.2010, 16:36
$mival вне форума Посмотреть профиль Отправить личное сообщение для $mival Найти все сообщения от $mival
  № 1  
Ответить с цитированием
$mival
 
Аватар для $mival

Регистрация: Oct 2005
Адрес: Russia, Irkutsk
Сообщений: 742
По умолчанию blendMode + rotationX/Y/Z

Привет!
случилось мне столкнуться с бленд модэ.
ситуация такая, если у спрайта поменять бленд и его родителя повернуть например rotationY, то бленд не работает. (bug?)

вот этот код не работает (наложения не происходит)
зы: GlobalUtils.createRec, рисует прямоугольник и возвращает спрайт

Код AS3:
var sp:Sprite = new Sprite();
var sp0:Sprite = GlobalUtils.createRec(20, 20, 300, 40, 0xd70d29, 1);
sp0.blendMode = BlendMode.MULTIPLY;
sp.addChild(sp0);
sp.rotationY = 30; // если убрать поворот или поворачивать sp0, то такое наложение работает
 
var sp1:Sprite = GlobalUtils.createRec(10, 10, 300, 40, 0x0000FF, 1);
 
super.addChild(sp1);
super.addChild(sp);
как быть при таких ограничениях?
__________________
smival.com

Старый 23.03.2010, 22:38
Artic вне форума Посмотреть профиль Найти все сообщения от Artic
  № 2  
Ответить с цитированием
Artic
Banned

Регистрация: Jun 2009
Сообщений: 298
вот так работает
Код AS3:
var sp:Sprite = new Sprite();
var sp0:Sprite = createRec(20, 20, 300, 40, 0xd70d29,1);
sp.blendMode = BlendMode.MULTIPLY;
sp.addChild(sp0);
sp.rotationY = 30; // если убрать поворот или поворачивать sp0, то такое наложение работает
 
var sp1:Sprite = createRec(10, 10, 300, 40, 0x0000FF,1);
 
addChild(sp1);
addChild(sp);
 
 
function createRec(x:Number,y:Number,width:Number,height:Number,color:uint,alpha:Number):Sprite
{
	var s:Sprite = new Sprite();
	s.graphics.beginFill(color,alpha);
	s.graphics.drawRect(x,y,width,height);
	s.graphics.endFill();
	return s;	
}

Старый 23.03.2010, 22:46
$mival вне форума Посмотреть профиль Отправить личное сообщение для $mival Найти все сообщения от $mival
  № 3  
Ответить с цитированием
$mival
 
Аватар для $mival

Регистрация: Oct 2005
Адрес: Russia, Irkutsk
Сообщений: 742
нуда, потому что блендуемый и его фон лежат в одном паренте, когда имеют разный парент и поворот, то всё, кирьдык
__________________
smival.com

Старый 23.03.2010, 23:10
Artic вне форума Посмотреть профиль Найти все сообщения от Artic
  № 4  
Ответить с цитированием
Artic
Banned

Регистрация: Jun 2009
Сообщений: 298
угу ... но врятли это баг ... более чем уверен что это документировано

Старый 23.03.2010, 23:11
Zebestov вне форума Посмотреть профиль Отправить личное сообщение для Zebestov Посетить домашнюю страницу Zebestov Найти все сообщения от Zebestov
  № 5  
Ответить с цитированием
Zebestov
Lorem ipsum
 
Аватар для Zebestov

модератор форума
Регистрация: May 2001
Адрес: Одесса
Сообщений: 4,869
Записей в блоге: 4
Код:
symbol1(parent)
 -symbol2(3D) - вот ему надо делать Multiply
   -symbol3(movieclip) - а не ему
symbol4 - имеет с symbol2 разные паренты, а все работает
проверял тупо в таймлайне на картинках.
__________________
Поймай яблоко 2!

Старый 23.03.2010, 23:13
$mival вне форума Посмотреть профиль Отправить личное сообщение для $mival Найти все сообщения от $mival
  № 6  
Ответить с цитированием
$mival
 
Аватар для $mival

Регистрация: Oct 2005
Адрес: Russia, Irkutsk
Сообщений: 742
........

Добавлено через 3 минуты
Цитата:
Сообщение от Zebestov Посмотреть сообщение
Код:
symbol1(parent)
 -symbol2(3D) - вот ему надо делать Multiply
   -symbol3(movieclip) - а не ему
symbol4 - имеет с symbol2 разные паренты, а все работает
проверял тупо в таймлайне на картинках.
да, работает, ситуация описана конкретная и добавить бленд надо уже в написанный движок, а в нем: поворачивается НЕ блендуемый, а его РОДИТЕЛЬ

Добавлено через 8 минут
Цитата:
Сообщение от Artic Посмотреть сообщение
угу ... но врятли это баг ... более чем уверен что это документировано
что-то здесь я этого не увидел
http://help.adobe.com/ru_RU/AS3LCR/F...html#blendMode

вообще конечно даже если это задокументировано, это как то очень странно и нелогично, если при повороте блендуемого все норм, то почему нельзя повернуть парент без последствий?
__________________
smival.com

Старый 23.03.2010, 23:24
Artic вне форума Посмотреть профиль Найти все сообщения от Artic
  № 7  
Ответить с цитированием
Artic
Banned

Регистрация: Jun 2009
Сообщений: 298
да как то странно действительно на таймЛайне работает ! а кодом аналогичный код не работает !

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

Теги
3D blendMode rotationY
Опции темы
Опции просмотра

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

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


 


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


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