ゲーム開発

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

2
プレーヤーが作成した構造が3Dブロックベースのゲームのテンプレートと一致するかどうかを判断する
免責事項:これは恐ろしいMinecraftスタイルの質問の1つですが、データ構造とアルゴリズムの質問のほうが多いと思います 私は3Dデータ構造に本当に慣れていないので、3Dブロック構造を保存および照合するための最良の方法を考えています。 現在、プレイヤーは任意のスペースにブロックを配置でき、これらのブロックが事前定義された構造と一致すると、イベントが発生します。私が現在行っている方法は、プレーヤーがブロックを配置するときに、ゲームが再帰的に各隣接ブロックをチェックして、x、y、z座標が最も低いブロックを見つけ、そのブロックをルートブロックにします。次に、ルートブロックに基づいて残りのブロックをチェックし、特定のテンプレートと一致することを確認します。問題は、テンプレートが複雑になるにつれて、私のコード(非常に非効率的)も複雑になることです。 これを行う最善の方法は、構造を定義するあるタイプのマトリックスを保存し、プレーヤーがブロックを配置するたびにマトリックスと照合することです。このタイプの問題に一致するデータ構造/アルゴリズムはすでにありますか?

2
GPUにはいくつの「並列ユニット」がありますか?
GPUが持つ頂点を処理するための並列ユニットの数を教えてください。 このウィキペディアのページでは、GFLOPSとクロック速度を提供しています。たとえば、Radeon 5850 "Broadway PRO"の場合、1000 GFLOPSが得られます。頂点シェーダーの実行が100フロップであると仮定すると、1秒あたり1000e9 / 100 = 10e9の頂点を処理できます。 製造元が公開している並列処理ユニットの数、またはその数を知る方法はありますか?
8 gpu 

2
ナビゲーションメッシュの欠点および/または制限は何ですか?[閉まっている]
閉まっている。この質問はトピックから外れています。現在、回答を受け付けていません。 この質問を改善してみませんか? 質問を更新して、ゲーム開発スタック交換のトピックになるようにします。 3か月前に閉鎖。 ナビゲーションメッシュには多くのマテリアルがあります。それらは何であるか、ウェイポイントで構成されるグラフよりも優れています。しかし、明らかな時間以外は、ナビゲーションメッシュを使用することの制限とデメリットに関する情報はあまり見ていません。手動で作成する必要があります(Recastによって比較的解決されます)。 確かに、これは完全に「魔法の」テクニックではなく、欠点がありません。誰かが、ナビゲーションメッシュを使用することの制限と欠点、たとえばウェイポイントで構成されたグラフについて説明していただけませんか?または私を正しい方向に向けますか?

4
JavaScriptのマルチプレイヤーゲームは悪い考えですか?[閉まっている]
休業。この質問には、より焦点を当てる必要があります。現在、回答を受け付けていません。 この質問を改善してみませんか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てます。 昨年休業。 マルチプレイヤーゲームを作成するときに(クライアント側の)JavaScriptを使用することの欠点は何ですか? 【内容紹介】それはMMORPG / RTSです。つまり、プレーヤーは世界の構造物に積極的に貢献し、コンテンツの多くを自分で作成します。

5
ゲーム指向のグラフィックや画像エディターはありますか?
画像を編集するためにPhotoshopに代わるものを何年にもわたって探していたことを覚えています。私もGimpを使ってみましたが、それでも十分ではありません。アセットのコンパイル段階に突入することでしか解決できない問題がいくつかあります。たとえば、グラフィックスパッケージには、あらかじめ乗算されたアルファオプションが付属していません。また、ハードウェア用に圧縮された後の画像のプレビューが含まれているパッケージもありません。拡散、鏡面反射光、アンビエント、法線マップをすべて同じツールで同時に変更できるパッケージに出会ったことはありません。 このような条件を満たすことができる画像操作パッケージはありますか?4つ以上のチャネルを持つテクスチャを許可し、プレビューで最終的な形式にエクスポートし、おそらく一貫した方法でレンダリングすることさえできますか? ウィッシュリストのアイテムは次のとおりです。 バッチ変換 スクリプト可能なピクセルシェーダー/変換 背景の上に拡散+アルファを表示する/ alpha2coverageプレビューを許可する 高さまたは法線マップによる深度マッピングのレンダリング ミップマップを表示して編集できるようにする

