Я читаю онлайновую книгу «Процедура создания контента», и в главе 1 на странице 2 приведен один пример того, что такое PCG, и другой, а не PCG, и я не могу их отличить.
Это PCG в соответствии с ними:
промежуточное ПО игрового движка, которое быстро наполняет игровой мир растительностью
Это не PCG в соответствии с ними:
игровой движок, способный интегрировать автоматически сгенерированную растительность
Также на странице 1 они прямо сказали, что не считают игровой движок PCG.
Ключевым термином здесь является «содержание». По нашему определению, контент - это большая часть того, что содержится в игре: уровни, карты, правила игры, текстуры, истории, предметы, квесты, музыка, оружие, транспортные средства, персонажи и т. Д. Сам игровой движок не считается контентом. в нашем определении.
Я предполагаю, что пример PCG - это код в игре (или это может быть код, который адаптируется к любой игре), который распознает игровую карту и наполняет ее растительностью в соответствии с ней. И не PCG пример для меня был бы как вариант, доступный из игрового движка, где разработчик может добавить растительность в автономном режиме через пользовательский интерфейс.
Последнее от меня очень дикое предположение, я уверен, что ошибаюсь, потому что на первый взгляд они оба звучат как PCG. Пожалуйста, помогите мне отличить их.
Ответы:
По аналогии
Цепь не генерирует энергию. Лампочка не генерирует энергию. Аккумулятор не генерирует энергию. Ничто из того, что использует или хранит генерируемую энергию , не является генератором энергии.
Бензиновый генератор - это генератор энергии . Установка солнечной панели - это генератор энергии . Они могут быть , как ожидается, спонтанно генерировать , когда они начались. Источники энергии, которые они генерируют, могут использовать другие вещи : холодильники, телевизоры, компьютеры, обогреватели и лампочки.
Аналогичным образом, любой код или программа, которая фактически генерирует контент во время выполнения, является PCG. Остальные просто пользователи этого процедурно сгенерированного контента (PGC). Сейчас,
Процедурная генерация контента
это не то же самое, что
Процедурно-сгенерированный контент
PGC является результирующим артефактом процесса (программы), который участвует в PCG.
PCG разработана (запрограммирована) до такой степени, что она может автономно производить контент по той или иной спецификации, но в (как правило) бесчисленных вариациях; Таким образом, PGC генерируется как одно единственное изменение безгранично возможных возможных пространств содержимого в рамках этой более широкой алгоритмической спецификации. PGC конечны и статичны после генерации. PCG имеют дело с бесконечностью (или достаточно близко).
Особенности адресации
«Процедурная генерация контента» относится к коду / приложениям, которые генерируют контент.
Любую игру можно считать игрой PCG, если во время выполнения она динамически генерирует новый контент посредством части своего набора инструкций.
Если вы (или ваш движок) используете какой-либо другой программный код, который генерирует контент, а затем включите этот контент как часть вашей игры во время компиляции / сборки , то ваша игра (и ее код) НЕ являются PCG. Следовательно:
... это не PCG, поскольку сам движок не создает новый контент во время выполнения, он просто использует сгенерированный контент из другого места, который был вручную добавлен художниками, дизайнерами или разработчиками.
PCG не имеет ничего общего с распознаванием. Это связано с активной работой по созданию контента. Обычно приложения PCG создают свой собственный формат данных, который они уже могут понять и работать с ним. Обычно они не читают во внешних источниках, хотя, когда они это делают, это просто старая логика программы ... не PCG как таковая. PCG это все о поколении . Следовательно, PCG, а не PCR :)
Исторические перспективы
То, что мы считаем «контентом» в этом контексте, обычно охватывает те вещи, которые в прошлом люди должны были производить сами. Например, в 70-х и 80-х годах почти каждая игра (за исключением очень немногих) должна была иметь свое искусство, сюжет, музыку, имена своих персонажей и планет и т. П., Производимые человеком. , Это была полная противоположность PCG.
PCG началась, когда разработчики игр поняли, что вместо того, чтобы нанимать художников, музыкантов, писателей и т. Д., А затем все еще нужно было интегрировать свою работу с кодом, или, что еще хуже, выполнять всю эту работу самостоятельно, а также кодировать - они могли вместо этого пишите программы для генерации всего этого для них. Эти усилия были одними из первых действительно PCG-функций, модулей и программ. Прекрасным примером является оригинальный XCom / UFO , где код игры генерирует для вас совершенно уникальный уровень перед боем. Еще раньше (1979 г.) был храм Апшай .
Элита была другим случаем: часть ее контента создавалась, когда игра находилась в разработке; не только этот код, написанный теми же авторами, но также и то, что предварительно сгенерированный контент обычно использовался во время выполнения
elite.exe
(т. е. когда вы играли в игру) другими генераторами, которые были частью кода игры , создавая мир, который вы играл в.Более новым примером является Minecraft (и другие игры, вдохновленные им), где мир буквально генерируется вокруг вас, когда вы идете к горизонту, во многом благодаря современной вычислительной мощности. Сравните это с Роугом или Морией, игравшей на PC-XT в 1980-х годах, для которой вам, возможно, придется посидеть некоторое время в ожидании создания уровня! (в зависимости от выбранных вами настроек игры).
Не все PCG исторически уходят корнями в игровую индустрию. Например, есть те, кто пишет генераторы художественной литературы. Например, Кен Перлин в области графики и вычислительной геометрии создал алгоритм Perlin Noise, за который позже он получил награду академии. Например, музыкант Брайан Ино уже давно занимается процедурным оформлением музыкальных партитур. И как еще один пример, нецифровые настольные игры, такие как HeroQuest / Warhammer Quest, давно изобрели процедурную динамику для создания разных игровых досок в каждой игре.
источник