最近、papervison3dを使って、flash上で3dのムービーを作ろうとしています。

Web Designing 2009年6月号で連載されている、papervision3dの記事を参考に、基礎の勉強中をしています。

連載自体は、1つ前の5月号より行っているようで、手元にあるのは2回目でした。

■ 3DCG表示関連の用語

連載のサンプルソースを見て、大体は理解できましたが、シーンやビューポートの位置づけがよくわかりませんでした(説明は5月号にあるのかな)。

この件については、以下のサイトでわかりやすく説明してありました。

勉強部屋:Papervision入門

ざっくりいえば、

  • シーンにオブジェクトを配置して動かしたりする
  • モデルをカメラで撮影する
  • 撮影したのをビューポートで映して見る

という感じで、上記一連の処理を、レンダリングで行うというという理解です。

■ オブジェクト

オブジェクトの形状は、Planeや、Cubeなどがあり、これらをプリミティブオブジェクトといいます。

現在のところ、プリミティブオブジェクトは6種類あるようです。

  • Cone (円錐)
  • Cube (直方体)
  • Cylinder (円柱)
  • PaperPlane (紙飛行機的なオブジェクトのようです)
  • Plane (平面)
  • Sphere (球体)

プリミティブオブジェクトの表面に設定する属性(色や、画像など)を、マテリアルといいます。
マテリアルは、プリミティブのインスタンスを生成時に引数で与えます。

マテリアルは、色をつけるためのマテリアルや、ワイヤーフレーム、bitmapやMovieClipを貼り付けるものなど色々あります。

ひとつのプリミティブオブジェクトに複数のマテリアルを設定したい場合は、CompositeMaterialというオブジェクトを使用します。

他のマテリアルをCompositeMaterialに追加すれば、プリミティブオブジェクトに複数のマテリアルを設定できます。

■ サンプル

ざっと説明しましたが、連載を参考に作ったものを下に書いておきます。
迷路のようなものを作ってみました。

複雑なことは何一つやっていないので、上記説明程度で、今回書いたソースは理解できると思います。

黄色いところが、スタート・ゴールで、赤いのが宝箱的なものです。

で、以下のような感じになりました。

動きはないです。

ということで、Papervision3Dについては、これから少しずつ掘り下げていこうと思います。

■ 参考
Web Designing (ウェブデザイニング) 2009年 06月号 [雑誌]
Web Designing (ウェブデザイニング) 2009年 05月号 [雑誌]
throw Life
勉強部屋:Papervision入門
ActionScript3.0 papervision3D 1.x 基本オブジェクト