PROJEKT

Unreal mängusüsteemide arendus mängitavatele mänguprojektidele

Kohandatud mängusüsteemid, Unreal Engine'i arendus, C++ ja Blueprinti programmeerimine, Võitlus- ja tegelasesüsteemid, Animatsiooni integratsioon, Mitme mängijaga mänguloogika, Tasemedisain, Jõudluse häälestus

  • Valdkond: Mänguarendus
  • Poola Asukoht: Poola
  • Tarneaeg: 16 nädalat
  • Tehnoloogiad: C++, Unreal Engine
4+ kuud

See klient on Poolast pärit mänguarendusstuudio. Stuudio haldab Unreal Engine'i projekte ja vajab tuge prototüüpide muutmisel mängitavateks ja stabiilseteks mängukogemusteks. Tarkvara kasutab projektifaile, funktsiooninõudeid ja mänguvarasid. See pakub stuudiole ühes projektis modulaarset mängumehaanikat, tegelase- ja võitlussüsteeme, visuaalseid funktsioone ning mitme mängijaga režiimi konfiguratsiooni. Arendajad, disainerid ja tasemedisainerid kasutavad seda mänguprojektide täiustamiseks.

Kokkuvõte

Probleem

Stuudio kulutab aega Unreal-prototüüpide ja olemasolevate projektide muutmiseks stabiilseteks mängitavateks süsteemideks.

Lahendus

Lahendusest sai modulaarne Unreal Engine'i tööala mänguloogika, tegelaste ja mitme mängijaga funktsioonide jaoks.

Tulemus

Töö aitab muuta Unreal Engine'i prototüübid ja olemasolevad projektid mängitavateks ning stabiilseteks mängukogemusteks.

Kliendi lugu

Klient on Poolast pärit mänguarendusstuudio. See haldab ühe mängijaga Unreal Engine'i mänge ning arendab prototüüpidest või disainialustest RPG- ja ellujäämis-RPG-projekte.

Stuudio valmistab ka vertikaalseid lõike ja pakendatud väljalaskeid. Mängu arenedes peavad mehaanika, varad ja projektisüsteemid koos toimima.

Stuudio kulutab aega mänguloogika rakendamisele, kaadri- ja tick-vigade parandamisele, jõudluse häälestamisele ning tootmisjärkude ettevalmistamisele. Olemasolevad inventari-, hääle- ja animatsioonisüsteemid peavad uute funktsioonide lisamisel jääma kasutatavaks.

Soov oli Unreal Engine'i projektides mängufunktsioone C++, Blueprintide või skriptimise abil rakendada ja täiustada. Stuudio vajas ka tasemeid, tegelasi ja animatsioone ning mitme mängijaga funktsioone, nagu replikatsioon ja fuajeed.

Lahendus kujundati mängusüsteemide, võitluse, animatsiooni, füüsika, tasemete ja mitme mängijaga konfiguratsiooni moodulitena. Olemasolevad projektistruktuurid võisid jääda paika, samal ajal kui lisati uusi näitlejaid, komponente, alamsüsteeme ja varasid.

Klient soovis

  1. Rakendada ja täiustada mängufunktsioone ning -mehaanikat Unreal Engine'is.
  2. Kasutada modulaarsete mängusüsteemide jaoks C++, Blueprinte või skriptimist.
  3. Luua või integreerida tasemeid, tegelasi, relvi, võimeid, animatsioone ja varasid.
  4. Toetada replikatsiooni, autoriteeti, matšide leidmist, fuajeesid, mängunimekirju ja servereid.

Miks valmislahendus ei sobinud

Üldised mängumootorid pakuvad renderdamist, füüsikat, heli ja varade haldust, kuid ei määratle selle stuudio projekti spetsiifilisi mängusüsteeme. Valmismootorid ei ühenda ka stuudio mehaanikat, olemasolevaid süsteeme, mitme mängijaga režiimi vajadusi ja tootmistööd üheks kohandatud lahenduseks.

