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

位置、方向、または速度を表すために使用でき、空間問題を単純化または完全に自明化できる数学的概念。


5
ゲームの俳優は自分自身を描く責任がありますか?
私はゲーム開発は初めてですが、プログラミングは初めてです。 私は(再び)JavaScriptのcanvas要素を使用してPongタイプのゲームで遊んでいます。 Paddle次のプロパティを持つオブジェクトを作成しました... width height x y colour 次のPongようなプロパティを持つオブジェクトもあります... width height backgroundColour draw()。 draw()現在、メソッドはをリセットしてcanvasおり、そこで問題が発生しました。 必要があるPaddleオブジェクトが持つdraw()その描画方法は責任、または必要があるdraw()のPongオブジェクトがその役者を描くための責任がある(私が間違ってる場合、私はそれが正しい用語であると仮定し、私を修正してください)。 私はのためにそれがadvantagousだろうと考え出しPaddle自体を描画するために、私は2つのオブジェクトをインスタンス化するように、PlayerとEnemy。それはでなかった場合Pongのdraw()、私は二度同様のコードを記述する必要があると思います。 ここでのベストプラクティスは何ですか? ありがとう。

5
2Dでは、ポイントに最も近いオブジェクトを効率的に見つけるにはどうすればよいですか?
かなりのゲームエンジンを持っているので、ポイントのリストの中で最も近いものを見つける機能が欲しいのですが。 ピタゴラスの定理を使用して各距離を見つけ、最小距離を選択することができますが、それにはすべての距離を反復する必要があります。 衝突システムもあり、基本的にはオブジェクトを小さなグリッド(ミニマップのようなもの)上の小さなオブジェクトに変え、同じグリッド空間にオブジェクトが存在する場合にのみ衝突をチェックします。グリッド間隔を大きくするだけで、近接性を確認できます。(すべての単一オブジェクトをチェックするのではなく。)ただし、それは私の基本クラスで追加のセットアップが必要になり、既に散らかったオブジェクトを散らかします。その価値はありますか? ポイントとサイズのリストに基づいて、最も近いオブジェクトを検出するために使用できる効率的かつ正確なものはありますか?
35 c++  2d  algorithm  vector  picking 

2
2Dスプライトの回転力の計算
誰かが次のシナリオを計算するエレガントな方法を持っているかどうか疑問に思っています。 私は(n)個の正方形、ランダムな形状のオブジェクトを持っていますが、それらはすべて長方形のふりをします。 私たちは重力を扱っていないので、空間内のオブジェクトをトップダウンの観点から検討します。下の図のように、特定の正方形のオブジェクトに力を加えています。 適用されている場所で、適用されている力に基づいて回転角度を計算する方法を教えてください。中央の正方形に適用すると、まっすぐになります。中心からさらに移動すると、どのように動作しますか?回転速度の計算方法は?
35 2d  rotation  physics  vector 

6
3Dベクトルがポイントを表す場合、どのように長さを設定できますか?
ベクトル演算を理解しようとしています(特にUnityエンジンでの使用)。ベクトルがポイント(位置と方向)のみを表す場合でも、ベクトルがどのように長さ(大きさ)を持つことができるのかわかりませんか? それは、大きさが単に原点(0、0、0)からの距離であることを意味しますか?それとも何か不足していますか?
27 vector  geometry 

3
チームはソースファイルの上書きをどのように防止しますか?[閉まっている]
閉まっている。この質問はトピック外です。現在、回答を受け付けていません。 この質問を改善したいですか? 質問を更新して、 Game Development Stack Exchangeで話題になるようにします。 4年前に閉鎖されました。 たとえば、ゲームエンジンなどが複数の人によって同時に処理されているときに、上書きをどのように防ぐことができるのか、ということが起こりました。 開発者1が作業してAudio.cppおり、開発者2も作業をしているとしましょう。Audio.cppこれは、一般的に大規模なチームで上書きに対処するためにどのように管理されていますか?(つまり、開発者2がファイルを開くのを停止して、開発者1が終了するまで)
26 project-management  version-control  teamwork  java  2d  collision-detection  vector  collision-resolution  unity  directx  directx11  directx10  xna  ios  monogame  windows-phone-8  xamarin  design-patterns  oop  xna  collision-detection  collision-resolution  bounding-boxes  rotation  collision-detection  mathematics  javascript  algorithm  separating-axis-theorem  xna  2d  monogame  image  xna  directx  graphics  performance  opengl  2d  3d  c++  directx11  unity  c#  scale  c#  xna  collision-detection  collision-resolution  leaderboards  scoring  glsl  srgb  tilemap  three.js  tiled  unity  physics  xml  dialog-tree  xna  c#  .net  opengl  lwjgl  vbo  physics  graphics  procedural-generation  simulations  water  opengl  java  textures  lwjgl  frame-buffer  unity  unity  2d  collision-detection  collision-resolution  trigonometry  java  android  libgdx  xna  c#  frame-rate  c++  unreal-4  procedural-generation  java  graphics  lwjgl  slick  c++  software-engineering 

