dint fix the problem

On 25 ago, 12:39, "Guilherme C." <[email protected]> wrote:
> Hi!
>
> Try to change the multiply function in
> away3d.core.traverse.ProjectionTraverser to 4x4:
>
> // modified for FLAR, I need 4x4
> _viewTransform.multiply4x4(_cameraViewMatrix, node.sceneTransform);
> //_viewTransform.multiply(_cameraViewMatrix, node.sceneTransform);
>
> Let me know
>
> Guilherme Camargo Cardoso
>
> On Tue, Aug 25, 2009 at 14:27, desgraci <[email protected]> wrote:
>
> > i rewrote the code so it looks almost identicall to the one that rob
> > used, i used the same files in fact, but still not working, anyone got
> > an idea of why this is not working?
>
> > package {
> >        import away3d.containers.Scene3D;
> >        import away3d.containers.View3D;
> >         import away3d.core.base.Mesh;
> >         import away3d.core.render.BasicRenderer;
> >         import away3d.core.utils.Cast;
> >        import away3d.materials.BitmapMaterial;
> >        import away3d.primitives.Sphere;
> >        import away3d.loaders.Md2;
> >        import away3d.animators.data.AnimationSequence;
>
> >        import flash.display.BitmapData;
> >        import flash.display.Sprite;
> >        import flash.events.Event;
> >         import flash.filters.BlurFilter;
> >         import flash.media.Camera;
> >        import flash.media.Video;
> >        import flash.utils.ByteArray;
>
> >        import org.libspark.flartoolkit.core.FLARCode;
> >        import org.libspark.flartoolkit.core.param.FLARParam;
> >        import
> > org.libspark.flartoolkit.core.raster.rgb.FLARRgbRaster_BitmapData;
> >        import org.libspark.flartoolkit.core.transmat.FLARTransMatResult;
> >        import org.libspark.flartoolkit.detector.FLARSingleMarkerDetector;
> >        import org.libspark.flartoolkit.support.away3d_2.FLARBaseNode;
> >        import org.libspark.flartoolkit.support.away3d_2.FLARCamera3D;
>
> >        [SWF(width="640", height="480", frameRate="30",
> > background="#AAAAFF")]
>
> >         public class FLARDemox extends Sprite
> >        {
>
> >  [Embed(source="../assets/FLAR-marker.pat",mimeType="application/
> > octet-stream")]
> >                private var pattern:Class;
>
> >  [Embed(source="../assets/camera_para.dat",mimeType="application/
> > octet-stream")]
> >                private var params:Class;
>
> >                                 //ogre MD2 animation
> >                [Embed(source="../assets/ogre.md2",
> > mimeType='application/octet-
> > stream')]
> >                private var Model:Class;
>
> >                //ogre texture
> >                [Embed(source="../assets/ogre.jpg")]
> >                private var Texture:Class;
>
> >                //marterial objects
> >                private var material:BitmapMaterial;
>
> >                //scene objects
> >                private var model:Mesh;
>
> >                //enterframe variables
> >                private var blurFilter:BlurFilter= new BlurFilter(10, 10,1);
> >                //, BitmapFilterQuality.LOW);
> >                public var update:Boolean = true;
>
> >                private var fparams:FLARParam;
> >                private var mpattern:FLARCode;
> >                private var vid:Video;
> >                private var cam:Camera;
> >                private var bmd:BitmapData;
> >                private var raster:FLARRgbRaster_BitmapData;//este es el
> > parser de
> > bitmap a FLAR
> >                private var detector:FLARSingleMarkerDetector;//detecta 1
> > marker se
> > puede cambiar a multiples
>
> >                private var scene:Scene3D;
> >                private var camera:FLARCamera3D;
> >                private var container:FLARBaseNode;
> >                private var vp:View3D;
> >                private var bre:BasicRenderer;
> >                private var trans:FLARTransMatResult;//este posiciona los
> > objetos
>
> >                private var bola:Sphere;
>
> >                 public function FLARDemox()
> >                {
> >                        setupFLAR();
> >                        setupCamera();
> >                        setupBitmap();
> >                        setupAWAY3D();
> >                         addEventListener(Event.ENTER_FRAME,loop);
> >                }
> >                private function setupFLAR():void
> >                {
> >                        fparams=new FLARParam();
> >                        fparams.loadARParam(new params() as ByteArray);
> >                        mpattern=new FLARCode(16,16);
> >                        mpattern.loadARPatt(new pattern());
>
> >                }
> >                private function setupCamera():void
> >                {
> >                        vid=new Video(640,480);
> >                        cam=Camera.getCamera();
> >                        cam.setMode(640,480,30);
> >                        vid.attachCamera(cam);
> >                        addChild(vid);
>
> >                }
> >                private function setupBitmap():void
> >                {
> >                        bmd=new BitmapData(640,480);//lee por cuadro la
> > imagen de la camra
> >                        bmd.draw(vid);//la guarda en un bitmap
> >                        raster=new FLARRgbRaster_BitmapData(bmd);
> >                        detector=new
> > FLARSingleMarkerDetector(fparams,mpattern,80);
>
> >                }
> >                 private function setupAWAY3D():void
> >                 {
>
> >                        scene=new Scene3D();
> >                        camera=new FLARCamera3D(fparams);
> >                        vp=new View3D({camera:camera,scene:scene});
> >                        addChild(vp);
>
> >                        container=new FLARBaseNode();
>
> >                         material = new
> > BitmapMaterial(Cast.bitmap(Texture));
> >                        model = Md2.parse(Model, {material:material}) as
> > Mesh;
> >                        model.scale(0.02);
> >                        model.y += 45;
> >                        model.play(new AnimationSequence("stand", true,
> > true, 10));
>
> >                        container.addChild(model);
>
> >                        scene.addChild(container);
>
> >                        bre=new BasicRenderer();
> >                        trans=new FLARTransMatResult();
> >                }
> >                private function loop(e:Event):void
> >                {
> >                        bmd.draw(vid);
> >                         if (update){
> >                                 try
> >                                {
> >                                        if
> > (detector.detectMarkerLite(raster,80)&&detector.getConfidence()
> > >0.1)
> >                                                {
> >                                                        vp.visible = true;
>
> >  detector.getTransformMatrix(trans);
>
> >  container.setTransformMatrix(trans);
> >                                         }else{
> >                                                vp.visible=false;
> >                                        }
> >                                }catch(e:Error){
> >                                        trace("Error: " + e.message);
> >                                }
> >                                vp.render();
>
> >                         } else {
> >                                bmd.applyFilter(bmd,
> > bmd.rect,bmd.rect.topLeft, blurFilter);
> >                        }
>
> >                }
> >        }
> > }

Reply via email to