Echo Weaver: Dizajniranje metroidvanije s vremenskim petljom u Unity 6

  • PublicPublic
  • 09 Oct, 2026
Echo Weaver: Dizajniranje metroidvanije s vremenskim petljom u Unity 6

Echo Weaver, nova metroidvania od Moonlight Kids i Akupara Games, izlazi na PC i konzole s jedinstvenom filozofijom dizajna koja se temelji na vremenskoj petlji. Troje razvijatelja prvotno je zamislilo projekt kako bi izbjegli notorno sustav spremanja stanja, koji je uzrokovao probleme u njihovoj prethodnoj igri The Wild at Heart. Premisa je bila jednostavna: ako se vrijeme resetira, nije potrebno ništa spremiti. Međutim, besprijekoran i međusobno povezan svijet igre zahtijeva stalno učitavanje i isčitavanje dijelova mape, što znači da sustav mora održavati perzistentnost događaja poput srušenih zidova ili interakcija s NPC-ovima dok se petlja ne ponovno pokrene. Tim je na kraju implementirao puni sustav spremanja, ali je utvrdio da mehanika vremenske petlje ublažava frustraciju zbog gubitka podataka, jer igrači uvijek mogu resetirati ciklus ako dođe do greške.

Igra nema ograničenja po sposobnostima; svijet je potpuno otvoren od samog početka, a napredak ovisi o znanju igrača. Ovaj pristup "detektiva prostornog parkura" znači da igrači mogu slučajno naići na bilo koju sposobnost u bilo kojem trenutku, što stvara složeni izazov za dizajn razina. Kako bi se nosili s tim, tim je uspostavio narativno pravilo: protagonist, Weaver, zadržava uspomene između petlji. To omogućuje igri da prati otključano znanje bez narušavanja uranjanja. Ključna dizajnerska ustupka pronađena tijekom playtestova bila je ta da su skrivene zone izvorno otkrivane samo privremeno, ali je tim trajno zatamnio prednji plan umjetnosti u često posjećivanim mjestima kako bi pomogao igračima da zapamte pronađene prečace, jer standardni alat metroidvanija, jednosmjerni zidovi, nije učinkovit u svijetu koji se resetira.

Za veće prečice koje se ne mogu riješiti u okviru jedne petlje, tim se oslanja na vizualno skrivanje: prolazi se skrivaju iza prednjeg plana na jednom kraju i postavljaju u prednji plan na drugom. Sat igre je centralni sustav, uvijek vidljiv, i počinje s jednom minutom po petlji. Igrači skupljaju kristale vremena kako bi produljili to trajanje ili ih žrtvuju za liječenje. Rane verzije koristile su tajmer s preciznošću do sekunde, ali testeri su prijavljivali visoku razinu stresa. Konačni HUD prikazuje minutne odjeljke nazvane "zvonima", što je u skladu s mehanikom tajminga igre i omogućuje igračima stvaranje optimiziranih "sekveneci pokretanja" kako bi brzo akumulirali vrijeme.

Tehnička arhitektura, koju vodi programer Ankit Trivedi, dijeli igrački svijet u chunkove s vlastitim procesom izgradnje koji uklanja skup sadržaj. Teški, nepromjenjivi sloj geometrije svijeta peče se u scene i ostaje trajno učitavan, dok lagana scena "osnovnog" sadrži promjenjivo stanje, poput menadžera igre i podataka igrača. Pri resetu petlje igra ispunjava aktivne chunkove, odbacuje scenu "osnovnog" i ponovno je učitava, streamajući natrag samo potrebne chunkove za početnu sekvencu. Stanje specifično za trenutnu partiju pohranjuje se u rječniku string ključeva u radnoj memoriji, koji se briše pri resetu, dok se perzistentni podaci, poput broja petlji i viđenih sposobnosti, serializiraju na disk. Ovaj pristup "baciti i ponoviti" osigurava čisto upravljanje stanjem bez značajnog utjecaja na performanse.

Optimizacija performansi bila je ključna zbog gustog stila ručno crtane grafike. Tim je otkrio da uključivanje kompresije za atlase tekstura smanjuje korištenje memorije na oko 1 GB. Za obradu učitavanja, dekorativni asseti se uklanjaju iz chunkova tijekom izgradnje i asinkrono se ponovno instanciraju u malim serijama kako bi se spriječile zastoji glavnog niti. Vlastiti alat izravnava grupe spriteova u pojedinačne slike kako bi se smanjio broj poziva iscrtavanja, posebno za složene pozadine poput neba. Osvjetljenje je također optimizirano spajanjem šest zasebnih slojeva svjetla u tri, što značajno smanjuje troškove iscrtavanja uz zadržavanje vizualne kvalitete. Efekti vode, koji koriste Game2D Water Kit, prilagođeni su za hardver niže razine razdvajanjem efekata perspektive od refrakcije kako bi se izbjeglo skuplje ponovno iscrtavanje kamere.

Razvoj je prešao s Unity 2021 na Unity 6, a tim je istaknuo specifične funkcije koje su poboljšale njihov radni tok. Chris Sumsky napomenuo je da su ugniježđeni prefabs i način uređivanja bili presudni za upravljanje složenim scenama. Ankit Trivedi naglasio je korisnost Composite Collider 2D i nativnog Unity poola objekata, što je timu omogućilo da odustane od vlastitog poola objekata napisanog za njihovu prethodnu igru. Korištenje Unity Frame Debuggera bilo je ključno za otkrivanje prekida batchanja, što je timu omogućilo da unificira materijale i konvertira spriteove kako bi maksimizirao performanse. Tim savjetuje drugim developerima da slobodno koriste Frame Debugger od početka projekta kako bi rano otkrili i ispravili neefikasnosti iscrtavanja.