ゲーム開発

プロおよび独立系ゲーム開発者向けのQ&A

5
ゲーム開発の基本は何ですか?[閉まっている]
ここで何が尋ねられているかを伝えるのは難しいです。この質問は曖昧、曖昧、不完全、過度に広範、または修辞的であり、現在の形式では合理的に答えることができません。この質問を明確にして、再開できるようにするには、ヘルプセンターに アクセスしてください。 8年前に閉鎖されました。 ビデオゲームのコーディング方法を完全に理解していません。 私は初心者プログラマーであり、数学とその他のことを行うコンソールアプリケーションの作成経験しかありません。私はこれらの論理プロセスがどのように画像を画面上で動かすことができるか理解していません(ビデオゲーム)。明らかに、ゲーム開発の本やそれに似たものに飛び込んだとしても理解できますが、現在でもプログラミングの基本を理解しています。コンピューターで簡単な計算を行ってから、コンピューターでビデオゲームなどのすばらしいグラフィカルプログラムを作成できるようになるまでの間に、誰でも簡単な説明やコーディングを行うことができますか?誰かが私を指すことができる入門ビデオがありますか?
12 education 


2
天気を説明する音?
私は、時刻と天気の状態を伝えるのに役立つ音を考えています。私が考慮すべきすべての気象条件についてさえ確信が持てず、いくつかは明らかです。雨が降っているように、雨の音。しかし、それから私は、穏やかな日についてはどうだろうか?朝の時間なら、鳥のさえずりなどをすることができます。夜はフクロウか何かかもしれません。良い効果を得るための音/天気/時間の良い組み合わせは何ですか?

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