2
2Dおよび3DゲームをデスクトップとWebでプレイするには、どの言語が最適ですか?[閉まっている]
現在のところ、この質問はQ&A形式には適していません。私たちは回答が事実、参考文献、または専門知識によってサポートされることを期待しますが、この質問はおそらく議論、議論、投票、または拡張された議論を誘います。この質問を改善でき、再開できると思われる場合は、ヘルプセンターにアクセスしてください。 8年前に閉鎖。 私はB.Techです。学生であり、CSコースをいくつか修了しており、プログラミング言語に関する知識を持っている C ++(QtとVisual Studioでいくつかの小さなデスクトップGUIプログラムを作成しました)、Java(SwingでもいくつかのGUIを実行しました)、Pythonを知っています。 今、私は2Dおよび3Dゲームを作成する方法を学びたいと思っています。これは、デスクトップだけでなくWebでもプレイできます。では、どの言語がこれに最適でしょうか?私はいくつかのWebゲームをプレイしましたが、すべて実行するにはFlashプレーヤーが必要です。それらはすべてASまたは他のFlash言語で作成されていますか?
8 flash 

1
車両の予測軌道?
私が開発しているゲームでは、この例では速度Vで北上している車両(1)が目標(2)に到達できるかどうかを計算する必要があります。例は上から問題を描写しています: 実際には2つのシナリオが考えられます。Vが一定である(結果として軌道4、円弧)、または車両に加速/減速する能力がある(軌道3、らせん弧)。 車両が(行き過ぎるのではなく)目標に到達できるかどうかを簡単に確認できる方法があるかどうか知りたい。私が考えることができる唯一のことは、時間の経過に伴う車両の位置を統合することなので、私は特に軌道#3に興味があります。 編集:もちろん、車両には常に操縦する能力がありますが、操縦半径はその速度に応じて変化します(最大横g力と考えてください)。 EDIT2:(実生活のほとんどの車両と同様に)ゲーム内のものにも最小ステアリング半径があることにも注意してください)。

2
AndroidのVSync /実際の30FPS
一部のデバイスでフルスピードで実行できないゲームに取り組んでいます。Tegra2では、多くの最適化により、パフォーマンスは約40 fpsです。フレームレートは安定していますが、アニメーションが十分にスムーズではないため、vsyncが必要です。 2.3 Android SDKでは、EGLライブラリーをネイティブで使用できます。だから私はeglSwapIntervalを使用しようとしますが、成功しません。で、このGDC紙、Tegra2はそれを行うことができますようです。 Ps:一定のFPSを強制するThread.sleep()は許容できるソリューションではありません
8 android  vsync 


2
Java AWTは2Dゲームのレンダリングに適していますか?
[この質問の方が適していると指摘されたため、stackoverflowからこの質問を再投稿します。] 現在、2DゲームエンジンをJavaに移植しています。Stackoverflowでここで指摘されているゲームライブラリのいくつかを調べました。しかし、私が見たものはかなり単純化されており、アルファ透明度のようなものをサポートしているかどうかさえ述べていないため、ロジックをすでに記述しているC ++レンダラーを移植することにしました。 このレンダラーは、タイリングを使用して不要な再レンダリングを回避する純粋なソフトウェアレンダラーです。出力ペインより少し大きい「オフスクリーンバッファー」を作成し、このオフスクリーンバッファーをすべてのフレームの出力にブリットすることで、スクロールパフォーマンスを最適化しました。このようにして、マップ上でピクセルをスクロールしたからといって、タイルを不必要に再描画することを回避できました。 JavaのAWTを使用して実装し、オフスクリーンバッファーに大きなBufferedImageを使用しました。CPU使用率は問題ありません(C ++の約2倍です)が、連続スクロールに奇妙な問題があり、毎秒程度、レンダラーが約0.2秒間遅延します。 私のコードにはこれらの期間に発生するものはなく、オフスクリーンバッファーをメインビューに描画しないとスパイクがなくなるので、Javaが独自の内部最適化を行っていると結論付けることができます。ただし、それが何をするのかわかりません。また、スパイクを取り除くために削除する必要がある自分自身の最適化もわかりません。また、Java AWTは継続的で高FPSのスクロールを考慮して作成されたのではない可能性があり、この目的にはまったく使用できません。 これらのスパイクを取り除く方法はありますか?
8 2d  java 

