問題タブ [physics]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
2209 参照

physics - カスタム物理クラスを OGRE 3D と統合しますか?

大学のプロジェクトで OGRE3D を使用する必要がありますが、物理演算や衝突検出にサードパーティのライブラリを使用することは許可されていません。これには、OGRE に組み込まれている衝突検出の使用が含まれます。

独自のカスタム物理ルーチンを OGRE の組み込みエンティティに追加する正しい方法に問題があります。

OGRE は「エンティティ」オブジェクトをビルディング ブロックの最も基本的なものとして使用し、物理学ではオブジェクトに質量、速度などの属性が必要です。

私が混乱しているのは、OGRE のレンダリング/ロジック ループが、OGRE エンジン内のユーザーから隠されているように見えることです。OGRE のすべてのエンティティを取得し、構築中のカスタム物理エンジンで衝突検出と物理計算を実行できるようにする必要があるため、これは問題です。

独自の物理/衝突エンジン クラスを OGRE と統合するにはどうすればよいですか?

更新: 以下のアドバイスを受けて、OGRE::Entity をサブクラス化しました。

コメントでは、これは OO に準拠するための最良の方法ではないと述べられていますが、私は同意しますが、この段階でより良い方法を見つけることはできませんか? 私はこれを行うことに完全に満足していないので、あなたはどう思いますか、そして何か良いアイデアはありますか.

0 投票する
2 に答える
3723 参照

physics - メッシュと球の間の衝突点を検出しますか?

OgreMOCを使用して物理シミュレーションを書いています。

カメラの位置から撮影した球があり、カメラの前方ベクトルを使用してカメラが向いている方向に移動します。

球体と別のメッシュの間の衝突を検出する方法を知りたいです。

MOC または OGRE を使用して 2 つのメッシュ間の衝突点を確認するにはどうすればよいですか?

更新:これについては以前に言及する必要がありました。これを自分で開発する必要があるため(ユニプロジェクト)、サードパーティの物理ライブラリを使用できません。

0 投票する
1 に答える
109 参照

animation - アニメーション エンティティの再生速度の変更

私の世界で高速で実行されるアニメーションを再生するエンティティがありますs = 1。私の世界で特定の時間間隔から開始すると、アニメーションが遅くなる可能性があります。つまり、次の速度sで再生されます0 < s < 1

この時間間隔はta、 starttime と endtimeによって定義されtbます。

したがって、私の世界の時間が に達するtaと、アニメーションの速度が低下し、(スローモーション効果のように) ゆっくりと再生されますが、他のすべては通常の速度のままです。

この間隔 ta と のどこかでtb、アニメーションはゆっくりと再生を停止し、より速く再生さs > 1れるため、時間が に達するtbと、残りの世界に追いつきます。

私の質問は、アニメーションが正確に追いつくために、減速後の速度がどれくらい速くなるのかということです。とすれば :

  1. 時間間隔tatb
  2. に達すると、アニメーションがどれだけ遅くなるかによる速度係数ta
  3. スロー効果が停止し、ファスト効果が開始されるべきである と の ta間の時間。tb

質問が理解できることを願っています。理解できない場合はお知らせください。例として、ボールを弧を描いて投げ、一定の速度で床に沿って移動し、ボールをキャッチする機械を想像してください。私の場合は、最初は遅い速度で移動しますが、一定の時間が経過すると、ボールをキャッチできるように速度を上げる必要があります。そのスピードは?

0 投票する
1 に答える
4793 参照

iphone - iPhone/iPod touchのCPU/GPU性能

iPhone または iPod touch は、どれくらいのボゴミップ (またはその他の関連ユニット) を提供できますか?

通常の PC のように、大規模なアプリケーションでのパフォーマンスは、CPU 命令の数よりもキャッシュのスラッシングに限定されますか? それとも何か別の制限がありますか?

普通の iPod touch (つまり、iPhone 3GS ではない) で最先端のゲームをプレイするために推奨される総ポリバジェットは?

iPod touch の ARM-11 と iPhone の Samsung ARM には、通常の PC と同じパフォーマンスの FPU があり、コア クロック周波数にスケーリングされていますか?

私が尋ねている理由は、物理エンジンを使用してゲームを移植したいからです (私はODEを使用しています)。他に気をつけなければならないことがあれば、遠慮なく言ってください。

0 投票する
7 に答える
3689 参照

math - 現在の速度ベクトルからターゲット ベクトルへの推力のスムーズな変化のプログラミング

TL;dr: 「あるベクトルから別のベクトルへの推力のスムーズな移行を計算する方法がわかりません。」

敵がオープンスペース(壁なし)でプレイヤーを追いかける簡単なゲームをプログラミングしています。敵の x 速度と y 速度を個別に計算し、敵がプレイヤーの方向に進んでいる場合は加速し、間違った方向に進んでいる場合は急速に減速しました (例: EnemyVelocity.x > 0 & player.x <enemy.x) 、次に EnemyVelocity.x - 2.)

敵をかわそうとするゲームプレイはそれなりに楽しいものですが、敵が適切な物理学を使用して動作するようにしたいというのが私の望みです。私が現在行っていることは、敵とプレイヤーの間の角度に基づいて敵に推力を設定させ (宇宙船を考えてください)、推力を最大速度まで加速させます (EnemyVelocity 三角形の辺 c を計算します)。それが起こると、推力を自動的に調整する最善の方法がわかりません。最大速度を設定しないと、敵はうまく加速しますが、プレイヤーを簡単に追い越してしまい、プレイヤーの方向に戻るのに十分な勢いを得るのに長い時間がかかります。

