Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Βιντεοπαιχνίδια: Βιομηχανία και Ανάπτυξη Ανάπτυξη βιντεοπαιχνιδιών III Κώστας Αναγνώστου Τμήμα Πληροφορικής Ιόνιο Πανεπιστήμιο.

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "Βιντεοπαιχνίδια: Βιομηχανία και Ανάπτυξη Ανάπτυξη βιντεοπαιχνιδιών III Κώστας Αναγνώστου Τμήμα Πληροφορικής Ιόνιο Πανεπιστήμιο."— Μεταγράφημα παρουσίασης:

1 Βιντεοπαιχνίδια: Βιομηχανία και Ανάπτυξη Ανάπτυξη βιντεοπαιχνιδιών III Κώστας Αναγνώστου Τμήμα Πληροφορικής Ιόνιο Πανεπιστήμιο

2 Τι θα δούμε σήμερα  Μηχανές παιχνιδιών (game engines)  Διαχείριση περιεχομένου (content management)

3 Τεχνολογίες ανάπτυξης videogames

4 Τεχνολογίες βιντεοπαιχνιδιών Μια σημαντική απόφαση που πρέπει να παρθεί πριν την ανάπτυξη του βιντεοπαιχνιδιού είναι ποια μηχανή παιχνιδιού (game engine) θα χρησιμοποιηθεί  Μηχανή παιχνιδιού (Game engine) ονομάζεται η εφαρμογή που αναλαμβάνει να διεκπεραιώσει την τεχνική υλοποίηση ενός παιχνιδιού  Καλύπτει τεχνικές πλευρές όπως απεικόνιση, κίνηση και συγκρούσεις μοντέλων, επικοινωνία μέσω δικτύου, αναπαραγωγή ήχου κλπ  Επιτρέπει στην ομάδα ανάπτυξης να επικεντρωθεί στο περιεχόμενο και στο gameplay Rendering

5 Τεχνολογίες βιντεοπαιχνιδιών Game Engine Απεικόνιση Δίκτυο I/O Ήχος Συγκρούσεις Κίνηση Παιχνίδι Διαχείριση περιεχομένου Τεχνητή Νοημοσύνη Gameplay

6 Μηχανή παιχνιδιού Όσον αφορά την μηχανή παιχνιδιού έχουμε 3 επιλογές:  Να αγοράσουμε μία  Να φτιάξουμε μια  Να επαναχρησιμοποιήσουμε μια Rendering Networking Input/Output

7 Αγορά μηχανής παιχνιδιού Η αγορά μιας μηχανής παιχνιδιού είναι πολύ δημοφιλής επιλογής για τα νέας γενιάς παιχνίδια Πλεονεκτήματα:  Είναι φθηνότερο από το να αναπτύξεις μια εξαρχής  Μεγάλη ελευθερία να επικεντρωθείς στο περιεχόμενο του παιχνιδιού  Απαιτεί μικρότερη ομάδα προγραμματισμού  Η μηχανή δεν χρειάζεται υποστήριξη/λιγότερα σφάλματα  Είναι ευκολότερο να εκδόσεις ένα παιχνίδι σε περισσότερες από μια πλατφόρμες  Προσφέρουν έτοιμη διαχείριση περιεχομένου (asset/art pipeline)  Έτοιμα εργαλεία για την σχεδίαση του κόσμου Input/Output

8 Αγορά μηχανής παιχνιδιού Η αγορά μιας μηχανής παιχνιδιού είναι πολύ δημοφιλής επιλογής για τα νέας γενιάς παιχνίδια Μειονεκτήματα:  Ίσως να μην καλύπτει τις ανάγκες/να μην ταιριάζει στο είδος του παιχνιδιού  Δεν είναι δυνατόν να αλλάξεις/βελτιώσεις την τεχνολογία της  Δεν εξελίσσεται τόσο γρήγορα  Οπτικά το παιχνίδι σου ίσως μοιάζει με άλλα που χρησιμοποιούν την ίδια μηχανή Networking Input/Output

9 Έτοιμες μηχανές παιχνιδιού BigWorld  Βελτιστοποιημένη για ΜΜΟGs  Υποστηρίζει Linux, Windows, 360, PS3, κινητά τηλέφωνα  House of flying daggers (t2cn), Stargate worlds (cheyenne mountain) Networking Input/Output

10 Έτοιμες μηχανές παιχνιδιού CryEngine 2  Ρεαλιστική απεικόνιση και εφέ  Υποστηρίζει Windows (360, PS3 υπό ανάπτυξη)  Crysis, Entropia universe (mindark), Merchants Of Brooklyn (paleo), The day (reloaded), Blue mars (avatar reality) Networking Input/Output

