PDA

Просмотр полной версии : Как обычно вставляется 3d анимация во flash?


Igor93rus
28.06.2009, 00:48
У меня есть flex builder 3 и 3ds max 2009
С этими программами работаю 1-й день! (вообще я php-программист)
Мне нужно сделать сайт например http://www.r1design.com.au/
Где-то в гугле прочитал, что легко можно перенести через avi, но как импортировать avi во флекс - так и не понял.
В архиве этого форума (за 2004 год) прочел, что для переноса используется swift3d, которая устанавливается надстройкой к 3d max. Скачал эту прогу, поставил, прочел в реадми к ней, что это все-таки надстройка к Flash MX.
Мысли у меня сейчас запутались. Буду рад любым советам и ответам.
-
Элементарные понятия стереометрии у меня есть. Что такое ActionScript, MXML, события во Flash тоже разобрался.
Вот мне например нужно сделать на сайте 3d куб ссылкой, и при наведении на него мышкой он должен поворачиваться или светиться.
Алгоритм моих действий?
1. Рисую куб в 3д максе
2. Рендерю его в avi
Дальше как?
Чтобы управлять им во флэш, мне нужно получить файл в формате flv, swf

Алиль
28.06.2009, 01:01
Если разобрались в ActionScript то Предлагаю альтернативу!
Делайте КУБ покадрово. Думаю он у Вас не большой, поэтому перевеса не будет.
18 кадров вполне хватит (для глаза нормально). Делайте мувиклип с командами
AS 2.0: mc.onRollOver=function()-->mc.onRelease=function(). Так как он у вас роль кнопки выполняет, то этого в полне хватит!

Но это лишь альтернатива! Мне самому интересно узнать, как вставлять 3D модели другим методом! :)

Добавлено через 14 минут
А кстати если светиться, то тэто ещё проще! И вес файла меньше.
Делаете мувиклип где куб будет постепенно подсвечиваться!
То есть :
1. ставите картинку куба на сцену
2.щелкаете по нему правой кнопкой и конвертируете в символ.
3. выбираете Movieclip
4.Сконвертировали.Далее двумя щелчками по кубу заходим внутрь мувиклипа куба.
5.опять конвертируем в символ мувиклип.
6.получили мувиклип в мувиклипе.
7.Тут же на ТаймЛайне делаем ещё один ключевой кадр.Допустим кадр №10 (или мышкой или F6)
8.Получили серую полоску.Следующим действием на вкладке снизу выбираем Filters
9.Нажимаем на мувик КУБА и выбираем фильтр GLOW
10.крутим вертим как надо.добились, что куб подсвечивается.
11.Получили, что на первом кадре куб не светится, а на 10 он подсвечен.
12.для надёжности щёлкаем сначала на 1 кадр, потом на 10 а потом на любой кадр между ними правой кнопкой мыши и выбираем MOTION TWEEN.
13. получили синюю полоску со стрелкой
14.Проверяем нажав Ctrl+Enter.Куб будет мигать.
15.Чтоб он не мигал в 10 кадре пишем stop();
16. Мувиклип светящегося куба готов!
17. Ну следующим действием можно сделать кнопку через код, а можно создать символ Button и там расставить всё на свои места.


В обоих случаях Пишите на мувиклип код (в отдельном слое)
mc.onRelease=function(){
getUrl ("http://www.......", "_blank");
}

Вроде правильно написал...

Если это то, что Вам нужно, то пожалуйста! :)

Igor93rus
28.06.2009, 01:20
Алиль,
спасибо за ответ! У меня 2 вопроса.
1. Эти алгоритмы, что вы привели, делаются во Flex Buildere?
2. Куб это просто как пример. Если я хочу вставить идущего человека?
Или прыгающий мячик?

Алиль
28.06.2009, 01:38
Это всё описано...для применения в Macromedia Flash 8 и языка ООП AS 2.0.
Я работаю именно с Flash 8 и Action Script 2.0

Вы просто сказали, что разобрались с Action Script, вот я и написал Вам совет прроименительно к Flash 8 :)

