なぜこの手続き型コンテンツ生成が他のものではないのですか?


18

私はオンラインの手続き型コンテンツ生成の本を読んでいます。第1章の2ページには、PCGの例とPCGの例があり、それらを区別することはできません。

これは彼らによるとPCGです:

ゲーム世界に植物が急速に生息するゲームエンジンミドルウェア

彼らによると、これはPCGではありません。

自動生成された植生を統合できるゲームエンジン

また、1ページ目では、ゲームエンジンPCGを考慮しないと明示的に述べています。

ここで重要な用語は「コンテンツ」です。私たちの定義では、コンテンツはゲームに含まれるもののほとんどです:レベル、マップ、ゲームルール、テクスチャ、ストーリー、アイテム、クエスト、音楽、武器、乗り物、キャラクターなど。ゲームエンジン自体はコンテンツとは見なされません。私たちの定義では。

私の推測では、PCGの例は、ゲームマップを認識し、それに応じて植生を入力するゲーム内のコード(または任意のゲームに適応するコード)であると思われます。私にとってPCGではない例は、開発者がユーザーインターフェイスを介してオフラインで植物を追加できる場合に、ゲームエンジンから利用できるオプションのようになります。

最後の1つは私から非常にワイルドな推測です。一見PCGのように聞こえるので、私は間違っていると確信しています。それらを区別してください。


9
2人の男性を比較します。Aが部屋に入り、それを見て、部屋に基づいて家具を構築し、部屋に家具を置きます。Bも同じことをしますが、彼はIKEA(家具を作った人)に行き、部屋に家具を置いてもらいます。AとBの両方が家具を作成していると言いますか?それが彼らが指摘しようとしている違いです。家具をゼロから作成するのでなければ、実際に家具を作成するのではなく、既存の家具を新しい方法で使用するだけです。
フラット

回答:


27

類推によって

回路は電力を生成しません。電球は電力を生成しません。バッテリーは電力を生成しません。生成された電力使用または保存するものはどれも発電機ではありません。

ガソリン駆動の発電機は発電機です。ソーラーパネルのセットアップは発電機です。それらはキックオフされたときに自発的に生成することが期待できます。冷蔵庫やテレビ、PC、ヒーター、電球など、生成した電力を使用できるものもあります

同様に、実行時にコンテンツ自体実際に生成するコードまたはプログラムはすべてPCGです。残りは、手続き的に生成されたコンテンツ(PGC)の単なるユーザーです。さて、

手続き型コンテンツの生成

とは異なります

手続き的に生成されたコンテンツ

PGCは、PCGに関与するプロセス(プログラム)の結果として生じる成果物です。

PCGは、(通常)数え切れないほどのバリエーションで、何らかの仕様に合わせてコンテンツを自律的に生成できるように開発(プログラミング)されています。これにより、PGCは、より広範なアルゴリズム仕様内の無制限の可能なコンテンツ空間の1つのバリエーションとして生成されます。PGCは有限であり、一度生成されると静的です。PCGは無限大(または十分に近い)を処理します。

アドレス指定

「手続き型コンテンツ生成」とは、コンテンツを生成するコード/アプリケーションを指します。

実行時に命令セットの一部を介して新しいコンテンツを動的に生成する場合、どのゲームもPCGゲームと見なすことができます。

あなた(またはエンジン)がコンテンツを生成する他のプログラムコードを使用し、そのコンテンツをコンパイル/ビルド時にゲームの一部として含める場合、ゲーム(およびそのコード)はPCGではありません。したがって:

自動生成された植生を統合できるゲームエンジン

... PCGではありません。このエンジン自体は実行時に新しいコンテンツを生成せず、アーティスト、デザイナー、または開発者が手動でインクルードした他の場所から生成されたコンテンツを使用するだけです。

ゲームマップを認識します

PCGは認識とは関係ありません。コンテンツを作成するという積極的な仕事に関係しています。通常、PCGアプリケーションは、既に理解して使用できる独自のデータ形式を生成します。彼らは通常、外部のソースを読みませんが、読むとき、それは単なる古いプログラムロジックです... PCG自体ではありません。PCGはすべて世代です。したがって、PCRではなくPCG :)

歴史的視点