11 Έτοιμες μηχανές παιχνιδιού GameBryo  Από τις παλαιότερες έτοιμες μηχανές παιχνιδιού σε κυκλοφορία (1990)  Υποστηρίζει Windows, 360, PS3, Wii  CIVILIZATION IV (Firaxis), DARK AGES OF CAMELOT (EA Mythic), THE ELDER SCROLLS IV: OBLIVION (Bethesda), ZOO TYCOON 2 (Blue Fang), FALLOUT 3 (Bethesda), WARHAMMER ONLINE (EA Mythic) Networking Input/Output

12 Έτοιμες μηχανές παιχνιδιού Unreal Engine 3  Η ποιο δημοφιλής μηχανή (~76 παιχνίδια υπό ανάπτυξη και σε κυκλοφορία)  Υποστηρίζει Windows, 360, PS3  ARMY OF TWO (EA), BIOSHOCK (2K Boston), GEARS OF WARS 1&2(Epic), LINEAGE II (NCsoft), MASS EFFECT (BioWare), UNREAL TOURNAMENT3 (Epic), ALL POINTS BULLETIN (RealTime Worlds), BROTHERS IN ARMS 3 (Gearbox), StrangleHold Networking Input/Output

13 Έτοιμες μηχανές παιχνιδιού Torque  Μηχανή με μικρό κόστος, ειδικά για μικρότερες παραγωγές  Υποστηρίζει Windows, 360 (XNA Game Studio)  CURSE OF THE PHARAOH (Ph03nix), CYCLOMITE (Wideload), MARBLE BLAST ULTRA (GarageGames), THINK TANKS (BraveTree), WILDLIFE TYCOON (Pocket Watch), PENNY ARCADE ADVENTURES (Hothead), LEGIONS (GarageGames), METAL DRIFT (Black Jacket), Networking Input/Output

14 Έτοιμες μηχανές παιχνιδιού Source  Μηχανή με μεγάλες δυνατότητες σε ρεαλιστική απεικόνιση  Υποστηρίζει Windows, 360  COUNTER-STRIKE: SOURCE (Valve), DARK MESSIAH OF MIGHT AND MAGIC (Arkane), HALF LIFE 2 (Valve), PORTAL (Valve), TEAM FORTRESS 2 (Valve), LEFT 4 DEAD (Turtle Rock Studios), MABINOGI HEROES (Nexon), POSTAL III (Akella), SALVATION (Black Wing), THE CROSSING (Arkane) Networking Input/Output

15 Έτοιμες μηχανές παιχνιδιού Μια μηχανή παιχνιδιού δεν είναι απαραίτητο να υλοποιεί όλες τις λειτουργίες που χρειάζεται ένα παιχνίδι  Υπάρχουν στο εμπόριο έτοιμα τμήματα μηχανής (components) που αναλαμβάνουν να υλοποιήσουν ορισμένα χαρακτηριστικά και μόνο  Havok, για ανίχνευση συγκρούσεων, κίνηση μοντέλων κλπ  ΑΙ implant για τεχνητή νοημοσύνη στους χαρακτήρες  Euphoria για δυναμική (procedural) κίνηση χαρακτήρων Networking Input/Output

16 Κατασκευή μηχανής παιχνιδιού Μερικές εταιρίες επιλέγουν να αναπτύξουν την δική τους μηχανή παιχνιδιού Πλεονεκτήματα:  Η εταιρία της ανήκει η τεχνολογία, μπορεί να την αλλάξει σύμφωνα με τις ανάγκες της  Μπορεί να δημιουργήσει μοναδικό οπτικό στυλ  Αν είναι ανταγωνιστική, μπορεί να την πουλήσει και σε άλλες εταιρίες Rendering Networking Input/Output

17 Κατασκευή μηχανής παιχνιδιού Μερικές εταιρίες επιλέγουν να αναπτύξουν την δική τους μηχανή παιχνιδιού Μειονεκτήματα:  Απαιτεί εξειδικευμένη προγραμματιστική ομάδα και μεγάλη κατανόηση της πλατφόρμας  Απαιτεί ανάπτυξη και υποστήριξη, ακριβή λύση  Μεγάλο μέρος του χρόνου παραγωγής θα δαπανηθεί στην ανάπτυξη της μηχανής  Δεν είναι εύκολο να υποστηριχθούν πολλές πλατφόρμες  Οι εκδότες το βλέπουν σαν επένδυση υψηλού ρίσκου και αποφεύγουν την χρηματοδότηση Networking Input/Output