Добавлено через 1 минуту
Прыгающий мячик и идущего человека тоже можно сделать...

Мячик это проще, а вот с человеком повозиться придётся... :)

Igor93rus
28.06.2009, 01:53
Алиль
а 3d max не нужен?

Алиль
28.06.2009, 02:02
Вы можете сделать красивые нужные Вам картинки в 3DMax а потом использовать их в Flash 8, поместив в библиотеку...итд итп :)

Дело в том, что ,как Вы понимаете, Flash разработан с одной из главных целей - использование в Интернете!
Flash - это интерактивность, анимация, эффекты. и др

Работая во флеш для создания приложения для WEB всегда надо заботиться о весе сайта. Поэтому рисуя картинки их предварительно лучше оптимизировать ...

Igor93rus
28.06.2009, 02:05
Но при этом анимацию перетаскивать покадрово, а не цельным клипом, правильно я вас понимаю?

Алиль
28.06.2009, 02:06
Дело в том, что ,как Вы понимаете, Flash разработан с одной из главных целей - использование в Интернете!
Flash - это интерактивность, анимация, эффекты. и др

Работая во флеш для создания приложения для WEB всегда надо заботиться о весе сайта. Поэтому рисуя картинки их предварительно лучше оптимизировать ...

Igor93rus
28.06.2009, 02:06
http://www.laloft.com.au/
Посмотрите здесь пожалуйста
Как сделать такой эффект? (говорящая тетка)

Добавлено через 1 минуту
Алиль,
т.е. лучше делать анимацию покадрово, и при этом оптимизировать каждый кадр?
Swift 3d не использовали?

Алиль
28.06.2009, 02:09
щас посмотрю :)

Добавлено через 14 минут
ща ещё немного и загрузится

Добавлено через 20 минут
А где говорящая тетка? :(

Добавлено через 21 минуту
А где говорящая тетка? :(

Igor93rus
28.06.2009, 02:32
Там Play в левом нижнем углу надо нажать, тогда она появится :)

Алиль
28.06.2009, 02:39
я Нажимал, но не появилась :) но суть я понял...
Там же была ссылка Play Video!
Поэтому ответ мой таков - это видео, подгружаемое при нажатии кнопки..видео или с их сервера или с удалённого..Формат видео скорее всего FLV/
3dMax тут не нужен. это же видео... :)
Вобщем, когда мы нажимаем, то подгружается флеш плеер а с ним и видео с теткой.

Igor93rus
28.06.2009, 02:42
Но тетка подгружается (как бы сказать) в "чистом" варианте, т.е. не видно никакого движка плеера, даже фона не видно.
Т.е. как будто тетка стоит на фоне сайте.
Я думал, это в 3d max эффект сделан был

Алиль
28.06.2009, 02:52
во флеше тоже такие фишки есть...правда советуют пользоваться ещё программами, в которых возможно очистить фон и с сохранением альфа канала переместить во флеш.фон в таком случае можно любой делать. В любом случае это видео.

Как вариант можно взять кусок видео и раскидать с помощью програмок на картинки...ну и кусками слепить анимацию...

В противном случае придется найти программу, которая может с альфа каналом сохранять видео. (*с прозрачным фоном)

Я таким ещё не занимался, но планирую.

Теперь...если Вас это заинтересовало, то поищите в поисковике - ВИДЕО С ПРОЗРАЧНЫМ ФОНОМ... или что-то типа этого...вопрос задайте, тему новую откройте или поищите в поисковиках типа GOOGLE, YANDEX... ну Вы и сами знаете ещё каких :)

А к Вам если что можно обратиться по вопросам PHP если вдруг необходимость встанет? Если Да, то я Вас в знакомые добавлю и потом буду в личку писать, где будут отображаться ваши личные сообщения. :)

Успехов Вам.

Igor93rus
28.06.2009, 03:00
Алиль,
да конечно можно. Что знаю - помогу. И не только с PHP, с mysql, javascript могу помочь.
Аська 332216042
Ваши контакты мне тоже нужны, т.к. я пока мало соображаю в 3D, а необходимость есть в этом очень большая.
Спасибо.

