タグ付けされた質問 「mathematics」

数学の問題は、ゲームの開発で使用される算術、幾何学、微積分、公式およびその他の計算を扱います。

3
正投影と遠近法以外の3D投影法はありますか?[閉まっている]
閉じた。この質問はより集中する必要があります。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集するだけで1つの問題に焦点を当てるように質問を更新します。 5年前に閉鎖されました。 質問はほとんどタイトルにあります。OpenGLなどの3Dシステムで使用できる、正投影法と遠近法以外の注目すべき3D投影法はありますか? 特に、ゲームデザインで特定の用途があるものはありますか?

4
ゲームプレイの統計やフォーミュラを隠すことにより、どのようなゲーム体験が培われますか?
プレイヤーにキャラクターの能力に関する情報を提供する度合いはさまざまです-プレイヤーのキャラクターの統計や、全ダメージ、ダメージ軽減などの公式にどのように結びつけるかなど、これらに限定されません。これらの数値と公式が完全に提供される場合舞台裏の数字を気にしすぎてゲームを楽しむだけで損なう可能性のある最適なビルドを作成するために、多くの最小マックス/作業につながります。 ゲームデザインの観点から、私は以下に関する洞察を探しています。 すべてではないにしてもほとんどの情報がプレイヤーから隠されている統計システムの設計に関する個人的な経験。非表示にするものとプレーヤーに表示するものについて行った決定の種類、およびそれらの決定の背後にある理由と、プレーヤーがゲームをプレイする方法にどのように影響したかを含めます。 情報を非表示にすることに反対したため、プレーヤーにできるだけ多くの情報を提供することを積極的に選択した個人的な経験。この決定に導いた思考プロセスと、プレイヤーがゲームをプレイする方法に与えた影響について説明してください。 プレーヤーからほとんどの情報を隠す統計システムの設計にさまざまなゲームがどのように近づいているか、およびその設計がプレーヤーのゲームのプレイ方法にどのように影響したかに関するリファレンス/リソース

5
「初心者」ゲームプロジェクトを超えて
私はゲーム開発者が知っておくべき数学の種類に関するこの答えを読んでいて、この部分は本当に目立っていました: How do I move my game object? The novice might say: "I know! I'll just do:" object.position.x++. それは私がそれをやろうと思う方法ですので、それは私のスキルレベルを示していると思います。少なくとも私が過去に作成した2Dの横スクロール型のアーケードスタイルのゲームについては、それだけで十分です。それと少しの三角法。 実際、私はその投稿を読む前に、線形代数をあまり使用しておらず、四元数も聞いていません。これは、これらの数学が3Dで作業するまで表示されないからか、それとも私の2Dゲームが単純であるために、単純な実装で逃げたからです。 フォローアップの質問:そのタイプの数学に精通したい場合、どのタイプのプロジェクトに着手すべきですか?IE:ゲームエンジンの作成、3Dゲームの作成など。

3
ベクターの何が違うのか、複雑なのか、役に立つのか?
これが本当の質問と見なされない場合はご容赦ください。しかし、それは私が本当に混乱しているものです。 他のゲーム開発者がベクターの使用が非常に有用であるという話を絶えず聞いていますが、ベクターの数学に誰もがどのように脅かされているのか、ベクターは気が遠くなるように思えます。私はそれらについて学ぶことを一度もしなかった。 だから、ついにウィキペディアでベクターを見て、驚いた。私が何らかの形で誤解しない限り、ベクトル(簡単にするために、2Dであると言います)は、xとy座標です。 誤解している場合は、修正してください。 だからここに私の質問があります:それは2(または3)次元座標の表現がベクトルであることを意味しないのですか?その場合、ベクトルと座標は同じものです。また、座標を使用せずにゲームを作成することはほとんど不可能です。したがって、ベクターは、ゲームプログラミングをある程度行った人にとって、混乱したり、新しいものになるのでしょうか。 これは、いくつかの説明を使用できるものです。どんな助けも大歓迎です。

