「2.5D」環境とは何ですか?


31

「2.5D」という用語の意味がわかりません。2.5Dと3D環境の違いについては特に混乱していますが、両方について異なる定義と記事を読んでいます。2.5Dが3Dのような部分は理解していますが、2.5Dが異なる部分は得られません。

それでは、ゲームが2.5Dであるとはどういう意味ですか?たとえば、ゲームは2.5Dで表示されますか?

マリオ


10
私の知る限り、スプライトが3Dの外観をシミュレートするために使用されているときの2.5Dです。固定カメラを持っているが、まだ3Dジオメトリで作業しているときはいつでも、その3Dゲームです。スクリーンショットから、マリオは3Dモデルであるように見えるため、ゲームは完全な3Dのようです。3Dをエミュレートするか、実際に3Dジオメトリを典型的な3Dパイプラインでレンダリングするかがすべてです。
グリムショー

@Grimshawでは、2.5Dとは、たとえば3Dモデルでエンジンを2Dにできるということですか?この種のゲームを2Dエンジンと3Dエンジンで作成する場合、対応するものがあると確信しています。彼らは何ですか?3Dのパフォーマンスコストは?
mathieug

4
2.5Dとは、3Dのように見える場合でも、2D画像(スプライト)を使用して世界をレンダリングすることを意味します。2Dで完全にレンダリングされた2.5Dゲームの例については、Clash of Clansなどのアイソメトリックゲームを確認してください。ただし、3Dゲームのように見えます。ワールド3Dモデルの配置を開始すると、完全な3Dになり、2.5Dの用語は適用されなくなります。つまり、カメラは3Dをレンダリングしているかどうかとは関係ありません。3Dは、投影やカメラの動作ではなく、ジオメトリに関するものです。
グリムショー

この質問は、特定のゲームの機能に関するものであるため、トピック外のようです。「2.5D」という用語の定義または意味は何であるか(だけ)を尋ねる質問(ただし、既に1つが浮かんでいるように感じます)が、特定のゲームがそうでないかどうかを尋ねるゲームの作成とは関係ありません。2.5Dゲームを作成する必要があるかどうか、なぜ客観的でないかを尋ねます。
ジョシュ

3
@JoshPetrie何?彼の理解があいまいさをもたらす場所の例を追加すると、質問が一般的に有用になるのをどのように防ぐのですか?この場合(コアの質問は完全に有効ですが、OPが不器用に説明しているためにOPがわずかに膨らんでいる場合)、質問は未解決のままにしておく必要があります。重複している場合は、重複として閉じます。
ClassicThunder 14年

回答:


60

2Dおよび3D(おそらくご存じのとおり)という用語は、ユークリッドワールド空間の空間次元の数を指します。この次元は序数でなければなりません。半次元のようなものは存在しないため、2.5Dという用語は実際にはナンセンスな用語であり、本質的な意味はありません。とは言っても、2.5は2と3の間の「どこか」であるため、2.5Dは一般に「2Dと3Dの間のどこか」の線に沿ったものを意味します。

個人的には、この用語を使用して、ゲームのグラフィカルな世界空間と論理的な世界空間の次元が異なる場合を指します。特に、ここには2つの異なるバリアントがあります。

  • 2D論理および3Dグラフィカル。たとえば、2Dのゲームメカニクスと物理学を備えたプラットフォーマーですが、3Dメッシュとパースカメラでレンダリングされます。パックマン、ブレイクアウトなどの古典的なアーケードゲームのほとんどのリメイクは、このカテゴリに分類されます。下の写真:Pineapple Smash Crew

Pineapple Smash Crewは2Dの世界で行われますが、3Dでレンダリングされます。

  • 3D論理&2Dグラフィカル。例には、3Dゲーム世界を持っているが2D等角図でレンダリングされるGnomoriaやSimCity 2000などのゲームが含まれます。下の写真:Xenonauts

Xenonautsの地上攻撃は3Dグリッドで行われますが、完全に2Dスプライトを使用してレンダリングされます。

