ND3Dの基本
ND3Dは他3Dライブラリとは少し異なり
カメラとレンダラーの2つが3Dのベースとなります。
ND3Dリファレンスを自分なりに調べてみた事、基礎部分を書いてみました。
PointCamera [ カメラ ]
スクリーンのサイズをこのカメラで指定し
カメラからの見た目が描画される。
var camera:PointCamera = new PointCamera(stage.stageWidth, stage.stageHeight );
メソッド
follow | ターゲットに追随 |
プロパティ
fl | パースペクティブ デフォルトは250なので よりパースを利かせたいなら100とか数値を小さくする |
Renderer [ レンダラー ]
ND3Dの核。3Dオブジェクトを描画する。
var render:Renderer = new Renderer(this);
メソッド
render | レンダリング / 毎フレーム回して描画する |
ND3Dの特徴である効果オプションプロパティ
dynamicLighting | ダイナミックライティング |
additiveMode | ブレンド効果 |
ambientColor | 環境光 |
ambientColorCorrection | - |
wireFrameMode | ワイヤーフレーム表示 |
blurMode | 被写体深度 |
distanceBlur | 深度効果の影響する、距離具合 |
Rendererの重要なプロパティの解説
blurMode
このblurModeを設定するだけで被写体深度が表現でき、更に処理も速い。
ND3Dを使いたくなる、きっかけとなる機能です。
dynamicLighting
通常の単色カラーのマテリアルでは立体感が出ません。
このdynamicLightingをtrueに設定する事でライティング効果が付き
3Dの立体感を出せます。
特に球体の場合ぐっとポリゴン感が出ます。
additiveMode
BlendMode.ADDと同様のマテリアルのブレンド効果(加算)を使って
重なった部分の白飛びで、光の演出を出来る…機能でしょう。
ただ、少しスペックが低いマシンだとグッと処理が重くなるのが気になります。
Material [ マテリアル ]
ワイヤーフレームから単色の塗り、ビットマップ、
頂点のみドットで表現するマテリアルまで、基本的に必要なマテリアルはそろっています。
クラス構造図
マテリアル一覧
Material | 通常の塗のマテリアル |
BitmapMaterial | ビットマップのマテリアル |
LineMaterial | ラインのマテリアル |
PixelMaterial | 頂点のみドットで表わすのマテリアル |
SWFMaterial | MovieClipのマテリアル |
WireMaterial | ワイヤー塗りのマテリアル |
ReflectBitmapMaterial | 反射のマテリアル? |
プロパティ
calculateLights | 光の計算の使用 |
doubleSided | 両面 |
additive | ブレンド効果 |
Mesh [ オブジェクト ]
Meshのサブクラスである
SimpleCube・Box・Cube・Plane・Ground・Line3D・Ribbon・Sphere
これらが基本のオブジェクトとなります。
クラス構造図
オブジェクト一覧
SimpleCube | 立方体 |
Cube | 立方体 |
Box | 立方体 |
Sphere | 球体 |
Ground | 平面 |
Plane | 平面 |
Line3D | ライン |
Ribbon | リボン |
オブジェクトの補足説明
立方体は3つのクラスがあり
SimpleCube < Cube < Box
という関係で、より詳細に設定することができます。
RibbonやGroundといったものから
他にもr47で追加されたCylinderやCircleFaceなどもあります。