大家好,恭喜你已经学到了这里。看过我之前专栏的同学应该已经猜到了,这篇笔记将会是你在Unity入门系列的最后一篇。这说明,你们即将结束Unity入门系列的学习,如果你学习的比较牢固或者有一些理论知识没有记住,可以开始尝试着做一些实践小项目去巩固知识点,还是不建议死记硬背,通过一些实践训练会更容易的获得知识,当然,如果你一味的去做实践项目,花费的时间一定是比有基础的同学多的。Unity学习以及游戏开发的学习道路上还有很长,希望你们以及我都可以一直坚持下去,不要忘记之前对自己的承诺,努力学习相关知识,去做最好的游戏,不断提升自己。同样也建议大家也适当地做一些笔记,对于复盘很有帮助。
这篇笔记我们将介绍刚体加力的相关知识,本专栏最后一程了,坚持!
目录
1.刚体自带添加力的方法
给刚体加力的目标就是让其有一个速度,朝向某一个方向移动。
首先应该获取刚体组件。
Rigidbody rigidBody;
rigidBody = this.GetComponent<Rigidbody>();
如果想要力不停止,就写在Update中。
2.力的几种模式
添加力
加力过后,物体是否停止运动是由阻力决定的
如果想要在世界坐标系中,物体相对于自己的面朝向运动
rigidBody.AddForce(this.transform.forward*10);
相对于本地坐标
rigidBody.AddRelativeForce(Vector3.forward*10);
添加扭矩力,让其旋转
相对于世界坐标
rigidBody.velocity=Vector3.forward*5;
相对于本地坐标
rigidBody.AddRelativeTorque(Vector3.up*10);
直接改变速度
(这个速度是相对于世界坐标系而言的)
rigidBody.velocity=Vector3.forward*5;
模拟爆炸效果
模拟爆炸的力一定是所有希望产生爆炸效果影响的对象。都需要得到它们的刚体来执行这个方法,才能有效果。
方式一:
rigidBody.AddExplosionForce(100,Vector3.zero,10);
方式二:
rigidBody.AddForce(Vector3.forward*10,ForceMode.Acceleration);
参数二:力的模式。
3.力场脚本
在这里改变一些参数,改变一些物体的力。
4.刚体的休眠
如果获取的刚体处于休眠状态
if(rigidBody.IsSleeping())
{
//就唤醒它
rigidBody.WakeUp();
}
Unity入门系列就在这里跟大家说再见了,我在这里见证了你的勤奋学习,有一些知识还是需要大家在实践项目中学习。(如果有忘记的地方还是希望你可以反复翻阅,为了更好的让更多人有方向的学习,我所有专栏都是免费的)这一系列结束,意味着你已经具备一定的游戏开发能力了,相信你的努力会让你变得更好,更期待在其它专栏里再次与大家会见。