Loading:


    6 boczna kostka 3D z użyciem PaperVision 3D 2.0 w ActionScript 3

    Skrypt tworzy trójwymiarową animowana kostkę reagującą na ruch myszki w PaperVision3D w wersji 2.0 w środowisku Flash CS4.

     

    Wersja On-line:

     

     

    Aby przykład zadziała prawidłowo, należy utworzyć 6 klipów filmowych (czyli boków kostki) oraz nadać im nazwy instancji na scenie: cz1_mc, cz2_mc, cz3_mc, cz4_mc, cz5_mc oraz cz6_mc.

     

    Nasze klipy filmowe powinny być umieszczone w lewym górny rogu filmu z dodanymi parametrami krycia [blending] równymi na "wymazanie" [erase].

     

    Ten przykład wykorzystuje biblioteke PaperVision3D v2.0, którą można pobrać tutaj: [ pobierz ]



    Napisz Artyku³

    Listing

    //KOD DO UMIESZCZENIA W 1 KLATCE NOWEJ WARSTWY

    import org.papervision3d.scenes.*;
    import org.papervision3d.cameras.*;
    import org.papervision3d.objects.*;
    import org.papervision3d.objects.special.*;
    import org.papervision3d.objects.primitives.*;
    import org.papervision3d.materials.*;
    import org.papervision3d.materials.special.*;
    import org.papervision3d.materials.shaders.*;
    import org.papervision3d.materials.utils.*;
    import org.papervision3d.lights.*;
    import org.papervision3d.render.*;
    import org.papervision3d.view.*;
    import org.papervision3d.events.*;
    import org.papervision3d.core.utils.*;
    import org.papervision3d.core.utils.virtualmouse.VirtualMouse;
    //Skrypt pobrany z www.Funckje.net

    var viewport:Viewport3D = new Viewport3D(0, 0, true, true);
    addChild(viewport);
    viewport.buttonMode = true;

    var renderer:BasicRenderEngine = new BasicRenderEngine();

    var scene:Scene3D = new Scene3D();

    var camera:Camera3D = new Camera3D();
    camera.zoom = 11;
    camera.focus = 100;

    var mm:MovieMaterial = new MovieMaterial(cz1_mc);
    mm.interactive = true;
    mm.animated = true;
    mm.smooth = true;

    var mm2:MovieMaterial = new MovieMaterial(cz2_mc);
    mm2.interactive = true;
    mm2.animated = true;
    mm2.smooth = true;

    var mm3:MovieMaterial = new MovieMaterial(cz3_mc);
    mm3.interactive = true;
    mm3.animated = true;
    mm3.smooth = true;

    var mm4:MovieMaterial = new MovieMaterial(cz4_mc);
    mm4.interactive = true;
    mm4.animated = true;
    mm4.smooth = true;

    var mm5:MovieMaterial = new MovieMaterial(cz5_mc);
    mm5.interactive = true;
    mm5.animated = true;
    mm5.smooth = true;

    var mm6:MovieMaterial = new MovieMaterial(cz6_mc);
    mm6.interactive = true;
    mm6.animated = true;
    mm6.smooth = true;

    var kostka:Cube = new Cube(new MaterialsList({front:mm, left:mm2, right:mm3, top:mm4, bottom:mm5, back:mm6}), 150, 150, 150, 10, 10, 10);

    scene.addChild(kostka);

    addEventListener(Event.ENTER_FRAME, petla);

    function petla(e:Event):void {
            var xDystans:Number = mouseX - stage.stageWidth * 0.5;
            var yDystans:Number = mouseY - stage.stageHeight * 0.5;
            kostka.rotationY += xDystans * 0.05;
            kostka.rotationX += yDystans * 0.05;
            renderer.renderScene(scene, camera, viewport);
    }

    mm.addEventListener(MouseEvent.CLICK, klikniecie);
    mm2.addEventListener(MouseEvent.CLICK, klikniecie);
    mm3.addEventListener(MouseEvent.CLICK, klikniecie);
    mm4.addEventListener(MouseEvent.CLICK, klikniecie);
    mm5.addEventListener(MouseEvent.CLICK, klikniecie);
    mm6.addEventListener(MouseEvent.CLICK, klikniecie);

    function klikniecie(e:Event):void {
            navigateToURL(new URLRequest("http://funkcje.net"));
    }




    Dodano przez: divix
    Ranga: Administrator serwisu Punktów: 0
    Komentarze użytkowników
      • Tre¶æ komentarza
        Kod do komentarza (opcjonalnie)
        PHP JavaScript MySQL Smarty SQL HTML CSS ActionScript
        Autor
        Token
        token

         

         








    funkcje.net
    Wszelkie prawa zastrzeżone©. | Funkcje.net 2008-2025 v.1.5 | design: diviXdesign & rainbowcolors