5
2つの2Dベクトル間の角度と適切な回転方向を計算するにはどうすればよいですか?
障害物がなく、動きがXY平面に制限されている動きAIに取り組んでいます。私は2つのベクトル、v、船1の対面方向、w、船1の位置から船2を指すベクトルを計算しています。 次に、式を使用してこれらの2つのベクトル間の角度を計算しています arccos((v · w) / (|v| · |w|)) 私が抱えている問題は、arccos0°から180°の間の値しか返さないことです。これにより、他の船と向き合うために左に曲がるか右に曲がるかを判断できなくなります。 これを行うためのより良い方法はありますか?
26 2d  vector 

3
他のオブジェクトのオフセットに基づいてオブジェクトを回転するにはどうすればよいですか?
Y軸を中心に回転するタレットの3Dモデルがあります。この砲塔には、オブジェクトの中心から大きく外れた大砲があります。砲塔ではなく大砲で指定されたターゲットを狙います。ただし、タレットを回転させることしかできないため、目的ごとに達成するためにどの方程式を適用する必要があるかわかりません。 次の画像は私の問題を示しています。 ターゲットに砲塔「LookAt()」がある場合、大砲から発するレーザーは、そのターゲットを完全に見逃してしまいます。 これが完全にトップダウンのシナリオであり、大砲が砲塔と正確に平行である場合、私のロジックは、偽のターゲットは実際のターゲットに等しい位置に加えて、砲塔と大砲。しかし、実際のシナリオでは、カメラの角度は60度であり、大砲はわずかに回転しています。 次の図は、シナリオを示しています。 正確な理由はわかりませんが、同じオフセットを適用すると、タレットから特定の距離を狙っているときにしか機能しないようです。 ロジックに欠陥がありますか?ここに基本的なものがありませんか? 最終編集:@JohnHamiltonの最新アップデートが提供するソリューションは、この問題を完全に正確に解決します。これで、誤った実装を説明するために使用したコードと画像を削除しました。

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

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 ; …

3
2Dベクトルに対する垂線を見つけるにはどうすればよいですか?
プレイヤーがマウスカーソルの位置に向かって前方に移動するトップダウンゲームを作成しています。プレイヤーの移動コードの一部として、プレイヤーの現在の対面ベクトルに垂直なベクトルを決定する必要があります(ストラフの動作を実装するため)。 特定の2Dベクトルの垂直ベクトルを計算するにはどうすればよいですか?

6
ゲーム開発におけるベクトル
プログラミングとゲームプログラミングは初めてです。ベクトルと数学について読んでいますが、質問があります-ゲームプログラミングでベクトルを使用するにはどうすればよいですか?ベクトルを使用している簡単な例を(2Dで)誰でも教えてください。 私は例を見つけましたが、ほとんどがコンソールにあり、そこで数字を出力しますが、大きな例はわかりません。
19 vector 

7
PointオブジェクトとVectorオブジェクトが必要ですか?または、単にVectorオブジェクトを使用してPointを表すことは問題ありませんか?
私が友人と一緒に開発しているエンジンのコンポーネントを構築すること(学習目的)で、私はこの疑問に思いつきました。 最初は、次のようなPointコンストラクターがありました。 var Point = function( x, y ) { this.x = x; this.y = y; }; しかし、それらにいくつかのVector数学を追加し始め、Vector2dに名前を変更することにしました。 しかし、現在、行を作成するために使用される次のようないくつかの方法は(少なくとも私の意見では)少し混乱しています。 //before the renaming of Point to Vector2, the parameters were startingPoint and endingPoint Geometry.Line = function( startingVector, endingVector ) { //... }; Pointオブジェクトの特定のコンストラクターを作成する必要がありますか、またはポイントをベクトルとして定義するのに問題はありませんか? ベクトルには大きさと方向がありますが、オブジェクトの位置を表すためだけにベクトルを使用している人が非常に多いと思います。

1
一定の速度で移動するCatmull-Romスプラインの弧長を決定する
Catmull-Romスプラインの連結によって定義されるパスがあります。XNAの静的メソッドVector2.CatmullRomを使用して、0から1の値を持つポイント間の補間を可能にします。 このパスのすべてのスプラインが同じ長さではありません。これは、パスに沿って進行中にすべてのスプラインに対してウェイトを一定の速度にした場合、速度の違いを引き起こします。重量の速度をスプラインの長さに依存させることで、これを改善できます。このようなスプラインの長さを判断するにはどうすればよいですか?スプラインを10本の直線にカットして、それらの長さを合計するだけで近似できますか? スプラインによって定義された生成されたメッシュの動的テクスチャマッピングにこれを使用しています。


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