簡體   English   中英

從Blender 2.5導入.DAE文件到Papervision 3D 2.1時什么也不顯示,為什么?

[英]Display nothing when I import .DAE file from blender 2.5 to Papervision 3D 2.1 why?

我創建了一個多維數據集,並在Blender(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

PV3D尚未保持最新,如果您想利用Stage3D(用於3d場景的Flash GPU加速)的優勢,則可以嘗試使用Away3D或其他一些引擎。

話雖如此,距我接觸PV3D已有一段時間了,但我記得我必須非常具體地說明我的Collada幾何體是如何編寫的-Papervision3D中的解析器僅讀取規范的一個子集(如果它試圖閱讀完整的規范,解析器將是巨大的-為什么Away3d不支持它的一部分)

搜索“用於Papervision的Collada攪拌機出口”后,我在網上看到了一些有用的信息,例如:

http://osflash.org/pipermail/papervision3d_osflash.org/2007-February/001726.html

告訴我們您的Collada出口必須有三角形。

或者,您可以深入研究Collada Parser並找出其要查找的內容-您會看到加載程序僅在XML中的特定位置查找三角形。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM