Report
2006 >> [11.11] [08.26] [05.13] [02.25] 
2005 >> [11.26] [08.27] [05.14] [02.05]
2004 >> [11.13] [08.07] [05.15] [02.07]
2003 >> [11.08] [08.24] [05.31] [02.01]
2002 >> [12.08] [09.07]

2004.08.07 ページ3
 demo1「センスの良い3D的表現のコツ」 講師:ミート茂手木氏
 demo2「完璧素材作りでリアリズムの追求」 講師:サブリン氏
 demo3「Flashでのカンタン3D」 講師:森巧尚氏
 Macromedia 開発チーム来日!
 企業demo1「MayaからSWF!?」 株式会社ボーンデジタル
 企業demo2「発売間近か!? Swift 3D V4」 株式会社ディ・ストーム
司会:A.e.Suck、サブリン

ページ1 ページ2 ページ3 ページ4

Flashでのカンタン3D

 講師:森巧尚氏

『おしえて!! FLASH MX 2004 ActionScript
著者:森巧尚+komachanの、森さんがこの日のために関西から来てくれました!

3DソフトとFlashは似ているよ


Flash と3Dソフトの類似点と相違点を独自の視点で比較、「Flash を知っている人は、3Dソフトにも応用できる。 3Dソフトを知っている人は、Flash にも応用できる」と言う森さん。

両方の特徴をよく踏まえて、3D を Flash に取り入れた事例を紹介してくれました。

以下森さんの Flash と 3D の類似点・相違点の考察を表にまとめましたのでご覧ください。

類似点 Flash 3Dソフト(例:Plasma)
絵を作る シンボルを作る。
(2次元のグラフィックス)
モデルを作る。
(3次元のモデル)
絵の作り方 円、長方形
ペンで線を描く
テキストで文字を書く
球、直方体
ペンで線を描く
テキストで文字を書く
外部素材を読み込み AIファイルの読み込み AIファイルを読み込んでパスを押し出す。
アニメーション
作り方
・ タイムライン上にキーフレームを作る。
・ キーフレーム間のフレームを自動補完してアニメーションにする。

← Flash と同じ

アニメーション
補完の仕方
:イージング
イーズイン、イーズアウト アニメーションカーブで動きを制御できるものが多い。
アニメーション
補完の仕方
:パスアニメーション
パスの絵を描いて、始点終点を吸着 パスの絵を描いて、割り当てる
モーフィングアニメーション ・ 拡大縮小
・ 回転
・ 変形(比率、傾斜)
・ 拡大縮小
・ 回転
・ 変形
(ベンド、ツイスト、ストレッチなど)
ビットマップ ・ ビットマップの塗り ・ マテリアルのテクスチャー
相違点 Flash 3Dソフト(例:Plasma)
3Dソフトでは、奥行きが必要 平面のみ ・ 押し出し
・ 回転体 など
カメラ(視点) いつも見たままの絵が表示される。 ・ 視点によって表示される絵が変化する。
・ フロント、トップ、レフト、自由な視点。
照明 設定した色がそのまま反映される。 設定した色はそのまま反映されない。
照明との距離、照明の色、影による影響をうける。
物理モデルを使えるものがある(havok) 特になし ・ 重力による物体の動き
・ 物体の衝突時の運動の変化
例:ボールが落ちて床に当たって弾む。
こんな風に Flash と 3D に共通する部分、そうでない部分を書き出してみると、Flash と 3D の分担が見えてきそうですね。


3Dで作った素材をFlashに持ってくる時の注意点


Flash用の3D素材はレンダリング後の2次元ムービー、もしくは静止画になります。ムービーを swf で吐き出した場合一コマずつの状態で吐き出されるので、フレームレートに気を配らなければならないとのこと。

Flash のデフォルトフレームレートは 12fps、3Dソフトは 30fps が一般的です。

また、swf形式で吐き出された素材はベクターレンダリングなのでハイライトや影、鏡面反射が別オブジェクトでレンダリングされ、Flash での編集が簡単。

Flash 単体で作っているのではないので、素材の微調整が大変。複数のムービーが切り替わる場合は、どういう繋がりになるのかあらかじめ絵コンテを書いておくと良いそうです。

