刚体组件-Rigidbody

刚体组件-Rigidbody,第1张

刚体组件为游戏对象提供了物理属性,让游戏对象在场景中可以受到物理引擎的作用。当游戏对象添加了Rigidbody组件后,游戏对象便可以接受外力与扭矩力。任何游戏对象只有在添加Rigidbody组件后才会受到重力影响。当需要通过脚本为游戏对象添加作用力以及通过NVIDIA物理引擎与其它游戏对象发生互动的运算都必须有Rigidbody组件。

下面介绍两种给一个游戏对象添加一个Rigidbody组件的方式:

图1.1,由Component菜单选项添加

图1.2,直接在游戏对象的Inspector视图中添加

图1.3就是Rigidbody组件的属性面板图:

该项用于设置游戏对象的质量(同一场景中,建议游戏对象之间的质量差值不要大于100倍)。

当游戏对象受力运动时受到的空气阻力(注意,不是物体间的摩擦力),0表示没有空气阻力,阻力极大时游戏对象会立即停止运动。

当游戏对象受扭矩力旋转时受到的控制阻力。0表示没有空气阻力,阻力极大时游戏对象会立即停止旋转。

开启此项,游戏对象会受到重力的影响。

开启此项,游戏对象将不再受物理引擎的影响从而通过Transform(几何变换组件)属性来对其 *** 作。该方法适用于模拟平台的移动或者带有铰链关节刚体的动画。

None:没有插值。

Interpolate:内插值,基于前一帧的Transform平滑此次的Transform。

Extrapolate:外插值,基于下一帧的Transform平滑此次的Transform。

该属性用于控制避免高速运动的游戏对象穿过其它对象而未发生碰撞,有三个选项可供选择。

也就是说:如果你有一个快速运动的小球,它会穿过一个静态的墙,那么将球设为Continuous即可解决问题。但如果你有多个这样的小球,它们之间则依旧会遇到互相穿过对方的问题,那么将球都设为Continuous Dynamic更好。

该项用于控制对于刚体运动的约束。

Freeze Position:冻结位置。刚体对象在世界坐标系中的x,y,z轴方向上(选中状态)的移动将无效。

Freeze Rotation:冻结旋转。刚体对象在世界坐标系中的x,y,z轴方向上(选中状态)的旋转将无效。

提示的内容是让把所有的错误解决然后再运行游戏。unity左下角那个红色的叹号是错误的详细信息,点一下就会d出窗口。

在inspector面板中没专有显示自己定义变量speed这个问题,var speed:int这样写在java中是公有还是私有,最好在前面加上public。

修改方法:

1.首先,打开自己的unity3d场景,如下所示。

2.然后创建一个基本的模型对象在该方案中,如下所示。

3.向对象添加Rigidbody属性,如下图。

4.创建两个脚本,Add_script和力量,如下所示。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11310200.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存