Πως να φτιάξετε video games
HotΠως να φτιάξετε video games
Πληροφορίες
Αναλυτικά όλη η διαδικασία δημιουργίας.
Η διαδικασία δημιουργίας ενός video game είναι κάτι που είχατε ζητήσει να αναλύσει το GameWorld κατά καιρούς, κάτι που υλοποιείται σήμερα μέσω του παρόντος άρθρου. Θα φροντίσουμε να αναλύσουμε τα βασικά μέρη δημιουργίας ενός παιχνιδιού και τι software αλλά και τι έμψυχο δυναμικό χρειάζεστε για να φέρετε εις πέρας κάποιο project.
Καταρχήν για να φτιάξετε ένα video game χρειάζεται μια διαδικασία που απαιτεί καλή γνώση και εφαρμογή διαφόρων επιστημονικών πεδίων καθώς και πολύ καλή οργάνωση. Μια σωστή ομάδα πρέπει να καλύπτει τα έξης πεδία:
Software Development: Οι προγραμματιστές είναι τα πιο βασικά μέλη καθώς δεν γίνεται να κατασκευαστεί οποιοδήποτε video game χωρίς αυτούς. Ιδανικά κάθε προγραμματιστής σε μια ομάδα/εταιρεία έχει και κάποια εξειδίκευση όπως σε προγραμματισμό γραφικών ή σε συστήματα back-end (servers).
Graphic Designer: Οι γραφίστες έχουν ως υποχρέωση καθετί το όποιο έχει να κάνει με εικόνα στο παιχνίδι. Αυτό μπορεί να είναι “concept art”, “backgrounds” ή “animations” αντίστοιχα σε 3D και 2D γραφικά.
Sound Designer: Στις περισσότερες περιπτώσεις είναι διαφορετικό το άτομο το όποιο κάνει τα SFX και τη μουσική. Δουλεία τους είναι προφανώς η ηχητική επένδυση του παιχνιδιού.
Game Designer: Ο Game Designer είναι το άτομο το όποιο αποφασίζει και σχεδιάζει την "εμπειρία" του παιχνιδιού. Τις περισσότερες φορές λειτούργει ως συνδετικός κρίκος ανάμεσα στα υπόλοιπα μέλη καθώς έχει την πιο ολοκληρωμένη εικόνα του παιχνιδιού και του αποτελέσματος προτού ακόμα δημιουργηθεί.
Marketing Director: Το πεδίο του Marketing συνήθως είναι το πιο ελλειπές σε νέες μικρές ομάδες παρόλα αυτά παραμένει εξίσου σημαντικό. Σκοπός του είναι η ερευνά και ανάλυση στοιχείων που έχουν να κάνουν με τους χρήστες και την καλύτερη αξιοποίηση των χρημάτων που θα ξοδευτούν για προώθηση και διαφήμιση.
Σε μια μικρή ομάδα από game developers είναι ιδανική η περίπτωση όπου υπάρχει ένα από τα παραπάνω άτομα σε κάθε τομέα. Σε μια εταιρία ωστόσο υπάρχουν αρκετοί άνθρωποι σε κάθε πόστο, με πολύ πιο εξειδικευμένες γνώσεις. Φυσικά υπάρχουν και άλλοι σημαντικοί ρόλοι όπως κειμενογράφοι, σκηνοθέτες, project managers, play testers, level designers, voice artists και άλλοι, αλλά ας εστιάσουμε στα βασικά.
Η διαδικασία δημιουργίας του παιχνιδιού χωρίζεται σε 3 φάσεις και είναι οι έξης:
Pre-Production: Σε αυτό το στάδιο γίνεται ερευνά ως προς το τι θα είναι το παιχνίδι και θα πως θα προσεγγιστεί από τον κάθε developer. Η ερευνά αυτή ξεκάνει τις περισσότερες φορές με μια "καλή ιδέα". Υπάρχουν ήδη δηλαδή κάποιες ιδέες για συγκεκριμένα μέρη του παιχνιδιού. Αυτές οι ιδέες μπορεί να αφορούν το εικαστικό στυλ, ένα μηχανισμό ή κάποιο story.
Παρόλα αυτά υπάρχουν περιπτώσεις που ο σχεδιασμός ενός παιχνιδιού ξεκινάει από τον Marketing Director. Όταν παρατηρηθεί ένα "κενό" στην αγορά και υπάρχουν στοιχειά που το δικαιολογούν, δημιουργούνται συγκεκριμένα games για την κάλυψη αυτού του κενού. Παραδείγματος χάρη κατά το launch μια νέας κονσόλας μπορεί να παρατηρηθεί έλλειψη ενός συγκεκριμένου είδους παιχνιδιών και έτσι η ομάδα να επιχειρήσει να κατευθυνθεί προς τα εκεί. Όπως και να έχει η σωστή γνώση του target market (του κόσμου που θέλουμε και πιστεύουμε ότι θα αγοράσει το παιχνίδι) και η επιτυχία του παιχνιδιού είναι άμεσα συσχετισμένα.
Έστω ότι υπάρχει λοιπόν μια γενική ιδέα για το τρόπο λειτουργίας ενός μηχανισμού. Ο Game Designer πρέπει να δει κατά πόσο αυτή η ιδέα μπορεί να αποτελέσει βασικό στοιχειό στο παιχνίδι. Με τη βοήθεια όλων των υπολοίπων θα κατασκευαστεί ένα demo του μηχανισμού (χαμηλής ποιότητας σε γραφικά και συνήθως με ελάχιστο ήχο). Σκοπός είναι να βγει όσο πιο γρήγορα γίνεται καθώς μπορεί τελικά να απορριφτεί η συγκεκριμένη ιδέα. Το ίδιο θα γίνει και με άλλες ιδέες που θα μπορούσαν να προστεθούν. Μόλις έχει γίνει μια ερευνά επί του θέματος, η ομάδα πρέπει να είναι σε θέση να κρίνει αν αξίζει να υλοποιηθεί αυτό το παιχνίδι, ποιοι από τους μηχανισμούς που έχουν συζητήσει θα υλοποιηθούν και πόση έκταση θα δώσουν στο project δεδομένου των προοπτικών κέρδους τις οποίες έχει εξετάσει ο Marketing Director.
Ο Game Designer πρέπει να σχεδιάσει μια πολύ ολοκληρωμένη εικόνα του παιχνιδιού ώστε να καθοριστούν οι απαιτήσεις σε γραφικά, ήχους, κώδικα και αλλά έξοδα που μπορεί να υπάρξουν. Πολλά -αν όχι τα περισσότερα- projects σταματάνε σε αυτό το στάδιο καθώς αξιολογούνται ως μη βιώσιμα. Και είναι και ο λόγος που κυκλοφορούν τόσα demos τα οποία δεν έγιναν πότε ολοκληρωμένα παιχνίδια. Το στάδιο αυτό έχει το μεγαλύτερο ρίσκο και δεν πρέπει να πάρει έκταση. Εάν το παιχνίδι περάσει πάει στη φάση του Production.
Production: Σε αυτή τη φάση ουσιαστικά φτιάχνεται το παιχνίδι όπως το βλέπει ο παίχτης στο τέλος. Ξεκινάει έχοντας το μεγαλύτερο μέρος του παιχνιδιού ήδη σχεδιασμένο από τον Game Designer, και πολλές φορές υπάρχει ήδη και κάποιο concept art, του οποίου ο σκοπός είναι βοηθήσει όλα τα άτομα της ομάδας να έχουν μια κοινή άποψη για το παιχνίδι.
Η διαδικασία υλοποίησης που ακολουθείται συνήθως είναι η έξης:
1. Προγραμματισμός επιμέρους κομματιών του παιχνιδιού
2. Τοποθέτηση βασικών γραφικών και ήχων
3. Playtesting
4. Feedback
Σε κάθε ανατροφοδότηση που υπάρχει γίνονται κάποιες αλλαγές/βελτιώσεις μέχρις ότου το κάθε κομμάτι αποκτήσει μια όσο πιο τελική μορφή γίνεται. Η παραπάνω διαδικασία ξεκινάει από τα πιο βασικά και κρίσιμα κομμάτια και προχωρεί στα δευτερεύοντα. Μετά την ολοκλήρωση κάποιων κομματιών, αρχίζει η ένωση τους. Σε αυτά τα σημεία είναι που προκύπτουν τα περισσότερα bugs και αρχίζουν και περιπλέκουν τα πράγματα για τους προγραμματιστές.
Μόλις το παιχνίδι έχει όλα τα κομμάτια του συνδεδεμένα (άσχετα με το αν είναι τελειοποιημένα) είναι η φάση που θα αποκαλούσαμε alpha version. Το παιχνίδι δηλαδή υπάρχει αλλά έχει bugs και ελλείψεις. Πολλά games πλέον εκδίδονται όταν ακόμα είναι σε αυτή τη φάση προσπαθώντας να έχουν πρώιμα έσοδα αλλά κάποιες φορές αυτό μπορεί διώξει κόσμο καθώς το παιχνίδι δε έχει τη μορφή την οποία θα έπρεπε να έχει.
Αφότου διορθωθούν όσα γνωστά προβλήματα υπάρχουν το παιχνίδι θεωρείται ότι είναι σε beta version. Σε αυτή την έκδοση ίσως υπάρχουν κάποια μικροπροβλήματα αλλά δεν επηρεάζουν δραστικά την εμπειρία του παίχτη. Όταν πλέον εξαλείφουν και αυτά το παιχνίδι είναι έτοιμο για release.
Μέχρι σε αυτό το σημείο ο Marketing Director έχει εξετάσει προσεκτικά την πλατφόρμα στην οποία θα βγει το video game, διάφορα είδη διαφήμισης καθώς και άλλα μέσα τα οποία θα βοηθήσουν να πωληθεί το προϊόν με βέλτιστο τρόπο. Μόλις το παιχνίδι είναι ολοκληρωμένο αρχίζει το post-Production.
Post Production: Αυτή είναι η φάση μετά το launch ενός παιχνιδιού. Συχνά παραλείπεται ή δεν προ-υπολογίζεται παρόλο που αποτελεί εξίσου σημαντική φάση. Περιέχει κυρίως είτε διορθωτικά updates είτε νέο περιεχόμενο. Είναι πολύ σημαντικό να υπάρχει σχέδιο με νέα updates για μετά το launch. Επίσης η υποστήριξη που χρειάζεται το παιχνίδι σε επίπεδα marketing και πιθανής τεχνικής υποστήριξης ή community management είναι αρκετά αξιοσημείωτη.
Ένα άλλο θέμα με το όποιο διάφοροι developers έχουν έρθει αντιμέτωποι είναι αυτό των πνευματικών δικαιωμάτων, όπου τα πράγματα είναι κάπως πολύπλοκα. Τα νομικά θέματα διαφέρουν πολύ από χώρα σε χώρα. Η κλοπή γραφικών και ήχων είναι η πιο συνήθης αλλά είναι και η πιο εύκολη σε αντιμετώπιση ίσως, σε αντίθεση με την κλοπή μιας ιδέας. Τις περισσότερες φορές σε ζητήματα δικαιωμάτων οι developers τείνουν να προβαίνουν σε διακανονισμούς μεταξύ τους, καθώς οποιαδήποτε νομική πράξη θα ήταν ιδιαίτερα κοστοβόρα και για τις δυο πλευρές.
To software
Αν και τα παραπάνω ισχύουν επί το πλείστον, δεν είναι λίγα τα παιχνίδια τα οποία έχουν δημιουργηθεί από ομάδες ενός ατόμου ή έχουν ακολουθήσει διαδικασίες δημιουργίας πολύ διαφορετικής της παραπάνω, και έχουν πετύχει. Ο κύριος λόγος που πλέον είναι τόσο ευκολά κάποιος να φταίξει εάν παιχνίδι, είναι η εξέλιξη που έχουν τα τελευταία χρονικά οι game engines του εμπορίου όπως οι Unity, Unreal Engine και GameMaker.
Οι συγκεκριμένες engines προφέρονται συνήθως δωρεάν με εξτρά κόστoς σε συγκεκριμένες περιπτώσεις (π.χ. αν θέλετε να διαθέσετε ένα video game προς πώληση) και σε γενικές γραμμές είναι ιδανικές για νέες ομάδες. Προσφέρουν περιβάλλοντα τα οποία διευκολύνουν κατά πολύ διάφορες λειτουργείες τις οποίες χρειάζονται τα games. Τέτοιες λειτουργείες μπορεί να σχετικά με χειρισμούς της κάμερας, physics, collisions ή animations (2D και 3D). Επίσης σε κάθε engine υπάρχουν και assets τα οποία έχουν κατασκευαστεί (από developers) και πωλούνται έναντι μικρού αντιτίμου που προσφέρουν διάφορες εξτρά λειτουργείς. Σε μεγάλα games όμως, συνήθως οι εταιρείες κατασκευάζουν δικιές τους engines οι οποίες περιέχουν ακόμα και λειτουργίες τις οποίες δεν θα χρειαστούν, βελτιστοποιώντας την χρήση της μνήμης, και αντίστοιχα έχουν δώσει έμφαση σε άλλες λειτουργείς τις οποίες θα χρησιμοποιήσουν περισσότερο.
Όσον αφορά στη δημιουργία γραφικών που θα "κουμπώσουν" σε μία game engine, για 3D γραφικά μπορείτε να χρησιμοποιήσετε τα Blender (free) και 3DS Max. Για 2D το Adobe Fireworks. Γενικά υπάρχουν αρκετές προτάσεις στον συγκεκριμένο τομέα.
Στη δημιουργία βίντεο συναντάμε τα Adobe Premiere και Apple Final Cut Pro. Όσο για τον ήχο, υπάρχει Free Software όπως το Audacity που για αρχή θα σας φανεί αρκετά εύχρηστο, αλλά και ακόμη πιο εξειδικευμένο όπως είναι το Adobe Audition.
Συνοψίζοντας
Στην Ελλάδα είναι αρκετά άτομα τα οποία έχουν γνώσεις σε όλες τις προαναφερθείσες ειδικότητες, παρόλα αυτά λίγοι το τολμούν. Στο Internet υπάρχουν πολλές πληροφορίες για αυτούς που θέλουν να ξεκινήσουν να ασχολούνται με το game development και πλέον γίνονται και εγχώρια πολύ αξιόλογες πράξεις γύρω αυτό. Το μόνο που χρειάζεται κανείς για να ξεκινήσει είναι θέληση.
Σημείωση σύνταξης: Ο Μιχάλης Παπαγαθαγγέλου είναι game developer στην εταιρεία Traptics, η οποία έχει δημιουργήσει το παιχνίδι Game of Legions. Διαβάστε περισσότερα για την Traptics σε αυτή την συνέντευξη και κατεβάστε δωρεάν το Game of Legions από το Google Play κάνοντας κλικ εδώ.
Για εκτενή συζήτηση στο πως θα δημιουργήσετε video games μπείτε σε αυτό το forum topic.
Comments
Έχω κάνει διάφορα στη Unity,ξεκινώντας να σχηματίζω βουνά,δάση,λίμνες κτλπ
Ακόμα περισσότερα έχω κάνει σε φύλλα χαρτί και αρχεία wordpad. Σημείωσεις για ιστορίες,leveling systems,πράματα...
Όσες φορές όμως και αν έχω ξεκινήσει κάτι,πάντα φτάνω σε ένα σημείο όπου δεν μπορώ να προχωρήσω.
Το να προσπαθείς μόνος σου να κάνεις τη δουλειά πολλών ατόμων είναι δύσκολο ή και παράταιρο μεν.
Σε φάση ξεκινάς ένα κόσμο,φτιάχνεις το landscape,αρχίζεις να βάζεις δέντρα ένα-ένα και να φτιάχνεις ένα δάσος,παραπέρα βάζεις placeholder art διάφορα σπιτάκια,κάστρο,φτιάχνεις τους δρόμους γύρω γύρω,βάζεις μια πλατεία στη μέση με συντριβάνι και παγκάκια,και κάποια στιγμή λες "ωραίο και γραφικό / ατμοσφαιρικό σκηνικό,αλλά πως τα κάνω όλα αυτά να ΛΕΙΤΟΥΡΓΟΥΝ ?"
Δυστυχώς δεν ξέρω και πολλά από προγραμματισμό. Και από ότι καταλαβαίνεις,το να φαντάζεσαι,φτιάχνεις,και βλέπεις στημένο ένα ωραίο σκηνικό είναι ένα πράμα,το να λειτουργεί όμως όπως το θες,και να κινείται,και και και... είναι τελείως διαφορετικό!
Είναι και οι απαιτήσεις μου όμως παράλογες. Όλο θέλω να φτιάξω 'core' 3d games όπως FPS και RPGs,αντί να πείσω τον εαυτό μου να ασχοληθεί με πείσμα με κάτι μικρό,πχ ένα παιχνίδι για κινητά με λίγα screens.
Μερικές φορές και οι ίδιοι κάνουμε κατά ένα τρόπο σαμποτάζ στον εαυτό μας,έτσι δεν είναι ?
1) Άριστη γνώση μαθηματικών.
2) Γνώση & απταιστη ευκολία στη χρήση C,C++(ειδικά για video games).
3) Βασικότερο και πιο σημαντικό είναι να έχεις μέσα σου το μικρόβιο.
Όσοι αγαπούν το αντικείμενο και είναι σε μικρή ηλικία δεν αρκεί μόνον να παίζεται παιχνίδια στο PC. Μην αφήνεται κενά στα μαθηματικά και να ασχολείται στον ελεύθερο χρονο σας!
Όσον αφορά τη διάθεση πράγματι,υπάρχει κάτι το οποίο εγώ το αντιλαμβάνομαι ως "συντηριτικότητα" του Έλληνα.
Ο Έλληνας προτιμά το "γνωστό και δοκιμασμένο" και δεν τολμά "νέα" πράγματα.
Ξέρω φίλους που έχουν γνώσεις προγραμματισμού και είτε δουλεύουν π.χ. σε σούπερ μάρκετ ή είναι άνεργοι.
Και τους λέω "γιατί ρε συ αφού ξέρεις,δεν κάνεις κάτι σχετικό ? Δεν φτιάχνεις ένα προγραμματάκι π.χ. μικρό που να κάνει οτιδήποτε. Αν είναι για παιχνίδι θα συμμετέχω και εγώ".Αλλά δεν... Δεν μπορώ να καταλάβω μερικά πράγματα. Άλλοι παρακαλάν να μπορούν να κάνουν κάτι και δεν μπορούν,και άλλοι που μπορούν δεν τους νοιάζει.
Μακάρι να είχα γνώσεις προγραμματισμού,αλλά εγώ βλέπεις σπατάλησα περισσότερο χρόνο μαθαίνωντας τις κοινές ρίζες των λέξεων των Ινδοευρωπαικών γλωσσών,και της Κοσμοθεωρίας του Πλάτωνα,παρά για το να αποστηθίσω τις διάφορες εντολές των Libraries και το συντακτικό της C. Όχι ότι δεν άξιζε να μάθω για τον ιδεαλισμό και τον υλισμό,αλλά άμα ήξερα να γράψω κάτι στη C,θα έβγαζα και ένα file downloader με διαφημίσεις στη τελική.. Τι να το κάνεις το να ξέρεις πως να ζήσεις τέλεια και αρμονικά τη ζωή σου με βάση τις γνώσεις των φιλοσόφων,αν δεν μπορείς να υποστηρίξεις ένα τέτοιο lifestyle λόγο του μικρού μισθού σου ?
Τέσπα σόρρυ για το wall-of-text αλλά κάτι με 'πιασε και ήθελα να τα πω.
Εξαιρετικό το άρθρο του Μιχάλη, μας το είχατε ζητήσει εδώ και τουλάχιστον ένα χρόνο. Καλύφθηκε ένα ακόμη σημαντικό κενό.
Σας εύχομαι να διαπρέψετε με τα projects σας και με ότι άλλο καταπιάνεστε παιδιά. Χάρηκα που ήσαστε στο GameAthlon. Ευχαριστώ κι εγώ με την σειρά μου για αυτό το σημαντικό άρθρο και ευελπιστώ να δούμε όμορφα πράγματα από την Traptics.
Vote για άρθρο του μήνα!
Θα με ενδιέφερε να μάθω περισσοτερα για τον τρόπο επικοινωνίας του game designer με όλους τους υπόλοιπους. Εννοώ για τον τρόπο με τον οποίο τους "περνάει" την ιδέα.. Φαντάζομαι χρειάζονται πολλές συναντήσεις και η δημιουργία mock ups, σχεδιαγραμμάτων κλπ. Υπάρχουν όμως κάποιοι στάνταρ τρόποι ή και dedicated προγράμματα με τον οποίο γίνεται αυτο;
Εύχομαι καλή επιτυχία σε ότι κάνετε!
Τώρα όσο αφορά τον οδηγό χρησιμότατος θα ήθελα στο μέλλον να δώ και άλλα ενημερωτικά άρθρα νομίζω ότι όλοι το θέλουμε.
Το Battelfield 4 βγηκε σε Alpha Version...
Μιλάω πάντα για την indie σκηνή, όπου στην Ελλάδα είμαστε πολύ πίσω. Άσε που για να προβληθείς πρέπει να σκας 200ευρα σε sites για να σου κάνουν review και αυτό ΑΝ είσαι τυχερός και σου ζητήσουν τόσα. Το παρόν site εξαιρείται από τη σαβούρα που επικρατεί εκεί έξω, αντιθέτως βοηθάει με κάθε τρόπο τους developers.
Καλό το άρθρο για το πως δημιουργείται ένα παιχνίδι, αλλά από την εμπειρία μου αυτό που έχω καταλάβει είναι ότι μετράει πιο πολύ απ'όλα το marketing και το hype που θα δημιουργήσεις για το παιχνίδι σου, παρά το αν θα είναι τελικά καλό το παιχνίδι. ΠΧ η απογοήτευση που λέγεται watch_dogs.
μακαρι και το κρατος να βοηθουσε τους νεους να στραφουν προς την δημιουργια για την βιομηχανια του gaming...
Τοσες ειδικοτητες θα εβρισκαν δουλεια εαν στηριζαν το να ανοιξουν τετοιες εταιριες.