[Unity3D]使用碰撞体做触发器实现简单的自动开门

来源:互联网 发布:python赋值运算符 编辑:程序博客网 时间:2024/05/06 15:31

翻译自DT的经典教程:《Introduction to Unity》


在游戏制作中触发器的使用非常的方便也非常实用。这一张我们简单介绍一下如何使用一个简单的触发器来实现自动开门关门的效果。

首先确保你已经对门进行了动画的设置。

具体流程如下。

选择Window->Animation打开动画窗口,选中需要添加动画的门之后点击红色按钮创建新动画。

选中一个需要添加动画的要素之后(比如Postion.x),点击添加关键帧按钮:

拖动时间轴,在动画终点的位置放手:

在场景中拖动那个门到想要停止的位置,创建动画终点的关键帧:

点击Animation面板上的播放键,可以预览一下门开动的效果。

至此,简单的动画就算是制作完毕了。

接下来就是触发器的制作。

先添加一个GameObject->CreaateOther->Sphere球形的物体,用它来作触发器。

创建完毕之后,去掉勾选的MeshRender使得球体变成透明的:

给这个球体添加一段Unity自带的脚本,使其具备触发器的功能:

选择触发器的Target对象:

将其激活的事件设置为Animate:

但是此时的球体是碰撞体,无法冲入实现触发器的功能,所以需要勾选Is Trigger选项:

这个时候再次运行,便会发现门在我们接近的时候就会自动打开了。


项目源码太大,无法上传,有需要的可以发邮件给我。


原创粉丝点击