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

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

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

Регистрация: Feb 2011
Сообщений: 100
По умолчанию Смазанная картинка

Во флешке есть игровой интерфейс. Назовём его pi. ЧТобы его раскрывать на фулскрин внутри есть 3 отдельных символа: ul, dl, dr. В каждом таком символе всякие иконочки/кнопочки/циферки. весь pi (со всеми вложенными элементами) рисуется в flash cs и я его подрлючаю к проекту. Так вот, мне надо повесить в него иконку. Если сделать
Код AS3:
pi.addChild(ico)
- картинка получается чёткая. А если я делаю
Код AS3:
pi.dr.addChild(ico)
- картинка иконки получается размазанная, как будто к ней блюр применяли. Сначала я думал что где-то в pi блюр фильтр стоит. Но там нет никаких фильтров, проверял в отладчике. Eсть только фильтры DropShadow на текстах, но они далеко он этой иконки. Кто подскажет, где искать косяк?

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

Регистрация: Jan 2013
Сообщений: 550
Записей в блоге: 1
Надо напрямую задавать интовые значения координатам, там если чуть смещается по сетке - размазывается. Обычно помогает приведение присваиваемых координат к int, особенно если положение объекта считается по формулам, что - нибудь типа такого:
Код AS3:
myObj.x = myAnotherObj.x + myObj.width / 2; //Если получится дробное значение - скорее всего заблюрится
myObj.x = int(myAnotherObj.x + myObj.width / 2); //А вот так уже нет
Есть еще свойство .snapToPixels, но оно только для Bitmap вроде доступно..

Старый 07.09.2013, 14:26
botbot вне форума Посмотреть профиль Отправить личное сообщение для botbot Найти все сообщения от botbot
  № 3  
Ответить с цитированием
botbot

Регистрация: Feb 2011
Сообщений: 100
Нет, проверил. Просто написал
Код AS3:
pi.dr.x = Math.round(pi.dr.x);
pi.dr.y = Math.round(pi.dr.y);
Всё равно смазанная картинка.
Чтобы понять, как это выглядит:
http://img.pixs.ru/storage/4/1/4/che...64_8971414.jpg
Слева это когда родитель pi.dr - всё смазано. А справа - когда родитель pi.

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

модератор форума
Регистрация: May 2001
Адрес: Одесса
Сообщений: 4,869
Записей в блоге: 4
Изображения следует прикреплять к сообщению.
__________________
Поймай яблоко 2!

Старый 07.09.2013, 15:20
botbot вне форума Посмотреть профиль Отправить личное сообщение для botbot Найти все сообщения от botbot
  № 5  
Ответить с цитированием
botbot

Регистрация: Feb 2011
Сообщений: 100
Нашёл причину. Оказывается в редакторе (CS 5.5) при размещении элемента dr стояли зачем-то трёхмерные координаты, вот его и блюрило.
Причём я так и не нашёл как его вернуть в плоские координаты, приходится заново в редакторе всё пересобирать.


Последний раз редактировалось botbot; 07.09.2013 в 15:32.
Старый 08.09.2013, 12:11
Frost47rus вне форума Посмотреть профиль Отправить личное сообщение для Frost47rus Найти все сообщения от Frost47rus
  № 6  
Ответить с цитированием
Frost47rus
[+4 08.09.13]

Регистрация: May 2012
Сообщений: 131
Код AS3:
pi.dr
Очень смешно))))

Добавлено через 40 секунд
Цитата:
Сообщение от botbot Посмотреть сообщение
когда родитель pi.dr - всё смазано
вы просто жжоте))))

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

Регистрация: Mar 2013
Адрес: Вне пространства.
Сообщений: 567
Отправить сообщение для Bletraut с помощью ICQ Отправить сообщение для Bletraut с помощью Skype™
Цитата:
Нашёл причину. Оказывается в редакторе (CS 5.5) при размещении элемента dr стояли зачем-то трёхмерные координаты, вот его и блюрило.
Причём я так и не нашёл как его вернуть в плоские координаты, приходится заново в редакторе всё пересобирать.
Так там же можно выставить Z = 0 и он снова станет двухмерным.

Старый 08.09.2013, 15:05
botbot вне форума Посмотреть профиль Отправить личное сообщение для botbot Найти все сообщения от botbot
  № 8  
Ответить с цитированием
botbot

Регистрация: Feb 2011
Сообщений: 100
Увы, не работает. Там уже стоит z=0 и углы поворота тоже стоят в 0. Всё равно флеш уже считает картинку трёхмерной и обратно не переводит.

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

блогер
Регистрация: Mar 2008
Адрес: Днепропетровск
Сообщений: 1,783
Записей в блоге: 3
Как только вы начинаете использовать "трёхмерное" преобразование, то объекту назначается Matrix3D и картинка действительно портиться в качестве. Чтобы избавиться от размытия, когда 3d выставлено по нулям, необходимо обнулить матрицу
Код AS3:
obj.transform.matrix3D=null
Но после этого все трансформации у объекта примут начальные значения, по этому перед обнулением 3d матрицы запомните положение, поворот и масштаб вашего объекта, чтобы выставить их заново.

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

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

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


 


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


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