ゲーム開発

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

2
ニンテンドーの「Devインターフェース」には何がありますか?
それよりもずっと前に、任天堂は、任天堂の開発者アカウントを登録するすべての人がアクセスできるように開発者プログラムをオープンし、インディーズと商用の開発者に同等のアクセス権を与えていました。または、少なくともそれはリンクされたページが言うことです。 ツール・ページのリストUnityとゲーム開発のためのHTML5フレームワークだけでなく、「任天堂のDevインターフェイス(NDI)。」Unity(またはHTML5)を使用した開発にはあまり興味がないので、少なくとも一般的には、NDIに何が含まれているのかを知りたいのです。 (その情報の少なくとも一部がNDAでカバーされていることは間違いありませんが、しばらく登録できないため、できる限り知りたいと思います。) 私は特に、サポートされているコンパイラー/言語の種類、許可されているグラフィックスAPI(および/またはSDLのような抽象化レイヤー)、およびプレイテストのしくみ(ある種の互換性レイヤー?任天堂が許可したエミュレーション?)に興味があります。
10 nintendo 

7
何百もの「ゲーム内」キャラクターをどのように構成/管理するか
UnityでCrusader Kings 2のような何百ものキャラクターを含むシンプルなRTSゲームを作成してきました。それらを格納するための最も簡単なオプションはスクリプト可能なオブジェクトを使用することですが、実行時に新しいオブジェクトを作成できないため、これは良い解決策ではありません。 そこで、すべてのデータを含む「Character」というC#クラスを作成しました。すべてが正常に動作していますが、ゲームをシミュレートすると、常に新しいキャラクターが作成され、一部のキャラクターが殺されます(ゲーム内イベントが発生するため)。ゲームが継続的にシミュレートすると、数千のキャラクターが作成されます。機能の処理中にキャラクターが「生きている」ことを確認する簡単なチェックを追加しました。したがって、パフォーマンスは向上しますが、家系図を作成するときに彼/彼女の情報が必要になるため、死んでいる「キャラクター」を削除することはできません。 ゲームのデータを保存するには、リストが最善の方法ですか?または、10000のキャラクターが作成されると問題が発生しますか?考えられる解決策の1つは、リストが特定の量に達したら別のリストを作成し、その中のすべての無効な文字を移動することです。
10 unity  c# 

3
3DスペースでのRTSクリックアンドムーブの処理方法
完全な3Dスペースでクリックアンドムーブを処理するにはどうすればよいですか?単純なレイキャストで2D平面を処理することは簡単ですが、レイキャストがエンドポイントを取得するためのエンドプレーンがないため、3Dではそうではありません。 私は2つのアイデアを念頭に置いています。 レイキャストを行ってから、プレーヤーが別の入力(マウスウォールなど)によってレイ上の距離を選択できるようにします。 完全な3Dの代わりに、「高さのレイヤー」を複数持つことで、プレーヤーは移動を注文する前に高さレイヤーを変更できます。 あなたの考えは何ですか?

2
何百万もの暴徒の中で、運命の洞窟にいるフレンドリーな店主を正当化する方法は?
私は運命の禁じられた例の洞窟を探索しています。何十億もの悪者のなかで、たまたま人が行かない致命的な洞窟の中で物を売っている店主を見つけました。変だ。私は誤って彼を怒らせました、そして彼は文字通りゲーム内のすべてのモンスターよりも強力であることがわかりました。めちゃくちゃ。 だからここにあなたのための2つの質問があります:偶然の冒険者が物を買うのを待っているたまたまそこに偶然存在する運命の洞窟の例で店主を正当化する方法は? そして、 物事を盗んだり、店番を殺したりするのをやめさせるために、とんでもない力で彼らをあなたを殴らせるより良い方法はありますか? サイドノート:これらをリンクするためのボーナスポイント、彼がそこにダウンする理由と方法の両方を説明してください、例の運命の洞窟で、モンスターの剣や魔法を使わずに物事を突き刺すことなく生き残ること、そして彼が所有しなければそれが悪い考えになる理由それらと、彼と戦うために。
10 npc 

