Game Maker Language

Из Википедије, слободне енциклопедије
Game Maker Language

Izgovara se: dži-em-el
Model: skriptni interpretirani
Pojavio se: 1999.
Autor(i): Mark Overmars
Dizajner(i): YoyoGames korporacija
Uticaji: Delphi, C++, JavaScript
Operativni sistemi: Microsoft Windows, Mac OS X
Dokumentacija: link

GML (engl. Game Maker Language) je primarni skriptni jezik koji je interpretiran (slično kao Javin JIT kompajler), a koristi se pri radu sa Game Maker i Game Maker: Studio okruženjima za razvoj video igara. Sintaksa GML-a je preuzeta od jezika kao što su Delphi, C++ i JavaScript, međutim, objektno-orijentisano programiranje nije potpuno podržano već postoji mogućnost da jedan objekat ima samo jedan roditeljski objekat (jednostruko nasleđivanje), ali zato roditeljski objekti mogu imati svoje roditeljske objekte. Postoje samo dva tipa promenljivih, a to su binarno bezbedni stringovi i realne vrednosti. Originalno, GML je baziran da podrži povuci i pusti (eng. drag & drop) sistem proširivanjem funkcija za naprednije korisnike.

Podržana je 2D i delimično 3D grafika,[1] a ne postoji mogućnost odabira interfejsa za renderovanje. Pod Vindousom je to Direct3D od verzije 6.0, a OpenGL od verzije 7 za ostale platforme. Uz razne biblioteke i dinamičke linkovane biblioteke (DLL) omogućena je podrška za sokete i MySQL konektovanje.

Verzija 1.2 koristi LLVM pozadinski sistem za GML pod imenom Game Maker Language Compiler (GMLC). GMLC isprva prevodi kod u C++ koji se kasnije prevodi u mašinski kod preko Clang. Ovim se postižu bolje performanse u video igrama gde je akcenat na logici, ali ne i kod onih gde je bitnija grafika.

Zdravo svete[уреди]

show_message("Zdravo, svete!")

Promenljive[уреди]

var string, ime, godina;
ime = "Filip";
godina = 1;
godina += 62 + 1;
string = "Pozdrav " + ime + " ,ti imas " + godina + " godina.";

Petlje[уреди]

for(i = 0; i < 200; i+=5){
    show_message("Zdravo svete!")
}
var i, total;
i = 0;
total = 0;
repeat (10)
   {
   total += array[i];
   i += 1
   }
draw_text(32, 32, total);
while (!place_free(x, y))
   {
   x = random(room_width);
   y = random(room_height);
   }

Korišćenje[уреди]

GML se koristi unutar Game Maker razvojnog okruženja. Sadrži uobičajene i specijalne funkcije u zavisnosti od verzije razvojnog okruženja. Većina početnika ga retko koristi zbog toga što je do sada napravljeno dosta biblioteka sa akcijama koje skraćuju pisanje koda. Ipak, GML je dosta bolje rešenje za razvoj jer se njime postiže bolja kontrola parametara u igri i moguće je posvetiti se nekim naprednijim funkcijama dok je D&D sistem dosta skromniji po pitanju toga. Može se koristiti u dve varijante - dodavanjem koda kao akcije objektu ili u pisanju skripti za određene mogućnosti.

U standardnoj verziji Game Maker i Game Maker: Studio nude mogućnost kreiranja samostalnog izvršivog fajla za Windows. Postoje Game Maker: Studio moduli za distribuiranje igara na različite platforme koji se dodatno plaćaju uz profesionalnu verziju. Pri svakom pokretanju, interpreter izvršava GML komande.

Game Maker 8.1 - Sadržaj funkcija[уреди]

Game Maker 8.1 Lite

  • Funkcije kretanja i detekcije
  • Funkcije biranja i testiranja varijabli
  • Funkcije menjanja boje sprajta
  • Funkcije globalnih podešavanja (osnovnih)

Game Maker 8.1 Pro

Sve gore navedene opcije i još;

  • Podrška za 3D varijable i funkcije
  • Podrška za DLL-ove i dodatne ekstenzije
  • Podrška za multiplayer i server mod
  • Funkcije globalnih podešavanja (sva moguća)
  • Zumiranje
  • Blendiranje sprajtova
  • Specijalni elementi
  • Više ispitivanje varijabli