Unity-vr用眼睛注视选择物体

news/2024/10/31 3:26:16/

Unity-vr用眼睛注视选择物体


111

文章目录

  • Unity-vr用眼睛注视选择物体
  • 工程版本
  • 用法说明
  • 脚本说明
      • WatchController - 注视主控制器
      • WatchEvent - 注视事件
      • WatchGameobject - 被注视物体
      • TimerTool - 计时器工具
  • 总结


工程版本

unity2019.4.9f1 vs2019

项目工程源代码下载


用法说明

  • 在unity工程中导入本项目,新建场景,场景中可以随便添加一些物体用于测试
  • 在MainCamera上添加WatchController.cs脚本,并拖入相应物体
  • 在MainCamera上添加HightlightingRenderer.cs脚本
  • 给需要注视的物体上添加WatchEvent.cs脚本,并注册相应的事件(就像UGUI的Button一样)
  • 在Edit-Project Setting-Player中勾选Vitual Reality Supported

脚本说明

WatchController - 注视主控制器

可以挂在任意物体上
Eye:		眼睛(一般是场景中的主摄像机)
Point:		选择的点的样式,选择一个Prefab,可以是图片/UI/3D物体
PointDefault:	默认未选中物体状态下点的位置(放在摄像机下)
HighLightColor:	高光的颜色
LaterMask:	选择屏蔽层
WatchTime:	注视时间,单位秒

WatchEvent - 注视事件

挂在需要注视事件的物体上
OnWatchEnter:	注视点进入
OnWatchExit:	注视点移出
OnWatchUpdate:	注视点在物体上
OnWatch:	注视N秒后(N指WatchController的WatchTime)

WatchGameobject - 被注视物体

不用手动去挂,程序运行后会挂在被注视的物体上
主要负责处理物体被注视后事件的注册

TimerTool - 计时器工具

不是本项目重点,想用的自己拿去用,里面有详细的注释

总结

备注 :如有疑问请留言。 或 项目工程源代码下载
案例场景在EyeWatch-Example-Scenes,可以自己看一下怎么用

注视事件除了拖拽,还可以用代码注册

WatchEvent we;

we.onWacth.AddListener(delegate { Test(); });


http://www.ppmy.cn/news/84135.html

相关文章

javaWebssh服装租赁店信息管理系统台myeclipse开发mysql数据库MVC模式java编程计算机网页设计

一、源码特点 java ssh服装租赁店信息管理系统是一套完善的web设计系统(系统采用ssh框架进行设计开发),对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要 采用B/S模式开发。开发环境为TO…

SSM(SpringMVC篇)

SpringMVC SpringMVC简介 概述 SpringMVC是一种基于java的实现MVC设计模型的请求驱动类型的轻量级web框架,属于SpringFrameWork的后续产品,已经融合在Spring Web Flow中 SpringMVC已经成为目前最主流的框架之一,并且随着Spring3.0的发布&…

OpenAi编写基于Python+OpenCV的人脸识别实现带墨镜效果

要基于Python和OpenCV实现带墨镜效果的人脸识别,你可以按照以下步骤进行操作: 安装所需的库:确保你已经安装了Python和OpenCV库。你可以使用pip命令来安装OpenCV库:pip install opencv-python。 导入必要的库:在Pytho…

RabbitMq指南:彻底解决消息可靠性问题以及实现延迟队列

提到 RabbitMq,想必大家都不陌生,我们经常使用它来进行服务之间的异步通信,如短信,日志,邮件发送等业务场景都可以使用 RabbitMq 实现,但在使用的过程中我们会遇到消息丢失的问题,也会有延迟消费…

gdb调试 与 coredump

gdb调试 与 coredump调试 1. 启动gdb2.gdb中的相关命令3. coredump调试(附属于gdb调试中一种,当程序出现错误时,会使用coredump调试)1)coredump是什么?2)前期设置3)什么情况下会导致…

程序员不得不消化的基本概念:线程与协程,并行与并发

这是程序员的基本常识,这都搞不清楚,就不配为码农,就不配混CSDN。为人君者,招聘时可以以此为入门问题。 名词解释 在中文里,并发与并行很难望文生义,从字面上很难了解确切含义,貌似区别不大&am…

MQTT(2):MQTT协议原理

1 MQTT协议实现方式 实现MQTT协议需要客户端和服务器端通讯完成,在通讯过程中,MQTT协议中有三种身份:发布者(Publish)、代理(Broker)(服务器)、订阅者(Subsc…

Jupyter程序安装和使用指南【操作示例】

Jupyter Notebook(简称Jupyter)是一个交互式编辑器,它支持运行40多种编程语言,便于创建和共享文档。Jupyter本质上是一个Web应用程序,与其他编辑器相比,它具有小巧、灵活、支持实时代码、方便图表展示等优点。下面分别为大家演示如…