2
AAAゲームの定義は何ですか?
正確な定義を見つけようとしました。私はWikipediaとGaming SEで手がかりを見つけましたが、次のような概算以上のものは見つかりません。 映画館での大ヒット映画に相当するAAAゲームは、開発予算とプロモーションレベルが最も高いゲームです。 定義は不正確に思われます。ゲームがAAAであることをどのように確認できますか? 小さなインディースタジオがゲームを作って成長しているところを想像してみましょう。彼らは何年にもわたってますます多くの人々を雇い、彼らのゲームにますます多くのお金を投資しています。ゲームはどのマイルストーンでAAAと見なされますか?


2
動的に変化するメッシュに泡跡を投影する方法
私は水を作成しようとしていますが、今はメッシュ上に動的に波を発生させています。しかし、今私は私のボートにこれらの波を操作させて、これの上にケルビンウェイクを起こさせたいです。 事実は、異なるパターンを使用して水を生成し、同じパターンを動的に繰り返します。それで、動的に生成されたメッシュ(平面)の上にこれをどのように生成しますか?他のタイル(プレーン)も操作せずに?
10 c#  unity  rendering 

1
Unityのテキスト内のインラインスプライト?
Unityのリッチテキスト構文にタグを使用する場合、さまざまなマテリアルをどのように使用できますか? カスタムフォントを作成せずに、テキストとインラインのスプライトを作成できるようにしたいと考えています。 ここに私がこれまで持っているものが あります:これ は私が私の画像のテキストに使用している構文です: Planetary <quad material=1 size=20 x=0.1 y=0.1 width=0.1 height=0.1 /> Intergalactic 「material = 1」はTextオブジェクトのマテリアルインデックスを指していると思います。どうすれば別のマテリアルを完全に使用するように設定できますか? テキストへのアイコンの埋め込みを容易にするプラグインまたはその他のリソースはありますか?
10 unity  sprites 

5
カメラの背後にあるポイントを正しく投影するにはどうすればよいですか?
興味のあるポイントの上に感嘆符を付ける3Dゲームを作成しています。 2D画面のどこにマーカーを配置するかを見つけるために、マーカーを配置する3Dポイントを手動で投影しています。 次のようになります。 よさそうだ。マーカーが画面の外側にある場合は、座標をクリップして画面に合わせます。次のようになります。 これまでのところ、アイデアはかなりうまくいっています。ただし、対象のポイントがカメラの背後にある場合、結果のX、Y座標が反転し(正/負など)、次のように画面の反対側の隅にマーカーが表示されます。 (投影されてからクランプされた点がマーカーの先端です。マーカーの回転を気にしないでください) 錐台の後ろの座標がXとYで反転しているので、それは理にかなっています。したがって、私がしていることは、カメラの後ろにある座標を反転することです。しかし、座標を反転する必要があるときの正確な条件はまだわかりません。 これは現在、私の投影コードは次のようになっています(C#でSharpDXを使用)。 public override PointF ProjectPosition(float viewportWidth, float viewportHeight, float y) { var projectionMatrix = Matrix.PerspectiveFovRH(GetCalibratedFOV(Camera.FOV, viewportWidth, viewportHeight), viewportWidth / viewportHeight, Camera.Near, Camera.Far); var viewMatrix = Matrix.LookAtRH(new Vector3(Camera.PositionX, Camera.PositionY, Camera.PositionZ), new Vector3(Camera.LookAtX, Camera.LookAtY, Camera.LookAtZ), Vector3.UnitY); var worldMatrix = Matrix.RotationY(Rotation) * Matrix.Scaling(Scaling) * Matrix.Translation(PositionX, PositionY, …

2
UDPノンブロッキングまたは受信用の別のスレッド?
マルチプレイヤーゲーム(64歳未満のプレイヤー向け)を作成しています。私はすでにネットワークループ用に別のスレッドを用意することを決めましたが、UDPを受信するための追加のスレッドを作成するのか、受信用ソケットを非ブロッキングに設定する(追加のスレッドなしで)のが良いのか疑問に思っていました。 または、非同期ソケットのような別の方法を使用する方が良いですか?より良い方法はいつでも歓迎です!

3
エコノミーベースのゲームをコードでモデル化するにはどうすればよいですか?
古代文明をベースにした経済ゲームを作りたい。どのように設計すればよいかわかりません。「スペースインベーダー」のコピーのような小さなゲームで作業している場合は、次のように構成しても問題ありません。 メインコントロールクラス グラフィッククラス プレイヤークラス 敵クラス エコノミーゲームのような大規模なプロジェクトでこれを行う方法を理解できません。たくさんの町を含むカントリークラスを作成しますか?町にはたくさんの建築クラスが含まれていますか?ほとんどの人のクラスが含まれていますか?プレイヤーがアクセスするためにアクセスできる経路探索クラスを作成しますか?

1
エンティティコンポーネントシステムにグローバルコンテキストデータをどのように保存しますか?
私の質問はこれです: グローバルコンテキストデータをどのように保存しますか。エンティティコンポーネントシステムの世界データ情報、現在の世界時間など? ドワーフフォートレススタイルのオープンエンドの世界シミュレーションゲームをC ++で構築することを考えています。私は楽しみのためにエンティティコンポーネントスタイルのゲームエンジンを構築しました。現在、必要なすべての機能でどのように機能するかを考えています。標準のゲームプレイ(レンダリング、物理、エンティティ固有のコンポーネントデータなど)に加えて、関連するすべてのシステムがアクセスできるグローバルコンテキストデータ(つまり、現在の年などの世界データ)も必要です、地球温暖化が起こっているかどうか、世界のシミュレーションに関連するあらゆる種類の事柄)。私はもともと「ワールド」コンポーネントを作ることを考えていましたが、多くの異なるシステムがこの論理的に「グローバル」なデータにアクセスする必要がある場合、これは無意味で難しいように見えます。 「ワールド」コンポーネントがあるのは理にかなっているでしょうか、それともこのデータを他の方法で保存すべきでしょうか? また、このデータを単にグローバルにして、それを使用したいすべてのシステムにアクセスできるようにすることも考えました。一般的にはエンティティコンポーネントの原則に違反しているように見えますが、他の理由で混乱しているようですが、実際に機能する可能性があると思いました。 私が考えたもう1つのことは、関連するワールドコンテキストデータをシステム自体に直接埋め込むことです。たとえばAgeSystem、getsWeakerAsTimePassesコンポーネントがあるかどうかに関係なく、すべてのエンティティが「古くなった」場合、おそらくこのシステムは、世界の関連する時間データをメンバーデータとして直接保存し、時間の経過とその量を計算するために使用できます。この3つ目のオプションは、私のお気に入りではありませんでしたが、ブレーンストーミングで思いついたことがあります。 誰かアドバイスできますか?

