Unity 实现场景物体连线功能

news/2024/10/18 3:21:36/

演示效果

实现方案

1.创建一个用于连线的正方体

2.创建一个线条渲染的空物体,添加LinerRender组件

3.创建一个脚本

4.编写脚本的内容

附上代码片段

 public LineRenderer lineRenderer;private float distance;// Update is called once per framevoid Update(){var ray = Camera.main.ScreenPointToRay(Input.mousePosition);RaycastHit hit;if (Input.GetMouseButtonDown(0)){if (Physics.Raycast(ray, out hit)){lineRenderer.SetPosition(0, hit.transform.position);distance = Vector3.Distance(hit.transform.position, Camera.main.transform.position);}}if (Input.GetMouseButton(0)){if (Physics.Raycast(ray, out hit)){if (hit.collider != null){var mousePoint = Input.mousePosition;mousePoint.z = distance;lineRenderer.SetPosition(1, Camera.main.ScreenToWorldPoint(mousePoint));}}}if (Input.GetMouseButtonUp(0)){if (Physics.Raycast(ray, out hit)){lineRenderer.SetPosition(1, hit.transform.position);}}}

5.挂载脚本,指定LineRender的引用

6.运行起来就可以看到效果啦


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

相关文章

vue不同页面切换的方式(Vue动态组件)

v-if实现 <!--Calender.vue--> <template><a-calendar v-model:value"value" panelChange"onPanelChange" /></template> <script setup> import { ref } from vue; const value ref(); const onPanelChange (value, mod…

【DrissionPage爬虫库 1】两种模式分别爬取Gitee开源项目

文章目录 DrissionPage爬虫库简介1. 浏览器操控模式&#xff08;类似于游戏中的后台模拟鼠标键盘&#xff09;2. 数据包收发模式&#xff08;类似于游戏中的协议封包&#xff09; 实战中学习需求&#xff1a;爬取Gitee开源项目的标题与描述解决方案1&#xff1a;用数据包方式获…

Zookeeper 最新稳定版本 3.8.4 服务安装与原生 C 静态库编译

依赖 jdk Zookeeper 服务由 Java 语言开发&#xff0c;需要 jdk 环境&#xff0c;请确保进行下面步骤之前先安装 jdk。 GNU/Linux 系统可以通过包管理工具直接安装 jdk 环境&#xff0c;例如 ubantu 可以直接通过以下命令安装&#xff1a; sudo apt update sudo apt instal…

请说出vue.cli项目中src目录每个文件夹和文件的用法

在Vue CLI项目中&#xff0c;src目录是存放项目源码及需要引用的资源文件的主要位置。以下是src目录下常见文件夹和文件的用法&#xff1a; components 用途&#xff1a;存放可重用的Vue组件。这些组件通常用于在多个页面或布局中共享UI和功能。特点&#xff1a;组件应该是模块…

二级指针简单介绍

我们之前学习的&#xff1a;变量的地址是存入指针变量中的&#xff0c;然而指针变量也是变量&#xff0c;是变量就有地址&#xff0c;那么指针变量的地址存放在哪里 &#xff1f; 这也就是二级指针 #include<stdio.h> int main() {int a10;int*p&a;int**pp&p;re…

上位机图像处理和嵌入式模块部署(f407 mcu中tf卡读写和fatfs挂载)

【 声明&#xff1a;版权所有&#xff0c;欢迎转载&#xff0c;请勿用于商业用途。 联系信箱&#xff1a;feixiaoxing 163.com】 很早之前&#xff0c;个人对tf卡并不是很重视&#xff0c;觉得它就是一个存储工具而已。后来在移植v3s芯片的时候&#xff0c;才发现很多的soc其实…

Web安全:软件开发的安全问题与解决方案

「作者简介」&#xff1a;2022年北京冬奥会网络安全中国代表队&#xff0c;CSDN Top100&#xff0c;就职奇安信多年&#xff0c;以实战工作为基础对安全知识体系进行总结与归纳&#xff0c;著作适用于快速入门的 《网络安全自学教程》&#xff0c;内容涵盖系统安全、信息收集等…

讲解如何使用RAG(检索增强生成)和LLM(大语言模型)来构建一个法律咨询网站。

一、准备工作 1. 注册OpenAI API 首先,注册OpenAI并获取API密钥。 2. 环境配置 安装必要的Python库: pip install openai faiss-cpu sentence-transformers flask二、设计系统架构 整个系统将包括以下几个部分: 前端:用户输入问题和上传文件的界面。后端:处理用户请…