18 Επαναχρησιμοποίηση μηχανής Μερικές εταιρίες χρησιμοποιούν μηχανή από προηγούμενα παιχνίδια Πλεονεκτήματα:  Η μηχανή ανήκει στην εταιρία μπορεί να την βελτιώσει ανάλογα με τις ανάγκες του παιχνιδιού  Γρήγορη λύση, το μεγαλύτερο μέρος της μηχανής είναι ήδη έτοιμο  Η ομάδα κατέχει ήδη τεχνογνωσία για την μηχανή (και την πλατφόρμα)  Έχει νόημα για συνέχειες παιχνιδιών (Pro evolution soccer, episodic gaming) Rendering Networking Input/Output

19 Επαναχρησιμοποίηση μηχανής Μερικές εταιρίες χρησιμοποιούν μηχανή από προηγούμενα παιχνίδια Μειονεκτήματα:  Επίσης χρειάζεται εξειδικευμένη ομάδα για την βελτίωση, υποστήριξη και συντήρηση της  Ίσως να μην ταιριάζει στο επόμενο παιχνίδι (αλλαγή είδους, πλατφόρμας κλπ) Rendering Networking Input/Output

20 Αγορά, κατασκευή ή επαναχρησιμοποίηση μηχανής; Συνολικά, ιδίως για μια μεγάλη παραγωγή, είναι περισσότερο συμφέρουσα η αγορά μιας έτοιμης μηχανής  Οι κονσόλες και το PC έχουν γίνει πανίσχυρα, αλλά είναι και πολύ δυσκολότερο να αναπτύξεις βέλτιστο κώδικα για αυτά  Μεγάλος ανταγωνισμός, πρέπει να μειωθεί το κόστος και το ρίσκο  Μικρότερες ομάδες προγραμματισμού  Μικρότερο κόστος για debugging και υποστήριξη  Η έτοιμη μηχανή κάνει την ανάπτυξη περισσότερο προβλέψιμη και τα χρονοδιαγράμματα να τηρούνται καλύτερα  Η τυποποίηση και η μείωση του κόστους ανάπτυξης βοηθά στην επικέντρωση στο περιεχόμενο και τον πειραματισμό  Αυτό στο μέλλον θα κάνει τα βιντεοπαιχνίδια ένα πραγματικό μέσο έκφρασης και τέχνης όπως και ο κινηματογράφος Input/Output

21 Case study: η μηχανή παιχνιδιού της Rare Η Rare διατηρεί 3-4 ομάδες ανάπτυξης, κάθε μία δουλεύει ένα διαφορετικό παιχνίδι τη φορά  Κάθε ομάδα ανέπτυσσε την δική της τεχνολογία  Κάθε χρονική στιγμή, 3-4 μηχανές γραφικών υπήρχαν ταυτόχρονα στην εταιρία  Η Microsoft απαίτησε να χρησιμοποιηθεί τεχνολογία από όλες τις μηχανές για να παραχθεί μια κοινή  Τα Kameo, Perfect Dark Zero και Forza 2 τρέχουν όλα με την ίδια μηχανή γραφικών και τεχνολογία την οποία προσαρμόζουν ανάλογα με το παιχνίδι Networking

22 Διαχείριση περιεχομένου

23 Η σημασία του περιεχομένου Από το 1994 που βγήκαν στην αγορά οι επιταχυντές 3διάστατων γραφικών οι κόσμοι των παιχνιδιών γίνονται ολοένα και μεγαλύτεροι  Η επεξεργαστική ισχύς συνεχώς αυξάνει  Η μνήμη της κονσόλας αυξάνει  Ολοένα και μεγαλύτερα μέσα αποθήκευσης (CD, DVD, BluRay)  Οι εκδότες θέλουν ολοένα και πιο εντυπωσιακά γραφικά Rendering Networking Input/Output

24 Η σημασία του περιεχομένου Αυτό έχει μεταφέρει την ευθύνη για την ανάπτυξη από τους προγραμματιστές στους καλλιτέχνες/σχεδιαστές  Το περιεχόμενο του παιχνιδιού είναι το πιο σημαντικό του στοιχείο  Ο προγραμματιστής θα φτιάξει έναν έξυπνο αλγόριθμο για αύξηση λεπτομέρειας επιφάνειας, ή καλύτερο φωτισμό  Στην συνέχεια όμως χρειάζονται πολλοί καλλιτέχνες για να τον χρησιμοποιήσουν στα πάρα πολλά μοντέλα του παιχνιδιού Rendering Networking Input/Output

25 Η σημασία του περιεχομένου Rendering Networking Input/Output

