Процедурна Генерація

Процедурна генерація (у комп'ютингу) — це метод алгоритмічного створення даних за допомогою комбінацій алгоритмів, поєднаних із випадковістю.

У комп'ютерній графіці він зазвичай використовується для створення текстур та 3D-моделей. У відеоіграх він використовується для автоматичного створення великої кількості контенту. Залежно від реалізації, переваги процедурної генерації можуть включати менший розмір файлу, більший обсяг контенту та випадковість для певного ігрового процесу. Процедурна генерація - це галузь синтезу засобів масової інформації.

Процедурна Генерація
Один із прикладів процедурної генерації, що використовується тут для створення реалістичних моделей дерев. Різні моделі можуть бути сформовані шляхом зміни як детермінованих параметрів, так і випадкового початкового значення.
Процедурна Генерація
Процедурний пейзаж, відтворений у Terragen

Опис

Термін процедурний стосується процесу, який обчислює певну функцію. Фрактали — це геометричні візерунки, які часто можна згенерувати процедурно. Звичайний процедурний зміст включає текстури та полігональні сітки. Також процедурне генерування звуку часто застосовують як у синтезі мовлення, так і в музиці, для створення композицій у різних жанрах електронної музики. Прикладом є Брайан Іно, який популяризував термін "генеративна музика".

Хоча розробники програмного забезпечення роками застосовують методи процедурної генерації, лише невелика кількість програм застосовують цей підхід. Процедурно згенеровані елементи є у таких відеоіграх: світ The Elder Scrolls II: Daggerfall переважно процедурно згенерований та має розміри приблизно дві третини від Британських островів. Soldier of Fortune від Raven Software використовує просту процедурну генерацію для деталізації моделей ворогів, тоді як його продовження випадково формувало цілий рівень. Студії Avalanche використовували процедурну генерацію, щоб створити великі та різноманітні тропічні острови для Just Cause. Гра No Man's Sky, розроблена ігровою студією Hello Games, базується на процедурно згенерованих елементах.

Нові методи процедурної генерації щорічно представляються на таких конференціях, як IEEE Conference on Computational Intelligence and Games [Архівовано 9 листопада 2021 у Wayback Machine.] та Artificial Intelligence and Interactive Digital Entertainment [Архівовано 22 березня 2022 у Wayback Machine.].

Зокрема, при застосуванні процедурної генерації у відеоіграх, існує проблема, що кількість згенерованих елементів, світів для вивчення, нескінченна, але без достатнього людського керування результат стає «процедурною вівсянкою», термін, придуманий письменницею Кейт Комптон: хоча можливо математично сформувати тисячі мисок вівсяних пластівців із допомогою процедурного генерування, користувач сприйме їх як однакові, бо їм бракує унікальності.

Сучасне застосування

Настільні рольові ігри

Використання процедурної генерації походить від настільних рольових ігор (RPG). Провідна настільна система Advanced Dungeons & Dragons [Архівовано 30 листопада 2020 у Wayback Machine.] забезпечила «майстра підземельїв» способами генерувати підземелля та місцевість за допомогою кидків гральних кубиків, у наступних виданнях замінених на розгалуження процедурних таблиць. Компанія Strategic Simulations за ліцензією TSR випустила Dungeon Master's Assistant, комп'ютерну програму, яка генерувала підземелля на основі цих таблиць. "Тунелі та тролі", також видані TSR, були розроблені переважно для одиночної гри. Інші настільні RPG запозичили подібні концепції в процедурній генерації для різних світових елементів.

Відео ігри

Рання історія

Процедурна Генерація 
Процедурно сформована карта підземелля у відеогрі NetHack

На відміну від графічно орієнтованих відеоігор, рогалики ігри, жанр яких безпосередньо натхненний Dungeons & Dragons, активно використовували процедурну генерацію так само, як це робили настільні системи. До таких ранніх ігор належать Beneath Apple Manor[en] (1978) та Rogue (1980). Рогалики та ігри, що базуються на схожих концепціях, дозволяють розвивати складний ігровий процес, не витрачаючи зайвого часу на створення ігрового світу.

1978 Maze Craze[en] для Atari VCS використовував алгоритм для створення випадкового лабіринту зверху вниз для кожної партії.

Сучасне використання

Процедурна Генерація 
Процедурна текстура з використанням тесселяції Вороного

Хоча сучасні комп'ютерні ігри не мають тих самих обмежень по пам'яті, що були в старих іграх, процедурна генерація в них часто використовується для створення рандомізованих карт, рівнів, символів чи інших аспектів, унікальних для кожного проходження.

У 2004 році німецька демонстраційна група випустила шутер від першої особи для ПК під назвою .kkrieger . Він повністю міститься у 96- кілобайтному файлі для Microsoft Windows, який генерує сотні мегабайт даних та 3D текстур під час запуску. За словами одного з програмістів, "що стосується геймплею - це був повний провал (здебільшого тому, що ніхто насправді не піклувався про це").