私が実現したいのは、敵がプレイヤーに向かう途中で常に速度を調整し、敵がいる場所をターゲットにすることです (プレイヤーがどこにいるかを敵に予測させたくありません)。次に、プレイヤーを逃した場合、同じ推力と加速の式で速度を再調整し、プレイヤーに送り返したいと思います。

これには 2 つのベクトルが関係すると考えています。1 つは敵が現在移動している場所で、もう 1 つは敵が移動しようとしている場所です (プレイヤーに直接向かうベクトル)。あるベクトルから別のベクトルへの推力のスムーズな移行を計算する方法がわかりません。

ヒント、公式、質問は大歓迎です!ありがとうスタックオーバーフロー。

0 投票する
3 に答える
10913 参照

3d - XNA 3D 物理エンジン

XNA 用の 3D 物理エンジンを探しています。いくつかのオプションについて聞いたことがありますが、必要なのは次のとおりです。

  • 商用目的で無料(オープンソースが望ましい)
  • 剛体ダイナミクスのサポート
  • ポリゴンごとの衝突のサポート (これは非常に重要です)
  • マネージド コード - XBOX360 で動作する必要があります

このようなものを使用したことがありますか?何かお勧めできますか?

0 投票する
4 に答える
229 参照

algorithm - Bumptop - 物理学との関係は何ですか

素晴らしいBumptopデスクトップ環境についての噂話に加えて、私は今、この質問を受けています。物理学とバンプトップ技術との関係は何ですか。基本的に、このデスクトップ環境で採用されているテクニック/アルゴリズムを学ぶことに興味があります。例えば、

  1. 衝突検出 -- 1 つのアイコンが他のアイコンと衝突しようとしているときに使用されます。

他に知られている技術はありますか?

0 投票する
5 に答える
101140 参照

math - 信号のスペクトル解析を行う際のフーリエ変換 (FFT) の単位

私の質問は、信号のスペクトル分析を行った結果、または信号を FFT に投入し、適切な数値パッケージを使用して結果を解釈した結果の物理的な意味に関係しています。

具体的には:

  • 時変電圧 v(t) などの信号を受け取る
  • それをFFTに投げます(複素数のシーケンスが返されます)
  • ここでモジュラス (abs) を取り、結果を 2 乗します。つまり |fft(v)|^2 です。

これで、y 軸に実数が表示されました。これらをスペクトル係数と呼びましょうか。

  • サンプリング解像度を使用して、クックブックのレシピに従い、スペクトル係数を周波数に関連付けます。
  • この時点で、x 軸に周波数を持つ周波数スペクトル g(w) がありますが、y 軸にはどのような物理単位がありますか?

私の理解では、この周波数スペクトルは、電圧信号にさまざまな周波数がどれだけ存在するかを示しています。これらは、元の信号を再構成するために必要なさまざまな周波数のサインとコサインの係数であるという意味でスペクトル係数です。

最初の質問は、これらのスペクトル係数の UNITS は何ですか?

これが重要な理由は、スペクトル係数が非常に小さい場合と非常に大きい場合があるためです。そのため、dB スケールを使用してそれらを表現したいと考えています。

しかし、そのためには、次の選択をしなければなりません。

  • 電圧などのフィールド測定に対応する 20log10 dB 変換を使用します。
  • または、電力などのエネルギー測定に対応する 10log10 dB 変換を使用します。

どのスケーリングを使用するかは、単位が何であるかによって異なります。

これに光を当てていただければ幸いです。

0 投票する
5 に答える
3702 参照

c# - C#-三角法コードの説明(物理学)

このコードは、XNAフレームワークで構築されたゲームから取得されました。三角法と物理学の観点から、それがどのように機能するかについて説明したいと思います。

ball.velocity = new Vector2((float)Math.Cos(cannon.rotation)、(float)Math.Sin(cannon.rotation));

ball.rotationは、私が考えるべきスプライトの回転、ラジアンです。

なぜ彼らはラジアン単位の角度を使用してx位置を見つけるだけで、同じことを斜辺が指している方向のy位置を見つけることができるのですか。

私がこれを尋ねた理由。このフレームワークがtrigの計算をどのように行うかを感じてみたいと思います。マウスがある方向にスプライトを回転させようとしています。つまり、xとyがわかっているので、角度が必要です。

したがって、ここには2つの質問があります。上記のコードを説明し、既知の点の方向にスプライトを向けます。

アップデート:

xnaは逆座標系を使用しているため、オブジェクトが存在する点aは(0,0)ではないことがわかりました。だから今私が持っている変数はこれらです:

オブジェクトのポイント。マウスのポイント。

0 投票する
2 に答える
1381 参照

flash - AS3 で表示オブジェクトを弧状にアニメーション化するにはどうすればよいですか?

これは、Flash AS3 のみのプロジェクトのゲーム用です。

プレイヤーは銃を持ったキャラクターを操作します。画面をクリックすると、銃はクリックしたポイントまで弧を描いてミサイルを発射します。

各フレームのミサイルの x 座標と y 座標を計算する最良の方法は何ですか?