Havok_2014-1-0_Pc_Xs_User_Guide(2.2.1-创建一个Physics2012对象)

来源:互联网 发布:上海云计算大会 编辑:程序博客网 时间:2024/06/03 15:03

2.2.1.3 约束


约束本质上是限制自由运动的对象,允许您轻松创建复杂的系统,如铰链,身体关节,轮子。不管是什么类型的约束,这些元素可以使动态环境非常丰富。


本节首先介绍约束空间和约束构造,然后概述了Havok提供的不同类型的约束,并向您展示如何创建和配置他们。提供一些使用和限制约束的指导方针。


除了阅读这一部分,你应该花点时间去看看并玩一下在dynamics/constraints文件夹下的demos,这些demos贯穿了整个文本。每一个简单的演示说明了使用Havok约束一个特定的方面。




简介


约束空间


在刚体动力学每个身体有6个自由度:


•3个平动自由度。

•3个转动自由度。


Havok约束的每种类型可以删除或限制一个或多个自由度对于约束的身体。


生产不同类型的约束取决于这些限制的数量和类型: 简单的点对点约束到更复杂的布娃娃约束。例如,在点对点约束,约束对象围绕约束枢轴点完全自由的旋转,但是在任何方向(他们被附着在一个点上)相对于彼此没有线性自由。相比之下,布娃娃约束,对象不仅没有线性自由,而且可能相对取向也限制(想象一下转动肩关节限制)。


在每个约束,因为约束的坐标系统或约束空间定义这些角度和线性。因为一个约束限制每个对象相对的运动,另外,一个约束也维护从每个对象的本地空间到约束的间的一个变换。


每个约束存储构建这个转换所需的最低数量的信息。例如,在点对点约束,因为没有角度的限制,每一个对象的本地空间中只有轴心点被指定;对象的方向不重要。


约束的场景

以不同的方式约束限制对象运动可以产生很多有用的应用程序。考虑其中的一些例子:



更复杂的自定义约束设置可以使用约束构造箱或约束原子设计和实现。然而,约束越复杂,即更多的自由度约束限制,计算越昂贵。

创建约束
















0 0