ゲーム開発

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

4
関数型プログラミング言語を使用するゲームエンジンはありますか?[閉まっている]
現在のところ、この質問はQ&A形式には適していません。回答は事実、参考文献、専門知識によって裏付けられると期待していますが、この質問は、議論、議論、投票、または拡張ディスカッションを求める可能性があります。この質問を改善でき、再開できると思われる場合は、ヘルプセンターにアクセスしてください。 7年前休業。 Scheme、Common Lisp、Clojure、JavaScriptなどの関数型プログラミング言語を使用するゲームエンジンはありますか? Unity3Dを試しましたが、「JavaScript」は実際にはJavaScriptではなく、厳密に型指定されており、機能しません。
10 functional 

1
C#/ XNAハードウェアマウスの位置を取得
私はC#を使用していて、ハードウェアマウスの位置を取得しようとしています。最初に試したのは、使いやすいシンプルなXNA機能です。 Vector2 position = new Vector2(Mouse.GetState().X, Mouse.GetState().Y); その後、マウスの描画も行い、Windowsハードウェアマウスと比較して、xnaが提供する座標を持つこの新しいマウスは「ずれ」ています。つまり、数フレーム遅れているということです。たとえば、ゲームが600 fpsで実行されている場合、呪いは反応しますが、60 fpsのソフトウェアではマウスの遅延は許容できなくなります。そこで、ハードウェアマウスだと思ったものを使ってみました。 [DllImport("user32.dll")] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool GetCursorPos(out POINT lpPoint); しかし、結果はまったく同じでした。私はまた、Windowsフォームカーソルを取得しようとしましたが、これも行き止まりでした-動作しましたが、同じ遅延がありました。xna機能をいじくりまわす: GraphicsDeviceManager.SynchronizeWithVerticalRetrace = true/false Game.IsFixedTimeStep = true/fale やや明白な理由で遅延時間を変更しましたが、肝心な点は、それがデフォルトのWindowsマウスの背後にあるにもかかわらずです。一部のゲームでは、ハードウェアアクセラレートマウスのオプションが提供されていることがわかりました。誰でもそれを達成する方法についていくつかのリードを与えることができますか?

