Что такое «процедурное поколение» и как это делается?

22

Я много слышу о «процедурных картах» и «процедурных текстурах». Что это означает именно, и какие ресурсы есть для изучения этих методов в игре?

Брайан Ортис
источник

Ответы:

25

Определение «процедурный» в учебнике - это то, что генерируется из какого-то алгоритма вместо предопределенного, то есть из редактора уровней или программы редактирования изображений.

Смотрите также этот вопрос, в частности, для процедурных текстур: что случилось с процедурно сгенерированными текстурами?

Для процедурных карт есть много методов, которые вы можете использовать. В базовом примере вы можете создать что-то вроде сетки, для которой вы псевдослучайно определяете пути. Вы можете настроить связку готовых деталей, которые имеют определенные области, помеченные как двери и т. Д., И просто случайным образом соединить их вместе.

В некотором смысле, вы пишете ИИ для разработки своих уровней на лету.

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

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

Однако, в конце концов, то, как вы это сделаете, сильно зависит от того, каков ваш игровой дизайн. Я лично считаю, что процедурные карты, как правило, не стоят того, так как дизайнер уровней может сделать карты более увлекательными, лучше выглядящими за меньшее время, чем это было бы для создания системы, позволяющей сделать что-то близкое, но есть место для дискуссий. на что.

тетрада
источник
«Процедурный» может также относиться к некоторым более детерминированным задачам, таким как построение ландшафта из карты высот, построение геометрии небесного ящика для карты куба и т. Д.
Шон Джеймс
4
Кроме того, посмотрите на pcg.wikidot.com для получения дополнительной информации об алгоритмах процедурной генерации.
DrDeth