Kuidas oma mängu luua

Anonim

Kuidas luua mäng

Mõned kasutajad, kes on huvitatud arvutimängudest, tekivad mõnikord oma projekti loomisest. Siiski on nii lihtne seda mõista, sest üks idee ei piisa. Minimaalselt peate spetsiaalse tarkvara või võrguteenuse juhtima, kuid ideaalis on vaja varundada programmeerimiskeeli. Osana tänase artikli, me näitame kolm võimalikku meetodit, mis võimaldavad teil luua mängu ja sina, surudes välja materjali näinud, vaadata sobiv valik ja alustada õppimist.

Loo oma arvuti mäng

Allpool toodud juhised aitavad meil tegeleda ainult mängude loomise põhimõttega erinevate tööriistade abil, nad ei ole universaalsed või täielikud õppetunnid, millel on õppinud, mida saate saada professionaalseks arendajaks. Pakume neid kasutada tutvumisvahendina, mis tegeleb gameDevi järgneva koolituse juurde.

Soovitame ka pöörata tähelepanu asjaolule, et lisateave keskendub arvutimängudele. Kui teil on soov teha mobiilseid projekte, soovitame teil tutvuda teiste meie veebisaidi materjaliga, klõpsates allpool toodud viidet.

Loe lisaks: kuidas luua mängu Android

1. meetod: mängude loomise programmid

