書籍紹介

本書は、Flashで3D表現ができるActionScript3.0のオープンソースのライブラリ「Papervision3D」の解説書です。学習するにあたって前提となるスキルは、ActionScript 3.0の基礎の習得です。読者対象としては、3D表現を学ぶことで新しい表現に挑戦してみたいという方から、手元で役立つリファレンスを必要とする現場のFlashデベロッパーまでを想定しています。

本書の特徴

  • Papervision3Dの導入方法からライブラリのほぼすべての実用的機能を網羅
  • 執筆時点で最新かつ安定性のあるVersion 2.1(rev920)をベースに解説を作成
  • FlashCS3/CS4だけでなく、Flex Builderや無償の開発環境FlashDevelopでのPapervision3D導入方法も紹介
  • 各項目の解説はコンパクトにまとめ、ソースコードも極力シンプルで学習しやすいものを用意
  • 現場で役立つイディオム的な内容も充実
  • 全80点の.flaサンプルファイルとそのソースコードはすべてWebからダウンロード可能
  • フルフラッシュサイト構築に応用できる実践的サンプルも掲載

サンプルの一例を見る

立ち読みPDF

クリックするとPDFで書籍の一部を読むことができます。


  • イントロダクション(4P)

  • Papervision3Dの基本(4P)

  • Papervision3D機能別リファレンス(4P)

  • 応用編(4P)

著者紹介

ClockMaker Blog
池田 泰延(いけだやすのぶ)
1983年和歌山県生まれ。筑波大学第三学群工学システム学類卒。Web制作会社を得てフリーランスとして独立し、Flashサイトの制作を中心に活動中。「ClockMaker Blog」でPapervision3DをはじめとしたFlashの新技術情報を掲載している。
ClockMaker Blog
http://clockmaker.jp/blog/

目次

CHAPTER 1 イントロダクション 011
1-1 Papervision3Dとは? 012
  1.1.1 Flash 3DコンテンツとPapervision3D 012
コラム:Papervision3D以外の代表的な3Dライブラリ 014
  1.1.2 Papervision3Dでできること 015
コラム:Papervision3Dのフォーラムについて 017
1-2 Papervision3Dの導入と環境設定 018
  1.2.1 ライブラリのソースファイルを入手する 018
  1.2.2 Flash CS3/CS4を使う場合の環境設定 019
  1.2.3 Flex Builderを使う場合の環境設定 022
コラム:Flexのコミュニティ「FxUG」 023
  1.2.4 FlashDevelopを使う場合の環境設定 024
コラム:FlashDevelopのコミュニティ「FlashDevelop.jp」 031
コラム:バージョン管理ツール「SVN(subversion)」 032
1-3 [補足]ActionScript3.0のクラスファイル作成の基本 034
  1.3.1 ドキュメントクラスの設定 034
  1.3.2 クラスファイルの作成 036

CHAPTER 2 Papervision3Dの基本 041
2-1 3Dの基礎知識 042
2-2 3Dオブジェクト表示方法と処理の流れ 048
  2.2.1 クラスファイルの作成とムービープレビュー 048
  .2.2 スクリプトで行われている処理の流れ 051
  .2.3 BasicViewで行われている初期化設定 053
  2.2.4 BasicViewクラスの詳細とカスタマイズについて 056
2-3 プリミティブオブジェクトの基本 058
  2.3.1 プリミティブオブジェクトの種類 058
  2.3.2 プリミティブオブジェクトを表示する 060
  2.3.3 オブジェクト制御の基本 062
  2.3.4 DisplayObject3Dの入れ子構造について 064
コラム:ワールド座標について 066
2-4 マテリアルの基本 067
  2.4.1 代表的なマテリアルの種類 067
  2.4.2 マテリアルを設定する 068
コラム:Flashでの色指定について 070
2-5 カメラの設定による視点制御方法の基本 071
  2.5.1 ターゲットカメラとフリーカメラ 071
  2.5.2 サンプルファイルの用意 072
  2.5.3 オブジェクトの周りでカメラを自動回転させる 074
  2.5.4 マウスの位置(座標)に応じてカメラを回転させる 077
  2.5.5 マウスのドラッグに応じてカメラを制御する 079

CHAPTER 3 Papervision3D機能別リファレンス 081
3-1 プリミティブオブジェクト 082
  3.1.1 Plane(平面) 082
  3.1.2 Sphere(球体) 084
  3.1.3 Cube(直方体) 086
  3.1.4 Cylinder(円柱) 089
  3.1.5 Cone(円柱) 091
  3.1.6 PaperPlane(紙飛行機) 093
  3.1.7 Arrow(矢印) 095
