ポピュラスのジオメトリシステム:始まり[終了]


10

ポピュラス:友達との始まりのようなゲームを開発したいと思っています。しかし、彼らが世界に使用したジオメトリのタイプを見つけることはできませんでした。

すべてのタイルは同じサイズです-すべてのタイルは正方形です

つまり、三角形が存在するため、正二十面体になることはできません。また、すべてのタイルが同じサイズであるとは限らないため、標準的な球のジオメトリになることもできません。

誰かが私を助けてくれますか?


1
Uberの人たちは今、「Planetary Annihilation」と呼ばれる私の夢のゲームを作成しているので、彼らは問題をどのように解決したかについての考えと技術も共有しました。Mavorのこのブログ投稿は本当に素晴らしいです:mavorsrants.com/2013/02/planetary-annihilation-engine.html
FlashFan

これは、あなたの質問に直接答えではありませんが、ここにいくつかの有用な情報を見つけることができるかもしれません:gamedev.stackexchange.com/questions/56231/...
DaleyPaley

特定のゲームが特定のタスクをどのように達成したかに関する問題であるため、私はこの問題をトピック外として締めくくります。

回答:


6

表示されている三角形は、おそらくレンダリングシステムの製品である可能性があります。最終的に、すべてを三角形に分割してレンダリングする必要があります。

これを行うことをお勧めします。「球体テッセレーション」をgoogle(画像)で検索してください。あなたはこれを行う多くの方法のアイデアを得るでしょう。あなたのゲームは、Populous:The Beginning(ちなみに私が大好きな素晴らしいゲームです)とまったく同じ方法でテッセレーションする必要はありません。必要がない場合は、正方形のタイルを使用する必要さえありません。六角形、三角形、五角形、凧のような任意の四辺形、またはボロノイテッセレーション(不規則な非反復ポリゴン)を使用できます。

ゲームロジックに使用されるテッセレーションで重要なのは接続性です。つまり、「グリッド」が移動目的で(ある程度)接続されたグラフを形成するという事実です。

編集:おそらく、彼らがやったことは、StarControlの近接攻撃に少し似ています-実際には、ラッピング2Dグリッド(xとyのモジュロ)があります。次に、球を表示すると、一度に1つの半球しか表示されないため、目立った歪みをあまり発生させずにタイルをマッピングできます。ズームを近づけると、すべてが完璧に見えます。


非正方形のタイルの問題はテクスチャリングです。テクスチャイメージを作成してから、UVを計算して世界にマッピングするのは非常に困難です。正方形があれば、それは可能な限り簡単です。A *を使用すると、あらゆる種類のタイルでパスファインディングが簡単になります。
FlashFan 2011

(地球の世界地図で使用されている)球の2Dパースペクティブプロジェクトの問題は、正方形のタイルを取得しているときに反りも発生することです。つまり、極に向かってタイルがますます小さくなります。UVマッピングの問題に簡単に対処し、ゲームロジックの目的でタイルが適切に分散されるようにするには、何がより重要ですか。P:TBが何を使用しているのかがわかったら、知りたいと思います。
エンジニア、

私は両方の方法は不可能だと思います...グリッドを有効にできるP:TBのマップエディターがあります。タイルとして明確に使用されている正方形があります。しかし、P:TBの奇妙な点は、惑星全体を見ることができるか、その一部を見ることができるということです。間には何もありません。私は彼らがそれを偽造したかもしれないと思うので、結局それは球のように見えるだけです。しかし、よく
わかり

私はただそれを考えていました。おそらく、彼らがやったことは、StarControlの近接攻撃に少し似ています-実際には、ラッピング2Dグリッドがあります(xとyのモジュロ)。次に、球を表示すると、一度に1つの半球しか表示されないため、目立った歪みをあまり発生させずにタイルをマッピングできます。ズームを近づけると、すべてが完璧に見えます。
エンジニア

^^わかりました、それは本当に偽物だと思います。惑星全体を見ると、惑星が完全に丸い(丘がない)ことは、通常の球のジオメトリが使用されていることを示しています。我々はここでそれを見ることができます:s.uvlist.net/l/y2008/09/53528.jpg
FlashFan

14

ここでの問題は、人口の多い地図がまったく球ではないことです。これらは実際の射影平面であり、画面上で操作されて実際の球体よりも球体のように見えるフラットトーラスに似ています。

例えば:

  • ポピュラスマップはポピュラスエンジンの外側で見たときに正方形です
  • ゲーム内の人口の多いマップは、通常からクローズアップ/オーバーヘッドビューに移動することにより、曲率を表示/非表示するために視覚的にワープされます
  • オーバーヘッドグローブを表示すると、地形が視覚的にゆがんで球形の外観になります。
  • 非ユークリッド幾何学を使用して世界中をナビゲートできます

ここに画像の説明を入力してください

ゲームは、3Dの3人称視点からカメラを可変高さに配置し、360度回転できるので、プレーヤーは惑星の地形をすばやく移動できます。これは、通常の球体ではなく、実際の射影平面です。戦争の霧がないマップでは、プレイヤーはいつでも対戦相手が何をしているのかを見ることができます。3Dアクセラレーションの広範なサポートにより、プレーヤーはゲームを16ビットまたは32ビットカラーで表示できます。風景とリアルタイムの構造物構築とフォロワーの動きも表示されます。

また、ここに注意してください:

ここに画像の説明を入力してください

概要が地球の半分である場合、ミニマップであるのに、なぜミニマップはより多くの水を表示するのですか?そして、水面のテクスチャーは、端にビューのほぼ側面を表示することにより、球の実際の比率を反映しないのはなぜですか?

また、他の質問のコメントにも記載されているように、このスクリーンショットでは、惑星が完全に丸いことに注意してください。

ここに画像の説明を入力してください

もしそれが真の球体だったとしたら、惑星の端から丘や物体が突き出ているのを見ることができるでしょう。たとえば、これは惑星消滅です。地平線上に突き出ている木々や崖が見えます。

ここに画像の説明を入力してください

代わりに、現代のゲームでは、二十面体をテッセレーションすることをお勧めします。あなたが選択したプログラミング言語でそれを行う方法についてSOで多くの質問を見つけるでしょう

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.