0

SWF を 3D Objectcontainer.Im にロードしようとしています。Away3D (ゴールド) を使用しています。

基本的に、オブジェクトを 3d コンテナーにロードしました。今度は、同じコンテナー内に swf をロードしたいと思います。オブジェクトと SWF が同じコンテナー内にあるため、コンテナーを回転すると SWF も回転します。今のところ、swf はテキストのみで構成されており、単なるテストです...

使用している読み込み方法は配列です...何かアイデアはありますか?

私のエラー:

    TypeError: Error #1034: Type Coercion failed: cannot convert 
  flash.display::MovieClip@30ee0e41 to away3d.containers.ObjectContainer3D.
4

1 に答える 1

1

Away3D4はもう少し難しいです。しかし、私はあなたを正しい方向に向けようとします。

ジオメトリとマテリアルからメッシュを作成する必要があります。

マテリアルには、MovieClipのテクスチャがあります。ジオメトリはPlaneGeometryです

メッシュは、ObjectContainer3Dに追加する必要のあるObject3Dインスタンスです。

コードは次のようになります。

var bitmapData:BitmapData = new BitmapData( mc.width, mc.height, false, 0x000000 );
var texture:BitmapTexture = new BitmapTexture( bitmapData );
var material:TextureMaterial = new TextureMaterial( texture, true );

var geometry:PlaneGeometry = new PlaneGeometry( mc.width, mc.height );

var planeMesh:Mesh = new Mesh( geometry, material );

_3dcontainer.addChild( planeMesh );

MovieClipをアニメーション化するには、テクスチャのビットマップを更新する必要があります。

mc.addEventListener( Event.ENTER_FRAME, updateTexture );

private function updateTexture( e:Event ):void {
    texture.bitmapData = new BitmapData( mc.width, mc.height, false, 0x000000 );
}

繰り返しになりますが、これはテストしていません。Away3D4を使用してからかなり前のことです。使用済みのクラスをインポートすることを忘れないでください。

ドキュメントをよく見てください:http: //away3d.com/livedocs/away3d/4.0/

于 2012-08-20T09:38:44.783 に答える