ゲーム開発

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

5
「プレススタート」画面の目的は何ですか?
多くのゲームは、イントロとベンダーのビデオから始まり、実際のメインメニューの前に「プレススタート」画面を表示します。 私はこれの目的をまったく理解していません。メインメニューに直接アクセスしてみませんか?私にとって意味のある唯一の可能な説明は、複数のコントローラーが接続されている場合、プレーヤーが使用したいコントローラーを識別することができるということです。

1
AAAゲームはどのようにトーンマッピングシェーダーでこのテクスチャを使用しますか?
Battlefield 3とSaint's Row the Thirdが、最終的なトーンマッピング段階でこのテクスチャを使用していることがわかりました。このテクスチャの使用方法に関する記事へのリンクを誰でも共有できますか? 更新:ネット上にカラーグレーディングの実装例がほとんどないので、XNA 4.0の手早く汚れたサンプルを投稿します。これは、GPUでデフォルトの2Dカラーマップをゼロから構築し、そのコンテンツをCPUの3Dテクスチャにコピーし、回答で提供されている記事のシェーダーコードで実際の色補正を実行するだけです。 XNA 4.0色補正サンプル これで何ができるか知りたい場合は、こちらをご覧ください。 http://the-witness.net/news/2012/08/fun-with-in-engine-color-grading/ 要するに著者は、デフォルトのカラーグレーディングパレットを上に置いて通常のゲーム内画像のスクリーンショットを作成し、Photoshopでスクリーンショットのカラー補正を実行し、変形したカラー補正パレットをエンジンにカットアンドコピーして、その色補正は、ゲーム内のすべてのシーンに自動的に適用されます。
43 textures  hlsl 

3
なぜチュートリアルがOpenGLレンダリングに異なるアプローチを使用するのですか?
http://www.sdltutorials.com/sdl-opengl-tutorial-basics http://www.opengl-tutorial.org/beginners-tutorials/tutorial-2-the-first-triangle/ これら2つのチュートリアルは、まったく同じ結果を得るためにまったく異なるアプローチを使用しています。最初はのようなものを使用しglBegin(GL_QUADS)ます。2つ目はvertexBufferObjects、GLEWに基づいたシェーダーなどを使用します。しかし、結果は同じです。基本的な形状が得られます。 なぜこれらの違いが存在するのですか? 最初のアプローチは理解しやすいようです。複雑な2番目のアプローチの利点は何ですか?

6
ゲームのリソースをオープンな目で見るのはプロではありませんか?
複雑なAPIと基本的には頭を使い果たしているzipファイルを処理しただけで、リソースをパックするのにまだ問題があります。人間の目に見えるリソースを単純なフォルダーに入れてゲームをパックすることもできると思いました。 それは専門家ではないでしょうか?個人的には、ゲームでそれを見たことがありませんでした。基本的には、プレーヤーはmap1.txtに移動してXを追加して壁を作成したり、プレーヤーのスプライトを変更したりするなど、 MSペイントのポニーに。
43 c++  assets 

8
決定論的な物理シミュレーションを実行するにはどうすればよいですか?
私は、プレイヤーがパズルやマップを解くためにピースやパーツを動かす剛体を含む物理ゲームを作成しています。ゲームの非常に重要な側面は、プレイヤーがシミュレーションを開始すると、オペレーティングシステム、プロセッサなどに関係なく、どこでも同じように実行されることです。 多くの複雑さの余地があり、シミュレーションが長時間実行される可能性があるため、物理エンジンがその浮動小数点演算に関して完全に決定的であることが重要です。別の「失敗」。 ゲームでこの決定論を実現するにはどうすればよいですか?Javascript、C ++、Java、Python、C#など、さまざまなフレームワークと言語を使用したいと思っています。 Box2D(C ++)と他の言語の同等物に惹かれましたが、それは私のニーズを満たすようですが、特に三角関数の場合、浮動小数点の決定論に欠けています。 私が今まで見た中で最良の選択肢は、Box2DのJava同等物(JBox2D)です。多くの操作でStrictMathはなく浮動小数点の決定論を試みているMathようですが、ゲームをまだ作成していないので、このエンジンが必要なすべてを保証するかどうかは不明です。 ニーズに合わせて既存のエンジンを使用または変更することはできますか?または、自分でエンジンを構築する必要がありますか? 編集:誰かがそのような精度を必要とする理由を気にしない場合は、この投稿の残りをスキップしてください。コメントと回答の個人は、私がすべきでないことを求めていると信じているようです。そのため、ゲームがどのように機能するかについてさらに説明します。 プレーヤーには、障害物と目標が含まれるパズルまたはレベルが与えられます。最初は、シミュレーションは実行されていません。その後、提供されたピースまたはツールを使用してマシンを構築できます。スタートを押すと、シミュレーションが開始され、マシンを編集できなくなります。マシンがマップを解決した場合、プレイヤーはレベルをクリアしています。それ以外の場合は、停止ボタンを押してマシンを変更し、再試行する必要があります。 すべてを決定論的にする必要がある理由は、各ピースの位置、サイズ、回転を記録することにより、すべてのマシン(レベルを解決しようとするピースとツールのセット)をxmlファイルまたはjsonファイルにマッピングするコードを作成するためです。その後、プレイヤーはソルブ(これらのファイルで表されます)を共有して、ソルブの検証、相互の学習、競技会の開催、コラボレーションなどを行えるようになります。もちろん、ほとんどのソルブ、特にシンプルまたはクイック決定論の欠如の影響を受けません。しかし、本当に難しいレベルを解決する低速または複雑な設計は、おそらく最も興味深いものであり、共有する価値があると思われる設計です。

