Away3DLite is a faster and smaller version of the regular Away3D library. It
may be able to do everything you need, if your project is simple.

So, if it can do everything your project needs, you should use it instead.
If it can't do what you need (features etc), then you can't use it :)

-Peter

On Mon, Jul 12, 2010 at 10:06 AM, Crabar <[email protected]> wrote:

> Sorry, but i don't know difference between Lite or not Lite. There is
> Lite is faster, but... has smaller functionality? Or only faster, and
> hasn't disadvantages?
>
> On 12 июл, 16:54, Peter Kapelyan <[email protected]> wrote:
> > 2500 at one time is still really "pushing" it. Maybe try Away3Dlite?
> >
> > -Pete
> >
> >
> >
> >
> >
> > On Mon, Jul 12, 2010 at 9:30 AM, Crabar <[email protected]> wrote:
> > > AwayStats show "30000 polygons". I think it mean "faces".
> > > Scene is big and in one moment camera sees no more then 2500.
> >
> > > On 12 июл, 16:22, Michael Iv <[email protected]> wrote:
> > > > 30000 polygons or triangles? Anyhow this is too much Man... You must
> > > reduce
> > > > it
> >
> > > > On Mon, Jul 12, 2010 at 4:16 PM, Crabar <[email protected]> wrote:
> > > > > Hello, developers!
> >
> > > > > I have a problem with a performance of own scene.
> > > > > I try to build about 10 000 objects on scene with away3d. Now i
> have
> > > > > over 30 000 polygons, a visible at once is about 500-2000. It
> required
> > > > > ~230 mb of RAM (Internet Explorer, AwayStats shows ~160 mb) and
> have
> > > > > 5-10 fps while camera is moving. It's to much RAM is using and to
> low
> > > > > fps rate to me. I would be pleased for help in optimization of my
> > > > > engine and for some advices about optimization tricks. As well I
> would
> > > > > be pleased for pointing out my mistakes.
> >
> > > > > There are some screens:
> > > > >http://imageshost.ru/photo/74374/id21221.html
> > > > >http://imageshost.ru/photo/80867/id21220.html
> >
> > > > > I'm using Rectangle Clipping, obectCulling = true, Renderer =
> BASIC.
> > > > > Material is ShadingColorMAterial with one light source.
> > > > > I think about using LODObject, but it probably will be used more
> RAM
> > > > > or not?
> >
> > > > > To limit the range of visibility i'm using following event code (on
> > > > > move):
> >
> > > > >                public function onMove(e:KSEvents):void
> > > > >                {
> > > > >                        for each (var Obj3D:Object3D in
> > > > > baseAway.view.scene.children)
> > > > >                        {
> > > > >                                if
> > > > > (baseCamera.position.distance(Obj3D.position)>DistanceOfView)
> > > > >                                {
> > > > >                                        Obj3D.visible = false;
> > > > >                                }
> > > > >                                else
> > > > >                                {
> > > > >                                        Obj3D.visible = true;
> > > > >                                }
> > > > >                        }
> > > > >                }
> >
> > > > > Creating view code:
> >
> > > > > <?xml version="1.0" encoding="utf-8"?>
> > > > > <mx:UIComponent xmlns:mx="http://www.adobe.com/2006/mxml";
> width="100%"
> > > > > height="100%">
> > > > >        <mx:Script>
> > > > >                <![CDATA[
> > > > >                        import away3d.containers.Scene3D;
> > > > >                        import away3d.containers.View3D;
> > > > >                        import away3d.core.clip.FrustumClipping;
> > > > >                        import away3d.core.clip.RectangleClipping;
> > > > >                        import away3d.core.render.*;
> >
> > > > >                        public var view:View3D;
> > > > >                        public var scene:Scene3D;
> >
> > > > >                        override protected function
> > > createChildren():void
> > > > >                        {
> > > > >                                super.createChildren();
> > > > >                                scene = new Scene3D();
> > > > >                                view = new View3D();
> > > > >                                view.scene = scene;
> > > > >                                view.renderer = Renderer.BASIC;
> > > > >                                addChild(view);
> >
> > >  view.addEventListener(Event.ADDED_TO_STAGE,
> > > > > update); // Make sure
> > > > > the first frame is rendered
> > > > >                        }
> >
> > > > >                        override protected function
> > > > > updateDisplayList(unscaledWidth:Number,
> > > > > unscaledHeight:Number):void
> > > > >                        {
> > > > >
>  super.updateDisplayList(unscaledWidth,
> > > > > unscaledHeight);
> > > > >                                update();
> > > > >                        }
> > > > >                        private function update(e:* = null):void
> > > > >                        {
> > > > >                                if(view.stage){
> > > > >                                        view.x = unscaledWidth/2;
> > > > >                                        view.y = unscaledHeight/2;
> > > > >                                        view.clipping = new
> > > > > RectangleClipping({minX:-unscaledWidth/
> > > > >
> 2,minY:-unscaledHeight/2,maxX:unscaledWidth/2,maxY:unscaledHeight/2});
> > > > >                                        view.clipping.objectCulling
> =
> > > true;
> > > > >                                        view.render();
> > > > >                                }
> > > > >                        }
> > > > >                ]]>
> > > > >        </mx:Script>
> > > > > </mx:UIComponent>
> >
> > > > > Some code of class my object's class:
> >
> > > > >        public class Tube extends KSMesh
> > > > >        {
> > > > >        ...
> >
> > > > > Building faces:
> >
> > > > >                for (var i:int = 0; i< (VertexArray[j] as
> > > > > Vector.<Vertex>).length-1;
> > > > > i++)
> > > > >                {
> > > > >                        // first triangle of quad
> > > > >                        var FirstFace:Face = new Face();
> > > > >                        FirstFace.v0 = (VertexArray[j] as
> > > > > Vector.<Vertex>)[i];
> > > > >                        FirstFace.v1 = (VertexArray[j] as
> > > > > Vector.<Vertex>)[i+1];
> > > > >                        FirstFace.v2 = (VertexArray[j+1] as
> > > > > Vector.<Vertex>)[i];
> > > > >                        this.addFace(FirstFace);
> > > > >                        FirstFace = null;
> > > > >                        // second triangle of quad
> > > > >                        var SecondFace:Face = new Face();
> > > > >                        SecondFace.v0 = (VertexArray[j] as
> > > > > Vector.<Vertex>)[i+1];
> > > > >                        SecondFace.v1 = (VertexArray[j+1] as
> > > > > Vector.<Vertex>)[i+1];
> > > > >                        SecondFace.v2 = (VertexArray[j+1] as
> > > > > Vector.<Vertex>)[i];
> > > > >                        this.addFace(SecondFace);
> > > > >                        SecondFace = null;
> > > > >                }
> > > > >                ...
> >
> > > > > constructor
> >
> > > > >                public function Tube(Points:Vector.<Number3D>,
> > > > > Radius:Number,
> > > > > PipeKey:Number)
> > > > >                {
> > > > >                        super(null);
> > > > >                        this.diameter = Radius*2;
> > > > >                        this.ObjKey = PipeKey;
> >
> > > > >                        var ComplexPoints:Array = new Array;
> > > > >                        var TwoDots:Array = new Array();
> >
> > > > >                        for (var i:int = 0; i<Points.length-1; i++)
> > > > >                        {
> > > > >                                //
> > > > >                                TwoDots = GetFanCoords(Points[i],
> > > > > Points[i+1], 4, Radius);
> > > > >                                ComplexPoints[ComplexPoints.length]
> =
> > > > > TwoDots[0];
> > > > >                                ComplexPoints[ComplexPoints.length]
> =
> > > > > TwoDots[1];
> > > > >                        }
> >
> > > > >                        //
> > > > >                        BuildFaces(ComplexPoints);
> > > > >                        //
> > > > >                        this.centerPivot();
> > > > >                        this.material = new
> > > ShadingColorMaterial(0x555555);
> > > > >                        this.invertFaces();
> > > > >                        this.bothsides = true;
> > > > >                        // welding
> > > > >                        var weld:Weld = new Weld(false);
> > > > >                        weld.apply(this);
> > > > >                        //
> > > > >                        weld = null;
> > > > >                        TwoDots = null;
> > > > >                        ComplexPoints = null;
> > > > >                }
> >
> > > > > Tnx for help.
> >
> > > > --
> > > > Michael Ivanov ,Programmer
> > > > Neurotech Solutions Ltd.
> > > > Flex|Air
> > > |3D|Unity|www.neurotechresearch.comhttp://blog.alladvanced.nethttp://
> > >www.meetup.com/GO3D-Games-Opensource-3D/
> > > > Tel:054-4962254
> > > > [email protected]
> > > > [email protected]
> >
> > --
> > ___________________
> >
> > Actionscript 3.0 Flash 3D Graphics Engine
> >
> > HTTP://AWAY3D.COM
>



-- 
___________________

Actionscript 3.0 Flash 3D Graphics Engine

HTTP://AWAY3D.COM

Reply via email to