1
マウス座標を等尺性インデックスに変換する方法は?
タイル64x32で等尺性マップを描画します。 const Offset = 160; int X, Y; for (int a=0; a < 6; a++) for (int b=0; b < 6; b++) { X = a * 32 - b * 32 + Offset; Y = a * 16 + b * 16; DrawTile(X, Y, tile); } このコードを示す画像: 親愛なる専門家は、セルの等尺性インデックスでのマウス座標の変換式を手伝ってください。例:(105; 100)-> …

6
ゲームプログラマ向けの優れた線形代数の本とは何ですか?[閉まっている]
閉じた。この質問はより集中する必要があります。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集するだけで1つの問題に焦点を当てるように質問を更新します。 4年前に閉鎖されました。 優れた物理学を備えた優れたゲームを作成するには、線形代数の学習を開始する必要があると言われました。 私は線形代数の本を読んでいますが、それは私にはまったく異質です。著者は線形方程式(2つの方程式、2つの変数)を解くことから始めて、学校でそれについて学んだことを覚えていますが、ほとんどすぐにネクロノミコンから直接得られると思われる他のものに飛びつきます。 基礎から始めて、良い数学を学ぶためにどの本を読むことができますか? 助けてくれてありがとう。

6
列車の線路を表すいくつかの方法は何ですか?
私はこれを少し前に小さなプロジェクトで調べましたが、それほど遠くはありませんでした。ユーザーが列車の線路を描いて、「列車」が2D平面でその線路を追跡できるようにする小さなプログラムを作成したいと思います。トラックがかなり自由な形で、すてきな滑らかなラインになるようにしたいと思います。私は三次スプラインをいじってみて、まともな結果を得ましたが、列車をスプラインに追従させるのに苦労しました。また、複数のトラックを作成したり、列車をあるトラックから別のトラックに切り替えたりするのに苦労しました。 誰かが私が何かを理解するのに役立つアドバイス、記事、またはソースコードを持っていますか?ありがとう!

5
Vectorクラスに 'w'コンポーネントが必要ですか?
3D空間の回転、移動などを処理するマトリックスコードを書いていると仮定します。 ここで、変換コンポーネントを収めるために、変換行列は4x4である必要があります。 ただし、実際にベクターにコンポーネントを保存する必要はありwませんか? パースペクティブ除算の場合でもw、ベクトルの外側で単純に計算して保存し、メソッドから戻る前にパースペクティブ除算することができます。 例えば: // post multiply vec2=matrix*vector Vector operator*( const Matrix & a, const Vector& v ) { Vector r ; // do matrix mult r.x = a._11*v.x + a._12*v.y ... real w = a._41*v.x + a._42*v.y ... // perspective divide r /= w ; return r ; …

1
カードのハンドを均等に広げるにはどうすればよいですか?
トランプのセット(幅と高さのある長方形の画像)が与えられた場合、実際のカードを手に持っているように、それぞれを回転させて「ファン」パターンに見えるように配置できます。これを行うにはどのような数学が必要ですか? 更新 JavaScriptでのブラウザー実装の最後の例を次に示します。https : //cosmicrealms.com/blog/2013/03/16/hand-of-cards/ および http://jsfiddle.net/tyyvk/108/


4
戦う2つの軍隊の出力を計算する
Flashを使用して戦略ゲームをプログラミングしています。このゲームは、有名なゲーム「トラビアン」と非常によく似ています。 私の問題は次のとおりです。2つの軍隊の戦いの結果として失われた軍隊の計算をしようとしています。両軍は異なる種類のユニットを持っています。それらのいくつかは他のユニットに対して強く、他のタイプに対して弱いです。 戦闘の方程式にこの違いの効果をどのように置けばいいですか? それらがattとdefポイントのみを持っている場合は簡単に思えますが、ユニットタイプの依存関係になると、私は失われます。

2
3Dポイントを3Dラインに投影するにはどうすればよいですか?
私は2つの点で定義された線を持っているとしましょう、AとのB両方の形で(x, y, z)。これらの点は、3D空間の線を表します。 またP、同じ形式で定義されたポイントがあり、それは行にありません。 その点の線への投影をどのように計算しますか?私は2Dでこれを行う方法を知っていますが、3Dにはすべてのリソースが盗まれているようです。

