Protsedural generatsiya, kompyuterlashtirishdan kelib chiqqan tushuncha, algoritmlar yordamida maʼlumotlarni yaratish usulidir. Bu shuni anglatadiki, dasturlash koʻrsatmalaridan va 'map seed' deb ataladigan sonli kodlarni qayta ishlash orqali elementlarni avtomatik va tasodifiy tarzda yaratish mumkin. Ushbu jarayon teksturalardan tortib murakkab uch oʻlchovli modellarigacha mahsulot berishi mumkin va u grafik hisoblashda keng qoʻllaniladi. Turli xil qoʻllanilishlariga qaramay, protsedural generatsiya video oʻyinlar ishlab chiqilayotgan davrida sezilarli darajada diqqatga sazovor boʻldi.
Oʻyinlarda protsedural generatsiya bosqichlar, xaritalar va dunyolarni yaratishni soddalashtirish maqsadida joriy etildi, bu esa inson aralashuvi minimallashtirilishini talab qiladi. Bunga erishish uchun, yaratilishi kerak boʻlgan kontent turiga qarab, maxsus algoritmlar va texnikalar qoʻllaniladi.
'Randomized graph traversal' (graflarni tasodifiy bosib oʻtish) koʻpincha zindanlar yoki tarmoqli xaritalarni yaratishda ishlatiladi, masalan, Slay the Spire va FTL: Faster Than Light kabi nomli oʻyinlarda koʻrinib turadi. Bu protsedura xonalarni va ularning bogʻlanishlarini tuzish uchun graflar — yaʼni matematik modellar — qurishni oʻz ichiga oladi, shu bilan birga minimal yoʻl, toʻsiqlar miqdori (masalan, eshiklar yoki boshqa toʻsiqlar, ularni ochish uchun maxsus buyumlar yoki koʻnikmalar talab qilinadi) va chaqmoq yoʻllar mavjudligi haqidagi oldindan belgilangan qoidalar qoʻllaniladi.
Umuman olganda, bu komponentlarning barchasi tayyor aktivlardan olinadi va keyinroq renderlanishi mumkin boʻlgan geometrik konfiguratsiyaga tartiblanadi. Buning bir misoli — tugunlar va bogʻlanishlar tuzilishini boshqa diagonallarga aylantirib, oʻyinlardagi zindanlarda kuzatiladiganidek, faqat gorizontal va vertikal bogʻlanishlarga ega boʻlgan yanada 'kvadrat' tuzilishga aylantirishdir.
Boshqa muhim algoritmlar orasida Perlin shovqini va Voronoi diagrammasi bor. Ushbu funksiyalar elementlar orasida silliq oʻtishlarni yaratish uchun javobgardir va tabiiy manzaralarni ifodalash uchun idealdir. Ushbu vositalarning eng keng tarqalgan qoʻllanilishlari yer yuzining balandligini oshirish, bulutlarning teksturasi va turli ekologik zonalar yoki yer turlarini ajratib koʻrsatishni oʻz ichiga oladi. Bunday resurslar Unity 3D va Unreal Engine kabi oʻyin ishlab chiqish dvigatellarida juda keng tarqalgan.
'Weighted random selection' (ogʻirlik bilan tasodifiy tanlash) yana bir juda koʻp ishlatiladigan funksiya boʻlib, ayniqsa dushmanlar va tuzoqlar joylashuvi, shuningdek, buyumlar va uskunalar yaratishda qoʻllaniladi. Barcha bu maʼlumotlar oldindan, har biriga berilgan 'ogʻirlik' bilan birga kiritiladi. Ushbu maʼlumotlar asosida, algoritmni belgilangan 'ogʻirlikʼga amal qilib, ehtimollik va boshqa belgilangan qoidalar asosida oʻyinga kiritishi kerak.
Illoqiy misol Diablo va Borderlands kabi oʻyinlarda, shuningdek, aksariyat roguelike oʻyinlarda topilishi mumkin. Ularning qurollari va uskunalarida turli xil atributlar va koʻnikmalar mavjud boʻlib, ular har bir buyumga uning turi, kamolligi va boshqa omillar hisobga olingan holda tasodifiy ravishda kiritiladi.
Protsedural generatsiyaning oʻyinlardagi qoʻllanilishi 70-yillarning oxiriga, aniqrogʻi, birinchi roguelike oʻyinlar paytida boshlangan. Bu oʻyinlar Dungeons & Dragonsdan ilhomlangan edi, ammo ular yolgʻiz oʻynash imkoniyatiga ega edi va ularning zindanlari tasodifiy ravishda yaratilgan. Biroq, jarayon ancha oddiy edi, chunki grafikalar asosan ASCII belgilaridan (klaviaturadagi odatiy harflar va belgilar) tashkil topgan edi. Oʻsha davrdagi eng mashhur oʻyinlardan biri 1980-yilda chiqarilgan Rogue boʻlib, u roguelike oʻyinlar uchun ilhom vazifasini oʻtadi.
Garchi bu eski texnologiya boʻlsa-da, protsedural generatsiyadan yuqori murakkablik va grafik potentsial bilan birinchi foydalanish 1996-yilda roʻy berdi. Aynan shu yili The Elder Scrolls II: Daggerfall chiqarildi va u protsedural generatsiya qilingan xaritani taqdim etdi. Natijada, 160 000 km² maydonini egallaydigan ulkan dunyo paydo boʻldi, u oldindan belgilangan markaziy mintaqalar bilan algoritmik jihatdan qurilgan yerlar, shaharlar va zindanlarni birlashtirdi.
'Gauntlet' oʻyinida 1985-yilda flayperomlar uchun chiqarilgan oddiyroq protsedural generatsiya shakli mashhur boʻldi. Bu oʻyin 125 ta turli xil xaritadan foydalangan, bu esa oʻyinni qayta boshlash va birinchi xaritaga qaytishda yangilik hissini berdi, shuningdek, qiyinchilikning ortishi va xazinalar hamda buyumlarning tasodifiy boʻlishi bilan birga.
1986-yilda chiqarilgan uning ketma-ketligida bu 'tasodifiy atrof-muhit' yanada takomillashtirildi. Uning 100 dan ortiq xaritalari vertikal yoki gorizontal ravishda teskari koʻrinishi, shuningdek, 180 darajagacha aylantirilishi mumkin edi, va chiqish nuqtalari ham joyini oʻzgartirishi mumkin edi, bu esa noyoblik hissini kuchaytirdi.
Yaqinda, inson miyasiga asoslangan mashinaviy oʻrganish modellari boʻlgan neyron tarmoqlari protsedural generatsiyani takomillashtirish uchun kiritilmoqda. Anʼanaviy generatsiya usullarini sunʼiy intellektning chuqur oʻrganishi bilan birlashtirish orqali oʻyinlarda audio, tasvirlar va darajalarni yaratish uchun yangi imkoniyatlar paydo boʻladi. Shuningdek, oʻz oʻyinini sinovdan oʻtkazuvchi agentlar yoki ovoz buyruqlariga yoki oʻyinchilar tomonidan berilgan savollarga tabiiy tarzda javob bera oladigan yanada sof NPCʼlarni ishlab chiqish ham mumkin.
Biroq, bu hali juda boshlangʻich rivojlanish bosqichlaridagi texnologiyalardir. Tilga olingan misol Ubisoftning NEO NPC loyihasi boʻlib, uning maqsadi oʻyinchilar bilan tabiiy oʻzaro aloqaga ega NPCʼlarni yaratish edi, foydalanuvchilar nutqlariga mos keladigan avtomatik javoblar hosil qilish, ammo loyiha rejalashtirilganidek rivojlanmadi. Katta tushuntirishlarsiz, u foydalanuvchi ovoz buyruqlariga avtomatik reaksiya beradigan agentlar boʻlgan Teammatesga yoʻnaltirildi, bu oldindan belgilangan buyruqlar roʻyxatini almashtirdi.
Bu gʻoyalar oʻyinlarning oʻzaro taʼsiri darajasini oshirish, yangi tajribalar va yuqori shoʻngʻishni taqdim etish uchun katta salohiyatni ifodalaydi. Biroq, ular hali vaʼdalar boʻlgan texnologiyalardir, aksariyati dastlabki sinovlarda boʻlib, muvaffaqiyatsizlikka yoki NEO NPC holatiga oʻxshash, asl diapazondan juda farqli narsaga olib kelishi mumkin. Shu sababli, aniq natijalar paydo boʻlguncha bu innovatsiyalarni ehtiyotkorlik bilan kuzatib borish tavsiya etiladi.



