GameMaker - Efekt starého filmu
Script na efekt napodobující zrnění starých filmů.
Následující kód umístíte do Draw eventu například samostatného objektu (obj_old_movie) a ten pak umístíte do místnosti.
// deklarace dočasných proměnných
var xx, yy, old_color;
// uložíme si současnou barvu nastavenou pro vykreslování
old_color = draw_get_color();
// vykreslení zahnědlého obdélníku - lepší efekt
draw_set_alpha(0.2);
draw_set_color(make_color_rgb(145,94,0));
draw_rectangle(view_xview[0], view_yview[0], view_wview[0], view_hview[0], false);
draw_set_alpha(1);
// změníme barvu vykreslování na odstín šedi
draw_set_color(make_color_rgb(220,220,220));
// vykreslování zrnění a čar přes obrazovku - čím vyšší číslo opakování tím větší intenzita
for (i = 0; i < 30; i+=1)
{
// souřadnice určíme pomocí view - současná pozice view (vzhledem k současné pozici v místnosti, počítáno od levého rohu) + náhodně vygenerované číslo (min 0 max šířka view)
xx = view_xview[0] + random(view_wview[0]);
yy = view_yview[0] + random(view_hview[0]);
// vykreslení zrnění - trojúhelník o náhodných souřadnicích
draw_triangle(xx - random(3), yy - random(3), xx + random(3), yy + random(3), xx + random(5), yy + random(5), false);
// náhodně se vykreslující čára přes obrazovku
if (floor(random(150)) == 0)
draw_line_width(xx, view_yview[0], xx, view_yview[0] + view_hview[0], 1 + random(2))
}
// pro vykreslování se nastaví původní barva
draw_set_color(old_color);
Efekt můžete ještě obohatit o překreslení obrazovky dočasně na odstíny šedi: http://www.itnetwork.cz/…f32c1a56754f
Galerie

Stáhnout
Stažením následujícího souboru souhlasíš s licenčními podmínkami
Staženo 273x (13.22 kB)
Aplikace je včetně zdrojových kódů v jazyce GameMaker
Komentáře

Tým ITnetwork

Zobrazeno 5 zpráv z 5.