1、第第1010章章 让模型走起来让模型走起来知识目标知识目标能力目标能力目标任务引入任务引入Tuesday,August 09,20221知识目标知识目标 碰撞器的概念与作用碰撞器的概念与作用 射线的概念与作用射线的概念与作用Tuesday,August 09,20222能力目标能力目标学会碰撞器的创建与设置学会碰撞器的创建与设置了解射线的概念和使用了解射线的概念和使用学会在脚本中使用射线来实现模型的移动学会在脚本中使用射线来实现模型的移动Tuesday,August 09,20223任务引入任务引入 AR 技术的目标是在屏幕上把虚拟世界加载在现实世界上并进行互动,既然要实现互动,那就要求模型对
2、使用者的操作有所反应;根据使用者的操作让模型动起来,才能让使用者感觉自己与模型进行了交互,从而激发使用者兴趣。Tuesday,August 09,2022410.1 碰撞器介绍碰撞器介绍 要产生碰撞,要需游戏对象添加刚体(Rigidbody)和碰撞器;碰撞器是物理组件的一类,在物理模拟中没有碰撞器的刚体会彼此相互穿过而不能发生碰撞;物体发生碰撞的必要条件是两个物体都必须带有碰撞器(Collider)。Tuesday,August 09,20225碰撞器是一群组件的集合,它有很多种类:Box Collider(盒碰撞器),Mesh Collider(网格碰撞器)等。图 10-1 碰撞器种类图 1
3、0-2 碰撞器属性Is Trigger:触发器;Material:碰撞器的材质;Center:碰撞器的中心位置;Size:碰撞器的尺寸。Tuesday,August 09,2022610.2 射线介绍射线介绍 Unity 3D 提供了两个 API函数以供使用,分别是:public Ray ScreenPointToRay(Vector3 position)参数说明:position 是屏幕上的一个参考点坐标;返回值说明:返回射向position 参考点的射线。public Ray ViewportPointToRay(Vector3 position)参数说明:position 为屏幕上的一个
4、参考点坐标;返回值说明:返回射向 position 参考点的射线。Tuesday,August 09,2022710.3 添加模型移动的脚本添加模型移动的脚本 10.3.1 创建地面和碰撞器创建地面和碰撞器图 10-3 创建平面图 10-4 创建碰撞器Tuesday,August 09,2022810.3.2 给模型添加标签给模型添加标签图 10-5 添加标签图 10-6 选择标签Tuesday,August 09,20229将 Plane 对象单独放在一个 Layer 中图 10-7 创建 Layer面板中前 7 层是默认的,无法修改,从第 8 层开始可以自定义层。Tuesday,August 09,20221010.3.3 移动脚本的编写移动脚本的编写脚本 walk.cs:Tuesday,August 09,202211本章小结本章小结 图 10-8 本章知识结构Tuesday,August 09,202212