ゲーム開発

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

5
テクスチャアトラスでテクスチャブリーディングを回避する方法
私のゲームには、キューブで作られたMinecraftのような地形があります。ボクセルデータから頂点バッファーを生成し、さまざまなブロックの外観にテクスチャアトラスを使用します。 問題は、離れた立方体のテクスチャがテクスチャアトラス内の隣接するタイルで補間されることです。その結果、キューブ間に間違った色の線が表示されます(グラフィカルな欠陥を確認するには、以下のスクリーンショットをフルサイズで表示する必要がある場合があります)。 今のところ、これらの補間設定を使用しますが、すべての組み合わせを試しましたが、GL_NEARESTミップマッピングがなくてもより良い結果は得られません。 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_NEAREST); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST); また、テクスチャ座標にオフセットを追加してタイルのわずかに小さい領域を選択しようとしましたが、不要な効果はカメラまでの距離に依存するため、問題を完全に解決することはできません。とにかく遠い距離でストライプが発生します。 このテクスチャのにじみをどのように解決できますか?テクスチャアトラスの使用は一般的な手法であるため、一般的なアプローチがあるかもしれません。悲しいことに、コメントで説明されているいくつかの理由により、異なるテクスチャやテクスチャ配列に変更することはできません。

1
GLSLのin / outキーワード
GLSLでin/ outキーワードを使用する方法を本当に理解しておらず、グーグルは特徴的に役に立たない。 彼らは正確に何をしますか?たとえば、頂点ごとに可変変数セットをフラグメントシェーダーに渡したい場合、どのように使用しますか? 文字通り、私が見つけたすべてのチュートリアルではvarying/ attributeキーワードを使用していますが、これは役に立ちません。
46 opengl  glsl 

3
シードからランダムレベルを生成する方法 [閉まっている]
ランダムシードを使用してゲームレベルを生成するにはどうすればよいですか?同じシードは常にまったく同じレベルを生成する必要があります。 この例では、Wormsスタイルレベルになります。したがって、各レベルにはテーマ(草地、雪など)、基本地形、木などのさまざまなオブジェクトがあります。 それでは、この種のレベルジェネレータの作成をどこから始めますか?何が関係しますか?どのような概念を使用していますか? 良好なリンクに対するボーナスポイント(ワームなどで行われた方法に関連するものに対するボーナスボーナスポイント) ありがとう。

7
HTML5 Canvasにペイントされる2D配列のテキストマップの管理
それで、私はただの楽しみのためにHTML5 RPGを作っています。マップは<canvas>(幅512ピクセル、高さ352ピクセル|横16タイル、縦11タイル)です。をペイントするより効率的な方法があるかどうかを知りたいです<canvas>。 ここに私が今それを持っている方法があります。 マップ上でのタイルのロード方法とペイント方法 マップは、Image()ピースを使用してタイル(32x32)でペイントされています。画像ファイルは単純なforループを介してロードされ、tiles[]を使用してペイントされるように呼び出される配列に入れられdrawImage()ます。 まず、タイルを読み込みます... そして、それがどのように行われているのですか: // SET UP THE & DRAW THE MAP TILES tiles = []; var loadedImagesCount = 0; for (x = 0; x <= NUM_OF_TILES; x++) { var imageObj = new Image(); // new instance for each image imageObj.src = "js/tiles/t" + x + ".png"; …

4
ボールがコーナーに当たった場合、それはどこで偏向しますか?
私は三角法を磨く必要があり、簡単な数学的モデルでここで助けてくれることを願っています。ここに添付されている画像でこれまでのところ私のモデルです。ボールが非常に速く動いている場合、フレームアニメーションに他の問題があることは承知していますが、今のところはballDxとballDyを計算するだけです。また、ballDx = 0(垂直移動のみ)である可能性もありますが、ボールがたわむと、ballDxは異なる値を取得する可能性があります。

3
ゲームテクスチャの例が球体モデルでしばしば表されるのはなぜですか?
私は最近Unityの使用を開始し、最終的に構築することを考えているゲームの背景(城壁など)のテクスチャを探していました。このサンプル画像のように、テクスチャはしばしばボールの形で表されることに気付きました たとえば、テクスチャパターンが単に平らな正方形として表示されないのはなぜですか?この背後には3Dサーフェスへのマッピングに関係する理由があると思いますが、確信が持てなかったので、ここで確認したいと思いました。 例やプレビューでテクスチャが球形で表されることが多いのはなぜですか?
45 textures 

2
独立したゲームプロジェクトの効果的なマーケティング戦略[終了]
他のインディペンデントが一般的に限られたリソースでゲームをマーケティングする方法を聞いてみたい。いくつかの面で直接目にしたので、マーケティングがどれほど重要かを知っています。私は、プロジェクトにマーケティングのオンスを入れず、期待に応えることができなかったチームの一員でした。また、以前のタイトルについて話し合うためにフォーラムを訪れることに多くの時間を費やしました。 Wolfireは、ブログを中心にコミュニティを管理する方法で、すばらしい草の根マーケティングを行っていると思います。彼らは、彼らを支援するために彼らがゲームを終了する前に彼らに彼らのゲームのために彼らを支払う(前もって)喜んでいる支持者を固めました。すごい。 しかし、そんなに早くそのような情報を公表したいと思っている人はどれくらいいるのでしょうか?それは心配すべきでしょうか?実際に何かを実装する前に、次のプロジェクトについて話し始める必要がありますか? 何があなたのために働きましたか?AppleのiTunesストアに人々がどのようにアプローチするのか、特に興味があります。最近、ストアで約33,000のゲームを見ていると思います。
45 marketing 

