Razvoj igre je složen proces. Osim pisanja koda, programer također mora pronaći način da inkorporira zvuk, muziku, grafiku i logiku na kohezivan način.
PICO-8 game engine uklanja složenost i omogućava programeru da se fokusira na najbitnije aspekte ideje koju žele da izvedu.
U ovom članku ćemo istražiti šta je jedinstveno u vezi sa PICO-8 game engine-om i kako omogućava programerima da pokažu svoju kreativnost uprkos ograničenom mediju.
Šta je PICO-8 konzola?
Kada igrate igru PICO-8, možete je odbaciti kao emulator za a retro konzola iz 1980-ih. Piksel art i 8-bitna muzika i zvučni efekti mogu vam čak izazvati malo nostalgije.
Možda ćete biti iznenađeni kada saznate da je PICO-8 objavljen 2015. U stvari, PICO-8 nikada nije bila konzola za početak!
PEAK-8 je virtuelni game engine kreiran od strane Lexaloffle Games.
Motor igre je emulator za izmišljenu konzolu za video igre. Slično kao i obične konzole, PICO-8 ima svoj skup specifikacija mašine, format prikaza i razvojne alate.
Jedina razlika je u tome što PICO-8 zapravo ne postoji u stvarnom svijetu.
Zašto bi postojalo interesovanje za fantastičnu konzolu?
Fantasy konzole kao što su PICO-8 i TIC-80 dati programerima priliku da kreiraju programe sa nekim oblikom ograničenja.
Popularni motori za video igre kao što je Unity daju programeru mogućnost da kreira bilo koju igru koju žele. Iako je ovo dobro u praksi, ostavlja programeru na desetine odluka koje treba donijeti.
Ograničenja fantastične konzole poput PICO-8 daju programerima okruženje da postanu kreativniji. Na primjer, programeri PICO-8 ne moraju razmišljati o tome u kojoj rezoluciji će prikazati svoju igru. Svaka igra radi u rezoluciji 128×128.
Slično, ograničena paleta od 16 boja daje dizajnerima igrica ograničenje koje nameće konzistentne šeme boja.
Programiranje u PICO-8
Programiranje u PICO-8 može biti poznato i korisnicima koji su radili sa programskim jezikom Lua. Međutim, implementacija Lua uključena u PICO-8 samo je podskup stvarne programski jezik.
PICO-8 također ograničava koliko koda smijete napisati za svaki program.
Svaka kolica moraju sadržavati najviše 8192 tokena. Tokeni mogu biti varijabla, string, operator ili ključna riječ.
Na primjer, kod a=1
sadrži tri tokena.
Ovo ograničenje prisiljava programere da pronađu efikasnije načine za kodiranje svojih igara.
PICO-8 Kolica
Svaka igra PICO-8 može se dijeliti putem kartridža za igru ili skraćeno „kolica“.
Ove digitalne kasete za igre su zapravo samo slike. Svaka kolica sadrže sve informacije o igri.
Kako se cijela igra pohrani u jednu sliku?
PICO-8 koristi steganografski proces za pohranjivanje podataka u PNG sliku. Svaki PICO-8 bajt je pohranjen u dva najmanje značajna bita svakog od četiri kanala. Pošto svaka slika ima dimenziju od 160×205 piksela, svaka slika može sadržati do 32,800 bajtova podataka igre.
Svaka datoteka igre PICO-8 sadrži podatke o programskom kodu, grafiku, zvuk i muziku. Možete koristiti softver kao što je picotool da pregledate podatke koji se nalaze u bilo kojoj kolici PICO-8.
PICO-8 zajednica
PICO-8 ima aktivnu zajednicu programera i programera video igara. Mnoge od ovih programera privukla je ideja o razvoju video igrice pod ograničenjima sličnim retro konzolama.
Možete pretraživati hiljade različitih igara na službene web stranice. Ove igre se kreću od jednostavnog dokaza koncepta do punopravnih igara koje su možda bile komercijalno objavljene na stvarnoj konzoli.
PICO-8 zajednica također objavljuje većinu svog rada pod licencom otvorenog koda. Korisnici mogu pogledati kako drugi ljudi programiraju svoje igre.
Džemovi igara i saradnja su takođe veoma ohrabreni. U stvari, a game jam 2016. godine dovela je do razvoja veoma popularne platformske igre Celeste.
ključne značajke
Evo nekih od ključnih karakteristika koje nudi PICO-8 game engine.
- Motor igre uključuje alate za uređivanje koda, muzike i sprijtova ugrađene u konzolu
- PICO-8 je kompatibilan sa više platformi.
- Svaka kolica PICO-8 mogu imati do 64 zvuka. Uređivač zvuka vam omogućava da kontrolišete frekvenciju, instrument i jačinu svake note koja se koristi za svaki zvučni efekat
- PICO-8 vam omogućava da imate 256 8×8 sprijtova.
- Konzola omogućava dva kontrolera sa 6 tastera preko povezane tastature.
- Implementacija Lua programskog jezika PICO-8 daje programerima osnovne funkcije programiranja kao što su varijable, funkcije, petlje i tabele.
- Korisnici također mogu pisati kod u vanjskom uređivaču ako je potrebno
Za i protiv razvoja u PICO-8
pros
- PICO-8 je malen i jednostavan za instalaciju.
- Ograničenja prisiljavaju programera da efikasno piše.
- Programski jezik je jednostavan za učenje
- Većina PICO-8 igara je otvorenog koda, što vam daje priliku da učite od PICO-8 zajednice.
Cons
- Ograničeno na razvoj 2D igara
- PICO-8 trenutno košta 15 dolara za igranje
- Nedostatak biblioteka znači da ćete možda morati kodirati osnovne funkcije od nule
- Nedostatak dovršavanja koda i automatskog uvlačenja
Kreiranje uzorka programa
U ovom odjeljku ćemo proći kroz ono što će korisnik doživjeti kada kreira svoju prvu igru.
Nakon instalacije igre u OS po izboru, otvaranje PICO-8 programa je jednostavno kao klikom na ikonu prečice PICO-8.
Korisnik će biti dočekan kratkom animacijom praćenom ekranom PICO-8 konzole.
tip PRINT(“HELLOWORLD”)
u konzolu i pritisnite Enter. Čestitamo, upravo ste izvršili svoj prvi PICO-8 program.
Krenimo sa kreiranjem novog projekta. U konzoli unesite naredbu SAVE <program_name>
.
Da biste otvorili projekat, otkucajte LOAD <PROJECT_NAME>.p8
Pritisnite taster Esc da uđete u uređivač kodova PICO-8. U donjem desnom uglu možete pratiti koliko je tokena preostalo za korištenje u kodu.
PICO-8 podržava upotrebu varijabli.
Korisnici također mogu definirati funkcije koje mogu pozvati na drugom mjestu u programu.
PICO-8 takođe podržava upotrebu tablica. Programeri upoznati sa Lua-om mogu se sjetiti da su tabele jedini spremnici podataka dostupni u programskom jeziku Lua.
PICO-8 uključuje ugrađenu petlju za igru koja se pokreće 30 puta u sekundi. I _update() i _draw() funkcije su potrebne da bi se petlja izvršila.
Ugrađeni uređivač sprite-a PICO-8 pomoći će vam da dizajnirate izgled vaših sprijtova i pozadinske slike u igri. Editor također omogućava korisniku da postavi cikluse animacije za svaki od svojih sredstava.
U konzolu možemo ukucati naredbu RUN nakon učitavanja igre za pokretanje instance programa.
Pokrili smo samo dio onoga što je moguće u PICO-8. Toplo preporučujem pregledavanje službena dokumentacija a wiki zajednice da saznate više o motoru.
Takođe preporučujem da pogledate PICO-ATE, središte osnovnih vodiča i resursa koje je sastavio programer Andrew Reist.
zaključak
Pisanje igara na konzoli PICO-8 mogu povezati sa pisanjem haikua. Stroga struktura haikua daje pjesniku izazov da prenese koncept u samo tri reda i sedamnaest slogova. Slično, PICO-8 izaziva programere da stvori iskustvo s obzirom na ograničen broj koda, grafike i zvukova.
PICO-8 možda nije prikladan za kreiranje najnovijih triple-A naslova, ali nikada nije bio namijenjen za to.
Motor blista dajući početnicima programerima priliku da istraže izazove dizajna i razvoja igara. PICO-8 je dovoljno jednostavan da ljudi koji su potpuno novi u razvoju igara počnu koristiti.
Ali pregledavajući igre koje je napravila zajednica, vidio sam da je PICO-8 također način da iskusni programeri igara izazovu i sebe.
Da li ste zainteresovani da isprobate PICO-8?
Ostavite odgovor