2009/05/26 | 14:35 pm
MovieMaterial of PV3D
今まで知らなかったことです。
MovieClip を Material にして、その MovieClip のタイムラインを動かすって動作。
とりあえず、PV3D にはデフォルトで MovieMaterial ってのがあるので、それを使うとすぐ出来ましたデス。
private function MovieMaterialExperiment():void {
// flaファイルのライブラリからリンケージ名指定して頂く方法
var linkageID:String = "LIBRARY_ITEM";
var className:Class = getDefinitionByName( linkageID ) as Class;
var mc:MovieClip = new className();
// 第一引数に MovieClip を指定。
// 第二引数を true にしないと MovieClip の透過部分が真っ黒になる。。。
// 第三引数は true にしておかないとタイムラインのアニメーションが効かなくなる。
var mm:MovieMaterial = new MovieMaterial( mc, true, true );
mm.interactive = true;
var plane:Plane = new Plane( mm );
plane.addEventListener( InteractiveScene3DEvent.OBJECT_OVER, onObjectOver );
plane.addEventListener( InteractiveScene3DEvent.OBJECT_OUT, onObjectOut );
scene.addChild( plane );
};
private function onObjectOver( e:InteractiveScene3DEvent ):void {
e.target.material.movie.gotoAndStop(2);
// e.target で Plane にアクセス
// e.target.material で MovieMaterial にアクセス
// なもんで、e.target.material.movie で MovieClip にアクセスとなります。
};
private function onObjectOut( e:InteractiveScene3DEvent ):void {
e.target.material.movie.gotoAndStop(1);
};
あと、最初に Viewport3D の
interactive = true;
containerSprite.buttonMode = true;
しないとマウスが pointer になりませぬ。
CATEGORY
POSTED
jam


COMMENT
0 Comment