Алиль
28.06.2009, 03:04
И вам спасибо.

Igor93rus
28.06.2009, 13:24
Так все-таки, можно как-нибудь еще вставлять 3D анимацию, кроме как покадрово?
Может быть, я чего-то не понял...

nextand
30.06.2009, 11:50
Свифт3д может рендеретьсразу из макса свф файл. Так же можно фла если не ошибаюсь. 3д макс тоже покадровый. нужно в максе выставить тоже число кадров что и во флеше. в максе по умолчанию стоит 25. во флеше 12. соответсвенно перегруз да и изображение замедляется.
Далее если создавать модель в максе и переносить ее анимацию при помощи свифт, то можете забыть о текстурах в максе. рендерятся толко цвета и фактуры текстур. еще конечно тени кое какие эффекты.
Теперь к вашей задаче.
Если вам необходимо чтобы 3д анимация стала интерактивной во флеше, например при нажатии на него мышкой он поворачивался или рукой махал, то в максе выполняйте исходное состояние например персонаж стоит к вам лицом. достаточно одного кадра если он там не покачивается к примеру.
затем анимируйте в максе как он машет рукой.(не забываем анимационно вернуть руку в прежнее положение)
после чего статику вешайте на первый кадр мувика, а кадры анимации на все остальный.
ставите метки. на первом кадре например стою, на втором машу.
далее во флеше пишем код на мувике.
on (release) {
_root.gotoEndPlay(2);
}
на последнем кадре вешаем stop;
гдето так. в итоге при нажатии на клип он проиграет махание рукой.

Igor93rus
30.06.2009, 12:00
nextand
Спасибо за ответ.
По поводу Swift3d и потере текстур я понял.
По поводу того, как сделать покадровую анимацию во Flash - тоже.
Единственный вопрос остался - как перенести эти самые кадры из Макса во Flash?
Когда персонаж машет рукой, перенести 20 кадров - это не проблема.
Но когда персонаж бежит, прыгает, уворачивается от удара, и опять бежит - это уже 200 кадров. Не так-то просто вручную переносить каждый кадр.

mooncar
30.06.2009, 12:52
Делайте в 3d max рендер с помощью плугина swift 3d max - сразу будут вам все кадры анимации в swf.
Почитайте, мы тут недавно обсуждали http://www.flasher.ru/forum/showthread.php?t=126098

Igor93rus
30.06.2009, 13:38
mooncar
Спасибо. У меня 2 вопроса.
1.
Вы в той теме писали такие слова
По пводу текстур - да есть такоей момент. Ничего страшного, я заново их присоеденил в самом Свифте."
Если не трудно, поясните пож, как в Свифте прикрутить текстуры, потерянные в максе?
2.
Где взять этот самый плагин для Макса? Пытался скачать с официального сайта, но у них там ошибка при регистрации пользователя (не присылают письмо на почту).
В итоге скачал сам Свифт (как программу, а не плагин). Но если честно, мне Макс больше понравился.

mooncar
30.06.2009, 14:08
1. Автоматическая замена не получится. Но в самой программе Swift есть настройки текстур. Там можно задать свою. Я создал свою из того же растрового файла и применил её к нужным объектам (были стены зданий).

nextand
30.06.2009, 15:33
http://narod.ru/disk/10437750000/swift%20(copy%202).rar.html

свифт для макса (у меня 9) и все к нему.

http://narod.ru/disk/10437805000/iso_world.fla.html

тут можно посмотреть как санимирован перснож в изометрии, смотрите сам мувик. там и метки и варианты поведения. в коде пример как они применяются

Добавлено через 17 минут
Единственный вопрос остался - как перенести эти самые кадры из Макса во Flash?
Когда персонаж машет рукой, перенести 20 кадров - это не проблема.
Но когда персонаж бежит, прыгает, уворачивается от удара, и опять бежит - это уже 200 кадров. Не так-то просто вручную переносить каждый кадр.

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