1
クライアントとして、コーダー/プログラマーに私のアイデアを機能するプログラムに発展させるために、開発者に何を提供すべきですか?
私は、スタートアップゲーム開発グループのディレクターです(まだグループ会社ではないため、「グループ」と言います)。私は最近、プロジェクトを手伝ってくれる少数のコーダーの意欲を獲得しましたが、ドキュメントを求めています。 ドキュメンテーションの必要性を理解しており、いくつかの異なるドキュメントで多くのアイデアを持っていますが、開発者が個別に、また集合的に理解できるような方法で整理したいと思います。 そのような文書から除外すべきことがありますか?もしそうなら、どのようなものですか?この種のドキュメントに適したテンプレートはありますか?はいの場合、どこで見つけることができますか?作業を開始する前にコーダーに提供するために知っておくべきことは他にありますか? 私はここで多くの質問をされていることを知っています。それが問題にならないことを願っています。ガイダンスを事前にありがとうございます!

4
2D粒子を流体としてレンダリングする方法は?
流体(水のような)をシミュレートするために、2Dパーティクルを移動する良い方法があるとします。レンダリング方法に関するアイデアはありますか? これは、このように視点が横から見られる2Dゲーム用です。水は、落下して他のオブジェクトと相互作用するために壊れる可能性のあるボックスに含まれます。私の頭に浮かぶ最も簡単な方法は、各粒子に小さな画像を使用することです。水をレンダリングするより多くの方法を聞くことに興味があります。
45 2d  particles  water 

2
リアルな氷をレンダリングする方法は?
Unityで、少なくとも半現実的な見栄えのアイスシェーダーを作成しようとしています。 次のショット(Googleで見つかった)がCGだった場合、そのシェーダーには何が含まれますか?(前景の洞窟)。私は間違っているかもしれませんが、デフォルトの拡散反射光とは異なる照明モデルさえ持っているようです。

7
8ビットおよび16ビットのゲームはどのように開発されましたか?[閉まっている]
多くのエンジン、SDK、派手なIDEなどに関する多くの情報がインターネット上にあります。しかし、人々は過去にどのようにゲームを開発しましたか?「有名な」ツールはありますか?最も使用されているプログラミング言語は何ですか?カートリッジにどのように展開されましたか?

8
彼らはそれをどうしましたか?テラリアの何百万ものタイル
私はTerrariaに似たゲームエンジンを主に挑戦として取り組んできましたが、そのほとんどを理解しましたが、何百万もの相互作用/収穫可能なタイルをどのように扱うかについて頭を包み込むように思えませんゲームは一度に持っています。私のエンジンでは、Terrariaで可能なことの1/20である約500.000のタイルを作成すると、フレームレートが60から約20に低下します。気を付けてください、私はタイルで何もしていません。メモリに保存するだけです。 更新:私が物事を行う方法を示すためにコードが追加されました。 これは、タイルを処理して描画するクラスの一部です。犯人は「foreach」の部分で、空のインデックスも含めてすべてを繰り返すと推測しています。 ... public void Draw(SpriteBatch spriteBatch, GameTime gameTime) { foreach (Tile tile in this.Tiles) { if (tile != null) { if (tile.Position.X < -this.Offset.X + 32) continue; if (tile.Position.X > -this.Offset.X + 1024 - 48) continue; if (tile.Position.Y < -this.Offset.Y + 32) continue; if (tile.Position.Y > -this.Offset.Y + …

11
JavaScript / HTML5 Webゲームがコピーまたは変更されるのをどのように防止しますか?
私はJavaScriptとHTML5を使用して構築されたゲームを計画しています。 誰かがWebサーバーからJavaScriptを単純にコピーし、それを使って独自のゲームを作成する(私の最大の関心事ではない)ことを防ぐ方法を理解するのに苦労しています。ゲームが最終的にマルチプレイヤーをサポートする場合はワイルドです。 誰もがJavaScriptを読み取れないようにするために何かできますか? そうでない場合、すべてのゲーム処理は、ユーザー入力のキャプチャとグラフィックスの描画のみをクライアントが担当するサーバーで実行する必要がありますか?

12
グラフィックに基づいて、ゲームが使用するエンジンをどのように認識できますか?
多くのゲームでは、「ああ、それは確かにアンリアルエンジンです」、または「これはアップグレードされたRockstar Advanced Engineで作成されました」と言うことができます。ユーザーインターフェイスを無視して、グラフィックを見るだけでゲームに使用されるエンジンを認識することができます。 どうしてこれなの?すべてのゲームエンジンは、私たち全員が使用しているものと同じ3Dレンダリングテクノロジーを使用しており、通常、異なるゲームには明確なアートスタイルがあります。認識すべきものは何ですか?
45 3d  graphics 

16
退屈しない教育ゲームを作成するにはどうすればよいですか?
7〜18歳の学校の生徒向けの教育ゲームを作成しています。暴力や血を流すことはできません。 教育用ゲームの良い例として、Google PlayとYouTubeを探しました。 これまでのところ、この数学ゲームを見つけました。大砲は数の敵に発砲し、得点するために、プレーヤーは値を正確にゼロにする必要があります。レベルが進むにつれて、10、20、30などの大きな数値が発生します。 退屈ではない教育用ゲームを作るのが難しいのはなぜですか?最近ではほとんどの若者が暴力に惹かれているようです!1つの大きな例外はパズルです。

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