この用語のもう1つの一般的な使用法(私が使用しているものではありません)は、3D グラフィックスとビルボード化された 2Dグラフィックスの組み合わせを利用するゲームを指します。この場合、この用語はゲームの論理的な次元をまったく説明しません。実質的にすべての3Dゲームは、パーティクルシステム、遠隔オブジェクトプロキシ、インワールドUIオーバーレイなど、何らかの方法でビルボードを使用します。したがって、この用語は通常、非背景オブジェクトの大部分が2Dグラフィックスを使用し、2.5Dと3Dの境界が多少ぼやけている場合にのみ使用されます。


17
ちなみに、分数次元のようなものがありますが、それはゲーム開発用語「2.5D」とは何の関係もありません。フラクタルやその他の奇妙なトポロジカルな形状を研究する際に登場します。たとえば、Quadratic Kochサーフェス(タイプ2)のハウスドルフ次元(フラクタル次元を定義する一般的な方法)は正確に2.5です。
リリーチョン14年

9
@IstvanChungはい、技術的には正しいです。言及することを検討しましたが、問題を混乱させるだけだと考えました。ゲーム開発者のほとんどは、n次元ユークリッド空間以外のトポロジ空間について知る必要はないと思います。もしそうなら、フラクタルについて話していないことを理解している可能性があります。
bcrist 14年

1
@ファラプと...完了!
bcrist 14年

2
@bcristもう一度投票することができたら、誰かの脳の力で私に賛成してくれるでしょう。
ファラプ14年

2
私はこの論理的対グラフィカルな区別が本当に好きです。ここでの回答/コメントのほとんどは、2.5Dが2Dグラフィックスを意味すると想定しているように見えますが、実際には3Dグラフィックスを考える傾向があります。ので、あなたの論理的な対グラフィカルな区別は2.5Dの両方の概念を包含するための素晴らしい方法です
jhocking

27

「2.5D」という用語が適用された最初のゲームはDoomでした(Wolfenstein 3Dもある意味で資格があります)。

Wolfenstein 3Dは、基本的に3Dプレゼンテーションを備えた2Dゲームでした。2Dの迷路をナビゲートし、すべての床が平らで、すべての天井が同じ高さで、窓がなく、ドアが床から天井まであり、横に開いていたため、他のオブジェクトの上または下にいることはできませんでした。ゲームはレイキャスティングを使用して、画面の列ごとに、その方向に壁がどれだけ離れているか、壁にどのテクスチャがあったかを把握しました。次に、壁のテクスチャの列が距離に反比例する高さで描画され、上下のスペースが床の塗りつぶしと天井の塗りつぶしでペイントされました。敵とオブジェクトはスプライトであり、アスペクトの数は限られており、そのサイズは距離に比例します。

DoomはWolfenstein 3Dと非常によく似たテクノロジーを使用していましたが、より多くの3Dエクスペリエンスを得るためにそれを悪用しました。地図はまだ2D、2Dバイナリ空間分割を使用して表されます(したがって、.BSPマップファイル名)。タブを押したときにオートマップで見たのは、マップの直接2Dレンダリングでした。しかし、各セクターには独立した「床の高さ」と「天井の高さ」があり、エッジには上下のテクスチャがありました(周囲の一部よりも天井の高さが低い、または床の高さが高い場合に使用されます)。これにより、階段、窓、プラットフォーム、プール、およびその他の効果が可能になりました。エンジンは、最終的に壁にぶつかる前に通過した複数のセクターのリストと、それぞれのテクスチャを保持できなければなりませんでした。しかし、あなたはまだ本当の3Dアーキテクチャを持つことができませんでした-床の上げられたセクションを使用して、いくつかのスライムに「橋」を作ることができますが、下にあるものは不可能です橋。ゲーム内での位置はまだXとYのみです。プレーヤーが自分の高さを制御できるのは、物と、エレベーターで、床の高さを変更するためにスクリプト化された単なるセクターです。敵はまだスプライトであり(より多くの側面があったと思いますが)、衝突検出は2次元のみであり、ゲームには3Dモデルが見つからなかったため、ショットは高さで「自動照準」します。