1
物理学とゲームロジックをUIコードから分離する
私は単純なブロックベースのパズルゲームに取り組んでいます。 ゲームプレイは、ゲームエリア内を移動するブロックで構成されているため、簡単な物理シミュレーションです。しかし、私の実装では、理想とはほど遠いものであり、より良い方法についての指針を教えていただけませんか。 多くのパズルゲームで行ったように、ゲームロジックとUIの2つの領域にコードを分割しました。 ゲームロジックは、ゲームの一般的なルール(チェスの正式なルールシステムなど)を担当します。 UIはゲーム領域とピース(チェス盤やピースなど)を表示し、アニメーション(チェスの駒のアニメーションの動きなど)を担当します。 ゲームロジックは、ゲームの状態を論理グリッドとして表します。各ユニットは、グリッド上の1つのセルの幅/高さです。したがって、幅6のグリッドの場合、幅2のブロックを境界と衝突するまで4回移動できます。 UIはこのグリッドを取得し、論理サイズをピクセルサイズに変換して描画します(つまり、定数を乗算します)。ただし、ゲームにはゲームロジックがほとんどないため、ゲームロジックレイヤー[1]は、衝突検出以外にはあまり関係がありません。仕組みは次のとおりです。 プレイヤーがピースをドラッグし始めます UIは、ゲームロジックにそのピースの正当な移動領域を要求し、プレイヤーがその領域内でそれをドラッグできるようにします プレイヤーは駒を手放す UIはピースをグリッドにスナップします(そのため、有効な論理位置に配置されます) UIはゲームロジックに新しい論理的位置を伝えます(ミューテーターメソッドを使用します。 私はそれに満足していません: ゲームロジックレイヤーのユニットテストを作成していますが、UIは作成していません。UIにはトリッキーなコードがすべて含まれていることがわかりました。ピースが他の人や境界と衝突してグリッドにスナップするのを止めます。 UIがゲームロジックに新しい状態を通知するという事実が気に入らないのでmovePieceLeft()、他のゲームのようにメソッドまたはそのようなものを呼び出すようにしたいのですが、そのアプローチにはあまり向いていません。ゲームロジックは、UIで可能なドラッグとスナップについて何も知りません。 最善の方法は、ゲームロジックレイヤーを取り除き、代わりに物理レイヤーを実装することだと思います。それに関していくつか質問があります。 このような物理層は一般的ですか、それともゲームロジック層にこれを行わせるのがより一般的ですか? グリッドへのスナップおよびピースのドラッグコードは、UIまたは物理レイヤーに属しますか? そのような物理層は、通常、ピクセルサイズまたはゲームロジック層のような何らかの論理ユニットで動作しますか? ゲームのコードベースでイベントベースの衝突検出を見たことがあります。つまり、プレーヤーがピースをドラッグするだけで、UIがそれを素直にレンダリングして物理システムに通知し、物理システムがonCollision()メソッドを呼び出します。衝突が検出されると作品に。もっと一般的なものは何ですか?このアプローチまたは最初に法的運動領域を求めていますか? [1] レイヤーはおそらく私が言っていることの正しい言葉ではありませんが、サブシステムは誇張されており、各レイヤーは複数のクラスで構成されているため、クラスは誤解しています。

3
ユニットの敵の「認識」をどのように実装すればよいですか?
Unity3dを使用して、RTS / TDハイブリッドプロトタイプゲームを開発しています。ユニットと敵の間の「認識」のための最良のアプローチは何ですか?すべてのユニットがすべての敵までの距離をチェックし、範囲内であれば交戦するのは正気ですか? 私が今行っているアプローチは、すべてのユニットにトリガー球を置くことです。敵がトリガーに入ると、ユニットは敵を認識し、距離チェックを開始します。これはいくつかの不必要なチェックを保存しますか? ここでのベストプラクティスは何ですか?
12 ai  unity  rts 

5
強化学習がパスファインディングでめったに使用されないのはなぜですか?
由緒ある最短経路グラフ理論アルゴリズムA *およびその後の改善(たとえば、階層注釈付きA *)は、明らかに、ゲーム開発における経路探索に最適な手法です。 代わりに、RLはゲーム空間内でキャラクターを動かすためのより自然なパラダイムであるように思えます。 それでも、強化学習ベースの経路探索エンジンを実装しているゲーム開発者は1人もいません。(これから、パスファインディングにおけるRLの適用が0であるとは推測しません。A*や友人に比べて非常に小さいというだけです。) 理由が何であれ、これらの開発者がRLを認識していないからではありません。RLはゲームエンジンの他の場所で頻繁に使用されるという事実からも明らかです。 この質問は、経路探索においてRLについて意見を述べる口実ではありません。実際、私はA * et al。の暗黙の選好を仮定しています。RLよりも正しいですが、その好みは私には明らかではなく、その理由、特にパスファインディングにRLを使用しようとした人には非常に興味があります。

3
成果システムは開発の後半で実装できますか?
現時点でこの機能をゲームに実装するかどうかは未定です。私はプロジェクトが制御不能になることを望まないので、私は最初にコアメカニクスに焦点を合わせています。 これは、私がすべてをデータ駆動し、すべてを保存すると仮定して、後で実装するのが簡単な機能ですか?

3
ターンベースのボードゲームサーバーの参照?[閉まっている]
閉じた。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集して事実と引用で答えられるように質問を更新してください。 6年前に閉鎖されました。 ターンベースゲームサーバーの構築方法について推奨する参考資料/書籍はありますか?チェスプレーヤーをペアリングし、ゲームの状態を保持するチェスサーバーのようなものです。過去には、たとえば、IGS(go、weiqi)はソケットベースの実装です。利用可能な現代の技術は何ですか?ありがとう!

5
2Dプラットフォーマー:なぜ物理学をフレームレートに依存させるのですか?
「スーパーミートボーイ」は、最近PC用に登場した難しいプラットフォーマーであり、優れた制御とピクセル単位の完璧なジャンプが必要です。ゲーム内の物理コードはフレームレートに依存しており、60fpsにロックされています。これは、コンピューターがゲームをフルスピードで実行できない場合、物理現象が異常な状態になり、(特に)キャラクターの実行速度が遅くなり、地面に落ちてしまうことを意味します。さらに、vsyncがオフの場合、ゲームは非常に高速に実行されます。 2Dゲームプログラミングの経験者は、ゲームがこのようにコーディングされた理由を説明できますか?一定の速度で実行される物理ループは、より良い解決策ではありませんか?(実際には、一部のエンティティはフレームレートに関係なく正常に移動し続けるため、物理ループはゲームの一部に使用されると思います。一方、キャラクターは正確に[fps / 60]だけ正確に実行されます。) この実装で気になるのは、ゲームエンジンとグラフィックスレンダリングの間の抽象化が失われることです。これは、モニター、グラフィックスカード、CPUなどのシステム固有のものに依存します。何らかの理由でコンピューターがvsyncを処理できない場合、または正確に60fpsでゲームを実行できない場合、それは劇的に壊れます。レンダリングステップが物理計算に何らかの影響を与えるのはなぜですか?(最近のほとんどのゲームは、ゲームの速度を落とすか、フレームをスキップします。)一方、NESとSNESの昔ながらのプラットフォーマーは、制御と物理の多くを固定フレームレートに依存していることを理解しています。これはなぜですか、フレームレート依存性なしでその静脈にパフォーマーを作成することは可能でしょうか?グラフィックレンダリングを他のエンジンから分離すると、必ずしも精度が失われますか? 質問がわかりにくい場合は、ありがとうございます。
12 graphics  physics 

5
物理エンジンはいつ使用する必要がありますか?[閉まっている]
閉じた。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集して事実と引用で答えられるように質問を更新してください。 閉じた2年前。 Box2Dを発見したので、非常に小さなプロトタイプや何かをテストする小さなプログラムから実際のプロジェクトまで、私が作成しようとするゲームのようなアプリケーションに使用しています。 そのおかげで、衝突から実際の物理学まで何でも簡単に処理できます。 しかし、時々、私はそれについていくつかの疑問を持っています:円またはAABBを処理するだけで、高度な物理ツール(ジョイントまたはそのようなもの)が必要ない場合、物理エンジンは、不要なオーバーヘッド。 私の質問を再確認するには:物理学が本当にシンプルなゲーム(たとえば、スーパーマリオなど)でBox2D(または他の物理エンジン)を使用しますか?そして、そうでない場合、なぜですか?
12 physics 

3
ボクセルキューブランドスケープ用のメッシュの最適化
Unity 3DでMinecraftish / LEGOワールドランドスケープ(キューブでプロシージャルに生成されたボクセルランドスケープ)を作成してみて、これらのランドスケープ用に作成されたメッシュが大量のメモリを消費することがわかりました。メッシュは現在、立方体の可視側面の頂点のみで構成されています。複雑な地形のメモリ使用量は、600〜700メガグラムかかる場合があります。 これらのメッシュは最適化できますが、これを行うための適切なアルゴリズムを見つけるのに苦労しています。 アルゴリズムは、異なる地形タイプのブロックを「マージ」したくないことを考慮に入れる必要があります。本当に簡単なスタートは、1つの軸に沿ってすべてのブロックを処理し、他の2つの軸に対して余分なスイープを行うことだと思います。 メッシュの形状を維持する必要があります。これは、空の空間または固体の空間が変更されるポイントへの頂点のマージではありません。その理由は、メッシュの周りをナビゲートする必要がある生き物などがあるかもしれないからです。そのため、非常に詳細度の低い、歪んだメッシュを作成することはできません。 これについての考え/提案/ヒントはありますか?

2
ユーザーがミニゲームのパックをダウンロードし、メインの.exeを変更せずに実行できるミニゲームのコレクションをXNAで作成するにはどうすればよいですか?
現在、XNAでPCゲームを作っています。これは実際にはミニゲームのコレクションです(現時点では3つのミニゲームがあります)が、ダウンロード可能な「パック」で作成して追加する予定です。 私の質問は、これを達成する最良の方法は何ですか? 現在、私の考えは次のとおりです。 「ゲーム」インターフェースを作成する このインターフェイスにゲームをビルドしますが、.dllとして作成します メインの.exeファイルでディレクトリをスキャンし、実行時に.dllをロードします。 私はこのアイデアをあまりいじっていませんが、少なくともこのプラグインのアプローチを使用するアプリケーションがあることは知っています(Notepad ++はそうです)それらが存在する必要があります)。しかし、これは以前に解決された問題であると思われるので、確立されたベストプラクティスの形式があるかどうか疑問に思っています。
12 xna  c# 


5
高性能ベクターグラフィックスソリューション[終了]
閉まっている。この質問はトピック外です。現在、回答を受け付けていません。 この質問を改善したいですか? 質問を更新して、 Game Development Stack Exchangeで話題になるようにします。 5年前に閉鎖されました。 ゲームで使用できる高性能のベクターグラフィックライブラリを探しています。 私はSVGで作成できるようなベクトルグラフィックの線に沿って考えています。 現時点ではすべての言語を検討します(ただし、Windowsで実行する必要があります)。GPUハードウェアを活用するソリューションは素晴らしいものです。 前もって感謝します。

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