人机交互技术 课件 第5--10章 射线检测---梦幻森林案例教学.pptx

人机交互技术 课件 第5--10章 射线检测---梦幻森林案例教学.pptx

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

人机交互技术人机交互技术射线检测目录Catalog教学目的与要求重点、难点12教学进程安排课后学习任务布置3401.教学目的与要求教学目的与要求要求:目的:学生完成课堂的学习与讨论,并且能够积极完成课后作业。本章将介绍射线检测技术的应用,让学生了解射线检测的原理和用法。02.重点、难点重点、难点难点:重点:射线检测的发散性使用。射线检测的概念和程序结构。03.教学进程安排概念在开发中,尤其是跟模型与交互的时候,都会用到射线检测。射线:射线是3D世界中一个点向一个方向发射的一条无终点的线,在发射轨迹中与其他物体发生碰撞时,它将停止发射。用途:射线应用范围比较广,多用于碰撞检测。在射击游戏中,我们就可以使用射线来代替子弹的作用。相关APIRayCamera.main.ScreenPointToRay(Vector3pos):返回一条射线Ray从摄像机到屏幕指定一个点。RayCamera.main.ViewportPointToRay(Vector3pos):返回一条射线Ray从摄像机到视口(视口之外无效)指定一个点。Ray射线类RaycastHit:光线投射碰撞信息boolPhysics.Raycast(Vector3origin,Vector3direction,floatdistance,intlayerMask):当光线投射与任何碰撞器交叉时为真,否则为假。boolPhysics.Raycast(Rayray,Vector3direction,RaycastHitouthit,floatdistance,intlayerMask):在场景中投下可与所有碰撞器碰撞的一条光线,并返回碰撞的细节信息()。boolPhysics.Raycast(Rayray,floatdistance,intlayerMask):当光线投射与任何碰撞器交叉时为真,否则为假。boolPhysics.Raycast(Vector3origin,Vector3direction,RaycastHitouthit,floatdistance,intlayerMask):当光线投射与任何碰撞器交叉时为真,否则为假。注意:如果从一个球型体的内部到外部用光线投射,返回为假。参数理解Origin:在世界坐标中射线的起始点direction:射线的方向distance:射线的长度hit:使用c#中out关键字传入一个空的碰撞信息类,然后碰撞后赋值。可以得到碰撞物体的transform,rigidbody,point等信息。layerMask:只选定Layermask层内的碰撞器,其它层内碰撞器忽略。选择性的碰撞。RaycastHit[]RaycastAll(Rayray,floatdistance,intlayerMask):投射一条光线并返回所有碰撞,也就是投射光线并返回一个RaycastHit[]结构体。代码结构以摄像机所在位置为起点,创建一条向下发射的射线:课后学习任务布置学生分组讨论、并总结射线检测还有哪些用法。THANKYOU人机交互技术人机交互技术鼠标及键盘交互动作项目介绍1目录项目展示2CONTENTS项目设计开发3总结4项目介绍1当我们需要做一个PC端的软件时,免不了需要用鼠标以及键盘进行交互,控制,输入等,有了这些功能之后,我们的软件才能称之为一款完整的软件。而这也是我们学习开发的基础功能,接下来我们就看一下在Unity中如何调用键盘和鼠标在软件中完成交互。项目展示2观看视频项目实现3项目实现Step1,打开unity3d,新建3D项目。项目实现Step2,在场景中新建一个text用来显示我们的操作信息。项目实现Step3,新建脚本KeyboardController,在Update函数中我们通过Input方法可以调用键盘上的所有按键。其中主要有GetKeyDown、GetKey和GetKeyUp分别代表按键被按下、按着以及松开三种状态。项目实现Step4,挂载代码运行场景进行测试。项目实现Step5,继续编写代码,使用Input调用鼠标点击事件,同理有按下,按着和抬起三种状态,在此不一一赘述,而GetMouseButton方法所带的参数中0,1,2分别代表着鼠标的左键、右键、和中键。项目实现Step6,再次运行场景进行测试。项目实现Step7,新建代码OnMouseController,使用函数方法来用来获取点击物品事件。项目实现Step8,删除代码KeyboardController。新建Cube,Sphere,Capsule等3D物体,给他们重命名并挂载代码后进行测试。总结4总结通过以上的学习

文档评论(0)

xiaobao + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档