PaperVision3D 2.0 GrateWhiteをちゃんとやってみる

  • 2008 年 6月 26 日
  • kosuke

ご存知、PaperVision3D。
いろんなところで触れられていますが、頻繁なアップデートも相まってどうも手を付けにくいと思っていました。
しかしながら3D表現を用いたコンテンツをよく見るようになってきましたし、少し前はFlashPlayer 10の3D effectやFIVe3Dが多くのブログで取り上げられたり、PV3D以外の3Dフレームワークも充実してきて、どうにも3D関連は騒がしい状況です。
3D表現を用いたデザインは、今後Webデザインをするに求められる要素になりそうなので、遅まきながら本腰を入れて少しづつやっておこうと思った次第。


3Dに関して言えば、正直は初心者レベル。昔、Shadeを触って設定パネルの多さにやになった位。なので用語や3次元のデザインのノウハウみたいなものが足りないのも、取っ付きにくい事情なんですよ。
PV3Dは1.xについては、2PXページで使っているような、基本のところは理解しているつもり。ただそれは一旦忘れて、表現力の高まったPV3D 2.0 GrateWhiteを調べながら、ちゃんと理解していこうと思います。
FLiNTやAPEの時と同じノリで全部のプロパティとメソッド書き残す!ってするとクラスの多さに挫折しそうなので、一つづつ試してSWFとともに書き残す位でのんびり行こう。
まず、動きもしなければ3Dにも見えない、以下のような表示をGrateWhiteのサンプルを参考にして作る。

import org.papervision3d.cameras.Camera3D;
import org.papervision3d.scenes.Scene3D;
import org.papervision3d.objects.primitives.Plane;
import org.papervision3d.materials.ColorMaterial;
import org.papervision3d.render.BasicRenderEngine;
import org.papervision3d.view.Viewport3D;
 
var container:Sprite = new Sprite();
var viewport:Viewport3D = new Viewport3D(200,200);
var renderer:BasicRenderEngine = new BasicRenderEngine();
var scene:Scene3D = new Scene3D();
var camera:Camera3D = new Camera3D();
var material:ColorMaterial = new ColorMaterial();
var plane = new Plane(material,100,100,2,2,null);
 
scene.addChild(plane);
container.addChild(viewport);
addChild(container);
 
renderer.renderScene(scene, camera, viewport);

サンプル

This movie requires Flash Player 10.0.0

 

これのViewportだ、Cameraだっていうのを一つ一つ試してみる訳です。Viewport3DとかBasicRenderEngineは1.5に無かったと思う。うー、めんどくさい。
以下は、全部調べるってノリで行こうとした名残。
あまり意味ないですが、useDEGREES、usePERCENTは覚えておいてよいかも。
あとPV3Dはやたら出力を吐くので、VERBOSEをfalseとしておいた方が、自分でいれたtraceが読みやすいです。

 

org.papervision3dパッケージ

・プロパティ

■useDEGREES : Boolean
角度を表す単位を設定。
tureの場合、角度で表され、falseの場合ラジアン表記。
デフォルトはtrue。
■usePERCENT : Boolean

スケールを表す単位を設定。
tureの場合、パーセント表記、falseの場合0〜1で表記。
デフォルトはfalse。

■NAME : String
エンジン名
■VERSION : String
バージョン
■DATE : String
日付
■AUTHOR : String
著作権表記
■VERBOSE : Boolean
出力パネルにPapervisionからの出力を表示するかどうか。
trueだと表示。falseだと表示しない。

 

・メソッド

■log (message:String) : void
出力パネルにmessageのストリングを出力します。
・message:String = 出力するメッセージ

“PaperVision3D 2.0 GrateWhiteをちゃんとやってみる” に コメントはありません

コメントをどうぞ