感覚としてはデジタルビデオを読み込んで編集するのに似ているとのこと。 インタラクティブなムービーなど、複数の同じようなムービーを作るときは、視点(カメラ)を統一しておくことが重要と森さんは考えています。

3Dモデルを回転させる


制御方法は2Dムービーと一緒。使用する Script も極簡単。
・ play(), stop()
・ gotoAndPlay(), gotoAndStop()
・ nextFrame(), prevFrame()


■3Dソフトで素材ムービーを作成
3Dソフトで作成したオブジェクトの周りを、カメラがぐるりと
1周するアニメーションをつけ、swf形式で出力。

■Flashにswfを読み込んで配置
ファイル>読み込み>ライブラリに読み込みで先ほど作成したswf ファイルを Flash に読み込みます。
読み込んだ swf ファイルをライブラリからステージにドラッグ & ドロップ。 名前を a_mc とつけます。
そのままだと動くので、a_mc を開いてタイムラインの第一フレームに stop(); を記述して止めます。

フレーム、ボタンに以下のような ActionScript を書いてボタンにマウスオーバーで右回転、左回転するようにします。

■ルートの第一フレームにフレームアクションを書く

ルートの第一フレームに次のアクションスクリプトを書きます。
------------------------------
a_mc.stop();
moveFlag = 0;
this.onEnterFrame = function() {
if (moveFlag == 1) {
a_mc.nextFrame();
}
if (moveFlag == -1) {
a_mc.prevFrame();
}
};
------------------------------

■ボタンを配置してActionScriptを書く
二つボタンを用意します。

右回り用ボタンのアクションスクリプト:
------------------------------
on (rollOver) {
moveFlag = 1;
}
on (rollOut) {
moveFlag = 0;
}
------------------------------

左回り用ボタンのアクションスクリプト:
------------------------------
on (rollOver) {
moveFlag = -1;
}
on (rollOut) {
moveFlag = 0;
}
------------------------------

>>サンプルを見る(Flash Player 7が必要です)

3D空間に入り込むムービー


砂漠に配置された遺跡がボタンになっていて、クリックするとその遺跡の裏にカメラが回り込むアニメーションが再生されます。

用意する3D素材ムービーはカメラが遺跡の裏に回りこむ「行き」のムービーのみ。「帰り」は逆回転させればOK。3パターンムービーがあるので、各ムービーを別フレームに置き、各ボタンに gotoAndStop(); を記述して、指定のフレームにとばします。

各フレームに記述するフレームアクションは次のとおり。
------------------------------
moveFlag = 1;
a_mc.stop();
this.onEnterFrame = function() {
if (moveFlag == 1) {
a_mc.nextFrame();
if (a_mc._currentframe == a_mc._totalframes) {
moveFlag = 0;
}
}
if (moveFlag == -1) {
a_mc.prevFrame();
if (a_mc._currentframe == 2) {
_root.gotoAndStop(1);
}
}
}
------------------------------
逆再生は以上のスクリプトと3Dモデルの回転で使ったスクリプトを組み合わせです。ヒントを手がかりに作ってみてください。

今回森さんが用意した3Dムービー素材は3パターン。ダイナミックな動きが3Dらしくて良いですね。

>>サンプルを見る(Flash Player 7が必要です)

野中さんTIPS:
森さんとはちょっと違う方法で逆再生を実現。
>>サンプルを見る(Flash Player 7が必要です)
>>サンプルのFLAファイルをダウンロード(Flash MX 2004が必要です)

逆戻りアニメーションの詳細解説。
>>「ロールアウトで逆戻りするアニメーション」


以上森さんの「Flashでのカンタン3D」でした!

近日 ActionScript をわかりやすく解説した森さんの著作が発売されます。
『おしえて!! FLASH MX 2004 ActionScript』 著者:森巧尚+komachan
SIHOさんも絶賛
「この本なら、私もスラッシュシンタックスから卒業できるかもしれない。
巻頭漫画にケーオーパンチです。」

 

Top

ページ1 ページ2 ページ3 ページ4

 

© 2001-2004 F-site All Rights Reserved.