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:
eine Game-Engine, die automatisch erzeugte Vegetation integrieren kann
... 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.
erkennt die Spielkarte
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.