firefox下揭示TypeError: Error #1034: 强制转换类型失败:无法将 org.papervision3d.object!

firefox下提示TypeError: Error #1034: 强制转换类型失败:无法将 org.papervision3d.object!!!!!!
问题:在ie下一切正常,但是在firefox和其它浏览器下会出现下面这提示

TypeError: Error #1034: 强制转换类型失败:无法将 org.papervision3d.objects.primitives::Cube@bfc6859 转换为 org.papervision3d.objects.DisplayObject3D。

请高手帮忙看看,到底哪出问题了, 我分析了半天没明白。
下面是代码

package 
{
    import __AS3__.vec.*;
    import _home.*;
    import flash.display.*;
    import flash.events.*;
    import flash.system.*;
    import gs.*;
    import gs.easing.*;
    import org.papervision3d.lights.*;
    import org.papervision3d.materials.*;
    import org.papervision3d.materials.shadematerials.*;
    import org.papervision3d.materials.utils.*;
    import org.papervision3d.objects.*;
    import org.papervision3d.objects.primitives.*;
    import org.papervision3d.view.*;

    public class _home extends BasicView
    {
        private var cameraYaw:Number = 0;
        private var xCube:Cube;
        private var light:PointLight3D;
        public var homeEnter:MovieClip;
        private var cameraPitch:Number = 80;
        private var list:Vector.<DisplayObject3D>;
        public static const OBJ_MAX:int = 80;

        public function _home() : void
        {
            this.light = new PointLight3D();
            this.list = new Vector.<DisplayObject3D>(OBJ_MAX, true);
            this.init();
            return;
        }// end function

        override protected function onRenderTick(event:Event = null) : void
        {
            this.homeEnter.x = viewport.viewportWidth / 2 - this.homeEnter.width / 2;
            this.homeEnter.y = viewport.viewportHeight / 2 + 100;
            this.cameraYaw = this.cameraYaw + 0.8;
            if (this.cameraYaw > 360)
            {
                this.cameraYaw = 0;
            }
            if (this.cameraPitch == 180)
            {
                this.cameraPitch = this.cameraPitch - 0.5;
            }
            else
            {
                this.cameraPitch = this.cameraPitch + 0.5;
            }
            camera.orbit(this.cameraPitch, this.cameraYaw);
            renderer.renderScene(scene, camera, viewport);
            return;
        }// end function

        public function delAllEvent()
        {
            stopRendering();
            trace("Delete _home!");
            scene.removeChild(this.xCube);
            this.xCube = null;
            var _loc_1:int = 0;
            while (_loc_1 < OBJ_MAX)
            {