26 Η σημασία του περιεχομένου Στα παιχνίδια τελευταίας γενιάς, το σημαντικότερο συστατικό μιας μηχανής παιχνιδιού είναι το πόσο γρήγορα και εύκολα επιτρέπει τη μεταφορά του περιεχομένου από το σχεδιαστικό εργαλείο στο παιχνίδι  Το λεγόμενο art (ή asset) pipeline  Με το όρο περιεχόμενο (asset) εννοούμε οτιδήποτε βλέπουμε και ακούμε στο παιχνίδι  Τριδιάστατο μοντέλο, κίνηση, ήχος, κείμενο, εφέ κλπ  Ο κάθε καλλιτέχνης φτιάχνει το αντίστοιχο περιεχόμενο σε κάποιο εργαλείο (Maya, Zbrush, Photoshop, Word κλπ)  Η διαδρομή από το εργαλείο στο παιχνίδι είναι το asset pipeline Rendering Networking Input/Output

27 Η σημασία του περιεχομένου Τα αρχεία των σχεδιαστικών εργαλείων του εμπορίου δεν είναι βελτιστοποιημένα για παιχνίδια  Ένα αρχείο της Maya μπορεί να περιέχει πολλή άχρηστη πληροφορία, παλαιότερες εκδόσεις του μοντέλου, υλικά που δεν χρησιμοποιούνται, δυναμική/μη συμπαγής αναπαράσταση του μοντέλου  Δεν έχουν γνώση των ιδιαίτερων απαιτήσεων μιας πλατφόρμας παιχνιδιού (μέγεθος μνήμης, cache κλπ)  Οι μηχανές παιχνιδιού χρησιμοποιούν συνήθως την δική τους, βελτιστοποιημένη αναπαράσταση του περιεχομένου που στοχεύει ειδικά την πλατφόρμα παιχνιδιού  Αυτή η μετατροπή είναι σύνθετη και συνήθως χρονοβόρα Networking Input/Output

28 Διαχείριση περιεχομένου Game EngineΠαιχνίδι Exporter Μετατροπή και βελτιστοποίηση περιεχομένου

29 Διαχείριση περιεχομένου Το πόσο αποδοτική είναι η διαχείριση περιεχομένου καθορίζει την επιτυχία του παιχνιδιού (στην ολοκλήρωση του)  Πρέπει να υποστηρίζει γρήγορη μετατροπή  Πρέπει να υποστηρίζει γρήγορη διόρθωση  Οι αλλαγές στο περιεχόμενο πρέπει να καταγράφονται  Πρέπει να υποστηρίζει κοινά format αρχείων (mb, jpg, xml)  Πρέπει να είναι ανθεκτική (και ανεκτική) σε σφάλματα στο περιεχόμενο  Πρέπει να είναι βελτιστοποιημένη για μια συγκεκριμένη πλατφόρμα

30 Διαχείριση περιεχομένου

31 Πρέπει να λάβουμε υπόψη μας:  Κριτήριο επιλογής μιας έτοιμης μηχανής παιχνιδιού είναι το πόσο καλή διαχείριση περιεχομένου και πόσο καλά εργαλεία παρέχει για το σκοπό αυτό  Η Unreal Engine είναι η πιο δημοφιλής μηχανή για αυτό ακριβώς το λόγο  Αν μια εταιρία αποφασίσει να φτιάξει δική της μηχανή παιχνιδιού πρέπει επίσης να φτιάξει και όλη την υποδομή για την διαχείριση του περιεχομένου  Αυτό είναι δυσκολότερο από το να φτιάξει καλά γραφικά και εφέ στο παιχνίδι! Networking Input/Output

32 Βασικό αξίωμα art pipeline Το περιεχόμενο όπως το φτιάχνει και το βλέπει ο καλλιτέχνης στο ειδικό εργαλείο δεν είναι ποτέ όπως φαίνεται πραγματικά στο παιχνίδι  Το εργαλείο (πχ Maya) υποστηρίζει στοιχεία που πιθανώς να μην υποστηρίζει η μηχανή (πχ κάποιο σύνθετο μοντέλο φωτισμού ή υλικό)  Η μηχανή πιθανώς να υποστηρίζει στοιχεία που να μην υποστηρίζει το εργαλείο (πχ γρασίδι και την παραμετροποίηση του)  Πρέπει να παράσχουμε στο καλλιτέχνη το τρόπο να μπορεί γρήγορα να δει τα μοντέλα στην κονσόλα όπως πραγματικά θα είναι και να διορθώσει ατέλειες Networking Input/Output

33 Επαναληπτική ανάπτυξη Game Engine Modelviewer Exporter

