立方体を作成し、ブレンダー (2.5) でマテリアルとテクスチャを適用しました。しかし、そのモデルを Papervision 3d (2.1) にインポートすると、何も表示されず、何も表示されません。一方、他の .dae モデルを使用すると (たとえば、Papervision3D Essentials の本を参照しているので、それらのサンプルを使用しました)、モデルを見ることができます。どうしたの?Blender からエクスポートしたモデルが機能しないのはなぜですか?
これが私のスクリプトです:
package {
import flash.events.Event;
import org.papervision3d.events.FileLoadEvent;
import org.papervision3d.events.InteractiveScene3DEvent;
import org.papervision3d.materials.BitmapMaterial;
import org.papervision3d.materials.ColorMaterial;
import org.papervision3d.materials.utils.MaterialsList;
import org.papervision3d.objects.DisplayObject3D;
import org.papervision3d.objects.parsers.DAE;
import org.papervision3d.view.BasicView;
import org.papervision3d.objects.parsers.Collada;
public class modelTest extends BasicView
{
private var model:DisplayObject3D;
private var distance:Number = 1000;
private var speed:Number = 0.2;
private var rangeX:Number = 0.02;
private var rangeY:Number = 0.02;
private var rangeZ:Number = 0.05;
private var targetRotationX:Number = 0;
public function modelTest()
{
stage.frameRate = 40;
init();
startRendering();
}
private function init():void
{
model = new DAE();
DAE(model).load("assets/cube.dae");
scene.addChild(model);
viewport.interactive = true;
model.addEventListener(FileLoadEvent.LOAD_COMPLETE, modelLoaded);
}
private function modelLoaded(e:FileLoadEvent):void
{
trace("Used materials by this model: " + model.materials);
true).addEventListener(InteractiveScene3DEvent.OBJECT_CLICK, click);
}
override protected function onRenderTick(e:Event=null):void
{
super.onRenderTick();
}
}
}
そして、これは出力です:
INFO: Papervision3D 2.1 rev920 (August 11th, 2009)
INFO: Viewport autoScaleToStage : Papervision has changed the Stage scale mode.
INFO: DisplayObject3D: COLLADA_Scene
INFO: DisplayObject3D: Cube
INFO: DisplayObject3D: Lamp
INFO: DisplayObject3D: Camera
Used materials by this model: Material_001-material
Blender ファイル : http://imageedit.netai.net/cube.blend
DAE ファイル : http://imageedit.netai.net/cube.dae