Diskuze: Osvětlení

Ostatní jazyky GameMaker GameMaker Osvětlení

Avatar
Bambus64
Člen
Avatar
Bambus64:

Zdravím,
mám problém, dělám bludištovku a chtěl bych aby bylo kolem postavy zobrazené nějaké to malé okolí o kolo postavy jinak všude černo. Jako by postava s baterkou něco prozkoumavala a dosvítila by jen někam. Nic mě nenapada, díky :)

 
Odpovědět 11.10.2013 14:47
Avatar
Zdeněk Pavlátka
Tým ITnetwork
Avatar
Odpovídá na Bambus64
Zdeněk Pavlátka:
  1. S jakou verzí gamemakeru pracuješ?
  2. Máš plnou verzi?
Nahoru Odpovědět 11.10.2013 15:20
Kolik jazyků umíš, tolikrát jsi programátor.
Avatar
Zdeněk Pavlátka
Tým ITnetwork
Avatar
Zdeněk Pavlátka:

Tak to bude nejlepší řešit to přes surfaces
http://www.itnetwork.cz/…moci-surface

Editováno 11.10.2013 16:05
Nahoru Odpovědět 11.10.2013 16:04
Kolik jazyků umíš, tolikrát jsi programátor.
Avatar
Zdeněk Pavlátka
Tým ITnetwork
Avatar
Odpovídá na Bambus64
Zdeněk Pavlátka:

Vytvoříš si surface, v každém stepu ho obarvíš na černo a nakreslíš do něj sprite světla. Pak ho vykreslíš pomocí

draw_set_blend_mode(/*typ vykreslení - myslím že bm_src_color*/);
//vykreslení surface
draw_set_blend_mode(bm_normal)
Nahoru Odpovědět 11.10.2013 16:08
Kolik jazyků umíš, tolikrát jsi programátor.
Avatar
Bambus64
Člen
Avatar
Odpovídá na Zdeněk Pavlátka
Bambus64:

Pokoušel jsem se to dělat přes tvůj návod a vyšlo to. Ale je to moc težké a mnohem lepší je když uděláš obrázek který je 3x násobem rozlišením hry a uprostřed transparent a bude se pohybovat jako postava pomocí první ikonky :D

Mě to alespoˇˇn vyšlo

 
Nahoru Odpovědět 12.10.2013 11:09
Avatar
Zdeněk Pavlátka
Tým ITnetwork
Avatar
Odpovídá na Bambus64
Zdeněk Pavlátka:

To funguje jen, když je světlo jen jedno. Kdy jich budeš chtít víc, musíš použít surface. (třeba v příští hře, s "povrchy" je dobré umět pracovat)

Nahoru Odpovědět 12.10.2013 11:13
Kolik jazyků umíš, tolikrát jsi programátor.
Avatar
Bambus64
Člen
Avatar
 
Nahoru Odpovědět 12.10.2013 11:15
Avatar
Bambus64
Člen
Avatar
Bambus64:

Ale musí se s tím pořádně vyhrát pokud je to skákačka :D

 
Nahoru Odpovědět 12.10.2013 11:16
Avatar
TomBen
Redaktor
Avatar
Odpovídá na Bambus64
TomBen:

Je jasné, že výsledek se dá dosáhnout všelijak
a pokud postup odpovídá účelu, je to ok.

Narozdíl od obrázku ale můžeš surface měnit za běhu a máš
víc pod kontrolou, jak bude vypadat výsledek. Surface
nepotřebuješ mít větší než okno a proto bude při velkých
rozlišeních rychlejší a ušetří ti loading - čekání. To
oceníš při ladění chyb. Čekat půl minuty, abys uviděl
chybovou hlášku, že objekt ten_a_ten jsi zapomněl kliknout,
dokáže otrávit i sebeodolnějšího tvora. A samosebou
použití surfaces snižuje velikost celé hry.
Skutečně je těžší se surfaces pracovat, ale když to
nacpeš pěkně předem do skriptu, tak potom jen
napíšeš něco jako vykresli() a je to. :-)

Nahoru Odpovědět 12.10.2013 15:19
Za posledních 200 miliónů let se nic zvláštního nestalo, akorát dinosauři vymřeli a opice se naučily programovat.
Avatar
Zdeněk Pavlátka
Tým ITnetwork
Avatar
Odpovídá na TomBen
Zdeněk Pavlátka:

Jen se přes surfaces nesmí dělat moc věcí najednou, GM8 to pak rychlostně nezvládá. :D GM Studio s tím potíže nemá. Návíc je u plné verze překrásný tutoriál - obsahuje světla i tvoření efektů jako je tlaková vlna(shockwave) u explozí...

Nahoru Odpovědět  +1 12.10.2013 16:31
Kolik jazyků umíš, tolikrát jsi programátor.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 12 zpráv z 12.