Pokud nemá hra hned na první pohled uživatele odradit, musí mít solidní vzhled, bez pěkné grafiky se sebegeniálnější hra bude těžko prosazovat. Vylepšení grafiky naší rozpracované plošinovky je také úkolem této lekce. Mohla by dopadnout alespoň jako v ukázce, i když by samozřejmě bylo lepší, kdybyste vytvořili hezčí:-)

Plošinovka - grafika hráče

Nejprve se zaměříme na hráče, na kterého se v plošinovkách zpravidla díváme z boku, to znamená, že je potřeba mít alespoň dva různé obrázky - jeden pro pohyb doleva a druhý pro pohyb doprava. Pokud si připravíte (nakreslíte, stáhnete) jeden z těchto dvou obrázků, potom můžete tento sprite duplikovat (pravým tlačítkem na sprite, nabídka Duplicate) a v editaci využít nabídku Transform - Miror/Flip... pro vodorovné překlopení obrázku.
Připravené sprity použijeme pro doplnění událostí pro levé (resp. pravé tlačítko) myši objektu hráče. Před ostatní akce přidáme akci Change sprite (záložka main1) pro výměnu spritu:



Ve volbách pro tuto akci vybereme sprite, který se má zobrazit. Další dvě volby mají význam jen pro animované sprity, které se skládají z více obrázků (to jsou ale ty zajímavější). Ve volbě subimage můžete zvolit číslo "podobrázku", který se má při události zobrazit, pokud použijete hodnotu -1, použije se stejný jako byl zobrazený před událostí. Volba speed určuje rychlost animace, nejčastější bude hodnota 1, je-li hodnota větší než 1, potom se některé "podobrázky" animace přeskočí, je-li menší než 1, zobrazí se některé "podobrázky" déle než jeden krok, záporné hodnoty význam nemají.

Dalším důležitým nastavením jednotlivých spritů (především pro hráče) je volba tzv. masky, která určuje oblast pro kolizi s dalšími objekty. K úpravě masky slouží nabídka Modify mask v okně otevřeného spritu. Úprava masky, obzvláště pro obrázky, které nevyplňují celou oblast zvolené velikosti, potom může vypadat například takto:


V pokročilejších hrách se používají animované sprity, navíc různé například pro skákání, padání, střelbu nebo když se hráč nepohybuje a podobně. U každého spritu je potom potřeba zkontrolovat vlastnosti masky. Většinou je vhodnější volit obdélníkovou masku (Rectangle - viz obrázek), jinak se například může hráč "zachytit" o plošinku nějakou "vystouplou" částí obrázku (kšiltem čepice apod.).


Plošinovka - grafika pozadí

Běžné pozadí hry jsme vytvářeli už od druhé lekce, ať už jako jeden obrázek o velikosti místnosti nebo jako dlaždici, která se po místnosti "rozmnožila":-)
Další možností pro vylepšením grafického pozadí je využití tzv. dlaždic. Představte si, že chceme mít ve své plošinovce třeba "travnaté" plošinky, stromy, kameny a další grafické prvky. Mohli bychom vytvářet objekty daných tvarů, ale potřebovali bychom jich mnoho, což by bylo pracné, navíc načítání vlastností nebo událostí většího množství objektů zpomaluje hru. Pro tyto účely je lepší připravit si sadu (nebo sady) dlaždic, což je obrázek s potřebnými grafickými prvky, které se potom z této sady vkládají do místnosti podobně jako objekty. Jsou to ale jenom obrázky, takže nemají žádné vlastnosti, nereagují na žádné události.
Do ukázky jsem použil tuto sadu dlaždic ze stránek zdrojů pro Game Maker od různých autorů:

Obrázek s dlaždicemi přidáte do svého projektu stejně jako nové pozadí, můžete načíst propoprvé například dlaždice ze složek programu (Backgrounds - Tilesets), na rozdíl od běžného pozadí ale zatrhněte nabídku Use as tile set (použít jako sadu dlaždic). Je možné měnit velikost dlaždic, jejich posunutí nebo rozestupy, většinou ale budou vyhovovat přednastavené hodnoty (16x16, a samé nuly).




Nyní už bude sada dlaždic k dispozici při tvorbě místnosti na záložce tiles. Levým tlačítkem myši spolu se Shiftem můžete v obrázku s dlaždicemi vybrat libovolnou část a potom kliknutím levým tlačítkem do místnosti ji vložíte podobně jako objekt. Stejně jako objekt dlaždici smažete pravým tlačítkem, nebo souvislou oblast vyplníte se Shiftem.
Ovšem, jak už bylo řečeno, jde jen o obrázky, které na nic nereagují, takže co s nimi, když chceme kus trávy použít na plošinu? Prostě vložíme obrázky na objekt zeď (či plošina), ale protože bude objekt ve hře stále vidět, je potřeba ho zneviditelnit, takže objektům typu zeď, plošina odtrhneme volbu Visible. Ve hře potom tyto objekty nebudou vidět, přesto budou reagovat jako viditelné. V návrhu místnosti ale stále vidět jsou a nejsou dobře vidět dlaždice, můžeme si pomoci nabídkou Show objects, která je v hlavní nabídce okna editoru místností:



Jiná možnost by byla upravit sprity pro tyto objekty, aby to byly například jen obrysy s průhlednou výplní. Je možné také přidávat další vrstvy s dlaždicemi, jejich pořadí (která přikryje ostatní) je určené číslem, to je možné využít například pro dosažení prostorového efektu.
Mohl by také nastat problém, že bychom chtěli použít drobnější obrázky, menší než původní objekt zeď, potom vytvoříme nové menší objekty (můžeme opět využít nabídky Duplicate).


Úkoly:

Vylepšete grafiku plošinovky - obrázek pro hráče i pozadí.