Projekti ülevaade

Lahendus kavandati stuudio olemasoleva Unreal Engine'i projekti ümber, mitte seda asendama. Põhitöökohas on ühendatud näitlejate ja komponentide seadistus, alamsüsteemide konfiguratsioon, sisend, UMG-liidesed ning mänguloogika rakendamise alad.

Modulaarse mänguloogika haldamiseks pakub projekt C++ ja Blueprinti rakendusalasid mehaanika, näitlejate ja alamsüsteemide jaoks. Tick-järjekorra ja kaadrivigade diagnostika aitab meeskonnal uurida mängitavat jõudlust mõjutavaid probleeme.

Tegelaste juhtimine ja võitlus on kaetud eraldi seadistuses. Liikumisväärtused, võitlusparameetrid ja vaenlastega suhtlus on ühendatud ülesannete, arengu, inventari ja salvestamisega.

Animatsiooni integratsiooni, Niagara efekte, materjale või HLSL-varjutajaid ning Chaose füüsikat hallatakse visuaalsete ja füüsiliste süsteemide alal. Tasemeid, kangelase valikut, fuajeesid, mängunimekirju ja turniire hallatakse taseme- ja mitme mängijaga režiimi konfiguratsioonialal.

Stuudio töötab selgete etappidena, pakkudes regulaarselt uuendusi ja eelvaateid. Moodulid lisatakse ükshaaval ning kooskõlastatakse kliendimeeskonnaga enne järgmise alustamist.

Peamised tarnitud funktsioonid

  • Modulaarsed mängusüsteemid C++ ja Blueprintidega
  • Näitlejate, komponentide ja alamsüsteemide seadistus
  • Tegelase liikumis- ja võitlussüsteemid
  • Ülesanded, dialoog, inventar, areng ja salvestamine
  • Animatsiooni ja Niagara efektide integratsioon
  • Chaose füüsikal põhinev mängumehaanika
  • Taseme ja keskkonna arendus
  • Mitme mängijaga fuajeed, mängunimekirjad ja turniirid
  • Tick-järjekorra ja kaadrivigade diagnostika

Lisatavad funktsioonid

+ Automaatne varade import + Kohandatud Blueprintid + Kasutajaliidese ühendused + Tegelase valik fuajees + Turniirifunktsioonid + XP haldus + C++ mooduli dokumentatsioon

Kes saavad seda lahendust veel kasutada

Nendel ettevõtetel on sarnane mänguloomise ülesanne ning sama lahendust saab nende projektidele kohandada.

RPG- ja ellujäämis-RPG-sid arendav stuudio

Ülesanne See muudab prototüübid ja disainialused tegelase- ja võitlussüsteemideks.
Kuidas lahendus aitab Lahendus korraldab mängumehaanika, salvestamise, inventari, animatsiooni, füüsika ja tasemed modulaarsetesse Unreal-projektialadesse.

Vertikaalset lõiku või pakendatud väljalaset ette valmistav mängumeeskond

Ülesanne See vajab projekti muutmist stabiilseks, integreeritud varadega järguks.
Kuidas lahendus aitab Lahendus ühendab mänguloogika rakendamise, tasemetöö, jõudlusdiagnostika, pakendamise toe ja dokumentatsiooni.

Mitme mängijaga Unreal-mängu laiendav stuudio

Ülesanne See vajab replitseeritud mänguloogikat, võrgustikuautoriteeti ja fuajee funktsioone.
Kuidas lahendus aitab Lahendus pakub mitme mängijaga konfiguratsiooni koos tegelasevaliku, turniiride ja põhiliste mängusüsteemidega.

Tehnoloogiakomplekt

C++

Mänguloogika programmeerimine

C++ rakendab Unreal-projektis modulaarseid mängusüsteeme, näitlejaid, komponente ja alamsüsteeme.

Unreal Engine

Mänguarenduse platvorm

Unreal Engine pakub mänguloogika, renderdamise, füüsika, heli ja varade halduse projektikeskkonda.