コラム:PrimitiveGenerator 097
3-2 マテリアル 098
  3.2.1 マテリアルにワイヤーフレームを使う(WireframeMaterial) 098
  3.2.2 マテリアルに単色塗りを使う(ColorMaterial) 100
  3.2.3 マテリアルにビットマップ画像を使う(BitmapMaterial) 101
コラム:外部画像がローカルマシンで読み込めない場合の対処法 108
  3.2.4 マテリアルにムービークリップを使う(MovieMaterial) 109
  3.2.5 マテリアルにムービークリップシンボルを使う(MovieAssetMaterial) 111
  3.2.6 マテリアルにFLVを使う(VideoStreamMaterial) 114
  3.2.7 複数のマテリアルを組み合わせる(CompositeMaterial) 116
  3.2.8 ライトで陰影が変化するシェーディングマテリアル 118
  3.2.9 ライトで陰影が変化するビットマップ系マテリアル 124
  3.2.10 マテリアルにViewportを使う(BitmapViewportMaterial) 132
  3.2.11 マテリアルの歪みを解消する 135
  3.2.12 ビットマップ画像のテクスチャ表示を滑らかにする 136
  3.2.13 マテリアルを動的に差し替えて表示する 137
コラム:MaterialsListを使うオブジェクトの場合の注意点 145
コラム:マテリアルをメモリから確実に解放するには 146
  3.2.14 バンプマップでオブジェクト表面の凹凸を表現する 146
  3.2.15 霧の質感を表現する(FogMaterial) 152
3-3 カメラ 156
  3.3.1 3Dをピクセル等倍で表示する 156
  3.3.2 ポリゴンの表示・非表示設定による処理速度の高速化 158
コラム:3Dオブジェクトのステージ上のXY座標を取得するには
  3.3.3 オブジェクトに追随するカメラを使う 161
  3.3.4 カメラとオブジェクトとの距離を算出する 166
コラム:被写界深度について 168
コラム:デバッグカメラについて 168
3-4 インタラクティブの表現 169
  3.4.1 3Dオブジェクトにマウスイベントを実装する 169
  3.4.2 3D空間内のマウス座標を取得してマウスでペイントする 173
コラム:FlashCS4でメタデータを使用するには 177
3-5 モーション 178
  3.5.1 Tweenerで3Dオブジェクトを動かす 178
  3.5.2 Tweenerでカメラを動かす 181
  3.5.3 3Dオブジェクトやカメラを任意の方向に動かす 183
コラム:トゥイーンライブラリ「BetweenAS」 185
3-6 エフェクト 186
  3.6.1 残像効果を適用する 186
  3.6.2 フィルタや透明度を設定する 190
  3.6.3 鏡面反射を設定する 192
3-7 3Dのベクタ-フォント 195
  3.7.1 ベクターフォントを扱う 195
コラム:任意のフォントを使用する方法 198
3-8 レンダリング 201
  3.8.1 ポリゴン交差による欠けを解消する 201
  3.8.2 クリッピング欠けを解消する 202
3-9 ヒット判定 205
  3.9.1 オブジェクトどうしのヒット判定を行う 205
  3.9.2 特定の座標とのヒット判定を行う 206
3-10 メッシュ制御 208
  3.10.1 頂点を指定してポリゴンを作成する 208
  3.10.2 メッシュを分割する 210
3-11 頂点制御 213
  3.11.1 プリミティブの頂点を制御する 213
3-12 描画 216
  3.12.1 3D空間に線を描く 216
  3.12.2 3D空間に点を描く 218
3-13 スペシャルパッケージに属しているその他の機能 221
  3.13.1 距離に応じてポリゴン数を最適化する 221
  3.13.2 パーティクルを表示する 223
  3.13.3 サラウンドの音を再生する 226
  3.13.4 ベクターベースの3D図形を描く 228
コラム:Papervision3Dの最適化Tips 232
3-14 3Dモデリングデータの読み込み 235
  3.14.1 Colladaファイルの読み込み 235
  3.14.2 KMZファイルの読み込み 238
コラム:モデリングソフト別のファイル書き出し方法 241
コラム:世界のFlash図鑑「wonderfl」 244

CHAPTER 4 応用編 247
4-1 3DをFlashサイトに組み込む 248
  4.1.1 フォトスライドショー その1 248
  4.1.2 フォトスライドショー その2 258
4-2 プレゼンテーションFlashの作成 267
4-3 パノラマ写真を使ったVR表現をPapervision3Dで実装する 278
  4.3.1 パノラマVR表現の種類と実装方法 278
コラム:パノラマツール「Pano2VR」 280
  4.3.2 Cubeを利用したパノラマVR表現の実装方法 281
  4.3.3 Sphereを利用したパノラマVR表現の実装方法 285
4-4 拡張ライブラリAS3Dmodでオブジェクトを変形させる 287
コラム:その他のPapervision3D拡張ライブラリ 295

さくいん 296