跟踪变量的通用方法

时间:2009-06-18 00:49:49

标签: c# xna

我有一个相机类,我希望它能够跟踪物理对象。然而,在我的游戏引擎(相机类将成为其中的一部分)中,您可以使用不同的物理引擎(甚至一些我没有开发)。无论我使用什么物理引擎,如何使我的相机能够跟踪物体?如果它有帮助,我将有一个包装类来帮助抽象处理特定引擎物理实现的一些细节。

2 个答案:

答案 0 :(得分:1)

用包含标准位置对象的东西包裹你的对象(可能是Vector3)。然后,只需添加一个Camera.LookAt(GameObject)方法,该方法将允许您跟踪对象。此外,这很适合与引擎中的其他对象一起使用,它只是让您能够使用任何相机跟踪任何对象。这是我在之前的两个游戏应用程序中使用的方法。

答案 1 :(得分:0)

这完全取决于图形引擎的设置方式。

大多数图形引擎都有某种形式的场景图,以及将相机连接到场景图中的节点的方法。这将使相机继承其父级的变换,这意味着它可以轻松地“跟随”另一个节点。

如果物理系统干净整合,它会移动场景周围的物体,从而影响它们的节点。这将自动传播到相机中。

如果你想指定你正在使用的游戏引擎+物理集成包,我可能会给你更多细节。