Blueprints

Visuaalne mänguloogika skriptimine

Blueprintid pakuvad visuaalset viisi modulaarsete mängusüsteemide loomiseks ja täiustamiseks.

Niagara

Efektid ja osakesed

Niagara toetab animatsiooni ja mängusüsteemidega kasutatavaid visuaalseid efekte.

Chaos physics

Füüsikal põhinev mänguloogika

Chaos Physics haldab füüsikalist mängukäitumist ja füüsikaomadusi.

HLSL shaders

Materjalide ja varjutajate töö

Materjalid või HLSL-varjutajad juhivad visuaalset pinda ja renderduskäitumist.

Git

Versioonihaldus

Git salvestab Unreal-projekti muudatusi ja jälgib neid.

PDF and Markdown

Projekti dokumentatsioon

PDF ja Markdown sisaldavad projekti moodulite ning nende kasutamise dokumentatsiooni.

Integratsioonid

Unreal Engine project

Lahendus laiendab olemasolevat Unreal Engine'i projekti mängusüsteemide, varade, tasemete ja mitme mängijaga konfiguratsiooniga.

Git

Projekt vahetab lähtekoodi ja projektimuudatusi Giti versioonihalduse kaudu.

Existing inventory, voice and animation systems

Uus mänguloogika integreerub olemasolevate inventari-, hääle- ja animatsioonisüsteemidega, mitte ei ehita neid uuesti.

Dedicated or listen servers

Mitme mängijaga konfiguratsioonid toetavad mängimist pühendatud või kuulamisserverites.

Tulemus

Selge tööala põhiliste mängusüsteemide jaoks

Mängusüsteemide tööala ühendab mehaanika, näitlejad, komponendid, alamsüsteemid ja sisendi. See annab stuudiole keskse koha funktsioonide rakendamiseks ja projekti käitumise uurimiseks.

Ekraan näitab ka tick-järjekorra ja kaadriinfot, aidates arendusmeeskonnal leida mängitavat jõudlust mõjutavaid probleeme.

Kuidas see töötab

  1. Tööala näitab mängufunktsioone, mehaanika parameetreid, sisendiseoseid, alamsüsteemide olekuid ja kaadriinfot.
  2. C++ ja Blueprinti rakendusalad korraldavad näitlejaid, komponente ja alamsüsteeme.
  3. Tööala esitab projekti tick-järjekorra ja kaadrivigade diagnostika.
  • Näitlejate ja komponentide seadistus
  • Sisendi ja UMG ühendused
  • Alamsüsteemide konfiguratsioon
Märkus: Tööala hoiab mänguloogika rakendamise modulaarsena, nii et hilisemaid funktsioone saab lisada kogu projekti ümber ehitamata.
Mängusüsteemide tööala

Mängusüsteemide tööala

Selle ekraani funktsioonid
Loo mängusüsteeme Lisa näitlejaid ja komponente Rakenda alamsüsteeme Halda sisendit ja UMG-d Paranda tick-järjekorra ja kaadri vigu Programmeerimine Blueprintides või C++-is

Ühendatud tegelase- ja võitlusloogika

Tegelase seadistus ühendab liikumise, võitlustegevused ja suhtluse vaenlastega arengu, ülesannete, inventari ja salvestamisega.

Disainerid saavad töötada liikumisväärtuste, võitlusparameetrite ja arenguolekutega, samal ajal kui projekt säilitab stuudio olemasoleva mänguloogika.

Kuidas see töötab

  1. Ekraan esitab liikumisväärtused, võitlusparameetrid, ülesannete ja arengu olekud ning inventari- ja salvestusandmed.
  2. Tegelase juhtimise ja võitluse tegevused korraldavad mängija liikumist ja suhtlust.
  3. Arengu ja salvestamise juhtnupud ühendavad tegelase edenemise inventari- ja salvestusandmetega.
  • Tegelase juhtimine
  • Võitlustegevused
  • Arengu ja salvestamise juhtnupud