異端者とヘキセンは、時として「2.75D」と呼ばれるまで、さらに一歩進んだDoomから派生したエンジンを使用しました。彼らはほとんど同じアーキテクチャ上の制限とスプライトベースの敵を抱えていましたが、プレイヤーが上下を見たり(ビューを傾けたり、エンジンが壊れるまで)、ジャンプ、飛行、しゃがむ能力を追加しました(高さを個別に変更する)。


1
+1、人々がレイキャスティングに言及したとき、2.5Dという用語を聞いたことがあります。良い説明!
ルーベン14年

5
+1この回答は、用語の最初の歴史的使用に関して正しいです。
R ..

これは最も(実際に)正解です。なぜそれが最初ではないのかは
わかり

この答えは歴史的に正しいかもしれませんが、業界標準として受け入れられている、または期待される定義ではありません。現在、2.5Dと記述されているゲームはすべて、3Dの外観を持つ2Dレンダリングを持つと広く理解されています。
テッドビガム

Hereticのようなゲームのルックアップ/ダウンの制限は、オブジェクトの高さがX座標ではなく画面のY座標にのみ考慮されるため、シーンのすべての垂直線が垂直としてレンダリングされるという事実に基づいていると思います。浅い角度で見下ろしている場合、これはあまり目立ちませんが、急な角度では非常に好ましくありません。急な角度でエンジンが壊れたのではなく、単に幻想が壊れたとは思いません。
supercat

11

2.5D

主にビデオゲーム業界で使用される2.5D(「2半次元」)、¾パースペクティブ、および疑似3D ar用語。2Dグラフィカル投影や一連の画像を生成するために使用される同様の手法のいずれかを説明するために使用されます(またはシーン)が実際にはそうでない場合に3次元(3D)の外観をシミュレートする、または2次元平面に制限されている3次元のビデオゲームでのゲームプレイ。

私の経験では、どの定義が強調されるかは、話し相手の年齢に依存します。

  1. 高齢のゲーマーは、実際にはそうではないが、一連の画像(またはシーン)が3次元(3D)の外観をシミュレートするために使用される2Dグラフィック投影および類似の手法を使用する傾向があります。

  2. 若いゲーマーは、2番目の定義「2次元の平面に制限されている3次元のビデオゲームでのゲームプレイ」を使用します。

個人的には、2番目の定義を使用します。私の意見では、Trine、Donkey Kong、およびSuper Mario Bros Wii Uはすべて2.5Dです。さらに、2.5D Steamタグは2番目の定義を使用します。私はこれが典型的なゲーマーがどのようにコンセプトを定義するかについての良いリトマス試験であると考えています)、そのため、第2の定義がより正しいと信じています

3D

3次元で計算された3Dゲームグラフィックスを備えたビデオゲーム。これにより、2番目の2.5D定義のスーパーセットになります。


プラットフォーマーShadow Complexは非常に興味深い事例であることがわかりました。なぜなら、相互作用は3Dで発生する可能性があり、敵の場所でさえ発生する可能性があるからです。しかし、彼らに銃を向けるには、3Dからの投影がスクリーン上でそれらを配置した場所と一致する2D角度を指す必要がありました。その後、キャラクターはその角度の投影を解除し、銃をZ軸に向けます。
セスバティン14年

6

2.5Dは、2Dを3Dに見える便利な方法です。
たとえば、3Dエンジンを使用し、ゲームプレイを2Dプレーンのみに制限する場合、定義の線を実際にぼかすことができると思いますが、個人的には、2.5Dは3D に見えますが、2D として機能すると考えています


ありがとう。私のプロジェクトのアイデアは3Dのように見えますが、2Dまたは3Dのエンジンなどについてはまだ疑問です。私が投稿したスクリーンショット向けの2.5D / 3Dについて詳しく教えてください。
mathieug

スクリーンショットが見えないので(職場でブロックされているので)、コメントできません。
DFreeman 14年

3

投稿したゲームのスクリーンショットは3Dゲームです。