Процедурна генерація часто використовується в системах квестів ігор, таких як рольові екшн-ігри та масові багатокористувацькі рольові ігри. Попри те, що квести можуть мати фіксовані винагороди, інші предмети, наприклад зброя та броня, можуть бути створені для гравця на основі рівня персонажу, рівня квесту та інших випадкових факторів. Це часто призводить до того, що предмети мають різну рідкість, яка застосовується для відображення того, коли система генерації створила предмет з характеристиками, які перевищують середні. Наприклад, серія Borderlands базується на процедурній генерації, що дозволяє створити понад мільйон унікального озброєння.

Багато ігор з відкритим світом процедурно створюють ігрові локації із випадкового початкового значення. Тому кожне проходження є унікальним. Ці системи генерації створюють численні біоми на основі пікселів або вокселів з розподілом ресурсів, об'єктів та істот. Гравець часто має можливість регулювати деякі параметри генерації, наприклад, вказати обсяг води у світі. Прикладами таких ігор є Dwarf Fortress та Minecraft .

Процедурна генерація також використовується в іграх про дослідження космосу та торгівлю. У грі Еліта: Небезпечний використовувалась процедурна генерація для моделювання 400 мільярдів відомих зірок Чумацького Шляху як свою світову основу. I-Novae Infinity [Архівовано 2 січня 2021 у Wayback Machine.] має безліч планет, які процедурно генеруються, між якими гравець може подорожувати на космічних кораблях. Outerra Anteworld[en] - це відеоігра у розробці, яка використовує процедурну генерацію та дані реального світу для створення віртуальної копії планети Земля у справжньому масштабі. У "Нічиєму небі" представлений Всесвіт, що містить 18 квінтільйонів планет, які процедурно генеруються на льоту, коли гравець стикається з ними, включаючи рельєф, погоду, флору та фауну. Цей Всесвіт визначається використанням одного випадкового початкового числа для їх детермінованого механізму, що гарантує однаковий вміст для всіх гравців в однакових місцях для всіх гравців, що дозволяє гравцям ділитися відкриттями.

Фільми

Як і у відеоіграх, процедурна генерація часто використовується у фільмах для швидкого створення візуально цікавих та детальних просторів.

Одна програма знана як недосконала фабрика, де художники можуть швидко генерувати багато подібних об’єктів. Це пояснює тим, що в реальному житті немає двох ідентичних об’єктів. Наприклад, художник міг змоделювати продукт для полиці магазину, а потім створити недосконалу фабрику, щоб створити багато схожих але не ідентичних продуктів.

MASSIVE це висококласний комп'ютерний пакет анімацій та штучного інтелекту, який використовується для створення візуальних ефектів натовпу для кіно та телебачення. Він був розроблений для автоматичного створення бойових армій із сотень тисяч солдат для фільму Пітера Джексона Володар перснів.

Див. також

Посилання

Подальше читання

Посилання

Tags:

Процедурна Генерація ОписПроцедурна Генерація Сучасне застосуванняПроцедурна Генерація Див. такожПроцедурна Генерація ПосиланняПроцедурна Генерація Подальше читанняПроцедурна Генерація ПосиланняПроцедурна Генерація3D-моделюванняАлгоритмЗасоби масової інформаціїКомп'ютерна графікаКомп'ютингТекстура (тривимірна графіка)

🔥 Trending searches on Wiki Українська:

33-тя окрема механізована бригада (Україна)Оболонський районПротиповітряна оборонаПетро Конашевич-СагайдачнийРумуніяМавка. Лісова пісняОб'єднана штурмова бригада Нацполіції «Лють»ГібралтарУкраїнський кінематографВінницяДавньогрецькі колонії Північного Причорномор'яСофійський собор (Київ)Аскольдова МогилаСублімація (психологія)Кримське ханствоUATVУкраїнські прізвищаDassault RafaleНаціональна суспільна телерадіокомпанія УкраїниЧернівціСписок слов'янських богівВульваЄвропейський СоюзЖитомирська областьАпострофМоскваСписок країн за населеннямСписок кодів МКХ-10Хвороба ПаркінсонаВійськове званняНімфоманіяГалицько-Волинське князівство47-ма окрема механізована бригада (Україна)Франко Іван Якович1-й окремий механізований батальйон «Вовки Да Вінчі»Шерлок ХолмсКіровоградська областьТ-64Артеріальна гіпертензіяКонституція Пилипа ОрликаПірати Карибського моря (серія фільмів)ВербаFacebook24-й окремий штурмовий батальйон «Айдар»14-та гренадерська дивізія Ваффен-СС «Галичина»Структура Збройних сил УкраїниКиївВернадський Володимир ІвановичРимський статут Міжнародного кримінального судуНімецька моваРобін РайтСимоненко Василь АндрійовичАнна АлхімДеменціяФотосинтезРайффайзен банк АвальЛелека білийМудрик Михайло ПетровичПіраміда потреб Абрагама МаслоуLeopard 2Білий хрест ЗСУЧехіяКримські гориПутін — хуйло!БілкиГенеральний штаб Збройних сил УкраїниПівнічна МакедоніяМолитва українського націоналістаОрден Богдана Хмельницького (Україна)28-ма окрема механізована бригада (Україна)Закони НьютонаУкрінформДжейк ДжилленголМі-24Збірна України з футболуМадяр Юрій ФедоровичДержавна служба України з надзвичайних ситуацій🡆 More