【Unity】【VR开发】写一个用手枪发射子弹的脚本

【背景】

用Unity XR Interaction Toolkits做VR开发,需要Grab手枪后按下Trigger按键发射子弹。

【分析】

  1. 为了能够使用Unity提供的VR开发包,需要在引用部分追加:Using unityengin.xr.interaction.toolkit
  2. 在这个脚本中,我们需要三个公共变量。
    第一个公共变量命名为bullet,类型为GameObject,用来关联子弹对象。
    第二个公共变量是命名为spawnPoint,类型为Transform,用来指定子弹实例在场景中出现的位置。
    第三个变量命名为fireSpeed,类型为float,用于定义子弹速度,预设值为20。
  3. 进入游戏场景时,需要给抓握动作追加一个监听,使得在抓握手枪时激活发射子弹的能力。在start函数中为后续功能函数做变量初始化和监听设置等准备。
    在start函数的函数体中,用GetComponent方法拿到手枪对象下的XR Interactable组件,将这个组件赋给一个名为grabbable的XRGrabInteractable类型变量备用。然后给这个XRGrabInteractable变量追加监听。此时由于尚未定义FireBullet函数,所以FireBullet下会有暂时的红色波浪线警告。
  4. 写FireBullet功能函数。要实现发射子弹,首先需要在游戏场景中创建子弹实例。在FireBullet的函数体中实例化一个bullet对象。用公共变量spawnPoint的位置来指定实例化子弹在游戏中出现的初始位置。子弹实例在游戏场景中出现后,继续设置子弹实例的方向。任何一个实例都需要有一个完整的生命周期,子弹实例出现在游戏场景后被射击向远方,掉落后会有越来越多的子弹实例囤积在游戏场景

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/726680.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

k个一组反转链表

题目 题目链接 . - 力扣&#xff08;LeetCode&#xff09; 题目描述 代码实现 class Solution { public:ListNode* reverseKGroup(ListNode* head, int k) {if(k 1) return head;//特殊情况ListNode *cur head;for(int i 1; i < k; i){if(cur nullptr ||cur->nex…

Seurat 中的数据可视化方法

