Полная теория процедурной генерации

Поделиться
HTML-код
  • Опубликовано: 3 июн 2024
  • Вся теоретическая база, необходимая для процедурной генерации.
    Как генерировать контент? На какие категории он делится? Как проектировать сложные генераторы? Причём здесь нейросети?
    Упирается ли всё в алгоритмы?
    Таймкоды:
    0:00 Предисловие
    0:40 I. Пространство возможностей
    3:13 I. Пространство генерации
    5:28 I. Пространство интереса (интересности)
    7:43 I. Пространство разнообразия
    10:18 II. Критерии
    11:05 II. Реалистичность
    11:26 II. Нарративная и геймплейная ценность
    12:44 II. Способность подстегнуть воображение
    13:47 II. Эстетика
    14:22 II. Паттерны
    14:38 Интермедия. Флуктуации.
    15:17 III. О нейросетях замолвите слово
    17:37 IV. Где кончается процген
    Ссылки:
    habr.com/ru/articles/439968/
    habr.com/ru/articles/440286/

Комментарии • 65

  • @poct13
    @poct13 10 месяцев назад +18

    Красиво и поэтично рассказал о технический вещах. Это уметь надо, молодец! Было очень интересно послушать.

  • @BbIXoge_g9IgI0Wku
    @BbIXoge_g9IgI0Wku 10 месяцев назад +7

    Хоть канал и маловат, аудитории нет и популярность ролики не набирают. Но тебя нереально кайфово смотреть и видео интересные. Продолжай в том же духе, ты крут

  • @seikleiner3706
    @seikleiner3706 9 месяцев назад +7

    В прошлом году с другом увлеченно обсуждали коллапс волновой функции, пересматривая один видеоролик англоязычный, где происходила ее демонстрация (скрин оттуда 17:43). Это мне напомнило, как мы сидели и мечтали, мол в 23-м увидим уже первые игры от наших любимых инди-разработчиков, что оседлают процедурную генерацию так, как никто еще ! И надежды эти в какой-то мере сбываются.
    Словом, вы говорили в этом ролике о флуктуациях. Я, как человек, плохо знакомый со всем этим, сильно заинтересовался описанием этого процесса. Как понял, он способен создавать в генерации объекты и области, сильнейшим образом отличающиеся от всего, что модель обычно способно генерирует. В примере были представлены вулканы и большие деревни в Майнкрафте - своеобразные точки притяжения, как то, что обладает большей степенью интереса для пользователя в смысле, какой был озвучен в главе I. Было бы интересно посмотреть ролик на тему таковых флуктуаций и ряда предложений, которые бы могли улучшить Майнкрафт. Все же вулканы и подобные им "аномальные" фрагменты игрового мира, кои вы озвучили здесь и в ролике о генерации мира данной игры - лишь поверхностные примеры. В фантастическом и нереалистичном (с учетом кода генерации мира от mojang) примере: процедурная генерация самого кода процедурной генерации биомов и внесение в него незначительных флуктуаций в заданном играбельном спектре. Не знаю, понятно ли я излагаюсь, учитывая, насколько я далек от темы. Я представляю это как появления в мире игры биомов и структур, которые не могли и не должны были бы появиться.
    Высокогорный грибно-березовый лесок; затонувший лес посреди огромного океана; огромный монолитной дуб, разрытый пещерами-спагетти; целые пшеничные поля вместо лугов - и все в качестве совершенно случайных и незапланированных изначально, но возникших вследствие имеющихся возможностей уникальные и ни на что не похожие места. Я бы желал путешествовать по миру Майнкрафта, если бы всегда был шанс найти значительную аномалию. Все же для нас, игроков в эту игру, нахождение случайно сгенерированной в пещере деревни является чудом из чудес; мы тут же селимся в таких местах силы и стараемся почитать богов рандома, строи им жертвенные алтари. Если бы миры были чуть более уникальны, это оказалось бы решающим фактором. Я бы, по крайней мере, знал, что мой дом находится слева от грибно-березового леса, за морем мертвых лесов в лоне исполинских размеров дуба.

    • @alexeyrival
      @alexeyrival  9 месяцев назад +3

      Подобное было реализовано в Infinity Update, правда, лишь частично. И тем не менее.

    • @KawaiiSelbstsBox
      @KawaiiSelbstsBox 8 месяцев назад +1

      @@alexeyrival Снапшот 20w14?

    • @alexeyrival
      @alexeyrival  8 месяцев назад

      Если не ошибаюсь - да. Ну он гуглится по запросу "Infinity Update"

    • @KawaiiSelbstsBox
      @KawaiiSelbstsBox 8 месяцев назад +1

      @@alexeyrival Ну да, забавная штука, но на самом деле уникальных вещей не выдаёт особо, просто расширяет пространство интереса так сказать, большинство миров скучный мусор похожий на остальные

    • @KawaiiSelbstsBox
      @KawaiiSelbstsBox 8 месяцев назад +3

      @@alexeyrival Единственный интерес в который я увидел, это заготовленные миры от разработчиков, там действительно поработали с разными вариантами генерации

  • @humster-
    @humster- 10 месяцев назад +6

    Спасибо большое за видео. Наверное его давно мне не хватало. Уже некоторые время заходил в тупик в различных попытках создать хоть что-то, и все потому что узко смотрел на задачи. Сейчас же заставили меня задуматься о пространстве возможностей)

  • @Clockwork_Mk3
    @Clockwork_Mk3 10 месяцев назад +5

    Очень приятно и интересно слушать, спасибо за видео - теперь мне захотелось погрузится в эту тему.

  • @staf5496
    @staf5496 10 месяцев назад +2

    Полезное видео. Дает четкое представление для осмысления темы видео

  • @vtirateldu4u
    @vtirateldu4u 3 месяца назад +1

    Шикарное видео очень понятное обьяснение таких сложных 😮 понятий, автор гений 😊спасибо🙏💕

  • @gorezcaid
    @gorezcaid 10 месяцев назад +3

    Подпишусь. Тут однозначно полезная информация.

  • @koanidi
    @koanidi 9 месяцев назад

    Спасибо тебе большое за твои видео, думаю писать проект по процедурной генерации на 9 класс. Очень интересная тема

  • @Magic__Man
    @Magic__Man 10 месяцев назад +2

    Воуч!
    Полезный для мозга контент!
    Будем посмотреть!

  • @AristoSand
    @AristoSand 9 месяцев назад

    Когда делаю что то с любовью всегда добиваются успеха
    Автор удачи тебе

  • @ProstBlack
    @ProstBlack 9 месяцев назад +2

    Ничего не понял, но очень интересно.

  • @blackevildragon9295
    @blackevildragon9295 9 месяцев назад +1

    Классный канал!)

  • @krineq7058
    @krineq7058 10 месяцев назад +3

    Рекомендации внезапно решили подкинуть интересный ролик, а это коммент для его продвижкния

  • @Galaktikaa
    @Galaktikaa 6 месяцев назад +1

    В одиночку создал и постепенно развиваю свою собственную ММО РПГ игровую вселенную. И вот как раз эти самые соображения и прочие наработки мне очень сильно пригодились, для написания совершенного генератора локаций для своей собственной игровой вселенной.

    • @alexeyrival
      @alexeyrival  6 месяцев назад

      На канале есть видосик про ммо - думаю, лишним не будет)

  • @user-pm5rs5ho8i
    @user-pm5rs5ho8i 6 месяцев назад +1

    влюбился в канал с первого взгляда

  • @ledoshok
    @ledoshok 10 месяцев назад +1

    я буду олдом!

  • @yannp3358
    @yannp3358 10 месяцев назад +1

    ♥️

  • @user-cy8mz5ze8o
    @user-cy8mz5ze8o 9 месяцев назад

    Удачи в развитии

  • @user-pf4df6lp2y
    @user-pf4df6lp2y 9 месяцев назад

    Видео кайфовое однозначно лайк, можете ответить что за фоновый шум в области 13й минуты?

  • @UrodZanyalMoyNik
    @UrodZanyalMoyNik 8 месяцев назад +1

    Спасибо, бро. Ты лучший. Мы с пацанами игры собираемся создавать. Я пошел в сторону специализации по процедурной генерации. Не смею просить и извините мою дерзость, но буду рад, если вы выпустите ролик о генерации 2д карты в Godot.

    • @alexeyrival
      @alexeyrival  8 месяцев назад

      С Godot не работал - не особо жалую сей движок.
      Начинание одобряю. Специализация по процгену - хорошо. Если будет нужна помощь, моя личка всегда открыта :)

    • @UrodZanyalMoyNik
      @UrodZanyalMoyNik 8 месяцев назад

      @@alexeyrival благодарю)

    • @Fravia-incm
      @Fravia-incm Месяц назад

      Если вы ещё вместе и работаете
      Парни
      Ищу напарников

    • @UrodZanyalMoyNik
      @UrodZanyalMoyNik Месяц назад

      @@Fravia-incm сорян, бро. Не работаем больше. Сделали небольшой шутер против кубиков, которые снимают хп при касании. На какой-нибудь бротато похож.

  • @vdm942
    @vdm942 Месяц назад +1

    Я здесь нашел примерное число пространства возможностей майнкрафта но со всем что можно добавить через моды при условии что
    Хранилище складывать в хранилище можно 100 раз
    Количество предметов в стаке 10 миллиардов
    Количество мест в хранилище 10 миллиардов
    Количество разных цветов 10 миллиардов
    Количество всех предметов - гугол
    Количество разных измерений 10 миллиардов
    Размеры мира 10 миллиардов на 10 миллиардов и на 10 миллиардов в глубину
    Количество микро блоков вмещяющихся в длину 1 блока- гугол
    Количество длин миров вмещяющихся в длину макромира- гугол
    Примерное количество вариантов пространства возможностей макромира - 10^(10¹⁷⁴²)
    Но я всё ещё не уверен взял ли я все параметры в расчёт 🤔🤔🤔
    По правде говоря я не думал что пространство возможностей майнкрафта превзойдет количество возможных вариантов нашей вселенной 😂😂😂

    • @alexeyrival
      @alexeyrival  Месяц назад +1

      Если считать сундуки в сундуках, то это никак не отразится на том, как мир выглядит, только какие данные он содержит.
      Как бы можно начать слом комбинаторики в том месте, где в майнкрафте существуют книги, которые можно хранить в сундуках. а в книгах могут быть абсолютно произвольные данные. Но на мир это не влияет.

    • @vdm942
      @vdm942 Месяц назад

      Нет тогда не так интересно, всего 10^(10⁶⁴²) вариантов , но может лучше чем ничего
      Но мне пришла другая идея генератор условий который будет генерировать разные изначальные данные одно с которых может быть таким как я написал выше , это не генератор миров а генератор который генерирует разные генераторы миров но это уже другой уровень

    • @vdm942
      @vdm942 Месяц назад +1

      Но всё же наиболее сложной задачей наверное будет найти количество миров которые охватывает пространство интереса , так как интерес это относительное понятие
      Изменено:
      Так как синоним интереса это внимание, а об этом у меня уже есть что пересказать, например это
      “Дело не в том на что мы обращаем своё внимание а в способности уделять чему-то своё внимание
      Так что вместо того чтобы думать о том куда лучше направить своё внимание , лучше развить умение сосредотачиваться на чем-то с невероятной интенсивностью
      Потому что внимание не связано с чем-то во вне , а это наша природа
      Так что лучше просто поддерживать высокий уровень внимания „
      Так вот если взять в ращёт это то количество вариантов пространства интереса такое же как и пространства возможностей

  • @ArkturHCG
    @ArkturHCG 9 месяцев назад +1

    Потрясающее видео! Расскажите про процген в террарии?

    • @alexeyrival
      @alexeyrival  9 месяцев назад +3

      Частая заявка. Следующая игра на разбор - донт старв. За ним террария)

    • @ArkturHCG
      @ArkturHCG 9 месяцев назад +1

      @@alexeyrival хорошо) И спасибо, что вы есть на ютубе. Вы для меня открыли хоть какое то представление о процгенерации в общем)

  • @brinys
    @brinys 9 месяцев назад +1

    Гениальный контент

    • @alexeyrival
      @alexeyrival  9 месяцев назад

      Приятно, спасибо)

  • @TheGreenStar_
    @TheGreenStar_ 7 месяцев назад +1

    Тебе бы понравилась генерация в Elite Dangerous

    • @alexeyrival
      @alexeyrival  7 месяцев назад

      Там не мало предзаписанных данных. Но в целом да, Elite была и будет одной из самых "процедурных" серий игр вообще. С первой части, где генерировалось вообще всё, и до последней.

  • @itTchin
    @itTchin 10 месяцев назад +1

    2:50 - невозможно соединить так, чтобы не входило в это пространство возможностей.
    Я: Соединяю под угло 45 градусов.

    • @alexeyrival
      @alexeyrival  10 месяцев назад +1

      И это тоже предусмотрено:)

    • @itTchin
      @itTchin 10 месяцев назад

      @@alexeyrival а, тогда ок.) Хотя тогда я не согласен с конечным числом этого пространства возможностей, т.к. между 45 и 46 градусами будет бесконечное множество углов, а не 900трлн+.

    • @humster-
      @humster- 10 месяцев назад +1

      @@itTchin скорее всего считались количества комбинаций соединений, а не размещений кирпичиков. И тогда соединение 45° и 46° аналогичны, так как будут использовать одни штырьки.
      Тут просто важно еещ определить, что и как мы считаем в возможностях. Как я сказал выше, если считаем положение, то пространство одно, если считаем соединения, то пространство другое.
      Насчет конечности этого пространства я с автором не согласен. В контексте генерации это пространство конечномерное, но в реальной жизни пространство возможностей квадратного листа оригами - бесконечно. Там даже множество состояний, полученных одним сгибом имеет как минимум мощность континуума. Значит их беснонечное количество

    • @itTchin
      @itTchin 10 месяцев назад

      @@humster- Хорошо сказал. Наверное, это проблема приведения аналогий в качестве примера. В целом на понятие пространства возможностей это не влияет.

    • @alexeyrival
      @alexeyrival  10 месяцев назад +2

      Пространство возможностей всех изображений на fullhd-мониторе - 16млн^(1920х1080). Так и в случае со сгибами листа бумаги, особенно с учётом того, что сгибами меньше миллиметра можно пренебречь (если не пренебрегать, то минимальной мерой становится планковская длина - сути это не изменит)
      Количество абсурдно велико, безусловно. Но оно конечно и исчислимо, пусть и исчислять его нет никакого практического смысла.

  • @Tolyan_Kochyan
    @Tolyan_Kochyan 9 месяцев назад

    (17:09) А от чего такое отношение к нейросетям?

  • @qwertyqwerty-ox1bn
    @qwertyqwerty-ox1bn 8 месяцев назад +1

    Какая есть литература на эту тему?

    • @alexeyrival
      @alexeyrival  8 месяцев назад +1

      На русском - буквально только это видео :D

  • @dmmin9707
    @dmmin9707 10 месяцев назад +2

    - "Несколько важных статей оставлю в описании". А в описании то и нет их

    • @alexeyrival
      @alexeyrival  10 месяцев назад +1

      Да, сорян, ща добавлю:D

  • @andrevladru3559
    @andrevladru3559 10 месяцев назад +2

    Всё бы хорошо... Но чёрные экраны?!! Дайте пендаля монтажёру и больше не подпускайте делать видео.

    • @alexeyrival
      @alexeyrival  10 месяцев назад

      Но тогда я не буду выпускать видео вовсе, ведь монтажёра у меня нет, всё сам:D

    • @andrevladru3559
      @andrevladru3559 10 месяцев назад +4

      @@alexeyrival Тогда постарайтесь избегать этих чёрных квадратов. Невозможно смотреть видеоряд - в итоге и с мысли автора сбивает :(

    • @andrevladru3559
      @andrevladru3559 6 месяцев назад

      @@pavelzubkov1806 Именно.

  • @the_sund
    @the_sund 10 месяцев назад +1

    3:50 это оговорочка? Речь тут явно про No Man's Sky, а не про Minecraft

    • @alexeyrival
      @alexeyrival  10 месяцев назад +2

      Ждал коммента)
      Нет, это не оговорочка, это особенность майновской хэш-функции, которая сиды составляет.
      У nms она почти такая же