3Dゲームでは、頂点を使用してオブジェクトを描画し、実際の3Dオブジェクトを描画します。その後、オブジェクトを色付けしたり、テクスチャを付けたりします。

2Dゲームでは、オブジェクトはスプライト/スプライトシートなどから取得されます。

2つの違いは、表示方法です。スプライトは平らな紙のようなものです。別のピッチや角度で表示することはできません。そうしないと、スプライトが歪んでしまいます。3Dオブジェクトでは、カメラが移動すると、オブジェクトが3Dであるため、オブジェクトのさまざまな部分を見ることができます。

2.5Dゲームでは、これらの両方の世界を組み合わせています。カメラを動かしてさまざまな角度を見ることができないからといって、3Dではなくゲームを作らないという点に留意してください。これを決定するのは、その中にあるオブジェクトです。

2.5Dゲームの良い例は、ラグナロクオンラインです。2.5Dになっているのは、世界の大部分が3Dオブジェクトに感染していることです。建物、風景などはテクスチャ3Dオブジェクトです。頭上カメラを回転させて、これらのオブジェクトの異なる側面を同時に見ることができます。建物の正面だけでなく、左/右/屋根エリアを表示できます。ただし、プレーヤーは2Dスプライトであり、上に立つように配置されています。カメラを回転しすぎると、ゲームはそのキャラクターのスプライトシートの別のセルを読み込んで、立っているように見える方法を変更する必要があります。3Dではないため、キャラクターのさまざまな角度を表示することはできません。角度は、カメラのビューに応じて動的にロードされます。

http://sprites.technoized.com/images/sprite/ro/gm_m.png

これはゲームのスプライトシートです。ただ見ただけなら、それは2Dゲームのものだと思います。単独で、あなたは正しいでしょう。しかし、3Dの世界に配置されると、2.5Dゲームができます。


2.5D単なる人間の解釈など、これについて技術的なものではないので、誤解を招くと思います。たとえば、3D環境のすべて(テクスチャ付きクワッドなど)にビルボードテクニックを使用し、常に回転させる場合は、あなたのゲームは何ですか?2.5Dと言う人もいるかもしれませんが、Z深度があるため、ほとんどのパックは3Dと言うでしょう。技術的には、3D頂点(したがって、z次元)を使用する場合は3Dであり、X / Y(スーパーマリオブロスなど)のみを使用する場合は2Dです。ただし、3D環境(文字を含む)で2D(x / y)のみを使用する場合、3Dのままですが、解釈では 2.5D です。

2

多くの場合、2.5Dは「等尺性」を表す別の方法です。2Dグラフィックは、3Dの外観を与えるように描画されますが、実際には3D座標をシミュレートするわけではありません。等尺性グラフィックに関するウィキペディアの記事を参照してください:http : //en.wikipedia.org/wiki/Isometric_graphics_in_video_games_and_pixel_art

要点は、2.5D /アイソメトリックでは、グラフィックを計算するためだけにx軸とy軸を持つ2D座標系を使用しているということです。グラフィックは単純に2Dスプライトであり、通常は3つの顔が見えるように描画され、(x、y)座標を使用して画面に配置されます。スプライトは、3Dでモデリングし、複数の角度から3Dモデルの2Dスプライトを作成することによって作成されることもあります。

移動するオブジェクトは、特徴的に見ることができる角度がわずかです。アイソメビューでキャラクターを回転させると、スムーズに回転しませんが、正面、3/4、側面など、いくつかの明確な角度が表示されます。これは、それぞれのユニークな画角がまったく新しいスプライトのセットを必要とするためです。

このタイプのシステムの制限のため、アイソメトリックゲームは通常1つのカメラアングルのみをサポートします。等尺性ゲームのもう1つの際立った特徴は、通常、消失点がないことです。実生活でオブジェクトを見るとき、オブジェクトがあなたに近い場合、オブジェクトはあなたの視覚でより大きく見えます。オブジェクトが遠くにある場合は、小さく表示されます。等尺性ゲームでは、空間内のどこにいても、すべてのオブジェクトは通常同じサイズで表示されます。

