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

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

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

Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
По умолчанию Мувик дергается при применении к нему фильтра

По маус_овер модифицирую массив фильтров у мувика (спрайт+лежащий внутри растр), при этом он сдвигается примерно на 1 пиксель по вертикали или горизонтали. В чем грабли?

Код такой:

Код AS3:
 
private function selectMC(mc:MovieClip) : void
{
	mc.filters = getSelectFilter();
}
 
public function getSelectFilter() : Array
{
	var selectFilter:Array = new Array();
	selectFilter.push(getGlowFilter());
	return(selectFilter);
}
 
public function getGlowFilter():BitmapFilter 
{
	var color:Number = 0xefe654;
	var alpha:Number = 0.8;
	var blurX:Number = 10; 
	var blurY:Number = 10; 
	var strength:Number = 18; 
	var inner:Boolean = false;
	var knockout:Boolean = false;
	var quality:Number = BitmapFilterQuality.LOW; 
 
	return new GlowFilter(color,
                                  alpha,
                                  blurX,
                                  blurY,
                                  strength,
                                  quality,
                                  inner,
                                  knockout);
}

Старый 25.04.2011, 15:59
dodoaav вне форума Посмотреть профиль Отправить личное сообщение для dodoaav Найти все сообщения от dodoaav
  № 2  
Ответить с цитированием
dodoaav

Регистрация: Mar 2011
Сообщений: 21
После применения фильтров мувик растеризуется. И плейер устанавливает его в целые координаты. Отсюда и прыжок приблизительно в пиксель
__________________
Пытаюсь делать игры для детей

Старый 25.04.2011, 16:20
goodguy вне форума Посмотреть профиль Найти все сообщения от goodguy
  № 3  
Ответить с цитированием
goodguy
Banned
[+1 05.11.11]
[+1 09.08.11]

Регистрация: Jan 2010
Адрес: РФ. Кемеровская область
Сообщений: 3,243
Я уже на эти грабли наступал неоднократно, даже здесь тему создавал. В общем, при применении фильтра, как уже сказано выше, он растеризуется, при этом свойство pixelSnapping автоматически переключается на always, и с фильтром его отключить нельзя.


Последний раз редактировалось goodguy; 26.04.2011 в 07:15.
Старый 25.04.2011, 16:27
mikhailk вне форума Посмотреть профиль Отправить личное сообщение для mikhailk Найти все сообщения от mikhailk
  № 4  
Ответить с цитированием
mikhailk
 
Аватар для mikhailk

Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
Как победить?

Я сам мувики растеризую и сейчас у меня там стоит pixelSnapping = PixelSnapping.ALWAYS при создании битмапов. Но все равно что-то прыгает, что-то нет.

Кстати, если не растеризовать мувики, то прыжки прекращаются.
Проблема еще и в том, что одни и те же мувики на разных местах то прыгают, то нет.

Старый 25.04.2011, 23:25
dodoaav вне форума Посмотреть профиль Отправить личное сообщение для dodoaav Найти все сообщения от dodoaav
  № 5  
Ответить с цитированием
dodoaav

Регистрация: Mar 2011
Сообщений: 21
Попробуй устанавливать мувики на целочисленные координаты. Может помочь
__________________
Пытаюсь делать игры для детей

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

Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
Это я тоже пробовал. В итоге решил задачу некоторым трюком - подкладываю дубль мувика под основной мувик и накладываю фильтр на него. В итоге ничего не прыгает, хотя некоторые нюансы есть.

Кстати, а нельзя ли сделать как в фотошопе - когда само изображение не видно, но фильтр (напр., обводка) - присутствует?

Старый 26.04.2011, 07:16
goodguy вне форума Посмотреть профиль Найти все сообщения от goodguy
  № 7  
Ответить с цитированием
goodguy
Banned
[+1 05.11.11]
[+1 09.08.11]

Регистрация: Jan 2010
Адрес: РФ. Кемеровская область
Сообщений: 3,243
нельзя. Фильтр все равно будет занимать всю поверхность под объектом

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

блогер
Регистрация: Mar 2008
Адрес: РФ, Санкт-Петербург
Сообщений: 2,272
Записей в блоге: 5
Отправить сообщение для gloomyBrain с помощью ICQ Отправить сообщение для gloomyBrain с помощью Skype™
Цитата:
и сейчас у меня там стоит pixelSnapping = PixelSnapping.ALWAYS
Что-то мне подсказывает, что нужно поставить NEVER. Ибо при включенной привязке (ALWAYS) оно и начинает прыгать от пикселя до пикселя.
__________________
...вселенская грусть

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

Регистрация: Oct 2010
Сообщений: 1,049
Отправить сообщение для bav с помощью ICQ
Цитата:
Кстати, а нельзя ли сделать как в фотошопе - когда само изображение не видно, но фильтр (напр., обводка) - присутствует?
Возможно, имеется в виду свойство knockout, однако, оно присутствует не у всех фильтров: BevelFilter, DropShadowFilter, GlowFilter, GradientBevelFilter, GradientGlowFilter.

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

Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
Цитата:
Возможно, имеется в виду свойство knockout
оказывается, да
теперь все встало практически идеально


Цитата:
Что-то мне подсказывает, что нужно поставить NEVER. Ибо при включенной привязке (ALWAYS) оно и начинает прыгать от пикселя до пикселя.
нет, это роли не играет

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

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

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


 


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


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