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

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

2
ピクセルアートプラットフォーマーを720pから1080pにスケーリングする
私はPCとスマートフォン用のピクセルアート2Dプラットフォーマーを開発していますが、技術的な問題にこだわっています。 32x32タイル解像度と64x64文字スプライト解像度を選択しました。レベルは「スクリーン」と呼ばれるセクションに分割され、各スクリーンには40x23に近似した40x22.5のタイルがあるため、最小解像度は1280x720です。 ゲームでは、ダブルジャンプのメカニックを持っているので、各「スクリーン」に適切な垂直視野範囲が必要です。 ここに問題があります:1280x720はあまり高解像度ではありません。HDモニターでは、ウィンドウは大きくありません。解像度を2倍に拡大すると、2560x1440になり、ウィンドウは実際のHDモニターよりもはるかに大きくなります。1280x720から2560x1440の間のサイズを試してみると、グラフィックが途切れたり、変形したりします。 この問題を解決するにはどうすればよいですか?すべてのタイルとスプライトを16x16形式で再描画する必要がないソリューションはありますか?

1
複数の2Dスポットライトを作成するにはどうすればよいですか?
複数のエンティティにスポットライトを使用できる2D「スポットライト」効果を作成したいと考えています。すなわち、いくつかのスプライトがトーチを保持しているかのように。単一のエンティティ(1つのスポットライト)の場合、グラデーションスプライトをオーバーレイし、中心点でそのエンティティを追跡する手法を使用します。この手法は、単一のスポットライトでうまく機能します。これが私が話していることを説明するスクリーンショットです。 シングルスポットライト-作品 私が遭遇する問題は、この手法が複数のエンティティに拡張されないことです。別のスポットライト画像をオーバーレイすると、いくつかの問題が発生します。シミュレートされたスクリーンショットは次のとおりです。 複数のスポットライト=問題 最も明らかな問題は、目に見える角です。これは、レベル全体をカバーするようにスポットライト画像を巨大にすることで解決できますが、それは適切ではありません。2番目の難解な問題は、このテクニックを使って暗闇を効果的に増やしていることです。したがって、追加された各スプライトは、他のすべての人を暗くする効果があります。明らかに、この問題に間違って近づいています。 何か案は? 継続的な取り組み コメントにはブレンドオプションに関する議論がいくつかあります。これが私の現在の考え方です。上記の単一のスポットライトの例では、次のような画像ファイルを使用しています:(わかりやすくするために、透明部分を緑色に置き換えました) 上記で説明したように、問題は、この画像を別の画像とアルファブレンドしても、望ましい効果が得られないことです。代わりに、これが生成されます: それはブレンドオプションの問題として私を襲いません。問題は、私には、その種の画像には、透明マスクと画像(黒い正方形)が組み込まれているため、それらを分離する必要があるということです。 そのため、カットアウト透明度が組み込まれた黒い画像の代わりに、実行時に黒い正方形に対して使用される透明度マスクを使用する必要があります。それを行うとき、私はまだ伝統的な白と黒の透明マスクを使用することができません、または同じ問題に遭遇します。次に例を示します。今回は白と黒が白と黒を表します。 解決策は、それ自体が透明度を利用する透明度マスクを適用することであると思われます。このようなもの:(緑=透明) これにより、複数の透明マスクをアルファブレンドし、黒い正方形に対する透明マスクとして使用できます。アルファブレンドされた2つの透明度マスクの例を次に示します。 とにかく、それが私が実装に取り​​組んでいるアプローチです。これが機能する場合、結果を投稿します。(現時点では)わからないのは、それ自体が透明性を持つ透明マスクを使用できるかどうかです。
12 2d  sprites  camera  lighting 