3Dゲームと比較して、x、y、zの3つの軸すべてをシミュレートします。非常に低いレベルでは、コンピューターはx、y、zをx、yに変換してモニターに表示しますが、より高いレベルでは、アーティストは実際に3軸上のポイントを操作してオブジェクトを表しています。コンピューターはオブジェクトの形状に関するすべての情報を持っているため、そのオブジェクトがどのような角度で見えるかを動的に計算できます。

一部のゲームは、2.5Dと真の3Dが混在しています。私が考えることができる例は、3D背景と2Dスプライトを特徴とするDisgaeaシリーズです。


2

どの定義がより受け入れられるかはわかりませんが、私と私の前の会社の人々は、「等尺性3Dのように見えるが、2Dスプライトを介してレンダリングされるゲーム」は2.5Dであると考えました。

では、なぜそうしたのかを説明しましょう。一般に、多くのオブジェクトを含む3Dワールドをレンダリングすると、処理に過度の圧力がかかり、FPSカウントが低下します。そのため、これを克服するために、一般にMayaなどの3Dレンダリングソフトウェアでオブジェクトを作成し、スプライトとしてレンダリングしました。ゲームで使用できます。レンダリング中に角度が考慮されたことは言うまでもありません。したがって、パブリッシャーとこの技術について話すために、通常この用語を使用しました。2Dの世界のように見える3Dの世界は、技術的にはまだ3Dです。したがって、通常、このメソッドの用語は使用しませんでした。ここで私のビットを共有する必要があると思った。


1

通常、「2.5-D」という用語は、2つの非常に異なるスタイルのゲームの1つを指します。

次のいずれかを意味します。

1)2Dレンダリングテクニックを使用するゲームですが、3つの空間次元で制御します。通常、グラフィックトリックを使用して、実際に3Dでレンダリングされたかのように表示します。これは90年代には非常に一般的でしたが、今日ではそれほど多くありません。(例:「DOOM」、「Duke Nukem 3D」、「Wolfenstein 3D」)

2)完全に3Dでレンダリングされたゲームですが、1つ以上の2D平面に沿って排他的に制御します。このスタイルは今日でも非常に人気があります。(例:「リトルビッグプラネット」、「ニュースーパーマリオブラザーズ」、「トライアルHD」)

モデルビューコントローラーアーキテクチャパターンを使用する場合、ゲームの最初のスタイルには、データを3次元で表す「モデル」がありますが、ユーザーに2次元でのみ表示する「ビュー」があります。ゲームの2番目のスタイルは逆です。


0

2.5Dでは、2Dアセット/レンダリングテクニックを使用して、3D環境の感覚を与えます。

さて、その定義では、次の曖昧な可能性のあるシナリオでは、いくつかの詳細が必要です。

ゲームA

3Dグラフィックス、GPUアクセラレーション、およびすべて(ゲームオブジェクトは画像ではなくメッシュ)を使用し、カメラの角度を固定します。さらに悪いことに、投影は正投影で、古典的な63.43度です。グラフィックが2Dではないことを一見してわかる唯一の方法は、3DGCは、細心の注意を払ってレンダリングすることを除いて、レンダリングに使用される投影に関係なく、手描きのスプライトと簡単に区別されるためです。さまざまなレンダリング手法、パラメーター、シェーダーなどを試すことができますが、それらが3Dメッシュであるという事実を隠そうとするのは大変です。

ゲームB

ゲームAの移植版ですが、3Dグラフィックスをうまく処理できない、またはまったく処理しないハードウェアを搭載していることが知られているプラ​​ットフォームをターゲットにしています。次に、ポートはメッシュをスプライトに置き換えます。たとえば、衝突には3Dバウンディングボックスが使用され、オブジェクトにはx、y、zの値を持つ位置プロパティがあります。ゲームロジックはほとんど触れられていないかまったく触れられておらず、レンダリングコードのみが変更されたためです。

ゲームBのスプライトはゲームAの3Dアセットのレンダリングであり、より曖昧にするために、ゲームAは複雑なシェーダーを必要としないため、そこにあるすべてのGPUの99%でフレームをゲームと区別することはできませんゲームAのフレームのB