このコンテキストで「コンテンツ」と考えるものは、一般に、過去に人間が自分で作成しなければならなかったものをカバーしてます。たとえば、70年代および80年代には、ほとんどすべてのゲーム(非常に特別な数を除く)で、人間がプロデュースするアート、ストーリー、音楽、キャラクター、惑星名などが必要でした。 。それはPCGの正反対でした。

PCGは、ゲームプログラマはその代わりに、アーティスト、ミュージシャン、作家などを雇うのrigmaroleの実現時に始まった-その後、まだコードで自分の仕事を統合すること、またはさらに悪いこと、自分自身その仕事のすべてをやってだけでなく、コーディング -彼らは可能性があり代わりに、それらすべてを生成するプログラムを作成します。これらの努力は、最初の真のPCG機能、モジュール、およびプログラムの一部でした。完璧な例は、元のXCom / UFOです。ゲームのコードは、戦闘前に完全にユニークなレベルを生成します。それ以前(1979年)はアプシャイ神殿でした

エリートは別のケースでした。そのコンテンツの一部は、ゲームの開発中に生成されました。同じ作成者によって作成されたコードだけでなく、事前に生成されたコンテンツは、ゲームのコードの一部であるさらなるジェネレーターの実行時elite.exe(つまり、プレイヤーがゲームを実行したとき)に通常使用され、でプレイした。

新しい例はMinecraft(およびそれからインスピレーションを受けた他のゲーム)です。ここでは、現代のコンピューティングパワーのおかげで、地平線に向かって歩くと文字通り世界が生成されます。これを1980年代にPC-XTでプレイしたRogueまたはMoriaと比較してください。レベルが生成されるまでしばらく待つ必要があるかもしれません。(選択したゲーム設定によって異なります)。

すべてのPCGが歴史的にゲーム業界に根ざしているわけではありません。たとえば、フィクションジェネレータを作成する人がいます。たとえば、グラフィックスと計算幾何学の分野でケンパーリンはパーリンノイズアルゴリズムを作成し、後にアカデミー賞を受賞しました。たとえば、ミュージシャンのブライアン・イーノは長い間、楽譜の手順生成に携わっています。また、別の例として、HeroQuest / Warhammer Questのような非デジタルボードゲームは、昔から各プレイで異なるゲームボードを作成するための手順のダイナミクスを発明しました。


6
非常に小さな技術的な例外-ゲーム自体が手続き的に生成された概念実証研究プロジェクト/ゲームがありました。つまり、目標、ルール、そしてある程度、表現はすべて実行時に動的に生成されました。コンテンツとエンジンの間の境界線が多少曖昧になりますが、「生成するかどうか」というリトマステストは依然として存在します。優れた蒸留。
ピカレック

3
@Pikalekその考え方に完全に同意します。Lispができる限りそれをとることができます-最終的には命令とデータの間に区別はありません。しかし、答えの中で物事を過度に複雑にしたくありませんでした。コメントしていただきありがとうございます。
エンジニア

2
@Adocad:あなたは答えの小さな詳細を見逃したと思います:「あなた(またはあなたのエンジン)がコンテンツを生成する他のプログラムコードを使用し、コンパイル/ビルド時にゲームの一部としてそのコンテンツを含める場合、あなたのゲーム( (コードです)はPCGではありません」プログラムによって生成されたコンテンツの代わりにプログラムをゲームに含めた場合、(ローカルで、プレイヤーのコンピューター上で)必要なときにプログラムがプログラムをトリガーします。実際、オフラインPCGになります。しかし、PCG生成(現在は静的)からの結果を単に含める場合はそうではありません。
フラット

2
@AC:手続き的に生成されたコンテンツまたは手続き上のコンテンツ生成のいずれかとしてラベル付けすると、区別がより明確になると思います。
18

4
@Flaterありがとう、それはそれを置くより良い方法です-手続き的に生成されたコンテンツはオフラインおよび/または実行時に生成できますが、手続き的なコンテンツ生成は明示的に実行時です。(ことに注意してくださいツール後にコンパイルされるコンテンツを生成されたコンテンツが中に予め生成され、コンパイルされたが後にPCGを行って、コンテンツがされ使用することゲームNOT PCGを行う)
AC
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.