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

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

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

Регистрация: Jul 2007
Сообщений: 37
По умолчанию Как трансформировать Bitmap или Sprite, что бы получился 3d эффект?

Предположим есть Bitmap или Sprite.
Нужно его трансформировать таким образом, что бы его верхние два угла придвинулись друг к другу по горизонтали. Таким образом получается 3d эффект, как будто бы картинка лежит на плоскости - перед нами.
Это легко сделать в среде разработке - графическим редактором.
Как это сделать программно?

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

Регистрация: Jul 2007
Адрес: Москва
Сообщений: 996
http://silin.fatal.ru
DistortBitmap

Старый 29.07.2008, 21:18
Alex Lexcuk вне форума Посмотреть профиль Отправить личное сообщение для Alex Lexcuk Посетить домашнюю страницу Alex Lexcuk Найти все сообщения от Alex Lexcuk
  № 3  
Ответить с цитированием
Alex Lexcuk

блогер
Регистрация: Mar 2008
Адрес: Донецк_city
Сообщений: 1,094
Записей в блоге: 5
Для такого несложного эффекта предлагаю такую схему:
Методом draw перерисовать объект в BitmapData
Затем разбить объект на BitmapData высотой в 1 пиксель.
И нарисовать эти как-бы строки на спрайт-контейнер.
Звучит не очень, однако... Работает очень быстро.
Пример:
http://dnadillo.dn.ua/mur_gallery/ac3FLA/star_war.swf
http://dnadillo.dn.ua/mur_gallery/ac3FLA/star_war.rar

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

Регистрация: Jul 2007
Сообщений: 37
Цитата:
Сообщение от Alex Lexcuk Посмотреть сообщение
Для такого несложного эффекта предлагаю такую схему:
Методом draw перерисовать объект в BitmapData
Затем разбить объект на BitmapData высотой в 1 пиксель.
И нарисовать эти как-бы строки на спрайт-контейнер.
Звучит не очень, однако... Работает очень быстро.
Пример:
http://dnadillo.dn.ua/mur_gallery/ac3FLA/star_war.swf
http://dnadillo.dn.ua/mur_gallery/ac3FLA/star_war.rar
Да, действительно отличная идея. Для статической анимации - то что надо. А вот для анимации в твоем аттаче смотрится не кашерно.

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

Регистрация: May 2006
Сообщений: 113
Чтото пытался загрузить пример из поста два дисторт битмеп, выдает ошибку. Может не так открываю эти скрипты.

TypeError: Error #1007: Instantiation attempted on a non-constructor.
at Main$iinit()


Обясните пожалуйста, каков именно алгоритм.

Я так понял это все идет перерисовка картинки по пикселям. Каким образом идут расчеты?


Последний раз редактировалось der hund; 29.07.2008 в 23:50.
Старый 30.07.2008, 00:45
silin вне форума Посмотреть профиль Посетить домашнюю страницу silin Найти все сообщения от silin
  № 6  
Ответить с цитированием
silin
 
Аватар для silin

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
ошибка из-за того что CS3 не понимает [Embed...]
положи картинку в библиотеку и бери BitmapData оттуда (да впрочем откуда удобнее..)

алгоритм таков: разбиваем изображение на треугольники (потому как их можно исказить как угодно) и дружно плющим их, получается имитация..

полезные ссылки:
http://www.flashsandy.org/blog/disto...s-by-code.html - тот же алгоритм но более тщательно все, работает лучше
http://five3d.mathieu-badimon.com/ - просто чудо по удобству, но сейчас почему-то не доступен (404)

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

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

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


 


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


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