Papervision3D の Materials(1) ~ VideoStreamMaterial ~
2007/05/17 19:29 - Papervision3D
Papervision3D 公式ブログにて「Papervision3D、Away3D を統合」との発表がありましたが、そんな世間の潮流とは全く無関係に PV3D リビジョンアップの話です。
Away3D については「Away3Dにも手を出してみる(note.x)」をどうぞ。 Away3D について有益な言及のある唯一の日本語文献です、今のところ。
それは昨夜のことでした。
久しぶりにSVNリポジトリのページへ行ったらば、PV3D のリビジョンが 67 にアップしているじゃあありませんか。(日本時間 2007年5月17日19時半頃に再訪問したところ、リビジョンはさらにアップして 68 になってました。)
さっそくエクスポートして中身を見てみると……
あっ、マテリアルクラスファイルが一つ増えている!
その名は VideoStreamMaterial.as 。
来たーっ! って感じですかねー。
以前、"Flash: How to add Video texture in Papervision 3D(lessrain blog)"のコードを参考に、普通の Plane オブジェクト上で flv を再生する原初的なスクリプトを、テスト用に組みました。
それで分かったのは、Plane オブジェクト上で flv を再生するには、以下のような手順を踏む必要があるということです。
- Plane オブジェクトの生成。マテリアルには BitmapMaterial を適用
- NetConnection やら NetStream やらを使って、所定の手順で flv を再生
- onEnterFrame で BitmapMaterial に Video オブジェクトを draw
今回、そのテストスクリプトをちょこっと改造して VideoStreamMaterial に対応させてみました。
いやぁ、ずいぶんスッキリとするもんです。
なにせ 3 の過程は VideoStreamMaterial クラスが肩代わりしてくれるんですから。
- ソース( flvplay.zip 1.87 KB )
上記の圧縮ファイルには、対比参照用に BitmapMaterial 版のメインクラスと VideoStreamMaterial 版のメインクラスを入れてあります。
flv ファイルは同梱していません。
あと、新リビジョンでは MovieMaterial も増強されているようです。
動く MovieClip に対応したらしい。animated や animatedMaterials の文字が見られます。
次回はそのあたりの確認作業をしてみたいと思います。