Άσκηση 7 Τρισδιάστατα εφέ (3D effects) στο Director Αυτή η άσκηση είναι μια εισαγωγή στη χρήση 3D στο Director MX. Στη Library του Director MX υπάρχουν behaviors που επιτρέπουν τη δημιουργία ενός 3D movie. Θα δημιουργήσουμε 3D κείμενο, θα χρησιμοποιήσουμε 3D behaviors για να περιστρέψουμε ένα μοντέλο, να αλλάξουμε την προοπτική της κάμερας και να επιτρέψουμε την πλοήγηση σε ένα 3D χώρο. 1. Ανοίξτε το αρχείο Magic_start.dir που βρίσκεται στο c:\program Files\Macromedia\Director MX 2004\Tutorials\3D\. Σώστε το ως My_Magic_start σε έναν φάκελο στην Επιφάνεια Εργασίας. 2. ημιουργείστε 3D κείμενο Ο Director MX σας αφήνει να εισάγετε και να δημιουργήσετε 3D μοντέλα και κείμενο. Για να δημιουργήσετε 3D κείμενο, δημιουργείτε απλό κείμενο και στη συνέχεια του δίνετε βάθος μέσω του Property Inspector. Εδώ το 2D κείμενο έχει ήδη δημιουργηθεί. Εκτελέστε τα παρακάτω βήματα: Βρείτε το cast member με όνομα Title text. Τραβήξτε το cast member Title text από το παράθυρο cast στο παράθυρο score στο frame 1 του καναλιού 3. Στο παράθυρο της σκηνής τοποθετήστε το στη θέση Χ=0, Υ=0. Γράψτε 70 στο text box που αντιστοιχεί στο End frame του Property Inspector (μεγαλώνετε τη διάρκεια του sprite μέχρι το τέλος της εφαρμογής). Η καρτέλα Text στον Property Inspector σας επιτρέπει να καθορίσετε τις 3D ιδιότητες του κειμένου. Στο πεδίο Display επιλέξτε 3D Mode. Το κείμενο πάνω στη σκηνή γίνεται 3D. 3. Τροποποιήστε το 3D κείμενο Μπορείτε να αλλάξετε την εμφάνιση του 3D κειμένου: Στο Property Inspector επιλέξτε την καρτέλα 3D Extruder Μετακινήστε το Tunnel Depth για να δείτε τις επιδράσεις του. Αφήστε το σε μια τιμή κοντά στο 20. Στο Light menu, επιλέξτε Top Center. Το φως μπορεί να είναι ambient (γενικό) ή directional (κατευθυντικό σαν σποτ). Επιλέγοντας Top Center, καθορίζετε ότι το φως θα πέφτει στο κείμενο από πάνω και κεντρικά. 4. Περιστρέψτε το 3D κείμενο Για να περιστρέψετε το κείμενο, θα χρησιμοποιήσετε ένα behavior από τη Library. Όταν το κείμενο περιστρέφεται, το directional (κατευθυντικό) φως που επιλέξατε θα λάμπει σε ένα συγκεκριμένο σημείο, ανεξάρτητα από την κίνηση του κειμένου. Επιλέξτε από το Code:Library, ομάδα 3D το Actions (καθορίζουν τι συμβαίνει στο movie σε τρισδιάστατα αντικείμενα, π.χ. περιστροφή της κάμερας γύρω από ένα μοντέλο) Επιλέξτε το Automatic Model Rotation (Αυτόματη περιστροφή μοντέλου) και σύρετέ το πάνω στο sprite του κειμένου (Title Text) στο score. Στο παράθυρο διαλόγου που ανοίγει πρέπει να καθορίζετε τις τιμές κάποιων παραμέτρων. Εισάγετε Rotation speed - > 10 Which Axis to Rotate About - > Y, ok (Περιστροφή γύρω από τον κάθετο άξονα) Σώστε την ταινία, πατήστε Play για να δείτε το αποτέλεσμα, ύστερα τα κουμπιά Stop και Rewind.
5. Τροποποίηση behaviors Αν θέλουμε να τροποποιήσουμε κάποιο behavior που έχουμε ήδη προσθέσει σε ένα sprite, μπορούμε να χρησιμοποιήσουμε τον Property Inspector. Θα επιβραδύνουμε την κίνηση περιστροφής του κειμένου: Επιλέξτε το sprite του κειμένου Title Text στη σκηνή ή στο score. Πηγαίνετε στο Property Inspector και ανοίξτε την καρτέλα Behavior Επιλέξτε το Automatic Model Rotation (Internal). Με διπλό κλικ ανοίγει το παράθυρο διαλόγου, αλλιώς...... κλικ στο βελάκι κάτω αριστερά και κλικ στο βελάκι δίπλα στο Rotation speed και αλλαγή τιμής από 10 στο 3. Σώστε την ταινία, πατήστε Play για να δείτε το αποτέλεσμα, ύστερα τα κουμπιά Stop και Rewind. 6. 3D world Το cast member Magic trick είναι ένα παράδειγμα 3D κόσμου. Περιλαμβάνει μοντέλα, τα οποία είναι ορατά αντικείμενα μέσα στο χώρο (π.χ. τραπέζια). Μπορούμε να δούμε αυτό το χώρο από διαφορετικές γωνίες. ιπλό κλικ στο cast member Magic trick - > ανοίγει το Shockwave 3D window. οκιμάστε τις επιλογές που σας δίνονται στη στήλη αριστερά για την κίνηση της κάμερας: Dolly Camera, Rotate Camera, Pan Camera, Camera Y Up, Camera Z Up. Αφού επιλέξουμε την επιθυμητή κάμερα από την αριστερή στήλη, ενεργοποιούμε την κάθε επιλογή κρατώντας πατημένο το κουμπί του ποντικιού και κουνώντας το ποντίκι μέσα στο μοντέλο. 7. Χρήση κάμερας Μπορούμε να μετακινούμε την κάμερα του Director για να βλέπουμε το 3D movie υπό διαφορετικές γωνίες και από διαφορετικές αποστάσεις κατά τη χρήση της εφαρμογής. Για να γίνει αυτό πρέπει αφενός να επιλέξουμε την επιθυμητή μορφή κίνησης της κάμερας (που ονομάζεται action) και αφετέρου να προγραμματίσουμε τον τρόπο με τον οποίο θα ενεργοποιεί ο χρήστης αυτή την κίνηση της κάμερας (που ονομάζεται trigger). Pan camera horizontal: Στροφή της κάμερας πάνω στο δικό της άξονα (σαν να κινείται από πλευρά σε πλευρά πάνω στον τρίποδά της). Καθορίζοντας τις επιμέρους παραμέτρους, μπορούμε να ελέγξουμε με ακρίβεια την κίνηση της κάμερας. Επιλέξτε το sprite του Magic trick στο stage. Code:Library - > 3D - > Actions Για να επισυνάψουμε με αποτελεσματικό τρόπο 3D behaviors σε κάποιο movie, δουλεύουμε όπως ειπώθηκε πιο πάνω, με ζεύγη actions και triggers (Το Automatic Model Rotation που επισυνάψαμε στο κείμενο αποτελεί εξαίρεση. Είναι ένα action που δεν χρειάζεται trigger). Τα triggers είναι είσοδοι από το ποντίκι ή από το πληκτρολόγιο που ενεργοποιούν τα actions.
Επιλέξτε το behavior Pan Camera Horizontal και σύρετέ το πάνω στο sprite του Magic trick στο score. Στο παράθυρο διαλόγου που ανοίγει πρέπει να καθορίσετε τις τιμές κάποιων παραμέτρων. Degrees to pan per frame - > 2 Which Group Does This Behavior Belong To? - > Πληκτρολογήστε Pan, και πατήστε ok Με την παραπάνω επιλογή δημιουργείτε ένα group, το οποίο το ονομάσατε Pan και στο οποίο θα προσθέσετε actions και triggers. Ένα action και ο αντίστοιχος trigger πρέπει να ανήκουν στο ίδιο group για να δουλεύουν μαζί. Trigger behavior Είσοδος από το πληκτρολόγιο: Αφού επισυνάψαμε στο Magic trick sprite το behavior Pan Camera Horizontal, πρέπει να καθορίσουμε και πώς αυτό θα ενεργοποιείται. Θα πρέπει να προσθέσουμε το κατάλληλο trigger behavior. Επιλέξτε το sprite του Magic trick στο score. Library - > 3D - > Triggers Επιλέξτε το behavior Keyboard Input (Είσοδος από το πληκτρολόγιο) και σύρετέ το πάνω στο sprite του Magic trick στο stage. Στο παράθυρο διαλόγου που ανοίγει πρέπει να καθορίσετε τις τιμές κάποιων παραμέτρων για να κινούμε την κάμερα προς τα αριστερά με το αριστερό βέλος του πληκτρολογίου. Which key will be used? - > Left arrow Το δεύτερο text box πρέπει να παραμείνει κενό. Select a Group and its Action - > Group Pan - - > Pan Camera Left Πατήστε ok Επαναλάβετε τη διαδικασία για κίνηση στην αντίθετη κατεύθυνση (προς τα δεξιά): Ξαναβάζουμε το keyboard input στο Magic Trick. Επιλέγουμε τα παρακάτω: Which key will be used? - > Right arrow Το δεύτερο text box πρέπει να παραμείνει κενό. Select a Group and its Action - > Group Pan - - > Pan Camera Right Πατήστε ok Σώστε την εφαρμογή. Ύστερα πατήστε Play. Δοκιμάστε να πατήσετε το αριστερό και δεξί βέλος στο πληκτρολόγιο. Πατήστε stop και ύστερα Rewind. Pan camera vertical (Κάθετη κίνηση κάμερας) Κάνοντας ό,τι και παραπάνω επισυνάψτε στο sprite Magic trick το κατάλληλο action (το Pan Camera Vertical) και τα κατάλληλα trigger behaviors, ώστε να υπάρχει η δυνατότητα για κάθετη κίνηση της κάμερας. Θα χρησιμοποιήσετε το πάνω βέλος για κίνηση προς τα πάνω και το κάτω βέλος για κίνηση προς τα κάτω. Σώστε την εφαρμογή. Πατήστε το Play δοκιμάστε το πάνω και το κάτω βέλος. Πατήστε Stop και μετά Rewind. Dolly camera behavior Κίνηση της κάμερας πάνω στο δικό της άξονα εμπρός και πίσω, χωρίς στροφή. Η διαδικασία είναι αντίστοιχη με αυτή που χρησιμοποιήσατε παραπάνω. Επιλέγουμε το Library - 3D Actions Dolly Camera και το βάζουμε στον ηθοποιό Magic Trick. Στο παράθυρο που εμφανίζεται βάζουμε τα παρακάτω: Amount to dolly per frame - > 20 To group για αυτό το behavior θα το ονομάσετε dolly και το πληκτρολογείτε στο πεδίο Which Group Does This Behavior Belong To? Ύστερα πατήστε οκ.
Στα triggers θα δώσετε είσοδο από το πληκτρολόγιο, f για forward κίνηση της κάμερας (κίνηση προς τα μέσα): Στο δεύτερο text box πληκτρολογείτε f Select a Group and its Action - > Group dolly - - > Move Camera In. Πατήστε ok. Προσθέστε άλλο ένα trigger ώστε να δίνετε είσοδο b για backward κίνηση της κάμερας (κίνηση προς τα έξω): Στο δεύτερο text box πληκτρολογείτε b Select a Group and its Action - > Group dolly - - > Move Camera Out, ok Σώστε την ταινία. Πατήστε Play, πατήστε τα πλήκτρα F και B, πατήστε Stop και μετά Rewind Reset camera Επιστροφή της κάμερας στην αρχική της θέση. Η διαδικασία είναι αντίστοιχη με αυτή που χρησιμοποιήσατε παραπάνω. Διαλέξτε το Reset Camera behavior και βάλτε το στο Magic trick. Ονομάστε το group reset. Στo trigger θα δίνετε είσοδο από το πληκτρολόγιο, το spacebar: Στο δεύτερο text box πατήστε μια φορά το space (το πλήκτρο του κενού διαστήματος) Select a Group and its Action - > Group reset - - > Reset Camera. Πατήστε ok. Σώστε την εφαρμογή. Πατήστε Play, πατήστε βελάκια και f και b, Spacebar. Πατήστε Stop και μετά Rewind 8. Model rollover cursors Όπως έχουμε ξανακάνει σε προηγούμενες ασκήσεις, όπου υπάρχει σύνδεσμος, ο δείκτης του ποντικιού μετατρέπεται σε χεράκι. Είχαμε εφαρμόσει αυτό το εφέ αλληλεπίδρασης σε ηθοποιούς κειμένου και κουμπιά, ενώ τώρα θα το εφαρμόσουμε σε αντικείμενα (μοντέλα). Το behavior Model Rollover Cursor μας αφήνει να επιλέξουμε κάποιο μοντέλο και να καθορίσουμε την εμφάνιση του δείκτη όταν περνά πάνω από αυτό το μοντέλο. Θα μετατρέψετε τα μοντέλα των τριών τραπεζιών με τα αντικείμενα που έχουν επάνω τους σε συνδέσμους και ο δείκτης θα αλλάζει σε finger κάθε φορά που θα βρίσκεται επάνω τους: Επιλέγουμε Library - > 3D - > Actions - > Model Rollover Cursor, το σέρνουμε στον ηθοποιό Magic trick στο score. Στο παράθυρο διαλόγου που ανοίγει πρέπει να καθορίσετε τα εξής: Which model - > Table 1 Which cursor - > Finger Επαναλάβετε άλλες 2 φορές επιλέγοντας το model Table 2 και Table 3. Σώστε την εφαρμογή, πατήστε Play, μετακινήστε το δείκτη του ποντικιού πάνω στα τραπέζια και τα αντικείμενα που βρίσκονται επάνω τους, παρατηρήστε την αλλαγή του δείκτη σε χεράκι. Πατήστε Stop και μετά Rewind. 9. Χρήση 3D behaviors για πλοήγηση
Όταν ένας δείκτης αλλάζει σε finger, αναμένεται ότι κάνοντας κλικ κάτι θα συμβεί. Στο movie, όταν ο χρήστης επιλέγει το κάθε αντικείμενο, θα παίρνει πληροφορίες για αυτό. Βλέπουμε στο score ότι το κείμενο που σχετίζεται με τα εμπορεύματα βρίσκεται καταρχήν στο frame 10 του πρώτου καναλιού, όπου υπάρχει ένας marker με το όνομα Cards. Στην αρχή των κειμένων για το καπέλο (Hat text) και τους δακτύλιους (Rings text) υπάρχουν αντίστοιχοι markers (Hat και Rings). Όπως και στις προηγούμενες ασκήσεις, θα χρησιμοποιήσουμε κάποιο behavior για να μπορεί ο χρήστης να μεταβαίνει στον κατάλληλο marker πατώντας πάνω σε κάποιο αντικείμενο. Χρήση του behavior Click Model Go to Marker: Επιλέγουμε Library - > 3D - > Actions Επιλέξτε το behavior Click Model Go to Marker και σύρετέ το πάνω στο sprite του Magic trick στο score. Στο παράθυρο διαλόγου που ανοίγει πρέπει να καθορίσετε τα εξής: Which model? - > Table 1 Go to which marker? - > Cards Στο Which group does this behavior belongs to? - > πληκτρολογούμε cards. Πατήστε ok. Επαναλάβετε τα παραπάνω για το Table 2 βάζοντας group και marker- > hat. Επαναλάβετε τα παραπάνω για το Table 3 βάζοντας group και marker - > rings. Trigger behavior Πρέπει τώρα να προσθέσουμε το κατάλληλο trigger behavior, για να καθορίσουμε πώς το behavior Click Model Go to Marker θα ενεργοποιείται. Επιλέξτε το sprite του Magic trick στο score. Επιλέξτε Library - > 3D - > Triggers Επιλέξτε το behavior Mouse Left (αριστερό κουμπί ποντικιού) και σύρετέ το πάνω στο sprite του Magic trick στο score. Στο παράθυρο διαλόγου που ανοίγει πρέπει να καθορίσετε τα εξής: When does this action occur? - > Anytime the left mouse button is being pressed Στο δεύτερο text box πρέπει να εμφανίζεται - > No modifier Key Στο τρίτο text box πρέπει να παραμείνει κενό. Select a Group and its Action - > Επιλέξτε το Group cards - - > Go to marker. Πατήστε ok. Επαναλάβετε τα παραπάνω επιλέγοντας για το Group hat τον κατάλληλο marker και για το group rings επίσης. Πατήστε Play και επιλέξτε το κάθε αντικείμενο στα τραπέζια για να εμφανιστούν οι πληροφορίες. Αν κάτι έχει γίνει λάθος χρησιμοποιήστε το Property Inspector στην καρτέλα Behavior για να διορθώσετε τα actions ή τα triggers. Σώστε την εφαρμογή. Κάντε publish και δοκιμάστε όλες τις δυνατότητες που σας δίνει η εφαρμογή που δημιουργήσατε.