34 Scripting Η χρήση scripting languages τα τελευταία χρόνια στα παιχνίδια γίνεται ολοένα και πιο κοινή  Με τη χρήση μιας γλώσσας scripting μπορούμε να μεταφέρουμε την υλοποίηση της συμπεριφοράς του παιχνιδιού στο καλλιτέχνη/σχεδιαστή ή ακόμα και στο παίκτη  Τεχνητή νοημοσύνη, κίνηση, κείμενο, εφέ, trigger events μπορούν να καθοριστούν με scripts  Μπορούμε να χρησιμοποιήσουμε υψηλού επιπέδου γλώσσες όπως Python, Lua, GameMonkey, ή να φτιάξουμε μια εξειδικευμένη για το παιχνίδι  Η χρήση scripting επιτρέπει μεγάλη παραμετροποίηση του παιχνιδιού χωρίς ανάγκη για recompile  Ένα script θεωρείται περιεχόμενο του παιχνιδιού και περνά μέσα από το asset pipeline Rendering Networking Input/Output

35 Δίνοντας τον έλεγχο στο καλλιτέχνη Ο καλλιτέχνης είναι ο καλύτερος σας φίλος  Τα παιχνίδια τελευταίας γενιάς χαρακτηρίζονται από τις τεράστιες απαιτήσεις για περιεχόμενο  Κάθε εξελιγμένο χαρακτηριστικό της μηχανής γραφικών που δεν μπορεί να χρησιμοποιήσει ο καλλιτέχνης πηγαίνει χαμένο  Παρέχοντας στο καλλιτέχνη ένα γρήγορο κύκλο απεικόνισης-βελτίωσης του περιεχομένου θα κάνει την ανάπτυξη πολύ γρηγορότερη  Τα εργαλεία πρέπει να είναι εύχρηστα για τον καλλιτέχνη, και η γραμμή παραγωγής καλά καθορισμένη  Τα παιχνίδια δεν είναι ταινίες, υπάρχουν περιορισμοί λόγω της πλατφόρμας/μηχανής παιχνιδιού  Οι περιορισμοί πρέπει να γίνονται γνωστοί στο καλλιτέχνη για να γνωρίζει τα πλαίσια μέσα στα οποία θα δουλέψει Rendering Networking

36 Case Study: Διαχείριση περιεχομένου στη Rare Στην Rare υπάρχει εξειδικευμένη ομάδα που δουλεύει και βελτιστοποιεί την διαχείριση περιεχομένου  Η καλλιτέχνες χρησιμοποιούν Maya, 3D Studio και Zbrush για την δημιουργία των τριδιάστατων μοντέλων  Τα αρχεία της Maya μπορεί να περιέχουν ένα τριδιάστατο μοντέλο (ή και περισσότερα) ή μια κίνηση (animation)  Ειδικό πρόγραμμα (exporter) μετατρέπει το αρχείο Maya σε ένα εξειδικευμένο format (rmodel) κρατώντας μόνο ότι μπορεί να αξιοποιηθεί από την μηχανή του παιχνιδιού  Το rmodel αρχείο μετατρέπεται σε περιεχόμενο παιχνιδιού (game asset) με υλικά, υφές, και πολύγωνα  Κατά την μετατροπή γίνονται επιπλέον βελτιστοποιήσεις, συμπίεση και αλλαγή byte-order (endianess) για τον επεξεργαστή του Xbox360 Input/Output

37 Case Study: Διαχείριση περιεχομένου στη Rare Διευκολύνοντας τη δουλειά του καλλιτέχνη  Η Rare αναπτύσσει ένα πλήθος από επεκτάσεις (plugin) των εργαλείων του καλλιτέχνη που κάνουν την δουλειά του ευκολότερη  Έχει ένα προγραμματιστή ειδικά για Maya plugins!  Παρέχει εξειδικευμένο viewer για να βλέπει ο καλλιτέχνης τα μοντέλα που δημιουργεί όπως θα είναι στο παιχνίδι  Ο viewer (ModelViewer) έχει άμεση επικοινωνία με το εργαλείο δημιουργίας των μοντέλων (Maya) για άμεση παραμετροποίηση  Ειδικό εργαλείο για διαχείριση περιεχομένου (Librarian) που διατηρεί βάση δεδομένων με όλο το περιεχόμενο του παιχνιδιού, καταγραφή αλλαγών και αυτόματη μετατροπή Networking Input/Output

38 Ερωτήσεις;


Κατέβασμα ppt "Βιντεοπαιχνίδια: Βιομηχανία και Ανάπτυξη Ανάπτυξη βιντεοπαιχνιδιών III Κώστας Αναγνώστου Τμήμα Πληροφορικής Ιόνιο Πανεπιστήμιο."

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google