本文[1]将使用从 2,700 PBMC 教程计算的 Seurat 对象来演示 Seurat 中的可视化技术。您可以从 SeuratData[2] 下载此数据集。 SeuratData::InstallData("pbmc3k")library(Seurat)library(SeuratData)library(ggplot2)library(patchwork)pbmc3k.final <- LoadData(…

[创业之路-96/管理者与领导者-138] :研发与生产的比较,一个是技术、设计、功能、性能,一个是流程、效率、成本和质量、供应链

目录 前言&#xff1a; 一、概述 二、研发与生产在目标和职责的区别 三、研发与生产在关注重点的区别 四、设计与制造的区别 五、研发与生产在时间范围的区别 六、研发与生产在人才技能的区别 七、研发与生产在风险管理的区别 前言&#xff1a; 看到一个奇怪的现象&am…

【wine】解决 0024:fixme:msctf:KeystrokeMgr_TestKeyUp STUB:(00A3D508)

故障日志 0024:fixme:msctf:KeystrokeMgr_TestKeyUp STUB:(00A3D508) AI分析 这些消息表示Wine对IE内核组件以及IME&#xff08;Input Method Editor&#xff0c;输入法编辑器&#xff09;的支持不完全。特别是涉及文本输入、拖放事件、属性变化通知等功能。 解决 winetrick…

【论文阅读】单词级文本攻击TAAD2.2

TAAD2.2论文概览 0.前言1-101.Bridge the Gap Between CV and NLP! A Gradient-based Textual Adversarial Attack Frameworka. 背景b. 方法c. 结果d. 论文及代码 2.TextHacker: Learning based Hybrid Local Search Algorithm for Text Hard-label Adversarial Attacka. 背景b…

python爬虫(一)

一、python中的NumPy模块&#xff08;数据的存储和处理&#xff09; 这里是下载完成之后的表现 &#xff08;1&#xff09;创建数组 1、使用array&#xff08;&#xff09;函数创建数组 使用array函数可以创建任意维度的的数组 下面是一个创建二维数组的代码示例 下面是代码…

java集合(泛型数据结构)

1.泛型 1.1泛型概述 泛型的介绍 泛型是JDK5中引入的特性&#xff0c;它提供了编译时类型安全检测机制 泛型的好处 把运行时期的问题提前到了编译期间 避免了强制类型转换 泛型的定义格式 <类型>: 指定一种类型的格式.尖括号里面可以任意书写,一般只写一个字母.例如: …

【力扣 - 三数之和】

题目描述 给你一个整数数组 nums &#xff0c;判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i ! j、i ! k 且 j ! k &#xff0c;同时还满足 nums[i] nums[j] nums[k] 0 。请你返回所有和为 0 且不重复的三元组。 注意&#xff1a;答案中不可以包含重复的三元组。…

PostgreSQL开发与实战(6.2)体系结构2

作者&#xff1a;太阳 二、逻辑架构 graph TD A[database] -->B(schema) B -->C[表] B -->D[视图] B -->E[触发器] C -->F[索引] tablespace 三、内存结构 Postgres内存结构主要分为 共享内存 与 本地内存 两部分。共享内存为所有的 background process提供内…

excel中去除公式,仅保留值

1.单个单元格去除公式 双击单元格&#xff0c;按F9. 2.批量去除公式 选中列然后复制&#xff0c;选择性粘贴&#xff0c;选值粘贴

windows server 2019 激活系统时点击“更改产品密钥”无反应的解决方案

一、问题现象 点击“更改产品密钥”没反应。 二、解决方案 使用slmgr命令&#xff1a; 打开命令提示符&#xff08;管理员&#xff09;&#xff0c;然后尝试使用slmgr命令来手动输入密钥和激活Windows。例如&#xff1a; slmgr.vbs /ipk <您的产品密钥>slmgr.vbs /ato 备…

软件测试技术分享 | 测试环境搭建

被测系统的环境搭建&#xff0c;是我们作为软件测试人员需要掌握的技能。 被测系统AUT (Application Under Test) 常见的被测系统即需要被测试的 app&#xff0c;网页和后端服务。大致分为两个方面移动端测试和服务端测试&#xff0c;如下图所示&#xff1a; 常见的被测系统类…

从0搭建springboot

1、安装Java开发工具包&#xff08;JDK&#xff09;和 Maven构建工具 2、使用IDE&#xff0c;直接在IDE中创建一个新的Maven项目&#xff0c;并选择合适的模板或者根据需要进行配置 3、添加Spring Boot依赖 在你的pom.xml文件中添加Spring Boot相关的依赖。你至少需要添加sp…

一次HW红初面试

一、描述外网打点的流程&#xff1f; 靶标确认、信息收集、漏洞探测、漏洞利用、权限获取。最终的目的是获取靶标的系统权限/关键数据。 在这个过程中&#xff0c;信息收集最为重要。掌握靶标情报越多&#xff0c;后续就会有更多的攻击方式去打点。比如&#xff1a; 钓鱼邮件…

Flink 大数据 学习详情

参考视频&#xff1a; 尚硅谷大数据Flink1.17实战教程从入门到精通_哔哩哔哩_bilibili 核心目标&#xff1a; 数据流上的有状态的计算 具体说明&#xff1a; Apache Flink是一个 框架 和 分布式处理引擎&#xff0c;用于对 无界&#xff08;eg&#xff1a;kafka&#xff09; 和…

3、Redis Cluster集群运维与核心原理剖析

Redis集群方案比较 哨兵模式 在redis3.0以前的版本要实现集群一般是借助哨兵sentinel工具来监控master节点的状态&#xff0c;如果master节点异常&#xff0c;则会做主从切换&#xff0c;将某一台slave作为master&#xff0c;哨兵的配置略微复杂&#xff0c;并且性能和高可用性…

服务器CPU有哪些优点?

服务器CPU是服务器硬件配置中十分重要的组成部分之一&#xff0c;服务器CPU能够影响着服务器的处理速度和存储容量等多方面的性能特征&#xff0c;能够保证服务器的稳定性&#xff0c;接下来我们就具体了解一下服务器CPU的优点有哪些。 服务器CPU有着大量的缓存空间&#xff0c…

【C语言】冒泡排序

概念 冒泡排序&#xff08;Bubble Sort&#xff09;是一种简单的排序算法&#xff0c;它重复地遍历要排序的列表&#xff0c;一次比较两个元素&#xff0c;并且如果它们的顺序错误就把它们交换过来。通过多次的遍历和比较&#xff0c;最大&#xff08;或最小&#xff09;的元素…

数智化转型的新篇章:企业如何在「数据飞轮」理念中寻求增长?_光点科技

在当今的数字化浪潮中&#xff0c;企业对数据的渴求与日俱增。数据不再仅是辅助决策的工具&#xff0c;而是成为推动业务增长的核心动力。自从「数据中台」概念降温后&#xff0c;企业纷纷探寻新的数智化路径。在这个过程中&#xff0c;「数据飞轮」作为一种新兴的理念&#xf…

Blazor系统教程(.net8)

Blazor系统教程 1.认识 Blazor 简单来讲&#xff0c;Blazor旨在使用C#来替代JavaScript的Web应用程序的UI框架。其主要优势有&#xff1a; 使用C#编写代码&#xff0c;这可提高应用开发和维护的效率利用现有的NET库生态系统受益于NET的性能、可靠性和安全性与新式托管平台(如…