PicLens σε Flash με Papervision3D 2.0: Μέρος ΙΙ

Τρίτη, 17 Ιουνίου 2008

Αυτή τη φορά (βλ. PicLens σε Flash με Papervision3D 2.0) δημόσιο κωδικό (PicLens.as), θα έπρεπε να αναθεωρηθούν ορισμένα τμήματα του κώδικα, ευθυγραμμίζοντας την τελευταία έκδοση του Papervision3D 2,0 Great White και έκανα κάποιες διορθώσεις και προσθήκες. I τέθηκε αυτό το demo σε μια σειρά από Knob, πόμολα, για να αλλάξετε κάποιες παραμέτρους runtime.

Προσομοίωση της κίνησης PicLens

Για την προσέγγιση του δυνατού, στην οριζόντια μετακίνηση PicLens πρωτότυπο, θα χρησιμοποιείται ένα μικρό δρόμο, εισάγοντας έναν "αόρατο" DisplayObject3D στόχο για την κάμερα:

Actionscript:
  1. ; __fooTarget = νέα DisplayObject3D ()?
  2. ...
  3. = __fooTarget; __bv. cameraAsCamera3D. target = __fooTarget?

Στην πράξη, το δωμάτιο πάντα την άκρη DisplayObject3D πίσω από τη σειρά immmagini. Όταν η κάμερα κινείται (με μια εσπευσμένη κυκλοφορία / αδρανειακής) επίσης DisplayObject3D εξής, αλλά με μια μικρή καθυστέρηση. Αυτό επέτρεψε μου να κάνω το αποτέλεσμα της ομαλή κίνηση και πολύ παρόμοια με αυτή που επιτεύχθηκε στις PicLens Πρωτότυπο:

Actionscript:
  1. += ( ( __slider. Value - __bv. cameraAsCamera3D . x ) / 10 ) / 2 . 2 ; __bv. cameraAsCamera3D. x + = ((__slider. Αξία - __bv. cameraAsCamera3D. x) / 10) / 2ο 2?
  2. __slider. Value - __fooTarget. x ) / 5 ) / 2 . 2 ; __fooTarget. x + = ((__slider. Αξία - __fooTarget. x) / 5) / 2ο 2?

Δεν έχω χρησιμοποιήσει Tween, αλλά μια πιο απλή και αποτελεσματική λειτουργία τους:

ΚΩΔΙΚΟΣ:
  1. /accelerazione ) /inerzia; θέση = + ((posizionefinale - θέση) / επιτάχυνσης) / αδράνεια?

Στο demo, μπορείτε να αλλάξετε κάποιες παραμέτρους: εστίαση, zoom και στόχους. Αυτή είναι η θέση της DisplayObject3D σε σύγκριση με 99 εικόνες! Με την αλλαγή αυτή η θέση θα παρατηρήσετε αλλαγές στην κίνηση της σκηνής.
Ζουμ και το επίκεντρο είναι ιδιοκτησία της Papervision3D.

Αλληλεπιδράσεις

Απλά κάντε κλικ στις φωτογραφίες ... ?)

Σχετικές Post

