ゲーム開発

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

5
ゲームオブジェクトのすべてのインスタンスにDrawableGameComponentを使用することの短所は何ですか?
私は多くの場所でDrawableGameComponentsを「レベル」や、キャラクターやタイルなどの代わりに使用する代わりに保存する必要があることを読みました(この男がここで言うように)。しかし、なぜそうなのか理解できません。私はこの投稿を読んで、それは私にとって非常に理にかなっていますが、これらは少数派です。 私は通常、このようなことにはあまり注意を払わないでしょうが、この場合、どうやらこれが進むべき道ではないと思われる大多数の人々が知りたいと思います。たぶん私は何かが欠けています。


3
ALT-TABが「迷惑」/遅い/グリッチになる原因は何ですか?
これはより自由な質問ですが、この問題を回避する方法についての良い洞察を得たいと思います。 Windowsでゲームをプレイするとき、Altキーを押しながらTabキーを押して外したい場合があります。問題のないゲームもあれば、それほど簡単ではないゲームもあります。AGESを使用してスイッチを入れたり戻したりする場合もあります。 この動作の原因は何だろうか?これはDirectXまたはOpenGLのどちらですか?ゲームが「巧妙」であり、画面設定が変更されるたびにキャッシュをキャッシュ/ワイプすることが原因ですか?(Altキーを押しながらTabキーを押すと、何らかの信号が表示されると思いますか?) 私自身の問題はありませんが、何を避けるべきか、どのような「賢い」トリックがこの種の恐ろしい顧客体験を引き起こす可能性があるのか​​知りたいのですが?

4
データの保存方法の選択方法
男に魚を与えて、あなたは一日彼を養います。男に魚を教えると、あなたは一生彼を養います。 - 中国のことわざ 実際のプロジェクトにどのようなデータストレージを使用すべきかを尋ねることができますが、釣りを学びたいので、新しいプロジェクトを始めるたびに魚を求める必要はありません。 そのため、ゲーム以外のプロジェクトにデータを保存するためにXMLファイルとリレーショナルデータベースの2つの方法を使用するまでは。NoSQLのような他の種類のデータベースもあることを知っています。しかし、私が利用できる選択肢が他にあるかどうか、または最初に任意に選択する以外にどのように選択するかはわかりません。 質問は次のとおりです。ゲームプロジェクトのデータストレージの種類はどのように選択すればよいですか。 そして、私は選択するときに次の基準に興味があります: プロジェクトのサイズ。 ゲームが対象とするプラットフォーム、および使用される開発プラットフォーム。 データ構造の複雑さ。 多くのプロジェクト間でデータの移植性を追加しました。 追加 2異なるプロジェクト間でのデータの無制限の使用。(つまり、ユーザーデータ) データにアクセスする頻度を追加しました 同じアプリケーションに複数のタイプのデータを追加 追加2複数のデータストレージを備えた構成。 何を使用するかを決定する際に、あなたが考える他のポイントは興味深いものです。 編集私は知っていますXML / JSON / Textまたはデータベースを使用してゲームコンテンツを保存する方が良いでしょうか?、しかし、それは私のポイントを正確に扱っていないと思った。今私が間違っていれば、私は私の方法でエラーを喜んで表示されます。 EDIT2関連性があると思われるいくつかのポイントを追加しました。さらに、フラットファイルストレージとリレーショナルデータベースは別として、他にどのようなオプションが利用可能かを聞きたいと思います。たとえば、非リレーショナルデータベースはどうでしょうか。前述のその他のオプションよりもこのようなデータベースを使用することが適切な場合は?
25 databases  data  xml 

9
Unity3dでゲームを書く方法を学ぶのに最適な場所[非公開]
現在のところ、この質問はQ&A形式には適していません。回答は事実、参考文献、または専門知識によってサポートされると予想されますが、この質問は議論、議論、世論調査、または詳細な議論を求める可能性があります。この質問を改善し、おそらく再開できると思われる場合は、ヘルプセンターをご覧ください。 6年前に閉鎖されました。 unity3dのチュートリアルやその他の学習リソースに最適な場所は何ですか?
25 unity 

4
単体テストが簡単になるようにゲームのソフトウェアを設計する方法は?
ゲーム開発の状況でJUnitのようなテストフレームワークを使用することは実用的ですか?ゲームをよりテストしやすくするために、どのような設計上の考慮事項に従うことができますか?ゲームのどの部分をテストできる/すべきであり、どの部分を人間のテストに委ねるべきである/すべきですか? たとえば、ゲームループが1つの関数にカプセル化されている場合、テストするのは非常に難しいようです。私は、時間の差分をとり、ゲームロジックを進める「更新」機能をリファクタリングするのが好きです。これにより、偽のより遅い時間差を与えることでゲームを遅くする機能など、いくつかの興味深いトリックが可能になります。

8
アニメーションスプライトを作成するための優れたツールは何ですか?[閉まっている]
現在のところ、この質問はQ&A形式には適していません。回答は事実、参考文献、または専門知識によってサポートされると予想されますが、この質問は議論、議論、世論調査、または詳細な議論を求める可能性があります。この質問を改善し、おそらく再開できると思われる場合は、ヘルプセンターをご覧ください。 6年前に閉鎖されました。 Flashでできる方法と同じ方法でアニメーションを構築できるソフトウェアパッケージを見つけた人はいますか(つまり、トゥイーンやボーン、イージングなどの手法を使用)、結果をスプライトシートとしてエクスポートしますか?