3
AudiosurfやBeat Hazardなどのオーディオベースのゲームはどのように機能しますか?
注:これらのいずれかのクローンを作成する方法は尋ねていません。私は彼らがどのように機能するかについて尋ねています。 自分の音楽ファイル(または提供されたもの)を使用するゲームは誰もが見て、きっとゲームはそれらに基づいてAudiosurfやBeat Hazardなどのレベルを生成します。 ここに、私が意味することを示すために、Audiosurfが実際に動いているビデオがあります。 ヘビーメタルの歌を提供すると、ビバルディのようなものとはまったく異なる障害物、敵、ゲーム体験が得られます。 私が興味を持っているのは、これらのゲームの仕組みです。オーディオ(データ側)についてはあまり知りませんが、曲が落ち着くときやスピードが上がるときを理解するために、どのように曲を処理しますか?レベルを形成するためにピッチ値(オーディオファイルにこれらの種類のものが存在すると仮定)を供給することができると思いますが、それは完全には説明しません。 私は説明、この種のことに関する記事へのリンクを探しています(用語があります)、またはこの種のことのオープンソース実装さえ探しています;-) 編集:いくつかの検索と少しの助けの後、私はFFT(高速フーリエ変換)について知りました。これは正しい方向への一歩かもしれませんが、私にとっては意味をなさないものです。または、波の物理学の知識と適合します。

12
レベルの競技場:より良いプレーヤーを罰するか、より悪いプレーヤーを強化しますか?
各プレイヤーが同じジョイスティックで車を操作する1対1のゲームを作っています。プレーヤーの目的は、他のプレーヤーより先に目的地に到達することです。 ゲームのプレイヤーは、車を制御するスキルに基づいてカテゴリに分類されます(例:スキルレベル[1,2,3,4,5])。5が最高のスキルレベルです。 プレイヤーは、ゲームをプレイするときにスキルレベルを上下にジャンプすることを意図していません。一定の期間(1週間など)が経過すると、スキルレベルが更新されます。これはプレイヤーには表示されません。 私の目的は、1対1の設定でプレーヤーのすべての組み合わせを、プレーヤーの50/50勝敗のチャンスにすることです。 例:プレイヤー1(スキルレベル5)対プレイヤー2(スキルレベル1)は、それぞれ50%の変化で先に目標に到達する必要があります。 私は、ベストプラクティスが良いプレーヤーの能力を制限することであるか、悪いプレーヤーの能力を高めることであるか、あるいはその組み合わせであるかに関する研究を見つけることができませんでした。 考えは、彼らの有能な身体の友人または家族と対戦する青年を無効にすることです。そのため、良いプレーヤーを悪いプレーヤーと対戦させないことはできません。野外試験のデータから、身体障害のある青年は、けいれんが原因で身体が安定しているよりも成績が悪いことが示されています。 私はこれをどうするかについての意見を探しています。研究、あなたの経験、他のゲームはどのようにそれをやっていますか?これに関する一般的な推奨事項はありますか?

6
実際のコンポーネントベースのゲームオブジェクトシステム[終了]
成功の歴史を見てみましょう。コンポーネントベースのゲームオブジェクトシステムを使用して構築された人気のあるゲーム(およびゲームエンジン)はどれですか?各回答には以下を含める必要があります。 ゲームタイトル(回答ごとに1つ) 著者/会社 年 開発時間(オプション) 事後分析へのリンク(オプション) docs / sourceコードへのリンク(オプション)

8
2Dアニメーションを学習する方法は?[閉まっている]
単純な2Dアニメーションをうまく行う方法はどこで学べますか それとも、本当に文字通りフォトショップで何かのすべてのフレームを描くのですか?ヒントやコツはありますか?始めるのに役立つチュートリアル? また、どのソフトウェアオプションがありますか(できればオープンソースまたは無料のソフトウェア)。
43 2d  animation 