1
クラス間のデータと依存関係をきれいにエレガントに処理する方法
私はSFML 2の2Dトップダウンゲームに取り組んでおり、すべてがうまく機能し、調和するエレガントな方法を見つける必要があります。 説明させてください。drawメソッドとupdateメソッドをすべてのクラスに提供する抽象ベースから継承するクラスがいくつかあります。 ゲームループでは、updateを呼び出してから各クラスを描画します。これは非常に一般的なアプローチだと思います。タイル、コリジョン、プレーヤー、およびすべてのタイル/画像/テクスチャを含むリソースマネージャーのクラスがあります。SFMLでの入力の動作方法のため、各クラスで(必要に応じて)更新呼び出しで入力を処理することにしました。 これまで、必要に応じて依存関係を渡してきました。たとえば、移動キーが押されたときのプレーヤークラスで、衝突クラスのメソッドを呼び出して、プレーヤーが移動したい位置が衝突かどうかを確認します。衝突がない場合にのみプレーヤーを移動します。 これはほとんどの部分でうまく機能しますが、もっと良くできると信じています。どうすればいいのかわかりません。 実装する必要のあるより複雑なものがあります。例えば、プレーヤーは地面のオブジェクトに近づき、キーを押してそれを拾い上げたり、それをインベントリに表示することができます。これは、いくつかのことを行う必要があることを意味します。 プレイヤーがキーを押すとルート可能なアイテムの範囲内にあるかどうかを確認し、そうでない場合は先に進まないでください。 アイテムを見つけます。 アイテムのスプライトテクスチャをデフォルトのテクスチャから「looted」テクスチャに更新します。 アイテムの衝突を更新します。形状が変更されたか、完全に削除された可能性があります。 追加されたアイテムでインベントリを更新する必要があります。 すべてを通信させるにはどうすればよいですか?現在のシステムでは、クラスがスコープ外になり、メソッド呼び出しが至る所で行われます。1つの大きなマネージャーですべてのクラスを結び付けて、それぞれに親マネージャークラスへの参照を与えることができますが、これはほんの少しだけ良いようです。 どんなヘルプ/アドバイスも大歓迎です!不明な点がある場合は、詳しく説明させていただきます。
12 c++  2d  architecture  sfml 