2.5Dでは、ゲームオブジェクト間の相互作用は、3Dの錯覚が損なわれない一連の状況に限定されます。たとえば、2人のキャラクターがハグすることを表すには、2人のキャラクターが相互作用する単一の画像ファイルを作成する必要があります。キャラクターボディをパーツに分割して、正しい順序で描画することもできます。3Dでは、この問題は存在しません(2つのキャラクターが他のキャラクターのメッシュに侵入しないように正しくポーズを設定している別のものが存在します)。

ここで、これを視覚化するために、ゲームAとBにバグがあり、状況によってはプレーヤーキャラクターが別のゲームオブジェクトを通過でき、2.5Dと3Dを簡単に区別できると想像してください。


ゲームB、2.5Dレンダリング、スプライトは、その位置ベクトルのz値によって順序付けられます。この例では、正のzがダウンし、負のzがアップしています。z軸とy軸は平行ですが、zはyの0.5倍にスケーリングされます。したがって、可視領域が10yから-10yの場合、同じ領域に20zから-20zがあります。zが大きいオブジェクトは後から描画されるため、zが小さいオブジェクトの前にあるように見えます。影は床よりも上の層にありますが、他のすべてのオブジェクトよりも下の層にあるため、プレイヤーキャラクターの影は奇妙に見えます。そのため、プレイヤーキャラクターの影は立方体の上には決してありません。

2.5Dレンダリング


ゲームA、3Dレンダリング。深度バッファー(zバッファーとも呼ばれます)は、ピクセル精度の深度テストに使用されます。したがって、オブジェクトが別のオブジェクトを完全に遮る必要はなく、三角形でさえ別のオブジェクトを完全に遮る必要はありません。ピクセル精度深度テストがあります。ゲームオブジェクトを任意の方法で回転させることができ、それらが相互作用するときに現実的な結果を得ることができます。

3Dレンダリング

再開:2.5Dでは、スプライトは別のスプライトの前または後ろにあります。3Dでは、メッシュは三角形で構成されていますが、深さをテストするときの三角形は最小単位ではないため、ピクセル精度を得ることができます。もちろん、固定カメラアングルに対してアセットが作成されたため、2.5Dでのカメラの回転は不可能です。3Dでは当然ですが、3Dゲームでカメラの角度が設計によって制限されている場合は別です。


2Dグラフィックスのみをレンダリングできる場合に3Dの世界にいるような感覚を与えるためのさまざまなトリックがあります。

常に3Dを常に使用し、2.5Dを忘れないのはなぜですか?

開発者が2.5Dアプローチを好む理由のいくつかの例で考えることができます。

  • 3D API(Direct3D、OpenGL、他にもあります)を知らない、または気に入らないかもしれません。
  • ターゲットプラットフォームが3Dグラフィックス(古いデスクトップコンピューター、2Dコンソール)をうまく処理できない可能性があります。
  • あなたのチームは素晴らしいスプライトを作成できますが、3Dモデルは作成できません。

2.5Dを使用して3Dグラフィックスの結果をどの程度近似できますか?

パフォーマンスとプログラミングの複雑な地平線があります。その地平線に近づくと、プロジェクトが実際に2.5Dで実現できるのか、完全な3Dに移行する必要があるのか​​を疑い始めます。たとえば、(理論的には)2.5Dでzバッファリングを使用できますが、ビデオメモリコスト(強力なモバイルデバイスではなく、オンボードグラフィックスを備えた古いデスクトップコンピューター)を支払うことはできますか?すべてのスプライトのZマスクを保存するために追加のイメージを保持するストレージコストを支払いますか?

2.5Dの良い候補はRPGゲームです。Baldur's Gateシリーズ、またはRTSは、Age of Empires 1および2(AoE 3は完全に3Dであり、簡単に区別できます)と考えています。

便利なリファレンス:

Zバッファリング:http : //en.wikipedia.org/wiki/Z-buffering

正投影:http : //glasnost.itcarlow.ie/~powerk/GeneralGraphicsNotes/projection/orthographicprojection.html

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