タグ付けされた質問 「2d」

2Dは、座標がX値とY値で表される2次元空間を指します。

1
マルチレイヤーの2Dタイルマップにライトとシャドウを実装するにはどうすればよいですか?
私は最初からアイソメトリックゲームを作成している最中です。ライトとシャドウを追加する方法や方法を知りたいのですが。 ここまでのコードはここにありますが、今のところ、マップはtrue / false値の単純な3D配列であることを知っていれば十分でしょう。これは環境のショットです: それが単一レイヤーのタイルマップである場合、それは簡単です。必要な2dの簡単なレイキャスティングを理解できます。 ただし、私のマップには複数のレベルの高さと洞窟のような領域があるため、そのために説得力のある影を作成する方法がわかりません。おそらく、ブロックごとのソリューションが唯一の現実的な方法ですか?


1
GLSLフラグメントシェーダーでこの種のリップルを実装する方法は?
だから私はすでに反射部分を実装しました: uniform sampler2D texture; uniform vec2 resolution; uniform vec3 overlayColor; void main() { vec2 uv = gl_FragCoord.xy / resolution.xy; if (uv.y > 0.3)// is air - no reflection or effect { gl_FragColor = texture2D(texture, vec2(uv.x, uv.y)); } else { // Compute the mirror effect. vec4 color = texture2D(texture, vec2(uv.x, 0.6 …


3
ブロックベースの2Dゲームでオクルードライティングを実装するにはどうすればよいですか?
ゲーム内オブジェクトでブロックできる2Dライティングが欲しい。私のゲームにはトップダウンビューがあり、すべてのゲームオブジェクトは長方形で表されます。 10x10の世界があり、1x1にライトを配置し、そのライトの周りに壁を配置するとします。光源が壁に遮られているため、1x1で光源を見ることができるようにしたいのですが、他の場所では光源を表示できません。 光線を当てることで効果があると聞いたことがありますが、実際にはどのように機能しますか?

1
ワームゲームから2Dサイドオンウェーブエフェクトを再作成します
私はワームから波/水の効果を再現しようとしています(ここhttp://youtu.be/S6lrRqst9Z4?t=31sを参照してください)実際にはスプライトではなく、正弦波のようなものによって手続き的に生成されていることがわかります。 誰かがこのようなものを以前に作成したことがありますか?または私はそれについてどうやって行くのですか?

2
OpenGLの原点を画面の左上に変更する場合、何を心配すればよいですか?
自己啓発のために、私はSDL / OpenGLを使用してC ++で2Dプラットフォーマーエンジンを書いています。最初はsdltutorials.comとlazyfoo.netのチュートリアルを使用して純粋なSDLから始めましたが、現在はSDLを使用してOpenGLレンダリングコンテキストを作成し、OpenGL関数でレンダリングしています(特に即時モードですが、VAO / VBOについて学習しています) )。インターフェイス、オーディオなどにのみSDLを使用しています。 SDLは、画面の左上を原点とし、正のy軸を下に向けた座標系を使用します。OpenGLで正投影を設定してこれをミラーリングするのは簡単です。 テクスチャ座標が0から1までの値を持つ右側のシステムであることを知っています-レンダリングする前にテクスチャを垂直に反転(まあ、ロードする前にファイルを反転)すると、正しくレンダリングされるテクスチャが生成されます...描画している場合は問題ありませんテクスチャ全体ですが、最終的にはタイルセットを使用し、問題を想像できます。 これを行うと、レンダリングに関して何を気にする必要がありますか? 誰かが何かアドバイスをしたり、自分でこれを行って将来の落とし穴を指摘したりできるなら、それは素晴らしいことですが、実際にはどんな考えでもありがたいです。
11 c++  opengl  2d  sdl 

3
粒子で圧力をシミュレートする方法は?
私が構築しているUnityゲームで球形の粒子のコレクションを使用して圧力をシミュレートしようとしています。問題に関するいくつかのメモ: 目標は、常に変化する2Dスペース/ボイドを小さな摩擦のない球で埋めることです。ゲームは、このスペースに押し込まれるオブジェクトの増加する圧力をシミュレートしようとしています。 レベル自体は常に左から右にスクロールします。つまり、スペースの寸法がユーザーによって変更されない場合、自動的に小さくなります(スペースの左端の部分が画面外にスクロールし続ける)。 これらの問題に取り組むために私が取ることができるアプローチは何ですか? 塗りつぶすスペースがある場合にそれを検出し、そのスペースに球を追加するタイミングを知る。 縮小するときにスペースから球を削除します。 より多くのスペースが作成されたときに球が「外側に爆発する」ように球への圧力をシミュレートする戦略。 この画像が示すように、私が考えている現在のアプローチは、画面の外にあり、画面と一緒に動く、絶えず動く壁を使用しています。 。 この動く壁は、球を空間に押し込み、閉じ込めます。新しい球を追加する場合、私は(1)空きスペースを検出すると球を複製する、または(2)スペースの左側(壁がある場所)にスポーンする-残りの球をスペースを埋めます。これは実際には圧力を作成/シミュレートしない可能性が高いため、アイデア#1の問題を予測します。アイデア#2はより有望に思われますが、これらの新しい球のパーティクルがスポーンする場所を提供する方法(およびスペースがない場合にスポーンすることの影響)の問題を提起します。 あなたの知恵を前もってどうもありがとう!
11 2d  unity  physics 

6
2,000万タイルのマップでゲームのメモリが不足します。どうすれば回避できますか?
余分な巨大なマップをロードしているときに、ロードメソッドがメモリ例外をスローし、マップタイルの新しいインスタンスが作成されます。少なくともサーバーアプリ(および可能であればクライアント)でマップ全体を処理してもらいたいのですが。この問題を解決するにはどうすればよいですか? UPD:ここでの問題は、使用する空きメモリがまだあるときにゲームがクラッシュしないようにする方法です。チャンクでマップを分割することに関しては、それは良いアプローチですが、私の場合には望みのものではありません。 UPD2:最初に私は行って、タイルクラスのすべての新しいインスタンスにテクスチャを割り当てました。今では、約4分の1のスペースで済みます。皆さんのおかげで、今はまだ塊に分割することを考えずに巨大なマップを実行できます。 UPD3:コードを書き直して、タイルプロパティの配列がより速く機能するか、メモリ消費が少ないかどうかを確認した後(オブジェクトプロパティとしての各タイルのプロパティよりも)、それを試すのに多くの時間がかかっただけでなく、パフォーマンスは向上せず、ゲームのデバッグが非常に困難になりました。

4
世界を動かすか、プレイヤーを動かすか?
私は、横スクロールゲームを開発しようとしています。プレーヤーの目標は、タッチダウンする前に、できるだけ横軸に移動することです。水平軸に戻る必要がないことに注意してください。 私は、OpenGLとBox2dを使用するAndEngine for Androidでこれを開発しています。 開始する前に、何か重要なことを決定する必要があります。プレイヤーの周りの世界を使用して動きをシミュレートするか、実際にプレイヤーを動かして、ゲームエンジンのカメラ機能で彼を追跡する必要がありますか? どちらのアプローチにも長所とフォールバックがあり、どちらが最適であるかはわかりません。たとえば、途中でパワーアップを追加し、アニメーション化された背景を簡単にするにはどうすればよいでしょうか? ありがとう!

2
ワールドツープレイヤーインベントリシステムを作成する方法は?
XNA内に在庫システムを実装しようとする問題に直面しています(実際には問題ではなく、どのプラットフォームでもかまいません)。ここに私が頭を抱えようとしている問題があります: どのようにして世界からアイテムを入手し(あなたがモンスターを殺すと鎧を落とすと思います)、それを私のプレイヤーのインベントリに入れることができますか? インベントリが単なるアイテムのリストである場合、技術的には、クラスに複数の処理を行わせずに、世界からスチールソードをプレイヤーのインベントリに入れるにはどうすればよいですか? 私は現在、一意の16進数値、そこにあるアイテムの数(積み重ね可能、矢印など)、インベントリ内のレンダリング用のテクスチャ、およびその他の重要でないプロパティ(名前、説明など)を含むアイテム構造体を持っています。 既存のアイテムクラスを変更して、ワールドポジションと衝突検出(アイテムが地球を通り抜けてほしくない)を格納する必要がある場合は、設計が悪いでしょう。 考慮事項をありがとう!
11 xna  c#  2d 

3
高速で正確な2D衝突検出を実装するにはどうすればよいですか?
2つ以上の2Dオブジェクトが衝突しているかどうかを検出する方法はよく知っていますが、衝突をチェックするかどうかを決定する方法に興味があります。以前のプロジェクトでは、すべてのオブジェクトを他のすべてのオブジェクト(O(n ^ 2)レベルの愚かさ)に対してチェックしただけで、滑らかではないゲームプレイが作成されました。 さまざまなフォーラムが、クワッドツリー、Bツリー、および他のあらゆる種類のツリーや構造を思いつくことができます。 衝突をチェックするかどうかを決定するための最も効率的な構造は何ですか?

3
Age of Empires IIのパースペクティブの名前は何ですか?
Age of Empires 1の「パースペクティブ」を2Dスプライトゲームとして説明します。 以下は、Age of Empires IIのスクリーンショットです。「見通し」をどのように説明しますか?2Dスプライトゲームですか? 「遠近法」は正しい言葉ではないかもしれません。そうでない場合、何を使用すればよいですか?

2
遮断のベクトルを計算する方法は?
2次元空間と1つの友好的な宇宙船が静止していて、1人の敵が実際の位置、速度、方向がわかっている友好的な船に直接移動していません。 友好的な船は、敵と戦うために射程内にそれ自体を入れたいと思っています。 実際には、実際の位置を移動する船に直接ベクトルを設定し、フレームごとに再計算して、ある種の「丸い」飛行経路を作成しています。 私が欲しいのは、敵がそれまでのコースを変更しないと仮定して、射程距離に到達したときに敵が(おそらく)持つであろう位置に直接直線のパスを設定することです。 最初の「単純な」実装として、友人がすぐに0から最大にスピードアップできると想定すれば十分です。 優先される実装は、友人の加速機能を考慮したものであり、速度のためにインターセプトが不可能である場合を知っています。静止状態からだけでなく、あらゆる始動速度で機能するはずです。プラスは、それがブレーキングさえ考慮している場合です(光速での戦いは、与えられた宇宙では非常にエネルギー効率が悪いです)

3
2Dトップダウンマップ:正規化かどうか?
私はゲームプログラミングの初心者ですが、この質問の定式化が不十分な場合、私の側のだらしさではなく、ゲームプログラミングの経験の欠如であることに注意してください。 私がコーディングする予定のゲームでは、トップダウンの2Dマップを「世界」として使用します。ワールドはウィンドウよりも大きくなる場合があり(ウィンドウはズームインまたはズームアウトできます)、車両はワールドの任意のポイントに配置できます(=タイルマップではなく、空間は「連続的」です)。 例で明確にするために:世界が1000x1000メートルの地形である場合、車両は(327.31、720.4)メートルの位置にあります。 私の質問は、内部で世界を表す最も便利な方法は何ですか?私はこれらの可能性を考えることができました: 何もせず、対象物を扱っているかのようにメーターを使用します。 最大ズームで1000メートルを表すためのピクセル数として世界サイズを定義するピクセルに正規化し、 サイズ1の正方形として単語を定義する1に正規化する ...しかし、他にもあるかもしれないし、私の一部は意味をなさないかもしれないと確信しています。それは私の最初のゲームであって、私は自分の前にある問題の明確な写真を持っていないというだけのことです。合理的に正しい初期選択を行うためのガイダンスをお願いします。 お時間をいただきありがとうございます。
11 2d  maps 

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