Η ανάπτυξη παιχνιδιών είναι μια πολύπλοκη διαδικασία. Εκτός από τη σύνταξη κώδικα, ο προγραμματιστής πρέπει επίσης να βρει έναν τρόπο να ενσωματώσει ήχο, μουσική, γραφικά και λογική με συνεκτικό τρόπο.
Η μηχανή παιχνιδιών PICO-8 απομακρύνει τις πολυπλοκότητες και επιτρέπει στον προγραμματιστή να εστιάσει στις πιο βασικές πτυχές της ιδέας που θέλει να εκτελέσει.
Σε αυτό το άρθρο, θα εξερευνήσουμε τι είναι μοναδικό στη μηχανή παιχνιδιών PICO-8 και πώς επιτρέπει στους προγραμματιστές να επιδείξουν τη δημιουργικότητά τους παρά το περιορισμένο μέσο.
Τι είναι η κονσόλα PICO-8;
Όταν παίζετε ένα παιχνίδι PICO-8, μπορείτε να το απορρίψετε ως εξομοιωτή για ένα ρετρό κονσόλα από τη δεκαετία του 1980. Η τέχνη των pixel και η μουσική 8-bit και τα ηχητικά εφέ μπορεί να σας προκαλέσουν λίγη νοσταλγία.
Ίσως εκπλαγείτε όταν ανακαλύψετε ότι το PICO-8 κυκλοφόρησε το 2015. Στην πραγματικότητα, το PICO-8 δεν ήταν ποτέ κονσόλα για αρχή!
PEAK-8 είναι μια εικονική μηχανή παιχνιδιών που δημιουργήθηκε από την Lexaloffle Games.
Η μηχανή παιχνιδιών είναι ένας εξομοιωτής για μια φανταστική κονσόλα βιντεοπαιχνιδιών. Όπως και οι κανονικές κονσόλες, το PICO-8 έχει το δικό του σύνολο προδιαγραφών μηχανής, μορφή οθόνης και εργαλεία ανάπτυξης.
Η μόνη διαφορά είναι ότι το PICO-8 δεν υπάρχει στην πραγματικότητα στον πραγματικό κόσμο.
Γιατί να υπάρχει ενδιαφέρον για μια κονσόλα φαντασίας;
Κονσόλες φαντασίας όπως το PICO-8 και το TIC-80 δίνουν στους προγραμματιστές την ευκαιρία να δημιουργήσουν προγράμματα με κάποια μορφή περιορισμών.
Δημοφιλείς μηχανές βιντεοπαιχνιδιών όπως το Unity δίνουν στον προγραμματιστή τη δυνατότητα να δημιουργήσει όποιο παιχνίδι θέλει. Αν και αυτό είναι καλό στην πράξη, αφήνει στον προγραμματιστή να πάρει δεκάδες αποφάσεις.
Οι περιορισμοί μιας κονσόλας φαντασίας όπως το PICO-8 δίνουν στους προγραμματιστές το περιβάλλον να γίνουν πιο δημιουργικοί. Για παράδειγμα, οι προγραμματιστές του PICO-8 δεν χρειάζεται να σκεφτούν ποια ανάλυση θα αποδώσουν το παιχνίδι τους. Κάθε παιχνίδι λειτουργεί με ανάλυση 128×128.
Ομοίως, η περιορισμένη παλέτα των 16 χρωμάτων δίνει στους σχεδιαστές παιχνιδιών έναν περιορισμό που επιβάλλει συνεπείς χρωματικούς συνδυασμούς.
Προγραμματισμός στο PICO-8
Ο προγραμματισμός στο PICO-8 μπορεί επίσης να είναι οικείος στους χρήστες που έχουν εργαστεί με τη γλώσσα προγραμματισμού Lua. Ωστόσο, η υλοποίηση του Lua που περιλαμβάνεται στο PICO-8 είναι μόνο ένα υποσύνολο του πραγματικού γλώσσα προγραμματισμού.
Το PICO-8 περιορίζει επίσης τον αριθμό κώδικα που επιτρέπεται να γράψετε για κάθε πρόγραμμα.
Κάθε καλάθι πρέπει να περιέχει το πολύ 8192 μάρκες. Τα διακριτικά μπορεί να είναι μεταβλητή, συμβολοσειρά, τελεστής ή λέξη-κλειδί.
Για παράδειγμα, ο κώδικας a=1
περιέχει τρεις μάρκες.
Αυτός ο περιορισμός αναγκάζει τους προγραμματιστές να βρουν πιο αποτελεσματικούς τρόπους κωδικοποίησης των παιχνιδιών τους.
PICO-8 Καρότσια
Κάθε παιχνίδι PICO-8 μπορεί να μοιραστεί μέσω μιας κασέτας παιχνιδιού ή για συντομία "καλάθι".
Αυτά τα δοχεία ψηφιακών παιχνιδιών είναι στην πραγματικότητα απλώς εικόνες. Κάθε καλάθι περιέχει όλες τις πληροφορίες του παιχνιδιού.
Πώς αποθηκεύεται ένα ολόκληρο παιχνίδι σε μία μόνο εικόνα;
Το PICO-8 χρησιμοποιεί μια στεγανογραφική διαδικασία για την αποθήκευση δεδομένων σε μια εικόνα PNG. Κάθε byte PICO-8 αποθηκεύεται στα δύο λιγότερο σημαντικά bit καθενός από τα τέσσερα κανάλια. Δεδομένου ότι κάθε εικόνα έχει διάσταση 160×205 pixel, κάθε εικόνα μπορεί να χωρέσει έως και 32,800 byte δεδομένων παιχνιδιού.
Κάθε αρχείο παιχνιδιού PICO-8 περιέχει δεδομένα σχετικά με τον κώδικα του προγράμματος, τα γραφικά, τον ήχο και τη μουσική. Μπορείτε να χρησιμοποιήσετε λογισμικό όπως π.χ picotool για να δείτε τα δεδομένα που βρίσκονται σε οποιοδήποτε καλάθι PICO-8.
Κοινότητα PICO-8
Το PICO-8 έχει μια ενεργή κοινότητα προγραμματιστών και προγραμματιστών βιντεοπαιχνιδιών. Πολλοί από αυτούς τους προγραμματιστές προσελκύθηκαν από την ιδέα της ανάπτυξης ενός βιντεοπαιχνιδιού με περιορισμούς που μοιάζουν με ρετρό κονσόλα.
Μπορείτε να περιηγηθείτε σε χιλιάδες διαφορετικά παιχνίδια στο Επίσημη ιστοσελίδα. Αυτά τα παιχνίδια κυμαίνονται από το γυμνό proof of concepts μέχρι τα ολοκληρωμένα παιχνίδια που μπορεί να είχαν κυκλοφορήσει εμπορικά σε μια πραγματική κονσόλα.
Η κοινότητα PICO-8 κυκλοφορεί επίσης το μεγαλύτερο μέρος της δουλειάς της με άδεια ανοιχτού κώδικα. Οι χρήστες μπορούν να ρίξουν μια ματιά στον τρόπο με τον οποίο άλλα άτομα προγραμματίζουν τα παιχνίδια τους.
Ενθαρρύνονται επίσης ιδιαίτερα οι εμπλοκές παιχνιδιών και οι συνεργασίες. Στην πραγματικότητα, α μαρμελάδα παιχνιδιού το 2016 οδήγησε στην ανάπτυξη του εξαιρετικά δημοφιλούς παιχνιδιού πλατφόρμας Celeste.
Βασικά χαρακτηριστικά
Εδώ είναι μερικά από τα βασικά χαρακτηριστικά που παρέχει η μηχανή παιχνιδιών PICO-8.
- Η μηχανή παιχνιδιού περιλαμβάνει εργαλεία για την επεξεργασία κώδικα, μουσικής και sprites ενσωματωμένα στην κονσόλα
- Το PICO-8 είναι συμβατό με πολλαπλές πλατφόρμες.
- Κάθε καρότσι PICO-8 μπορεί να έχει έως και 64 ήχους. Το πρόγραμμα επεξεργασίας ήχου σάς επιτρέπει να ελέγχετε τη συχνότητα, το όργανο και την ένταση κάθε νότας που χρησιμοποιείται για κάθε ηχητικό εφέ
- Το PICO-8 σάς επιτρέπει να έχετε 256 sprites 8×8.
- Η κονσόλα επιτρέπει δύο ελεγκτές 6 κουμπιών μέσω ενός συνδεδεμένου πληκτρολογίου.
- Η εφαρμογή της γλώσσας προγραμματισμού Lua του PICO-8 παρέχει στους προγραμματιστές βασικές λειτουργίες προγραμματισμού όπως μεταβλητές, συναρτήσεις, βρόχους και πίνακες.
- Οι χρήστες μπορούν επίσης να γράψουν κώδικα σε εξωτερικό πρόγραμμα επεξεργασίας εάν χρειάζεται
Πλεονεκτήματα και μειονεκτήματα της ανάπτυξης στο PICO-8
ΥΠΕΡ
- Το PICO-8 είναι μικροσκοπικό και εύκολο στην εγκατάσταση.
- Οι περιορισμοί αναγκάζουν τον προγραμματιστή να γράφει αποτελεσματικά.
- Η γλώσσα προγραμματισμού είναι απλή στην εκμάθηση
- Τα περισσότερα παιχνίδια PICO-8 είναι ανοιχτού κώδικα, δίνοντάς σας την ευκαιρία να μάθετε από την κοινότητα του PICO-8.
ΚΑΤΑ
- Περιορίζεται στην ανάπτυξη 2D παιχνιδιών
- Το PICO-8 κοστίζει επί του παρόντος 15 $ για να παίξει
- Η έλλειψη βιβλιοθηκών σημαίνει ότι ίσως χρειαστεί να κωδικοποιήσετε βασικές λειτουργίες από την αρχή
- Έλλειψη συμπλήρωσης κώδικα και αυτόματη εσοχή
Δημιουργία δείγματος προγράμματος
Σε αυτήν την ενότητα, θα εξετάσουμε τι θα βιώσει ο χρήστης όταν δημιουργήσει το πρώτο του παιχνίδι.
Μετά την εγκατάσταση του παιχνιδιού στο λειτουργικό σύστημα της επιλογής σας, το άνοιγμα του προγράμματος PICO-8 είναι τόσο απλό όσο κάνοντας κλικ στο εικονίδιο συντόμευσης PICO-8.
Ο χρήστης θα υποδεχθεί με μια σύντομη κινούμενη εικόνα ακολουθούμενη από την οθόνη της κονσόλας PICO-8.
Χαρακτηριστικά PRINT(“HELLOWORLD”)
στην κονσόλα και πατήστε Enter. Συγχαρητήρια, μόλις εκτελέσατε το πρώτο σας πρόγραμμα PICO-8.
Ας ξεκινήσουμε τη δημιουργία ενός νέου έργου. Στην κονσόλα, πληκτρολογήστε την εντολή SAVE <program_name>
.
Για να ανοίξετε ένα έργο, πληκτρολογήστε LOAD <PROJECT_NAME>.p8
Πατήστε το πλήκτρο Esc για να εισαγάγετε τον επεξεργαστή κώδικα PICO-8. Στην κάτω δεξιά γωνία, μπορείτε να παρακολουθείτε πόσα διακριτικά έχουν απομείνει για χρήση στον κώδικά σας.
Το PICO-8 υποστηρίζει τη χρήση μεταβλητών.
Οι χρήστες μπορούν επίσης να ορίσουν λειτουργίες που μπορούν να καλέσουν αλλού στο πρόγραμμα.
Το PICO-8 υποστηρίζει επίσης τη χρήση πινάκων. Οι προγραμματιστές που είναι εξοικειωμένοι με το Lua μπορεί να θυμούνται ότι οι πίνακες είναι τα μόνα δοχεία δεδομένων που είναι διαθέσιμα στη γλώσσα προγραμματισμού Lua.
Το PICO-8 περιλαμβάνει έναν ενσωματωμένο βρόχο παιχνιδιού που εκτελείται 30 φορές το δευτερόλεπτο. Τόσο η _update() όσο και η συνάρτηση _draw() χρειάζονται για να εκτελεστεί ο βρόχος.
Ο ενσωματωμένος επεξεργαστής sprite του PICO-8 θα σας βοηθήσει να σχεδιάσετε την εμφάνιση των sprite στο παιχνίδι και την τέχνη του φόντου. Το πρόγραμμα επεξεργασίας επιτρέπει επίσης στον χρήστη να ορίσει κύκλους κινούμενων εικόνων σε κάθε στοιχείο του.
Στην κονσόλα, μπορούμε να πληκτρολογήσουμε την εντολή RUN μετά τη φόρτωση του παιχνιδιού για να ξεκινήσει μια παρουσία του προγράμματος.
Καλύψαμε μόνο ένα κομμάτι από το τι είναι δυνατό στο PICO-8. Συνιστώ ανεπιφύλακτα να περιηγηθείτε στο επίσημα έγγραφα και την wiki κοινότητας για να μάθετε περισσότερα για τον κινητήρα.
Συνιστώ επίσης να κοιτάξετε PICO-ATE, ένα κέντρο βασικών οδηγών και πόρων που συγκεντρώθηκαν από τον προγραμματιστή Andrew Reist.
Συμπέρασμα
Μπορώ να συσχετίσω τα παιχνίδια γραφής στην κονσόλα PICO-8 με τη συγγραφή ενός χαϊκού. Η αυστηρή δομή του χαϊκού δίνει στον ποιητή την πρόκληση να μεταφέρει μια έννοια σε τρεις μόνο γραμμές και δεκαεπτά συλλαβές. Ομοίως, το PICO-8 προκαλεί τον προγραμματιστή να δημιουργήσει μια εμπειρία με περιορισμένο αριθμό κώδικα, γραφικών και ήχων.
Το PICO-8 μπορεί να μην είναι κατάλληλο για τη δημιουργία των τελευταίων τίτλων triple-A, αλλά ποτέ δεν προοριζόταν για αυτό.
Η μηχανή λάμπει δίνοντας στους αρχάριους προγραμματιστές την ευκαιρία να εξερευνήσουν τις προκλήσεις του σχεδιασμού και της ανάπτυξης παιχνιδιών. Το PICO-8 είναι αρκετά απλό για να αρχίσουν να το χρησιμοποιούν άτομα εντελώς νέοι στην ανάπτυξη παιχνιδιών.
Αλλά περιηγώντας τα παιχνίδια που φτιάχνει η κοινότητα, έχω δει ότι το PICO-8 είναι επίσης ένας τρόπος για έμπειρους προγραμματιστές παιχνιδιών να αμφισβητήσουν τον εαυτό τους επίσης.
Ενδιαφέρεστε να δοκιμάσετε το PICO-8;
Αφήστε μια απάντηση