1
入力パイプラインはどのように機能しますか?
Androidの入力パイプラインの実装に関するこの記事を見つけましたが、それがどのように機能するのか本当にわかりません。また、パイプラインやプールのプログラミング概念も完全には理解していません。誰かがこれらの概念と、これらがこの入力パイプラインとしてどのように機能するかを説明できますか?

7
オブジェクトの更新、内部か外部か?
タイトルは少しわかりにくいですが、質問を短いフレーズで説明する方法は考えられません。だからここにあります: 物理/タイルベースなど、ゲームエンジンを作成しているときはいつでも、物事をどのように管理すればよいかわからないところにいつも行きます。世界のエンティティは自分で処理する必要がありますか、それとも管理するグローバルシステムが必要ですか? 簡単な例を次に示します。各オブジェクトが彼の周りの世界を見て(衝突をチェック)、それに基づいて移動する必要があります。 [注、これはオブジェクトがタイルごとに移動するタイルベースのゲームなので、物理を使用してタイル間を移動していません] public class Actor : GameObject { private void MoveTo(Vector2 location) { if (world.getTile(location) != solid && world.objAtTile(location) == null) { Tweener.addTween(this, location); } } } または、各オブジェクトの動きは、世界がすべてをチェックする世界で操作する必要がありますか? public class Actor : GameObject { private void MoveTo(Vector2 location) { world.moveTo(location); } } public class World { public void …

1
OpenGL対物理学?
私はゲームプログラミングに非常に慣れていないため、最初のプロジェクトに参加しています。私は専門家の助言が必要になるようになりました: ゲームの物理演算がオブジェクトを操作できるようにするには、3D空間での各オブジェクトの位置と方向を知る必要があります。シミュレーションの一部として、オブジェクトによる移動(位置の変更)および方向の変更(回転)。 これは、回転と平行移動の計算が2回行われることを意味しますか?物理学の1つともう1つは、オブジェクトを描画する前にglTranslateとglRotateを使用して行われますか? IMOこれは起こらないはずです。また、物理部分で平行移動と回転を計算すると、GPUではなくCPUが使用され、パフォーマンスに影響します。 これは専門家によってどのように行われ、そのような状況を処理するための効率的なゲームアーキテクチャについてどのようなアドバイスをしますか?
8 opengl  physics 

4
アルキメデスのらせんの周りを一定の速度で粒子を移動する
粒子をらせん状に一定速度で動かしたい。これは一定の角速度ではないことに注意してください。これはかなり困難であることがわかっているので、ここでは自分の方法について説明します。 問題のスパイラルは、極方程式r = ϑとパラメトリック方程式を使用した古典的なアルキメデスのスパイラルx = t*cos(t), y = t*sin(t)です。これは次のようになります。 粒子をらせんの周りに移動したいので、単純に、粒子の位置をtの値として、速度をtの増加として与えることができます。このようにして、粒子は一定の角速度でらせんの周りを動きます。ただし、これは、中心から離れるほど、その(非角)速度が速くなることを意味します。 したがって、tの増加に速度を持たせる代わりに、弧の長さの増加として速度を求めます。スパイラルの弧の長さを取得する最初の課題ですが、原因私は使用していアルキメデスの螺旋があまりにも非常識ではないという事実に、弧の長さの関数である。ここでa = 1。これにより、シータ値を円弧長に変換できますが、これは私が必要としているものとは正反対です。したがって、弧長関数の逆を見つける必要があります。そのハードルで、Wolfram-Alphaは失敗しました。 それで、弧長関数の逆を見つけることは可能ですか?シータの負の値を除外する場合、関数は1対1のマッピングです。 おかげで、 ローリー

2
誰かがラジオシティ照明を私に説明できますか?
私はすでにアンビエントオクルージョンの基本を理解しています。私はレイキャスターを持っていて、半球の周りの光線を均一に発射することができます。それらはラジオシティに必要なものの基本であるように見えますが、そこからどこへ行くべきか分かりません。それぞれの顔からどれくらいの光が出るのですか?(私はminecraftのようなキューブでゲームを作っています)その後、私は何をしますか?

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