1
前輪の向きと速度から自転車の向きを計算する
ステアリングを追加しようとしているシンプルなトップダウンバイクゲームがあります。前輪のヘディングを使用して、バイクのヘディングと速度を決定する方法を教えてください。 void Update () { //Get input from user Vertical: 0 to 1, Horizontal -1 to 1 float forwardInput = Input.GetAxis("Vertical"); float sidewaysInput = Input.GetAxis("Horizontal") * m_steeringAmount; // Turn front wheel m_frontWheelTransform.localEulerAngles = new Vector3(0, sidewaysInput, 90); // get speed and drag float speed = m_velocity.magnitude; Vector3 forwardDrag = -m_forwardDragConstant …
10 physics  car 

1
OpenGL ESは、テクスチャを使用してステンシルエフェクトを作成します
環境 これは私が働いている環境です: OpenGL ES 2.0 iPhoneシミュレーター&iPhone 4 NVIDIA GeForce GTX 680MX 2048 MBを使用するiMac 27インチ お役に立てば幸いです。 問題 Stackoverflowを含む複数のソースと複数のサイトから高低を検索していますが、機能するステンシル効果がありません。 私が持っているのはこれです: 黒い「S」のものはポリゴンではなく、背景の画像と同じ幅と高さの四角形の四角形に描かれたテクスチャです。 背景と小さな黄色の男が黒い「S」テクスチャ内にある場合にのみ表示されるステンシルエフェクトを実行しようとしています。 私のフラグメントシェーダーでは、これがあります: varying lowp vec4 destinationColor; varying lowp vec2 TexCoordOut; uniform sampler2D Texture; uniform highp float TexScale; void main() { highp vec4 color = texture2D(Texture, TexCoordOut); if(color.a == 0.0) { discard; …

5
小惑星のテクスチャリング
私はこの小惑星にテクスチャを付けようとしています。でも何かが足りない。 このチュートリアルに続いて、私はこれをここまで取得しました。 今、私は次のステップを理解できません:どのようにして継ぎ目の問題を解決しますか?この二十面体の球には、避けられない継ぎ目があります。OK。オブジェクトに適用したときにシームレスに見えるようにテクスチャをペイントするにはどうすればよいですか?どのエッジがどの側に接続しているかを知るにはどうすればよいですか?それはちょうど対称になるでしょうね? これは、単純な球をテクスチャリングするのが非常に難しいようです。ここにいくつかのテクニックがありませんか?

3
六角形グリッドに範囲を表示
これが状況です。 六角形のボードとその上にユニットがあり、速度または移動値があります。4。異なる地形には異なるコストがあります。ユニットをクリックすると、ゲームに移動範囲が表示されます。 私の解決策は、4の範囲内の各ヘクスをA *パスファインディングでチェックすることでした。パスコストが4未満の場合、このヘックスは範囲内にありました。最後に、ゲームでそのユニットの範囲をうまく表示しました。 私の質問は、私が自分のソリューションでやったことを本当に誇りに思っているので、六角グリッドまたは正方形グリッドで範囲を検索する他のソリューションはありますか?私は思う、それは少し誇張されていますか?:)) ユニットスピードが4または6または8の場合、コンピューターのコンピューティング範囲までの時間は本当に良いことに気づきましたが、スピードが10以上の場合、計算に数秒待つ必要があることに気付きました実際のゲームでは、私はこのようなものを見ることはなく、私のA *パスファインディングはかなり最適化されているので、私の解決策は間違っていると思います。 返信ありがとうございます。

2
ゲーム「Do n't Starve」のように、2.5Dパースペクティブで地形をレンダリングするにはどうすればよいですか?
Terrariaなどの2Dサイドスクローラーゲームを作成した経験がありますが、自分自身に挑戦して、2.5Dの視点を持つゲームを作成したいと考えています。私が模倣しようとしているゲームは、Do n't Starveです。現在、私の焦点は、地面をレンダリングする方法を理解することです。彼らがどのように地面を生成し、それをレンダリングしたかを理解するのに苦労しています。彼らが地面をレンダリングしたと思う方法は、最初にいくつかのペイントプログラムで地面をペイントし、次にその平面イメージを何らかの方法で操作して、奥行きがあるように見せることです。 実際にそのタイプの地形をどのようにレンダリングするかについて、私は完全に混乱しています。地形に次の機能を持たせたい: Do n't Starveの地形のように見える、これはDo n't Starve の地形を示すビデオです 地形は平坦になり、カメラの角度と視点は固定されます ヒントやヒントをいただければ幸いです。よろしくお願いします。 (私は軽量Javaゲームライブラリ(LWJGL)を使用してJavaで作業しています。)

3
狭位相衝突検出アルゴリズム
衝突検出には3つのフェーズがあります。 Broadphase:相互に作用する可能性のあるすべてのオブジェクト間でループします。ループを高速化する場合は、誤検知が許可されます。 Narrowphase:それらが衝突するかどうか、場合によっては、どのようにして誤検知がないかを決定します 解決策:衝突を解決します。 私が尋ねている質問はナローフェーズについてです。複雑さと精度が異なる複数のアルゴリズムがあります。 ヒットボックスの交差:これは事後アルゴリズムであり、複雑度は最低ですが、あまり正確ではありません。 色の交差:各ピクセルのヒットボックスの交差、事後、ピクセル完全、時間に関して正確ではない、複雑度が高い Separating axis theorem:これはより頻繁に使用され、三角形には正確ですが、エッジを見つけることができないため、事後的に、最後のフレームを考慮すると、より安定します 線形レイキャスティング:先見的アルゴリズムは、半現実的に見える物理学に役立ち、交差点を見つけます。SATよりも正確ですが、より複雑です。 スプライン補間:演繹的で、線形光線よりもさらに正確で、より複雑です。 私が忘れていたものはおそらくもっとたくさんあります。問題は、いつSATを使用した方がよいか、いつ光線を使用するか、いつスプラインを使用するか、そして何か良いものがあるかどうかです。

2
2DタイルベースのRTSで橋の下を通過するボート
2DタイルベースのRTSを書いています。そして私はそれに「疑似3D」機能を追加したいと思います-川に架かる橋。 私はまだコーディングを開始していません。衝突検出モデルにどのように適合するかを考えようとしています。橋の下を通過するボートと橋の上を移動するユニットは、最終的にマップ上の同じセルを占有します。それらを衝突から予防する方法は? そのような問題を解決するための一般的なアプローチはありますか?または、これを行うには3Dワールドを実装する必要がありますか?

4
ゲーム開発チームを始める際の法的考慮事項
まだ見つけていない他の2人の開発者と1人のアーティストとプロジェクトを開始しようとしています。しかし、法的な観点から、それをどのように正確に処理すればよいかわかりません。 契約書に署名することになっていますか?そのような文書では何を述べるべきですか? ゲームはおそらく無料です。

4
MonoGame用GUIライブラリ[終了]
現在のところ、この質問はQ&A形式には適していません。回答は事実、参考文献、専門知識によって裏付けられると期待していますが、この質問は、議論、議論、投票、または拡張ディスカッションを求める可能性があります。この質問を改善でき、再開できると思われる場合は、ヘルプセンターにアクセスしてください。 6年前休業。 MonoGameで動作するGuiLibraryはありますか?XNA用のいくつかのGUIライブラリがあることは知っていますが、ほとんどのものがMonoGameでは機能しないと思います。 ボタンや入力フィールドのような単純なものでも私を助けてくれるでしょう... ありがとう。
10 monogame 

1
複数のサーフェスを一度にブリットするSDL
レベルの背景のスプライトが512x512のチャンクに分割されるプラットフォームゲームを作成しようとしています。一度に3つのチャンクをメモリに保持し、3つすべてを画面に表示するコードを記述しようとしています。ここに私が持っている現在のコードがあります: SDL_Rect where; where.y = -game->camera->y; where.x = -game->camera->x - MAP_WIDTH; SDL_BlitSurface(left_chunk, NULL, screen, &where); where.x = -game->camera->x; SDL_BlitSurface(center_chunk, NULL, screen, &where); where.x = -game->camera->x + MAP_WIDTH; SDL_BlitSurface(right_chunk, NULL, screen, &where); 私が遭遇している問題は、最初にブリットされるチャンクのいずれかが表示される唯一のものであるということです。残りは画面に表示されません。問題はアルファ透明度に関係している可能性があると思いますが、チャンクがまったく重ならない場合でも、問題は解決されません。コードの他の部分では、文字や背景など、一度に複数の項目を画面に表示しますが、それらはすべて正しく表示されます。このコードの特定のセグメントは、この問題が発生している唯一の領域です。 left_chunkを点滅させる行をコメント化すると、次のように変わります。
10 sdl 

1
プレーヤーの速度変更を送信するときにクライアントとサーバーを同期するにはどうすればよいですか?
クライアント側の予測を実装しています。ほとんどの説明は、クライアントが「プレーヤーを1ポジション上に移動する」のようなメッセージを送信することを前提としています。「プレイヤーのベロシティをxに設定」のようなメッセージを送信するとどうなりますか? クライアントでは、サーバーよりも先にプレイ​​ヤーが(クライアント側の予測によって)自分の速度を設定するため、2つが同期しなくなります。この問題は、平均遅延を考慮しても解消されません。 どうすればこれに取り組むことができますか?

3
16進グリッドの保管
Unity3D用の小さな六角グリッドフレームワークを作成していて、次のジレンマに直面しています。これは私の座標系です(ここから取得): 保存方法がわからないという事実を除けば、すべてうまくいきます。私は当初、これを2D配列に格納し、画像を使用してマップを生成することを意図していました。 1つの問題は、負の値があったことです(これは、座標を少しオフセットすることで簡単に修正されました)。 ただし、この座標系により、そのような画像やビットマップは菱形にする必要があります。これらの構造は四角形であるため、何かをハッキングしても、多くの頭痛の種を引き起こします。これを修正できる欠けているものはありますか?ユニティフォーラムでこれに関するフォーラムの投稿を見たのを覚えていますが、リンクが見つかりません。 座標変換器のセットを書くことがここでの最良の解決策ですか? 皆さんがそれが役立つと思うなら、私の問題のコードと画像を投稿できます。

2
2Dパスファインディング-滑らかなパスを見つける
単純なパスファインディングを実装しようとしましたが、結果は、私が達成しようとしたものよりも満足できるものではありません。スタークラフト2のようなゲームのユニットはすべての方向に移動しますが、私の場合、ユニットは最大8方向(ウォークラフト1スタイル)にしか移動しません。 。Starcraft 2のように結果を得るにはどうすればよいですか?タイルサイズを縮小しますか? 写真では、障害物である岩のタイルの水平線と、緑のタイルとしてマークされた検出されたパスを確認できます。赤い線は私が達成したい道です。

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