A játékfejlesztés összetett folyamat. A kódírás mellett a fejlesztőnek meg kell találnia a módját a hang, a zene, a grafika és a logika egybefüggő beépítésének.
A PICO-8 játékmotor megszünteti a bonyolultságokat, és lehetővé teszi a fejlesztő számára, hogy a megvalósítani kívánt ötlet leglényegesebb szempontjaira összpontosítson.
Ebben a cikkben megvizsgáljuk, mi az egyedi a PICO-8 játékmotorban, és hogyan teszi lehetővé a fejlesztők számára, hogy megmutassák kreativitásukat a korlátozott médium ellenére.
Mi az a PICO-8 konzol?
Amikor egy PICO-8 játékot játszik, előfordulhat, hogy elveti emulátorként a retro konzol az 1980-as évektől. A pixel art és a 8 bites zene és hangeffektusok még egy kis nosztalgiát is okozhatnak.
Meglepődhet, ha megtudja, hogy a PICO-8 2015-ben jelent meg. Valójában a PICO-8 kezdetben sosem volt konzol!
CSÚCS-8 egy virtuális játékmotor, amelyet a Lexaloffle Games hozott létre.
A játékmotor egy kitalált videojáték-konzol emulátora. A hagyományos konzolokhoz hasonlóan a PICO-8 is rendelkezik saját gépspecifikációkkal, megjelenítési formátummal és fejlesztőeszközökkel.
Az egyetlen különbség az, hogy a PICO-8 valójában nem létezik a való világban.
Miért lenne érdeklődés egy fantasy konzol iránt?
Fantasy konzolok, mint például a PICO-8 és a TIC-80 lehetőséget adnak a fejlesztőknek, hogy valamilyen megszorítással készítsenek programokat.
A népszerű videojáték-motorok, mint például a Unity, lehetővé teszik a fejlesztőnek, hogy bármilyen játékot készítsen, amit akar. Bár ez a gyakorlatban jó, több tucat döntést hagy a fejlesztőnek.
A PICO-8-hoz hasonló fantasy konzolok korlátai kreatívabbá válhatnak a fejlesztőknek. Például a PICO-8 fejlesztőknek nem kell azon gondolkodniuk, hogy milyen felbontásban jelenítsék meg játékukat. Minden játék 128×128-as felbontással működik.
Hasonlóképpen, a korlátozott, 16 színből álló paletta olyan korlátot ad a játéktervezőknek, amely konzisztens színsémákat kényszerít ki.
Programozás PICO-8-ban
A PICO-8 programozása ismerős lehet azoknak a felhasználóknak is, akik már dolgoztak a Lua programozási nyelvvel. A PICO-8-ban szereplő Lua megvalósítása azonban csak egy részhalmaza a ténylegesnek programozási nyelv.
A PICO-8 korlátozza azt is, hogy mennyi kódot írhat az egyes programokhoz.
Minden kosár legfeljebb 8192 tokent tartalmazhat. A tokenek lehetnek változók, karakterláncok, operátorok vagy kulcsszavak.
Például a kódot a=1
három tokent tartalmaz.
Ez a megkötés arra kényszeríti a fejlesztőket, hogy hatékonyabb módszereket találjanak játékaik kódolására.
PICO-8 szekerek
Minden PICO-8 játék megosztható játékkazettán vagy röviden „kocsin” keresztül.
Ezek a digitális játékkazetták valójában csak képek. Minden kosár tartalmazza a játék összes információját.
Hogyan tárolható egy teljes játék egyetlen képen?
A PICO-8 szteganográfiai folyamatot használ az adatok PNG-képbe történő tárolására. Minden PICO-8 bájt a négy csatorna mindegyikének két legkisebb jelentőségű bitjében van tárolva. Mivel minden kép mérete 160×205 pixel, minden kép akár 32,800 XNUMX bájtnyi játékadatot is tartalmazhat.
Minden PICO-8 játékfájl tartalmaz adatokat a programkódról, grafikáról, hangról és zenéről. Használhat olyan szoftvert, mint pl picotool hogy átnézze bármelyik PICO-8 kosárban található adatokat.
PICO-8 közösség
A PICO-8 programozók és videojáték-fejlesztők aktív közösségével rendelkezik. Ezek közül a fejlesztők közül sokat vonzott az ötlet, hogy retrokonzolhoz hasonló korlátok mellett fejlesszenek ki egy videojátékot.
Több ezer különböző játék között böngészhet az oldalon hivatalos honlapján. Ezek a játékok a csupasz koncepcióktól a teljes értékű játékokig terjednek, amelyek kereskedelmi forgalomba kerülhetnek egy tényleges konzolon.
A PICO-8 közösség is nyílt forráskódú licenc alatt adja ki munkáik nagy részét. A felhasználók megnézhetik, hogyan programozzák mások a játékaikat.
A játékelakadások és együttműködések szintén erősen támogatottak. Valójában a játék jam 2016-ban a rendkívül népszerű Celeste platformjáték kifejlesztéséhez vezetett.
Főbb jellemzők
Íme néhány fő funkció, amelyet a PICO-8 játékmotor biztosít.
- A játékmotor tartalmazza a kód, a zene és a konzolba épített sprite-szerkesztési eszközöket
- A PICO-8 platformok közötti kompatibilis.
- Minden PICO-8 kocsi akár 64 hangot is tartalmazhat. A hangszerkesztővel szabályozhatja az egyes hangeffektusokhoz használt hangok frekvenciáját, hangszerét és hangerejét
- A PICO-8 256 8×8 sprite-ot tesz lehetővé.
- A konzol két 6 gombos vezérlőt tesz lehetővé egy csatlakoztatott billentyűzeten keresztül.
- A PICO-8 Lua programozási nyelvi megvalósítása alapvető programozási funkciókat, például változókat, függvényeket, ciklusokat és táblázatokat biztosít a fejlesztőknek.
- A felhasználók szükség esetén kódot is írhatnak egy külső szerkesztőben
A PICO-8 fejlesztés előnyei és hátrányai
Érvek
- A PICO-8 kicsi és könnyen telepíthető.
- A korlátok hatékony írásra kényszerítik a fejlesztőt.
- A programozási nyelv könnyen megtanulható
- A legtöbb PICO-8 játék nyílt forráskódú, így lehetőség nyílik tanulni a PICO-8 közösségtől.
Hátrányok
- 2D játékfejlesztésre korlátozódik
- A PICO-8 játéka jelenleg 15 dollárba kerül
- A könyvtárak hiánya azt jelenti, hogy az alapvető funkciókat a semmiből kell kódolnia
- A kódkiegészítés és az automatikus behúzás hiánya
Mintaprogram készítése
Ebben a részben áttekintjük, mit fog tapasztalni a felhasználó, amikor létrehozza első játékát.
Miután telepítette a játékot a választott operációs rendszerre, a PICO-8 program megnyitása olyan egyszerű, mint a PICO-8 parancsikonra kattintva.
A felhasználót egy rövid animáció, majd a PICO-8 konzol képernyője köszönti.
típus PRINT(“HELLOWORLD”)
lépjen be a konzolba, és nyomja meg az Enter billentyűt. Gratulálunk, most végrehajtotta az első PICO-8 programját.
Kezdjük el egy új projekt létrehozását. A konzolon írja be a parancsot SAVE <program_name>
.
Projekt megnyitásához írja be LOAD <PROJECT_NAME>.p8
Nyomja meg az Esc billentyűt a PICO-8 kódszerkesztőbe való belépéshez. A jobb alsó sarokban nyomon követheti, hogy hány tokent kell felhasználnia a kódban.
A PICO-8 támogatja a változók használatát.
A felhasználók olyan függvényeket is meghatározhatnak, amelyeket a programban máshol is meghívhatnak.
A PICO-8 támogatja a táblázatok használatát is. A Lua-t ismerő fejlesztők emlékezhetnek arra, hogy a táblák az egyetlen adattároló, amely elérhető a Lua programozási nyelvben.
A PICO-8 tartalmaz egy beépített játékhurkot, amely másodpercenként 30-szor fut. Az _update() és a _draw() függvény is szükséges a ciklus végrehajtásához.
A PICO-8 beépített sprite szerkesztője segít megtervezni a játékon belüli sprite-eid és a háttér művészetét. A szerkesztő lehetővé teszi a felhasználó számára, hogy animációs ciklusokat állítson be minden egyes eszközéhez.
A konzolban a játék betöltése után beírhatjuk a RUN parancsot a program egy példányának elindításához.
Csak egy keveset foglalkoztunk azzal, ami a PICO-8-ban lehetséges. Nagyon ajánlom böngészni a hivatalos dokumentumok és a közösségi wiki hogy többet tudjon meg a motorról.
Azt is javaslom, hogy nézzen át PICO-ATE, az alapvető útmutatók és források központja, amelyet Andrew Reist fejlesztő állított össze.
Következtetés
A PICO-8 konzolon való játékírást a haiku írásához tudom kapcsolni. A haiku szigorú szerkezete kihívást jelent a költő számára, hogy három sorban és tizenhét szótagban közvetítsen egy fogalmat. Hasonlóképpen, a PICO-8 kihívást jelent a fejlesztő számára, hogy korlátozott számú kóddal, grafikával és hanggal rendelkező élményt teremtsen.
Lehet, hogy a PICO-8 nem alkalmas a legújabb tripla A címek létrehozására, de soha nem erre készült.
A motor nagyszerű lehetőséget ad a kezdő fejlesztőknek, hogy felfedezzék a játéktervezés és -fejlesztés kihívásait. A PICO-8 elég egyszerű ahhoz, hogy a játékfejlesztésben teljesen újoncok is elkezdhessék használni.
De a közösség által készített játékok között böngészve azt tapasztaltam, hogy a PICO-8 a tapasztalt játékfejlesztők számára is lehetőséget kínál arra, hogy megmérettessenek magukkal.
Szeretné kipróbálni a PICO-8-at?
Hagy egy Válaszol