Esiteks kaaluge eriprogramme, mis võimaldavad teil luua projekti ilma programmeerimisoskusteta. Täna keskendume tuntud versioonile. Mängu tegija on üks lihtsamaid ja populaarsemaid programme 2D-mängude loomiseks. Siin on saadaval luua mänge drag'n'dropi liidese abil või kasutades sisseehitatud GML-i keelt (me töötame sellega). Mäng Maicker on parim valik neile, kes hakkavad lihtsalt mängude arendama.

  1. Minge vahekaardile "Uus" ja looge uus projekt.
  2. Uue projekti loomine mängutootja programmis

  3. Loo spriit. Paremklõpsake lõiku "sprites" ja seejärel "Loo sprite".
  4. Uue sprite loomine mängude tegija mängimiseks

  5. Me küsime temalt nime, lase tal olla mängija ja klõpsake "Edit Spriit". Akna avaneb, kus me saame muuta või luua sprite. Looge uus spriit, me ei muuda suurust.
  6. Redigeerimine valmis sprite mängu mängu tegija jaoks

  7. Kaks korda klõpsa uue pihusti. Avatud toimetajal ilmub võime juhtida sprites. Praegu me joonistame mängija, nimelt tank. Hoidke meie joonistus.
  8. Objekti loomine mängu tegija mängimiseks

  9. Meie paagi animatsioonimine, kopeerimise ja kleebi animatsioon Ctrl + C ja Ctrl + V kombinatsioonidega ning joonistage selle teise positsiooni Caterpillars. Lubatud teha nii palju koopiaid kui vajate seda vajalikuks. Mida rohkem pilte, seda huvitavam animatsioon.
  10. Mängu tegija mängimise objekti animatsioon

  11. Võite panna märk vastas objekti eelvaate. Näete loodud animatsiooni ja saate muuta raami muutuste kiirust. Me salvestame pildi ja keskme selle nupuga "Center". Meie iseloom on valmis.
  12. Paagi salvestamine mängude tegija mängimiseks

  13. Samamoodi peame looma veel kolm spriidi: vaenlane, seina ja kest. Helistame neile vaenlase, seina ja kuuli.
  14. Uute sprite loomine mängu tegija mängimiseks

  15. Nüüd peate objektide loomiseks luua. Vahekaardil asuvatel objektidel vajutage hiire paremat nuppu ja valige "Loo objekt". Loo objekt iga sprite: ob_player, ob_eeny, ob_wall, ob_bullet.
  16. Seinaobjekti loomisel märkige ruut objekti ees "Tahke" . See teeb tahke seina ja tankid ei suuda seda läbi viia.

    Mine mängu tegija programmi objekti haldamiseks

  17. Mine kompleksi. Avage OB_Playeri objekt ja minge vahekaardi juhtivale kontrollile. Loo uus sündmus nupuga "Lisa sündmus" ja valige "Loo". Paremklõpsake käivitamise koodi elemendil.
  18. Uue objekti kontrolleri loomine mängutootja programmis

  19. Avanes aknas, peate registreerima, milliseid meetmeid meie tank läbi viia. Dial need read:

    HP = 10;

    dmg_time = 0;

  20. Loo sündmuse "samm" ja samal viisil samamoodi IT-koodi jaoks:

    Image_anlang = point_diirction (x, y, hiir_x, hiir_y);

    Kui klaviatuur_check (ORD ('w')) {y- = 3};

    Kui klaviatuur_check (ORD ('s')) {Y + = 3};

    Kui klaviatuur_check (ORD ('a')) {x- = 3};

    Kui klaviatuur_check (ORD (d ')) {x + = 3};

    Kui klaviatuur_check_Relens (ORD ('w')) {Speed ​​= 0;}

    Kui klaviatuur_check_Relens (ORD (')) {Speed ​​= 0;}

    Kui klaviatuur_check_Relens (ORD ('A')) {Speed ​​= 0;}

    Kui klaviatuur_check_Relens (ORD ('d')) {Speed ​​= 0;}

    Kui hiir_check_button_prested (MB_LEFT)

    {

    Eksemplari (x, y, ob_bullet) {kiirus = 30; Suund = point_diirction (ob_player.x, ob_player.y, hiir_x, hiir_y);}

    }

  21. Sündmuste loomine mängu tegija mängimiseks

  22. Lisa sündmus "kokkupõrge" - kokkupõrge seinaga. Kood:

    X = XPrevius;

    y = ygravious;

  23. Ja lisage ka kokkupõrge vaenlase:

    Kui dmg_time

    {

    HP- = 1.

    dmg_time = 5;

    }

    DMG_TIME - = 1;

  24. Sündmus "Joonista":

    joonistage_self ();

    draw_text (50.10, string (HP));

  25. Lisa "Samm" - "Lõppsamm":

    Kui HP.

    {

    Show_Message ("mäng on lõppenud")

    Room_restart ();

    };

    Kui eksemplar_Number (ob_enemy) = 0

    {

    Show_Message ("Victory!")

    Room_restart ();

    }

  26. Menüü Mänguüritustega mängu tegija programmis

  27. Kui olete mängijaga lõppenud, mine OB_EMY objektile. Lisa sündmus "Loo":

    R = 50;

    Suund = valida (0,90,180,270);

    Kiirus = 2;

    HP = 60;

  28. Lisa "Samm" liikumiseks:

    Kui kaugus_to_object (ob_player)

    {

    Suund = point_diirction (x, y, ob_player.x, ob_player.y)

    Kiirus = 2;

    }

    Muidu.

    {

    Kui R.

    {

    Suund = valige (0,90,180,270)

    Kiirus = 1;

    R = 50;

    }

    }

    Image_anlang = suund;

    R- = 1;

  29. "Lõppsamm":

    Kui HP.

  30. Sündmuse loomine "Hävita", minge vahekaardile "Dracket" ja teises elemendis klõpsake plahvatuse ikooni. Nüüd, kui vaenlase tapmine on plahvatuse animatsioon.
  31. Loomine hävitamise efekti mängu tegija programmi

  32. Üritus "kokkupõrge - kokkupõrge seinaga":

    Suund = - suund;

    Sündmuse "kokkupõrge - kokkupõrge mürsk":

    HP- = IRANDOM_RANGE (10.25)

  33. Kokkupõrke mõju loomine mängutootja programmis

  34. Kuna me ei täida seina, minge Ob_Bullet objektile. Lisa kokkupõrke "Kokkupõrke vaenlase" (ob_enemy):

    eksemplari_destroy ();

    Ja "kokkupõrge seinaga" (ob_wall) täpselt sama koodiga:

    eksemplari_destroy ();

  35. Kokkupõrke mõju mängu tegija seinaga

  36. Lõpuks luua tase "tase 1". Klõpsake paremal nuppu "Room"> "Loo tuba". Lügime pöörduda vahekaardi objektide ja "seina" objekti poole, joonistage tasemekaart. Seejärel lisage üks mängija ja mitu vaenlast. Tase on valmis!
  37. Mänguruumi loomine mängutootja programmis

  38. Nüüd on meil mängu käivitamine ja selle testimine. Kui järgite juhiseid, ei tohiks olla vigu.
  39. Valmis mängu testimine programmi mängu tegija

Me vaatasime mängu tegija ainult lihtsaim näide, kuid nüüd kasutajad on kättesaadavad palju kõige mitmekesisemad sarnasemad rakendused luua mänge teadmata Yap. Seetõttu avab kasutaja laia valikut sobivat vahendit.

Nagu näete, ei ole mängu loomises midagi keeruline mängu kaudu. Kasutajalt on vaja ainult skriptide tegeleda, mis ehk on selle meetodi kõige raskem osa. Vastasel juhul jääb see ainult loovuse näitamiseks ja fantaasia kasutamiseks, et saada hea ja mängitav toode ilma programmeerimisoskusi kasutamata. Lisaks võimaldab selle veebiressursside funktsionaalsus teil töötada paljude žanritega ja alustada ka töötamist täielikult puhta lehega.

Nagu juba varem mainitud, on sellised gameFROOT-teenused palju, nad kõik töötavad sama põhimõttega. Siiski saate vaevalt leida saidi vene lokaliseerimisega, nii et peate inglise keele liidese keele juhtima.

3. meetod: Arenduskeskkond ja programmeerimiskeel

Me lähenesime kõige raskemaks, kuid samal ajal on huvitav võimalus kasutada programmeerimiskeelt oma mängu kirjutamise vahendina. Kohe, me tahame märkida, et nüüd me ei paku ainsamat universaalset juhendit, mis aitavad tegeleda kõigi aspektide lahendamisega, kuna see materjal on ebarealistlik. Vastutasuks anname juhtivaid materjale neile, kes on huvitatud õppimisest ja nende identiteedi edasiarendamisest GameDevi valdkonnas.

Näiteks võtke kuulsad miljoneid minecraft mängu. Muidugi, see on üsna lihtne, kuid samal ajal näitab, et isegi üks inimene saab luua projekti nullist iseseisvalt, mis muutub populaarseks kogu maailma kogukonnas. See rakendus algselt kirjutati Java-keeles ja Marcus Persson (Notch) töötas tema üle. Sellest väljub see, et peaaegu iga kasutaja, kes alustas õppimist Java, suudab saavutada vähemalt vähe ligikaudset tulemust, kirjutades oma projekti. Kuid selleks peavad selle töötama üsna vähe. Ülikoolides on spetsiaalsed teaduskonnad, koolituse põhitõdesid programmeerimise, kuid mitte igaüks ei taha esitada ülikooli, seetõttu pöörama rohkem tähelepanu tasustatud kursustele või vaba materjalidele, õpikutele. Kõiki neid ei ole loetletud, näitame ainult ühe tuntud teenused algajatele nimetatakse Javarush.

Azami koolitus Programmeerimine Javarushi veebisaidil

Kogu kursus põhineb praktilistel klassidel, millel on üksikasjalik ja arusaadav selgitus. Esimesed õppetunnid on saadaval tasuta, et kasutaja saaks aru, kas jätkata sellisele õppimisele. Orientatsioon siin läheb neile kasutajatele, kes ei ole kunagi kodeerivaid ja selgitusi, illustratsioone ja söötmismaterjali eriti huvitavad noorukitest. Siiski on see teenus ja miinuseid, mille hulgas on õppetundide tihedus ja tohutu sama materjali korduste arv väga esile tõstetud, mis algab tüütu tulevikus. Püüdke tutvuda ja minna läbi õppetunnid Javarushis kasutades allolevat linki.

Mine õppimise Javarush

Lihtsaid rakendusi saab luua nendes keeltes, mis on kergem õppida. Näiteks Python arendab üsna kiiresti piisavalt kiiresti ja paljud vabad töökohad ilmuvad pythoni arendajate turul. Allolev ekraanipilt näete tuntud rakenduse "madu" kirjeldava koodi peaaegu täielikku fragmenti.

Mängu madu lähtekoodi välimus Pythonis

Nüüd vaata seda, mida see mäng vaatab ekraanipildi järgmisel. See tulemus on võimalik saavutada kahe nädala uuringuga, kuid selle jaoks peate tegema palju vaeva.

Simple Snake mäng Kirjutatud Python programmeerimine

AAA-klassi projektide puhul läbivad Java ja eriti Python oluliselt oma positsioone C ja C ++ ees. Enamik mängu mootoreid on kirjutatud nendele YAPidele. Need on mõeldud spetsiaalselt suurtele ettevõtetele või laenama sõltumatute tootjate poolt. Lisaks sellele osalevad mitmed programmeerimiskeeli sageli suurtes projektidesse, mis seab vajadusele programmeerijad neid kõiki uurida. Sellest selgub, et selle liikumise alustamine suurte projektide arendamise viis ei ole nii lihtne. Selleks peate kindlasti veebipõhiste kursuste jaoks registreeruma või kõrgema õppeasutuse sisestama. Kui olete sel juhul huvitatud, tutvuge ühe kuulsama kursusega Geekbrains'i mängude loomiseks allpool lingil.

Tutvuda Geekbrains'i mängude arendamise kursusega

Uuringu käigus peaks YAP hoolitsema arengukeskkonna eest, kui kood on kirjutatud. Selle lahendamiseks aitab meie eraldi materjali veelgi, kui seda kirjeldatakse üksikasjalikult erinevate keelte kõige populaarsemate ja kvaliteetsete IDEde kohta.

Loe edasi: valige programmeerimiskeskkond

Eespool olete tuttav arvutimängude loomise kolme erineva meetodiga. Nagu näete, erinevad need saadud toote keerukusest ja kvaliteedist. Seetõttu jääb teie jaoks valik - teha lihtsa projekti kiireks projektiks ilma programmeerimisoskusi kasutamata või minna läbi suure ja keerulise õppekava, saades võimaluse saada selles küsimuses professionaalseks.

Loe rohkem