Blenderのアニメーション付きファイルをPapervision3Dで表示する
Blenderで作ったアニメーションを、Papervision3Dで使う方法の解説です。
Flashで3Dアニメーション付きのファイルを扱う場合、3DソフトはフリーソフトのBlender、FlashはPapervision3Dのライブラリを使用するのがポピュラーみたいです。
Papervison3Dでアニメーション付きの3Dファイルを読み込む場合は、Collada形式(拡張子.dae)のファイルを使用するのですが、BlenderからPapervision3Dで使えるdaeファイルを書き出すのが、ちょっといやかなりやっかいで、この工程が作業の中で一番のポイントとなります。私もうまくいくまでほんと何度も失敗しました。
試行錯誤した結果、重要だったのは以下の2点でした。
・Blenderの最新安定版(12月18日現在2.48a)をインストールすること
・Python2.5.2(←最新版ではないので注意)をインストールすること
↑の環境以外では以下に記述するとおり作業を進めても、daeファイルをエクスポートできません。逆に言えばこの2点を押さえておけばできたも同然です。
注意:BlenderもPapervision3Dもしょっちゅうバージョンアップされるので1~2ヶ月も経てば最適な環境は変わってくると思います。気が付いた時点で追記していくつもりですが、新しいバージョンが出てる場合はそちらを試してください。
それでは以下から順を追って説明していきます。
Blenderのインストール
まずはBlenderとPythonのインストールです。以下のページからBlender 2.48aとPython2.5.2をダウンロードし、インストールしてください。
blender.org - Get Blender
Python 標準リリース
Blenderの基本的な使い方は以下のページから。
・http://jp.youtube.com/profile?user=KyusanForestCreators&view=videos
・Blenderチュートリアル - WBS+(Web/Blender Studio+)
BlenderからCollada(dae)形式にエクスポートする
Blenderをインストールしたら、適当にアニメーションを付けたファイルを用意します。
チュートリアルなんか読んでられない、とりあえず手っ取り早く動かしたいという人は、以下のサンプルファイルをダウンロード。(キューブを回転させてるだけのファイルです)
・cube.blend.zip
daeファイルをエクスポートします。
アニメーションを付けたオブジェクトを右クリックで選択した後、
[File]-[Export]-[COLLADA 1.4(.dae)]を選択。
1. [...]を選択して書き出し先を指定。ファイル名には.daeという拡張子を忘れずに。
2. 3. 「Only Export Selection」と、「Sample Animation」を選択。
4. Exportボタンをクリック。「Export Successful」と出れば成功!!
解説: 「Only Export Selection」 - 選択したオブジェクトだけをエクスポートする
「Sample Animation」 - キーフレーム間の補完したアニメーションをエクスポートする
その他、書き出しパネルについては以下の記事が詳しいです。
Blender 2.48aにおけるColladaのエクスポート(アニメーション無し編) - 戸袋に手を挟まれないように
Papervision3DでCollada(dae)ファイルをインポート
Papervision3DはこのページのFeatured Downloadsからダウンロードできます。
Papervision3Dの基本および、アニメーションなしの(daeファイル読み込みについてはアニメーションありもなしも一緒なので記述を修正)daeファイル読み込みについては以下のブログを参考にしてください。
Papervision3Dやってみるシリーズ | [FlaTech+]WebDesign Rainyday
flaファイルを作ります。先ほど書き出したdaeファイルも同じ場所に置いてください。
Main.asというドキュメントクラスを作って以下のソースをコピペします。
-
package {
-
import org.papervision3d.objects.parsers.DAE;
-
import org.papervision3d.view.BasicView;
-
-
public class Main extends BasicView {
-
private var daeObj:DAE;
-
public function Main() {
-
camera.x = 4;
-
camera.y = 3;
-
camera.z = -4;
-
daeObj = new DAE();
-
//Loopさせたい時は↑をコメントアウトして、↓のコメント外す
-
//daeObj = new DAE(true,null,true);
-
daeObj.load("cube.dae");
-
scene.addChild( daeObj);
-
-
startRendering();
-
}
-
}
-
}
パブリッシュしてうまく行くとこんな感じになります。
flaファイル、asファイル、daeファイルをまとめたzipファイルもアップしておきます。
・cube.zip
(おわり)
なんかリンク貼りまくりな記事になってしまいました。リンクを貼らせていただいたページにはとてもお世話になりました。ありがとうございました。
その他、note.xさん、タロタローグさんも、かなり参考にさせていただきました。
どの記事がなくても前回のエントリーの動かすのできなかっただろうな・・・。
[Blender][Away3D][Collada]Blender 2.48aにおけるColladaのエクスポート(アニメーション無し編)
ちゃぶ台メモ - Blenderのアニメーション付きファイルをPapervision3Dで表示するの方で参照されていたので、わかったところまで更新しておきます。 はじめに、ここで言うアニメーション無…
12 月 19th, 2008 at 18:02:53Sir
2 月 25th, 2012 at 14:31:46Can I get an English version of your sitr?
thanks
giri
первое что хотел сказать о pushtiwer.ru:
1. реально сайт не кидает;
2. работают оперативно (днём заказал товар, вечером уже отправили заказ);
3. что всё было точно так же как и обещенно…я имею в виду по кол-ву и по цене;
4. дошло всё мега быстро… (пришло за 6 дней… не смотря на то что я с дв) спасибо работникам почты));
5. и последнее то что можно отслеживать самому ход доставки товара…
P.s. в общем молодцы, спасибо вам)) обращусь к вам и ещё не раз))
3 月 29th, 2012 at 8:52:20дошло всё мега быстро… (пришло за 6 дней… не смотря на то что я с дв) спасибо работникам почты));
6 月 19th, 2014 at 10:23:53This blog post resonated with me on so many levels. Your personal anecdotes and real-life examples added a relatable touch to the topic. I could feel your passion and expertise shining through every word. I’d love to hear more about your experiences and insights on [related topic]. Thank you for sharing your wisdom and inspiring others in the process!
9 月 3rd, 2023 at 6:19:17Nastawianie kręgosłupa Kielce
do you need Help to Solve Unwanted Call Blocking and Labeling Caller ID Remediation
3 月 21st, 2024 at 14:31:29