Võitluse ja tegelase seadistus

Võitluse ja tegelase seadistus

Selle ekraani funktsioonid
Arenda võitlussüsteeme

Animatsioon ja füüsika ühes eelvaates

Animatsiooni ja füüsika eelvaade ühendab animatsiooni olekud, Niagara efektid, materjaliväärtused ja füüsikaomadused. See aitab stuudiol siduda visuaalse tagasiside füüsikalise mängukäitumisega.

Animatsiooni integratsioon ja Chaos Physics jäävad samasse Unreal-projekti koos mängus kasutatavate efekti- ja materjalijuhtnuppudega.

Kuidas see töötab

  1. Eelvaade näitab animatsiooni olekuid, efekti parameetreid, materjaliväärtusi ja füüsikaomadusi.
  2. Eelvaade näitab efekti parameetreid koos animatsiooni- ja materjaliväärtustega.
  3. Chaos Physics haldab seadistatud füüsikalist mängukäitumist.
  • Animatsiooni eelvaateala
  • Niagara efekti juhtnupud
  • Materjali või varjutaja eelvaade
  • Chaos Physicsi seaded
Nõuanne: Visuaalseid efekte, materjale ja füüsikat vaadatakse koos animatsioonikäitumisega, et mängu tagasiside jääks seotuks.
Animatsiooni ja füüsika eelvaade

Animatsiooni ja füüsika eelvaade

Selle ekraani funktsioonid
Rakenda animatsioone Rakenda füüsikal põhinevat mängumehaanikat

Tasemed ja mitme mängijaga valikud jäävad ühendatuks

Taseme ja mitme mängijaga režiimi ekraan ühendab taseme paigutuse tegelasevaliku, fuajeed, mängunimekirjad ja turniirid. See annab tasemedisaineritele ühe koha projekti maailma ja mitme mängijaga konfiguratsiooni haldamiseks.

Samas alas on saadaval tegelased, fuajee liikmed ja võistlusseaded, toetades nii tasemetööd kui ka mitme mängijaga mängufunktsioone.

Kuidas see töötab

  1. Ekraan esitab taseme elemendid, saadaolevad tegelased, fuajee liikmed ning mängunimekirja ja turniiri seaded.
  2. Taseme paigutus korraldab mängumaailma ja selle elemendid.
  3. Fuajee, mängunimekirja ja turniiri juhtnupud konfigureerivad mitme mängijaga valikud.
  • Taseme paigutus
  • Kangelase valik
  • Fuajee seaded
  • Mängunimekirja ja turniiri juhtnupud
Taseme ja mitme mängijaga režiimi konfiguratsioon

Taseme ja mitme mängijaga režiimi konfiguratsioon

Selle ekraani funktsioonid
Disaini mängutasemeid Ehita tasemeid Lisa fuajee tegelasevalik Rakenda turniirifunktsioone

Mida lahendus pakub

Selle lahendusega saab stuudio:

  • Rakendada põhilist mängumehaanikat C++ ja Blueprintidega.
  • Ühendada tegelase juhtimise, võitluse, ülesanded, inventari ja salvestamise.
  • Integreerida animatsioone, Niagara efekte, materjale ja Chaose füüsikat.
  • Ehita tasemeid ning konfigureerida tegelasi, fuajeesid, mängunimekirju ja turniire.
  • Kontrollida arenduse ajal tick-järjekorra ja kaadriinfot.
  • Laiendada olemasolevaid Unreal-projekte nende väljakujunenud süsteeme asendamata.

Lõpptulemus

Lõppkokkuvõttes loodi lahendus stuudio toetamiseks teekonnal mänguloogika rakendamisest tasemete, animatsiooni, füüsika ja mitme mängijaga konfiguratsioonini.

KKK

Kas mõtlete sarnase süsteemi loomisele? Lugege allolevaid vastuseid, et näha, kuidas töö sobib olemasoleva Unreal-projekti, uue mängualuse või mitme mängijaga laiendusega.