4
タイルマップの生成
私はタイルベースのゲームをプログラミングしており、いくつかの基本的なタイル(草、汚れなど)を持っていますが、タイルが本当にランダムに選択された場合、草/汚れでなければなりません、私はこれを取得します: 私はこれがなぜ起こっているのか理解していますが、私が望むのは、草や土のランダムな連続領域を作成することです。次のような、より意味のあるもの:

3
ループする値(色相や回転など)を切り替えるにはどうすればよいですか?
デモを見る ジョイントをキャンバスの中心の周りで、マウスポインターの角度に向かってスムーズに回転させようとしています。私が持っているものは動作しますが、マウスの角度に到達するために可能な限り最短距離をアニメーション化したいです。この問題は、値が水平線(3.14および-3.14)でループするときに発生します。その領域にカーソルを合わせて、方向がどのように切り替わるかを確認します。 関連コード // ease the current angle to the target angle joint.angle += ( joint.targetAngle - joint.angle ) * 0.1; // get angle from joint to mouse var dx = e.clientX - joint.x, dy = e.clientY - joint.y; joint.targetAngle = Math.atan2( dy, dx ); 「ギャップを越えて」最短距離で回転させるにはどうすればよいですか?

5
クォータニオンによるvector3の回転
私は、指定されたクォータニオンでvector3を回転させようとしています。 私はこれが真実であることを知っています v′= q⋅ V ⋅ Q− 1v′=q⋅v⋅q−1 v' = q \cdot v \cdot q^{-1} 私はがちょうどである逆であることを知っていますが、ベクトルを得るためにベクトルの乗算をクォータニオンにマッピングするにはどうすればよいですか?q− 1q−1 q^{-1} − qM A GN I T U De ( q)−qmagn私tあなたはde(q) \frac {-q} {magnitude(q)} を行列として扱い、とを行列に変換してから、を行列からベクトルに変換できることを発見しましたが、これはベクトルを取得するためだけに少し上に見えます。使用できるクリーンな実装はありますか?vvvqqqq′q′q'v′v′v'
25 c++  quaternion 


3
より高速な正弦関数はありますか?
ジェネレーション3d perlinノイズに取り組んでいます。C#Mathライブラリは、ほとんどの関数が二重の精度を使用しているため、私が必要とするものに対してはやり過ぎのようです。いくつかの場所でMath.Sin()を使用してノイズを生成します。誰もがより高速な正弦関数を知っていますか?
25 xna  c#  mathematics 


4
抽象的な2Dトップダウン水テクスチャをアニメーション化する方法は?
この投稿を改善したいですか?引用や回答が正しい理由の説明など、この質問に対する詳細な回答を提供します。十分な詳細のない回答は、編集または削除できます。 私は現在、海のトップダウンビューでゲームを実装しています。次の、少し抽象的なテクスチャを使用します。 実際のテクスチャは透明ですが、わかりやすくするために緑色のような色を追加しました。 私が今抱えている問題は、このテクスチャをアニメーション化する方法がわからないため、水がきれいに見えることです。私はサイン波でテクスチャを動かそうとしました: texture.y += sin(angle)。もちろん、今ではテクスチャ全体が動いており、非現実的に見えます。次に試したのは、別のレイヤーを追加して視差効果を実装することです。そのため、水面下の反射も移動しますが、はるかに遅くなります。見た目は少し良くなっていますが、それでもまだ...いい感じです。 個々のセルが拡大したり収縮したりする場合、ウェブや布のように見えるのが最高のアニメーションだと思います。誰かがこれらのセルの1つの頂点をわずかに引っ張り、隣接するセルが拡大し、私が引き寄せる(またはプッシュする)セルが収縮すると想像してください。一種のウェブのようなもの(?)。しかし、私はこのようなものを実装する方法がわかりません: これの数学モデルは何ですか?バネのあるもの、どこで力が押したり引いたりしますか? もしそうなら、このモデルを指定されたテクスチャにどのようにマップしますか?すべての曲線を保持し、そうではない... (また、与えられたテクスチャをアニメーション化する方法について、さまざまなアイデア/回答を受け入れています。リアリズムはここでのポイントではなく、動きのような見た目の良い水です...) DMGregoryのソリューション この投稿にlibgdxの例を投稿しました:2D水アニメーションはギザギザで滑らかではありません(テクスチャフィルタリングに関する回答を参照)
24 2d  libgdx  animation  water 

2
レンダリングツリーのパフォーマンスへの影響をどのように減らすことができますか?
低ポリ様式のゲームを作っています。水がある地形があり、たくさんの木が欲しいです。現時点では、10,000本の木が大量に配置されています。各ツリーは200個以下の三角形で構成されているため、負担がかかりすぎません。 主な問題は、湖があり、湖が非常に大きいことです。湖の反対側には実際には木が見えません。特にそこを歩いていると木が突然現れたとき、それは本当にひどく見えます。 これを修正するには、湖の向こう側に十分な量の木が見えるように木の距離を長くする必要がありますが、パフォーマンスは40〜50 fpsに低下し、ゲームにはまだ他にほとんど何もありません。それが役立つ場合は、GTX 1080を使用しています。 ツリーを増やしてゲームをより速く実行するにはどうすればよいですか?

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