1
2Dヘリコプターゲーム、廊下の壁を作成する方法は?
私は古典的な「ヘリコプター」ゲーム(つまりhttp://www.addictinggames.com/helicopter.html)の適応を検討していますが、壁生成エンジンの作成方法はまだわかりません。 擬似コードへのポインターはありますか?中間のオブジェクトにはあまり興味がありません。ゲームの進行に伴って難易度が増す(閉じる、予期しない曲線を持つ)方法で側面を生成する方法のみに興味があります。

2
イベントハンドラに夢中になることはできますか?私は自分のデザインで「間違った方法」で進んでいますか?
私は、イベントハンドラが本当に好きだと決めたと思います。分析の麻痺に少し苦しんでいるかもしれませんが、デザインを扱いにくくしたり、デザインの決定に対する他の予期せぬ結果にぶつかったりすることを心配しています。 私のゲームエンジンは現在、パンニングオーバーヘッドカメラで基本的なスプライトベースのレンダリングを行っています。私のデザインは次のようになります。 SceneHandler SceneListenerインターフェイスを実装するクラスのリストが含まれます(現在はSpriteのみ)。ティックごとにrender()を呼び出し、onCameraUpdate()を送信します。SceneListenersへのメッセージ。 InputHandler ティックごとに1回入力をポーリングし、単純な「onKeyPressed」メッセージをInputListenersに送信します。SceneHandlerインスタンスを保持し、updateCamera()をトリガーするCamera InputListenerがあります。入力内容に基づいたイベント。 AgentHandler ティックごとにエージェント(AI)でデフォルトアクションを呼び出し、登録されている新しいイベントがないかスタックをチェックし、必要に応じて特定のエージェントにディスパッチします。 そのため、シーン内を移動し、基本的なステアリング動作を使用して移動できる基本的なスプライトオブジェクトがあります。私は衝突の検出に着手しましたが、これは私の設計が進んでいる方向が良いかどうかわからないところです。多数の小さなイベントハンドラを用意するのは良い習慣ですか?ある種のCollisionHandlerを実装しなければならないという自分のやり方を想像する。 AI、衝突の更新、および1つのクラスでの他のエンティティの相互作用を処理する、より統合されたEntityHandlerを使用した方が良いでしょうか?それとも、どんな種類のイベントに基づいてメッセージを相互に渡す多くの異なるイベント処理サブシステムを実装するだけでいいのでしょうか?これらすべてのサブイベントハンドラーを調整するだけの責任を負うEntityHandlerを作成する必要がありますか? InputHandlerやSceneHandlerなど、場合によっては、これらが非常に特殊なタイプのイベントであることを認識しています。ゲームコードの大部分は入力を気にせず、大部分は純粋にシーンのレンダリングで発生する更新を気にしません。したがって、これらのシステムの分離は正当であると感じています。ただし、私はこの質問を具体的にゲームロジックタイプイベントに近づいています。

2
XNAを使用したゲームアーキテクチャに関する質問
だから私はついにXNAで遊んで、2Dゲームを作ることをいじっていました(iOSで開発した友人からたくさんのアート資産があります) 多くのことは簡単に実行できるように見えますが、ほとんどの文学(たとえば、私が買った本)は2Dにあまり注意を払っていないので、私はたくさんのものに困惑しています。 私は、以下の質問についての明確化またはより多くの情報を指摘されていることを本当に感謝します: ゲームサービスのポイントは何ですか?他のGameComponentがオブジェクトを取得できるようにオブジェクトをサービスとして登録するイディオム全体を理解していますが、これを単純に公開または静的にするだけではどうでしょうか?たとえば、私の本では、Game.csクラスにSpriteBatchオブジェクトを登録することを推奨しています。とにかくGameのインスタンスは1つだけ(シングルトン)でなければならないので、これを単純にパブリック/静的にするのがどのように好ましいのかわかりません。 GameComponentまたはRenderableGameComponentから継承する必要がある場合、私は混乱しています。私はすべてのエンティティが単一のマネージャーによって作成/所有され、他の事柄についても同じになるように、マネージャー/コントローラーの設計に従うことを試みています。現在、各Manager / ControllerにGameComponentを継承させていますが、GameオブジェクトがすべてのManagerを所有し、それらの更新を手動で呼び出して描画することで、これをどのように解決できますか? ContentLoad()の前に Initializeが呼び出されることに気付きました。Initializeでエンティティ(スプライト、プレーヤーなど)の一部を作成したいので、この迷惑を見つけましたが、それらをロードすることはできません。読み込むための呼び出しがまだ行われていないため、SpriteSheetsまたはTextures。私はおそらく間違って初期化していますか、または人々はContentLoadのさらに下のテクスチャを割り当てるだけですか? それらは本当に理解していないという私の最大の「WTF」のようです

3
XNAでピクセル完璧な衝突検出を得る良い方法はありますか?
XNAでピクセルパーフェクトコリジョンを検出するためのよく知られた方法(またはおそらく再利用可能なコード)がありますか? これは、最初のパス、衝突のクイックテストにポリゴン(ボックス/三角形/円)も使用し、そのテストが衝突を示した場合、ピクセルごとの衝突を検索すると想定しています。 スケール、回転、透明度を考慮する必要があるため、これは複雑になる可能性があります。 警告:以下の回答のリンクのサンプルコードを使用している場合、十分な理由でマトリックスのスケーリングがコメント化されていることに注意してください。スケーリングを機能させるためにコメントを外す必要はありません。

3
粒子を滑らかなブロブとして描く
ゲーム/グラフィックスの開発は初めてで、パーティクル(2D)で遊んでいます。液体/水のように、粒子を互いにブロブとして近づけたい。ブロブが滑らかではない(そして大きすぎる)ため、大きな円を重ねて描画したくありません。物理学はあまり知りませんが、表面張力に似たものが欲しいと思います。 stackexchangeやGoogleで何も見つかりませんでした(正しいキーワードがわからないかもしれません)。これまでに2つの可能な解決策を見つけましたが、アルゴリズムに関する具体的な情報を見つけることができません。 それらの1つは、粒子の凹包を計算することです。等価クラスを作成することにより、ブロブを計算できます(「互いに近い」関係に)。不思議なことに私は見つけることができませんでした任意の凹面船体を計算する方法を説明するアルゴリズムを。多くの投稿(およびstackexchange間)は、これを行うライブラリまたは商用製品にリンクしています(C#で動作するにはライブラリが必要です)が、アルゴリズムはありません。また、このソリューションには、粒子の円に問題があり、中央の空きスペースが検出されない場合があります。 凹型船体の研究中に、アルファシェイプと呼ばれるものを見つけました。これはまさに私がやりたいことのように思えますが、凹型船体と同じように、実際にどのように機能するかを説明する情報源は見つかりませんでした。プレゼンテーション資料をいくつか見つけましたが、先に進むのに十分ではありません。私以外の誰もが知っている大きな秘密のようなものです:-/ 凹型の船体またはアルファ形状を計算した後、ベジエ曲線にして滑らかで素敵なものにします。 私のアプローチは少し複雑すぎると感じていますが、おそらくこれを間違った方法で解決しようとしていますか?あなたが私の問題に対する他の解決策を提案するか、私が行方不明になっている部分を説明できるなら、私はとても幸せで感謝します:-) ありがとう。

4
大きな2D横スクロールレベルの地形の描画
私は比較的良いプログラマーですが、2Dゲームにいくつかの基本的なレベルを追加するようになった今、ちょっと行き詰まっています。 私がやりたいこと:私のゲームで受け入れ可能な、大きな(8000 * 1000ピクセル)「緑の丘」テストレベル。 これを行うための最良の方法は何ですか? 見栄えがよくなくても、ラインおよびペイントバケツツールを使用してMSペイントで作成されたように見えるべきではありません。 基本的には、何らかの形の丘の形をした草で覆われているはずです。 しかし、どのように描画する必要がありますか、鉛筆ツールを取り出してピクセルごとに描画を開始することはできませんか?

5
ビジュアルアートアセットを効率的に作成するためのスタイル/テクニック
私は主にプログラマーですが、ソロプロジェクトに取り組んでいるとき、私が作ったゲームの他の部分で有能な仕事ができるようになりたいです。 私がここで具体的に求めているのは、最も効率的に作業できるようにするために、視覚資産作成のためのどのようなテクニックやスタイルを勉強し、使用すべきかということです。基本的に、開発後期の変更の可能性、他のプロジェクト用に作成された資産の再利用などを考慮して、全体として最も作業が少なくなるもの。 ここで言う「テクニックまたはスタイル」とは、ベクターアート、デジタルペインティング、ピクセルアート、ポリモデリング、彫刻などのことです。 私は主に、さまざまな手法全体の比較に興味があります。それぞれの手法で実際の作業を行った経験があまりない状況の全体像を把握するのは困難です。また、3Dゲームを作成している場合は3Dアセットを作成する必要があることは明らかですが、ここでは、2Dまたは3Dのいずれかである2Dゲームのアセットを作成する手法について説明します。
12 graphics  2d  assets  art 

5
2Dレベルの設計/編集/保存に関する質問[終了]
閉じた。この質問はより集中する必要があります。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集するだけで1つの問題に焦点を当てるように質問を更新します。 5年前に閉鎖されました。 SuperMarioのような単純な2D Sidescrollerゲームを作成することを考えました。次に、ゲームのレベルを保存、ロード、作成する方法について考えました。私が最初に考えたのは、レベルを表す単純なブロック状のpngを描画することでした。これは、プレーヤーが特別な色(おそらくライラック)を歩くことができるすべての部分を作成します。衝突をチェックできるように、ブロックまたはタイルでレベルをインポートします。 私の質問は次の とおりです:これのためのより良い方法はありますか? これの専門的な方法は何ですか? タイルとタイルに基づくマップエディターでこれを行う必要がありますか?(何らかの理由で私はこれが好きで はありませんが、タイルベースのレベルでは、どのように傾斜を実現し、どのように衝突をチェックしますか?

5
2D Game devおよびJava。OpenGL以外の可能性?[閉まっている]
閉まっている。この質問はトピック外です。現在、回答を受け付けていません。 この質問を改善したいですか? 質問を更新して、 Game Development Stack Exchangeで話題になるようにします。 閉じた2年前。 最近、いくつかの基本的なOpenGLをJavaでプログラミングし始めましたが、OpenGLとDirectXは扱いすぎて理解しきれず、退屈しています。 今では、OpenGL(またはDirectX)以外に、単純な2Dグラフィックスを作成して、ゲーム開発が制限されていてもゲーム開発を始める可能性があるのではないかと考えています。経験があれば、とにかくOpenGLを使用するでしょう。
12 2d  java 

1
均一な地形上での2D非グリッドベースの移動によるパスファインディング
私のゲームでパスファインディングの最良の解決策を探しています。マップは最終的にグリッドベースですが、エンティティはフロートを使用して配置され、マップ上の任意のポイントに任意の方向に移動できます。私のゲームの「地面」の移動コストは一定ですが、もちろん、道を妨げる障害物が存在する可能性があります。障害物の大半は静的になり、ゲーム内の他のアニメーションの実体があるでしょうが、私はあり、それらを考慮しないで逃げるん-それはアイソメトリックだテーマ病院のように何の戦闘スタイルの戦略ゲーム、。 私が見たほとんどの経路探索記事は、3Dまたはグリッドベースの2Dの動きをカバーしています。私のユースケースをカバーするかもしれない何かのための提案はありますか?どうもありがとう。
12 2d  path-finding 

2
2D雨の作成(および流体力学)
私は私のゲームで気象条件を実験していますが、Starboundが雨を処理する方法に感銘を受けました。基本的に、雨が地面に当たると、それは水平方向に分散して(そして地面に吸収されて)、または(雨滴が地面の穴の中に落ちたときに)水の山を作成します。 このビデオはこれを明確に示しています:http : //imgur.com/gallery/CKCGKbG 私は雨を降らせて、それが地面に当たる場所を確認する方法を知っていますが、それが私が行き詰まるところです。私の質問は、これはどのように作成されたのでしょうか?そして、パフォーマンスを損なうことなく、水流をどのように完璧にモデル化できるでしょうか? 前もって感謝します!

2
動的な障害物やプレーヤーが作った障害物のためのA *パスファインディング?
こんにちは、Unity 5でTDを作成しています。Pathfindingで助けが必要です。 私は、AIにArons A *パスファインディングを使用して、動的オブジェクトを使用し、実行時にパスを更新できるようにします。ただし、私のゲームでは、プレイヤーが特別なタレットで手先をブロックできるようにして、目的地に行く代わりに手下に「ブロックタワー」を強制的に攻撃させます。 どうすればこのようなことを達成できますか? より明確にするための画像:
11 unity  c#  2d  ai  path-finding 

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