1
シンプルなフライトシミュレータ
クリムゾンスカイレベルのリアリズム(リアルではなくアーケードレベルなど)を備えた3Dフライトシミュレータでは、各ゲームクロックティックごとに航空機の動きをどのように決定しますか? (Crimson Skiesはアーケードのようなフライトシミュレータです:http : //youtu.be/OWmYt0LZDnU?t = 3m) 私は、ゲームが一定のステップで進行し、各ステップで各移動オブジェクトが現在の位置から次の位置に一定速度で直線移動することを想定しています。 質量、速度、スロットルなどを決定するために必要な基本的なパラメータは何ですか。また、それらをどのように組み合わせますか?

2
物理的に正しい照明とは何ですか?
Googleを使用して包括的なものを見つけることができません。物理的に正しい照明のコアコンセプトとは何か、どこでそれを読むことができるかと思います。物理的に正しい照明とは何ですか?Phongイルミネーションは一般的に物理的に正しくありませんか?
10 lighting  pbr 

1
ゲームを完了できるようにする方法
探しているものの正しい用語がどのように記述されているかわかりません。これが重複する質問である場合はお詫びします。しかし、ゲームが無限スクローラーとの関係で「完全」であることを確認するための用語/アルゴリズムはありますか?完了可能とは、画面に追いつけようとするときにユーザーがブロックをジャンプし続けなければならないゲームの場合、ユーザーが到達できる新しいブロックが常に到達可能であることをどのように確認できるかということです。理論はジャンプする? 理論的には、ユーザーがジャンプできる高さを確認し、その範囲内にブロックがあることを確認しますが、それ以外に何かありますか?つまり、新しいブロックを配置するときに、重複しないことを確認するための高額なチェックを回避しますか? 具体的にはhtml5 / jsを調べていますが、この用語または調査できる特定のタイプのアルゴがあるかどうか疑問に思いましたか? ありがとう

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