13 παρατηρήσεις για την: "PicLens σε Flash με Papervision3D 2.0: Μέρος ΙΙ"

  1. getAvatar 1,0 Πέμπτη, Ιούλιος 03, 2008 στις 17:24
    Oliver Semrau δήλωσε:

    Projekt: Het groente en φρούτα lab ...

    Φθρ Fondation Louis Bonduelle kindgerechtes Informationsportal wurde ein auf der Βάση von Adobe Flash produziert. Aufgabe es πολέμου, den Kindern und die Vorteile von geheimen Superkräfte Früchten und Gemüse spielerische näher zu bringen. Zusamme ...

  2. getAvatar 1,0 Δευτέρα, 15 Σεπτεμβρίου 2008 στις 19:16
    MairoN001 δήλωσε:

    Γεια σας, Κοίταξα το παράδειγμα της γκαλερί σας στυλ PicLens και πρέπει να πω ότι μου άρεσε πολύ, ακόμη και για να μην σας επίπεδο, αλλά είμαι σπουδάζουν και να έχουν αρκετές ημέρες ότι Χτύπησα το κεφάλι μου για το πώς να περάσει ένα φίλτρο σε ένα ενιαίο ΑΕΚ.
    Μπορείτε χώρα ένα κομμάτι του κώδικα για να μου εξηγήσει καλύτερα

    ΚΥΚΛΟΣ ΣΤΟΝ ΔΕΛΗ ΠΟΥ ΕΧΟΥΝ ΤΟ GRILL ΜΕ ΑΕΚ INSERT:

      photo1.addEventListener (InteractiveScene3DEvent.OBJECT_OVER, fnc_ObjRlOver) 

    και τότε θα δημιουργηθεί η ακόλουθη συνάρτηση

      fnc_ObjRlOver λειτουργία (ε: InteractiveScene3DEvent): άκυρη ( 
      νέα Tween (e.displayObject3D, "Z", Strong.easeOut, e.displayObject3D.z, -10, 1, αλήθεια)? 
      e.sprite.filters = [νέα GlowFilter (0xffffff, 0,60, 10,10,2,1)]? 
      ) 

    Με τον τρόπο αυτό θα ήθελα να ανατροπής των επιμέρους ΑΕΚ φώτα ....
    ακριβώς έτσι ώστε το φίλτρο έχει τοποθετηθεί σε όλα, αλλά αν τεθεί img e.displayObject3D μένα από λάθος

    αναζητούν κοντά σε ένα παράδειγμα που βρήκα Papervision χρησιμοποιεί InteractiveSceneManager να αντιστοιχίσετε ένα φίλτρο σε μια εκδήλωση την πάροδο ... Θα μπορούσατε να συστήσει τον τρόπο που αυτό το παράδειγμα σας;
    να συνεχίσει να μου λάθος;

    Σε ευχαριστώ πάρα πολύ

  3. getAvatar 1,0 Δευτέρα, 15 Σεπτεμβρίου 2008 στις 21:50
    Giovambattista Fazioli δήλωσε:

    @ MairoN001: Θα έκανε καλό! Μπορείτε απλά να προσθέσω μια γραμμή κατά τη δημιουργία αντικειμένων. Στην πράξη, όταν ξεκίνησε το αντικείμενο προσωρινής photo1 ο βρόχος που δημιουργήθηκε, πριν από addEventLister() προσθήκη:

      photo1.useOwnContainer = αλήθεια? 

    Στην fnc_ObjRlOver χρήση αντί:

      e.displayObject3D.filters = [νέα GlowFilter (0xffffff, 0.6, 10,10,2,1)]? 

    και όλα θα δουλειά! : P

  4. getAvatar 1,0 Τρίτη, 16 Σεπτεμβρίου 2008 στις 15:33
    MairoN001 δήλωσε:

    Σας ευχαριστώ πολύ για την απάντησή σας είναι καλός εκτός από το γεγονός ότι εισέρχονται "useOwnContainer"
    Κάντε κλικ για να απενεργοποιήσετε.

    Είδα εργασίας σε όλο τον r577 αλλά δεν το 578 +

    Η έκδοση που χρησιμοποιώ είναι η Μεγάλη Λευκή της 09 Σεπτεμβρίου 9ο, το 2008.

    προκύπτει από τα έγγραφα όπου να βρω μια λύση στο μεταξύ θα σας ήμουν ευγνώμων εάν Μπορείτε να μου πείτε κάτι περισσότερο γι 'αυτό.

    Τέλος πάντων, ευχαριστώ και πάλι για την απάντησή σας.

  5. getAvatar 1,0 Τρίτη, 16 Σεπτεμβρίου 2008 στις 16:20
    MairoN001 δήλωσε:

    Ok, βρήκα μισή λύση τώρα αλλά δεν το διπλό κλικ Πατήστε =)
    χώρα μου, ως προσωρινή λύση, αν ήταν να είναι χρήσιμο να qualkun'altro μπορούν με ευκολία να διαβάζουν.
    Από όσα είδα γύρω στις papervision να εφαρμόσετε φίλτρα για να την πρωτόγονη ανάγκη να χρησιμοποιηθεί το viewport στρώματα. Τοποθετήστε τον κωδικό που είναι ίσως πιο εύκολο να καταλάβουμε ?)
    Η δέσμη μέτρων:

      εισαγωγής org.papervision3d.view.layer.ViewportLayer? 

    ΣΤΗΝ ΤΑΞΗ:

      var ιδιωτικό στρώμα: ViewportLayer? 

    THE FUNCTION: initObjects

      var photo1: Αεροπλάνο = νέα Plane (__matarray [i], THUMBNAIL_WIDTH, THUMBNAIL_HEIGHT, 0, 0)? 
      __BasicVw.scene.addChild (Photo1)? 
      στρώμα = __BasicVw.viewport.getChildLayer (photo1, αλήθεια)? 
      photo1.addEventListener (InteractiveScene3DEvent.OBJECT_OVER, fnc_ObjRlOver) 
    

    THE FUNCTION: fnc_ObjRlOver

      e.displayObject3D.container.filters = [νέα GlowFilter (0xffffff, 0,60, 10,10,2,1)]? 

    Ελπίζω ότι αυτός ο κώδικας μπορεί επίσης να είναι χρήσιμη για τους άλλους perkè τόπο Έχασα 3 μέρες για να ανακαλύψετε πως πρέπει να τεθεί ένα φίλτρο σε ένα αεροπλάνο σε PVS3D με τη λύση αυτή λειτουργεί καλά αλλά δεν το διπλό κλικ για να προσπαθήσουμε να κατανοήσουμε γιατί και αν ανακαλύψει τον τόπο ... και μετά πάλι χάρη στην σκάφους χωρίς το κίνητρο που ξέρει πόσο καιρό θα έχουν χάσει ακόμα XD

  6. getAvatar 1,0 Τρίτη, 16 Σεπτεμβρίου 2008 στις 17:22
    Giovambattista Fazioli δήλωσε:

    @ MairoN001: εξαιρετική αναφορά! Θα δούμε τι θα βγει :) Μπορείτε ακόμη να εγκαταστήσει την τελευταία έκδοση του Papervision3D; Γιατί έχουν κυκλοφορήσει επίσημα το 2.0, αφαίρεση από το βήτα υποκατάστημα.

  7. getAvatar 1,0 Τρίτη, 16 Σεπτεμβρίου 2008 στις 17:46
    MairoN001 δήλωσε:

    Χελώνα και τη χρήση κάθε μέρα όλα riuppo ?)

  8. getAvatar 1,0 Τρίτη, 16 Σεπτεμβρίου 2008 στις 17:52
    Giovambattista Fazioli δήλωσε:

    @ MairoN001: τέλεια! Ήταν ακριβώς αυτό που ήθελα να μάθω! Επίσης χρήση χελώνα SVN :) και πριν ξεκινήσω την ανάπτυξη μιας καλά "Ενημέρωση" : P

  9. getAvatar 1,0 Τρίτη, 16 Σεπτεμβρίου 2008 στις 22:35
    MairoN001 δήλωσε:

    Πρέπει να πω ότι η χελώνα είναι ένα πολύ χρήσιμο λογισμικό και ξέρω ότι για ένα ζευγάρι των ημερών σας torturero με τα θέματα που αφορούν την γκαλερί =)

    Συνεχίζοντας την ανάλυση των θεωρεία δεν θα μπορούσα να βοηθήσει, αλλά διαπιστώνω ότι ο κύκλος ΑΕΚ ξεκινούν από 4 .. Πιστεύω ότι οφείλεται στο εσωτερικό του κύκλου qualke Papervision3D ή λάθος; Μπορείτε να μου πείτε γιατί;

    THK u

  10. getAvatar 1,0 Τετάρτη, 17 Σεπτεμβρίου 2008 στις 14:06
    Giovambattista Fazioli δήλωσε:

    @ MairoN001: Πού ακριβώς είδες αυτό cliclo for 4;

  11. getAvatar 1,0 Τετάρτη, 17 Σεπτεμβρίου 2008 στις 15:29
    MairoN001 δήλωσε:

    Θέση: initObject
    κύκλο:

      για (var i = 0? i <__thnumber i + +) 

    ο κύκλος προχωρεί σε τακτική βάση, αλλά τα σχέδια έχουν αρχίσει να "id4" αντί του "0"
    Είμαι εκτελεί ένα ίχνος σε αυτό για

      ίχνος ( "PLANE ID =" + __bv.scene.getChildByName (String (i))) 

    Μετά την φωτογραφία σε σχέδια
    τα πρώτα 4 κομμάτια είναι άκυρες o_0 "

  12. getAvatar 1,0 Τετάρτη, 17 Σεπτεμβρίου 2008 στις 15:44
    MairoN001 δήλωσε:

    Άλλες συμβουλές για όσους επιθυμούν να εργαστούν για την γκαλερί ακολουθήσουν το παράδειγμα της PicLens:
    όταν κάνετε κλικ στη φωτογραφία σας img ingradisce, αλλά αν είχε προηγουμένως κάνει κλικ σε ένα άλλο και αυτά που δεν επιλέγονται θα πρέπει να επιστρέψουν στην αρχική τους θέση, ώστε να αντιλαμβάνονται πάντα μόνο το επιλεγμένο μεγαλύτερο, από τότε που είχα προβλήματα qualke Έλεγξα για ότι και μελέτησε τον τρόπο δημιουργίας του επιπέδου και να είναι διαθέσιμα για να αναδημιουργήσει τα εμπρός και πίσω gioketto φωτογραφίες που είχα για να δημιουργήσετε ένα κλικ για την ακροατή ως παράδειγμα:

    FUNCTION initObject

      e.displayObject3D.addEventListener (InteractiveScene3DEvent.OBJECT_CLICK, fnc_ObjClk) 

    FUNCTION: fnc_ObjClk

      var obj_select = e.displayObject3D.id? 
      var k: Αριθμός = 0? 
      var allThb = THUMBNAIL_NUMBER + 4 / / HACK ΓΙΑ ΑΕΡΟΠΛΑΝΟ ΣΤΗΝ PV3D που αρχίζει στις 4 
    
      για (k = 4, k <allThb, k + +) / / Με τον τρόπο αυτό οι πρώτες 4 VUOTI LI SALTA 
      ( 
           εάν (obj_select! = k) 
    	  ( 
    	  var Οποιαδήποτε: Αεροπλάνο __bv.scene.getChildByName = (String (k)) όπως Plane? 
    	  νέα Tween (Οποιαδήποτε, "Z", Strong.easeOut, Any.z, 0, 1, αλήθεια)? 
    	  ) 
      ) 
    

    Ελπίζω ότι θα είναι χρήσιμο =)

  13. getAvatar 1,0 Τετάρτη, 17 Σεπτεμβρίου 2008 στις 16:59
    Giovambattista Fazioli δήλωσε:

    @ MairoN001: Όσον αφορά την κύκλου οφείλεται στο βάθος που σχετίζονται με τα επίπεδα Papervision, τίποτα δεν σχετικά με το τέλος της λειτουργίας κωδικός : P

Αφήστε ένα σχόλιο

TAG XHTML επιτρέπεται: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Χρησιμοποίησε <pre> να επισυνάψουν κωδικός