Ich lese das Online-Buch zur Erstellung von prozeduralen Inhalten und in Kapitel 1, Seite 2 finden Sie ein Beispiel dafür, was PCG ist und ein anderes Beispiel dafür, was PCG nicht ist, und ich kann sie nicht auseinanderhalten.
Dies ist PCG nach ihnen:
Game Engine Middleware, die eine Spielwelt schnell mit Vegetation bevölkert
Dies ist NICHT PCG nach ihnen:
eine Game-Engine, die automatisch erzeugte Vegetation integrieren kann
Ebenfalls auf Seite 1 gaben sie ausdrücklich an, keine Game-Engine-PCG in Betracht zu ziehen
Ein Schlüsselbegriff ist hier „Inhalt“. In unserer Definition ist der größte Teil des Inhalts in einem Spiel enthalten: Levels, Karten, Spielregeln, Texturen, Geschichten, Gegenstände, Quests, Musik, Waffen, Fahrzeuge, Charaktere usw. Die Spiel-Engine selbst wird nicht als Inhalt betrachtet in unserer Definition.
Ich vermute, das PCG-Beispiel ist ein Code in einem Spiel (oder es könnte ein Code sein, der sich an jedes Spiel anpasst), der die Spielkarte erkennt und sie entsprechend mit Vegetation bevölkert. Und das nicht-PCG-Beispiel für mich wäre wie eine Option, die über die Game-Engine verfügbar ist, wenn der Entwickler die Vegetation über die Benutzeroberfläche offline hinzufügen kann.
Der letzte ist eine sehr sehr wilde Vermutung von mir, ich bin mir ziemlich sicher, dass ich falsch liege, denn auf den ersten Blick klingen beide wie PCG. Bitte helfen Sie mir, sie zu unterscheiden.
Antworten:
In Analogie
Ein Stromkreis erzeugt keinen Strom. Eine Glühbirne erzeugt keinen Strom. Eine Batterie erzeugt keinen Strom. Keines der Dinge, die erzeugten Strom verbrauchen oder speichern , sind Stromerzeuger.
Ein benzinbetriebener Generator ist ein Stromgenerator . Ein Solarpanel-Aufbau ist ein Stromerzeuger . Es ist zu erwarten, dass sie sich beim Anpfiff spontan bilden. Andere Dinge können den Strom verbrauchen, den sie erzeugen: Kühlschränke, Fernseher, PCs, Heizungen und Glühbirnen.
Ebenso ist jeder Code oder jedes Programm, das zur Laufzeit selbst Inhalte generiert, PCG. Der Rest sind nur Benutzer dieses prozedural generierten Inhalts (PGC). Jetzt,
Prozedurale Inhaltsgenerierung
ist nicht dasselbe wie
Prozedural generierter Inhalt
PGC ist das resultierende Artefakt eines Prozesses (Programms), der sich mit PCG beschäftigt.
PCG wird so entwickelt (programmiert), dass es selbstständig Inhalte nach einigen oder anderen Spezifikationen produzieren kann, jedoch in (typischen) unzähligen Variationen. PGC wird dabei als eine einzige Variation der ansonsten unbegrenzten möglichen Inhaltsräume innerhalb dieser breiteren algorithmischen Spezifikation erzeugt. Einmal erzeugte PGCs sind endlich und statisch . PCGs befassen sich mit Unendlichkeit (oder nahe genug).
Adressangaben
"Prozedurale Inhaltsgenerierung" bezieht sich auf Code / Anwendungen, die Inhalte generieren.
Jedes Spiel kann als PCG-Spiel betrachtet werden, wenn es zur Laufzeit über einen Teil seines Befehlssatzes dynamisch neuen Inhalt generiert.
Wenn Sie (oder Ihre Engine) einen anderen Programmcode verwenden, der Inhalte generiert, fügen Sie diesen Inhalt zum Zeitpunkt der Kompilierung / Erstellung in Ihr Spiel ein, und Ihr Spiel (und sein Code) ist NICHT PCG. Daher:
... ist keine PCG, da diese Engine selbst zur Laufzeit keinen neuen Inhalt erzeugt, sondern lediglich generierten Inhalt von anderen Stellen verwendet, der manuell von Künstlern, Designern oder Entwicklern eingefügt wurde.
PCG hat nichts mit Anerkennung zu tun. Es hat mit der aktiven Arbeit an der Erstellung von Inhalten zu tun. Im Allgemeinen erzeugen PCG-Anwendungen ein eigenes Datenformat, das sie bereits verstehen und verarbeiten können. Normalerweise lesen sie keine externen Quellen ein, obwohl dies dann nur eine alte Programmlogik ist ... nicht PCG als solche. PCG dreht sich alles um Generierung . Daher PCG und nicht PCR :)
Historische Perspektiven
Was wir „Inhalt“ in diesem Zusammenhang betrachten deckt im Allgemeinen die Dinge , die in der Vergangenheit haben Menschen haben selbst zu produzieren. Zum Beispiel musste in den 70er und 80er Jahren so ziemlich jedes Spiel (mit Ausnahme einiger weniger) seine Kunst, seine Handlung, seine Musik, seinen Charakter und seine Planetennamen und dergleichen von einem Menschen produzieren lassen . Das war das genaue Gegenteil von PCG.
PCG begann , als Spieleprogrammierer erkannte , dass anstelle der rigmarole der Einstellung Künstler, Musiker, Schriftsteller usw. - und dann mit noch ihre Arbeit mit dem Code zu integrieren, oder schlimmer noch, all diese Arbeit selbst zu tun sowie Codierung - sie konnten Schreiben Sie stattdessen Programme, um all das Zeug für sie zu generieren. Diese Bemühungen waren einige der ersten wirklich PCG-Funktionen, -Module und -Programme. Ein perfektes Beispiel ist das Original XCom / UFO , bei dem der Code des Spiels vor dem Kampf ein für Sie völlig einzigartiges Level erzeugt. Noch früher (1979) war der Tempel von Apshai .
Elite war ein anderer Fall: Ein Teil des Inhalts wurde während der Entwicklung des Spiels generiert. Dieser Code wurde nicht nur von denselben Autoren geschrieben, sondern auch
elite.exe
von weiteren Generatoren, die Teil des Code des Spiels waren, zur Laufzeit (dh als Sie das Spiel ausführten) für die Erstellung Ihrer eigenen Welt verwendet gespielt in.Ein neueres Beispiel ist Minecraft (und andere davon inspirierte Spiele), bei denen die Welt buchstäblich um Sie herum generiert wird, während Sie sich dem Horizont nähern, was zum großen Teil der modernen Rechenleistung zu verdanken ist. Vergleichen Sie dies mit Rogue oder Moria, die in den 1980er Jahren auf einem PC-XT gespielt wurden und auf deren Erzeugung Sie möglicherweise warten müssen! (abhängig von den gewählten Spieleinstellungen).
Nicht alle PCGs sind historisch in der Spieleindustrie verwurzelt. Zum Beispiel gibt es Leute, die Fiktionsgeneratoren schreiben. Zum Beispiel hat Ken Perlin im Bereich Grafik und Computergeometrie den Perlin Noise-Algorithmus entwickelt, für den er später einen Academy Award erhielt. Beispielsweise beschäftigt sich der Musiker Brian Eno seit langem mit der prozeduralen Generierung von Partituren. Und als weiteres Beispiel haben nicht-digitale Brettspiele wie HeroQuest / Warhammer Quest vor langer Zeit die Verfahrensdynamik erfunden, um für jedes Spiel ein anderes Spielbrett zu erstellen.
quelle