2009-06-18 12 views
-1

私はカメラクラスを持っており、物理オブジェクトを追跡できるようにしたい。しかし、私のゲームエンジン(これはカメラクラスの一部です)では、別の物理エンジンを使用することができます(開発していないものもあります)。私は使用している物理エンジンに関係なく、カメラでオブジェクトを追跡することができますか?それが助けになるならば、私は、特定のエンジンの物理的実装を扱ういくつかの細部を抽象化するのに役立つラッパークラスを持っています。変数を追跡する一般的な方法

答えて

1

標準の位置オブジェクト(おそらくVector3)を含むものでオブジェクトをラップします。次に、オブジェクトを追跡できるようにするCamera.LookAt(GameObject)メソッドを追加するだけです。また、エンジン内の他のオブジェクトと組み合わせて使用​​するといいですし、任意のオブジェクトをどのカメラでも追うことができます。これは私が前の2つのゲームのアプリケーションで使った方法です。

+0

それは実際には私が望む物理エンジンの周りにラッパーをしたいと思ったので実際には見えるでしょう...ありがとう! – RCIX

+0

うれしい私は助けることができました! :) – lkg

0

これは、グラフィックスエンジンの設定方法に完全に依存します。

ほとんどのグラフィックスエンジンには、シーングラフの形式があり、シーングラフのノードにカメラを接続する方法があります。これにより、カメラは親のトランスフォームを継承します。つまり、別のノードの周囲を簡単に「フォロー」することができます。

フィジックスシステムがきれいに統合されている場合、シーンの周りにオブジェクトが移動し、ノードに影響します。これは自動的にカメラに伝播します。

使用しているゲームエンジン+フィジックスインテグレーションパッケージを指定する場合は、もっと具体的に説明することができます。

+0

シーングラフがどのようなものなのかわからないので、うまく動作しません。私は自分のエンジンを開発しています.www.walaber.comのjelly physics libraryとphysicsの選択肢として私が開発したカスタム物理ライブラリをwww.codeplex.com/farseerphysicsで使用します。基本的に、私はそれを追跡することができるようにVector2への参照を格納する方法が必要です。多分私はそれを求めていたはずですか? – RCIX

+0

あなた自身のエンジンを書いているなら、私はシーングラフで勉強します。ほとんどの物理ライブラリは、シーングラフとうまく結びついたトランスフォームを変更する方法があると想定しています。それ以外の場合は、オブジェクト自体(位置を含む)への参照を保持して、その周囲をたどります。 Vector2への参照を(簡単に)保持することはできませんが(値型なので)、Vector2を含むオブジェクトへの参照を保持できます。 –

関連する問題