9
等尺性スプライトを正しい順序に並べ替えるにはどうすればよいですか?
通常のトップダウン2Dゲームでは、画面のy軸を使用して画像を並べ替えることができます。この例では、ツリーは適切にソートされていますが、等尺性の壁はそうではありません。 壁2は壁1の1ピクセル下にあるため、壁1の後に描画され、最終的に上部に配置されます。 等尺性y軸で並べ替えると、壁は正しい順序で表示されますが、ツリーは表示されません。 これを正しく行うにはどうすればよいですか?

6
あるmin \ maxセットから別のmin \ maxセットに数値を変換する方法は?[閉まっている]
閉まっている。この質問はトピック外です。現在、回答を受け付けていません。 この質問を改善したいですか? 質問を更新して、 Game Development Stack Exchangeで話題になるようにします。 4年前に閉鎖されました。 私は地形の生成を行っており、-1〜+1の乱数を生成するperlinライブラリを持っています。これを0〜255のスケールに変換します。これを行う適切な方法は何ですか?

3
ユニットが追加または削除されたときに長方形の形成を維持するにはどうすればよいですか?
行と列のある長方形のボットがあります。ボットがフォーメーションに追加または削除されると、問題が発生します。これが発生すると、ボットは、長方形の構成がほぼ同じアスペクト比で、可能な限り長方形になるように、自分自身を再配置する必要があります。これを行う方法? いくつかのアイデア: ボットを追加または削除する場合、ボットの新しい合計数と目的の一定のアスペクト比を使用して、そのアスペクト比に最も近いフォーメーションの新しい幅と高さを計算します。次に、何らかの方法でボットをシャッフルし、新しい次元に合わせます。 ボットが削除されたら、その背後にあったボットをその場所に移動し、フォーメーションの最後に到達するまで続行します。次に、バックランクのボットを何らかの方法でシャッフルすることにより、バックランクを可能な限り均等にします。 まったく異なる別のアイデアは、分子構造が一緒に留まる方法を模倣することです。4つの最も近いボットを引き付け、残りのボットを撃退することで、すべてのボットを4つの他のボットに囲ませます。逆二乗則を使用して分離を確保するには近すぎるボット(4つを含む)をすべて撃退します。また、構造全体の形状に追加の力が必要になります。しかし、これは非常に計算コストがかかります。 更新:だからサラームの答えを見て、良い次元を与える良い一般的な関数を思いついた。 最初に、以下の幅と高さの連立方程式を解いてから、答えを丸めました。 width/height=aspect ratio of your choice width*height=number of bots これにより、ボット数に対してそのアスペクト比に最も近い整数の長方形が得られます。最も近い長方形は、半分の時間が大きすぎ、半分の時間が小さすぎます(もちろん、ちょうどいいかもしれませんが、それらを気にする人もいます)。長方形が少し大きすぎる場合は、何もする必要はありません。バックランクはほぼ満杯になり、理想的です。長方形が少し小さすぎる場合は、問題が発生します。小さなオーバーフローは独自のランクに移動する必要があるため、少数のボットのみのランクが作成されますが、見た目は美しくありません。違いが大きい場合もあります(幅の半分よりも大きい)。この場合、1つのランクを加算または減算して、差を小さくします。次に、長方形が小さすぎる場合は、列を1つ追加して少し大きくします。それを行った後、バックランクは常に他のランクの少なくとも半分のボットを持っているように見えます。 更新 寸法を取得したら、それらを現在の寸法と比較します。新しい次元の間口が大きい場合、ランクごとに、下のランクからボットをポップし、そのランクのボットの数が間口と等しくなるまで、現在のランクにプッシュします。バックランクに達するまで、そのアルゴリズムを続けます。このアルゴリズムを使用すると、ボットは新しい次元に効率的に収まるように移動します。その後、単に新しい古いものをバックランクにプッシュします。アルゴリズムは、新しい間口が小さい場合と若干異なりますが、あなたはそれを把握できます! 次に、さらに2つの問題があります。削除、および新しいボットが必ずしもバックランクに割り当てられるわけではなく、追加された時点で最も近い位置にあるボットの柔軟な追加方法。

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