2
高得点表をサニタイズして不快な用語/ユーザー名を削除する
クライアント用のアプリを作成しています。クライアントは、一般公開されている高得点表を要求しています。ユーザー名が表示されます。これは、プレイヤーが入力できるフリーテキストフィールドです。プレイヤー数は非常に少なくなる可能性があります-せいぜい10代または100代/日です。 ユーザー名フィールドは3文字より長くなります。名前はFirebase Authアカウントに関連付けられますが、これらはアプリを通じて作成され、Google PlayやFacebookアカウントなどに関連付けられることはありません。明らかに不快な名前を削除しても大丈夫だと思いますが、手動のモデレーション専用の膨大なリソースはありません。 私が若い頃、地元のアーケードキャビネットの高得点表の100%は、悪態をつく言葉や攻撃的な言葉(またはそのような言葉のバリエーション)で構成されていました。 インターネットが事態を改善したとは想像できません。 ユーザー名を安全に表示するためにユーザー名をサニタイズするにはどうすればよいですか?

1
Doom 3ソースコードで、すべてのOpenGL関数呼び出しの先頭に「q」が付いているのはなぜですか?
Doom 3ソースコードですべてのOpenGL呼び出しに「q」というプレフィックスが付いているのはなぜですか?それらはカスタム関数または別のライブラリですか?その場合、OpenGLでそれを使用する理由は何ですか?Googleの検索ではQt OpenGLモジュールが使用されますが、これは関係ないと思います。
42 opengl  c++ 

1
アウトライングロー効果のエイリアシングを減らすにはどうすればよいですか?
Left 4 Deadゲームで輝くアウトライン効果を再現しようとしています。この効果により、オブジェクトが隠されている場合でも、オブジェクトの輪郭が輝きます。効果のスクリーンショットは次のとおりです。 OpenGLベースのプログラムでこの効果をある程度再現できます。これは私が現在やっていることです: 輝くオブジェクトをレンダリングするための画面サイズの半分の色と深さのテクスチャを作成します グローカラー/深度テクスチャをクリアします。色は黒にクリアされます。 輝くオブジェクトごとに、単色としてグローテクスチャにレンダリングします。 グローテクスチャで分離可能なガウスぼかしを実行する 通常どおりフル解像度のシーンをレンダリングする グローテクスチャを通常のシーンに追加的にブレンドしますが、グロー深度テクスチャを使用してオブジェクトをマスクし、輪郭をぼかすだけにします。 これが私のアプローチのスクリーンショットです。 グローテクスチャとシーンを組み合わせるフラグメントシェーダーを次に示します。 uniform sampler2D glowColorTex; uniform sampler2D glowDepthTex; uniform sampler2D sceneColorTex; void main() { vec2 uv = gl_TexCoord[0].st; vec4 color = texture2D( sceneColorTex, uv); float depth = texture2D( glowDepthTex, uv).r; if(depth == 1.0) { color += 2.0 * texture2D( glowColorTex, …
42 opengl  shaders  glsl  glow 

6
マリオゲームの物理の分析[終了]
ここでソニック・ザ・ヘッジホッグの物理学の故障があることを知っていますが、マリオのゲームの故障が存在するのではないかと思いました。これに似ているが、マリオが私が興味を持っているものです!
42 physics 

4
ゲームで忙しい仕事の感覚を打破する方法
このトピックが以前に探求されたかどうかはわかりませんが、私がプレイしたいくつかのゲームでは、すべてを探検したり、サイドクエストを行ったり、ギアを取得しようとすることで忙しいように感じられるようになります。その種の感覚は、私がゲームにあまり興味を持たないようにし、私は通常、完全にプレイを停止するか、ゲームを終わらせて邪魔にならないようにゲームの残りの部分をただ風通しするかのいずれかをします。この感覚は、私自身の個人的な経験からのRPGで主に起こるようです。 プレイヤーが行うことができるアクティビティ(サイドクエスト、探査、アイテム作成など)を人工的な時間の詰め物や忙しい仕事のように感じることをどのように防止しますか?

7
符号なし整数と符号付き整数のパフォーマンスの違いは何ですか?[閉まっている]
符号付き整数とフロートを混在させると、パフォーマンスが低下することを認識しています。 unsigned intとfloatを混在させるのは悪いことですか? 符号なし/符号なしをフロートなしで混在させると何かヒットがありますか? さまざまなサイズ(u32、u16、u8、i32、i16、i8)はパフォーマンスに影響しますか?どのプラットフォームで?
42 c++  performance 

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