unity 鼠标指示NavMeshAgent移动

2024-06-19 19:48

本文主要是介绍unity 鼠标指示NavMeshAgent移动,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本文讲述的是:通过光标点,为NavMeshAgent设置destination,同时在点击处显示图标。

这里写图片描述

step1 烘焙地形

step2 添加AIThirdPersonController

step3 配置canvas

  • 在场景中添加一个canvas,并将它的”Render Mode”设为”world space”
  • 将canvas在X轴向旋转90度,这样canvas就会变成水平的。
  • 在canvas下添加一个image,将这个image的源设为指示图标

step4 脚本

  • 将navMeshAgent的属性autoBraking设为false
  • 获取光标点击处与场景的交点
  • 将navMeshAgent的destination设为光标的交点
  • 将canvas的位置设为光标的交点
using UnityEngine;
using System.Collections;public class Destination : MonoBehaviour
{public NavMeshAgent navMeshAgent = null;public Canvas canvas = null;// Use this for initializationvoid Start(){}// Update is called once per framevoid Update(){if (Input.GetMouseButtonDown(0) && this.navMeshAgent != null){this.navMeshAgent.autoBraking = false;RaycastHit hit;Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);if (Physics.Raycast(ray, out hit, 100.0f) && hit.transform != null){this.navMeshAgent.SetDestination(hit.point);// canvas的位置要向上偏移一点,否则会出现闪烁的现象this.canvas.transform.position = new Vector3(hit.point.x, hit.point.y + 0.1f, hit.point.z);}}}
}

这篇关于unity 鼠标指示NavMeshAgent移动的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1075979

相关文章

移动硬盘盒:便携与交互的完美结合 PD 充电IC

在数字化时代的浪潮中,数据已成为我们生活中不可或缺的一部分。随着数据的不断增长,人们对于数据存储的需求也在不断增加。传统的存储设备如U盘、光盘等,虽然具有一定的便携性,但在容量和稳定性方面往往难以满足现代人的需求。而移动硬盘,以其大容量、高稳定性和可移动性,成为了数据存储的优选方案。然而,单纯的移动硬盘在携带和使用上仍存在诸多不便,于是,移动硬盘盒应运而生,以其独特的便携性和交互性,成为了数据存储

VirtualBox中,虚拟系统文件VDI移动或者复制

在安装virtualbox以后有时需要复制,移动虚拟磁盘等操作,这些操作在vmware的虚拟机下面可以直接操作虚拟磁盘即可使用,但是在virtualbox环境 下每个VDI 文件都有一个唯一的uuid,而VirtualBox 不允许注册重复的uuid,所以直接复制的VDI文件是不能拿来使用的,我们就需要使用到virtualbox自带的管理命令来克隆一个VDI,这样通过命令克隆的VDI文件会重

【Unity Shader】片段着色器(Fragment Shader)的概念及其使用方法

在Unity和图形编程中,片段着色器(Fragment Shader)是渲染管线中的一个阶段,负责计算屏幕上每个像素(片段)的颜色和特性。片段着色器通常在顶点着色器和任何几何处理之后运行,是决定最终像素颜色的关键步骤。 Fragment Shader的概念: 像素处理:片段着色器处理经过顶点着色器和几何着色器处理后,映射到屏幕空间的像素。颜色计算:它计算每个像素的颜色值,这可能包括纹理采样、光

【Unity Shader】Alpha Blend(Alpha混合)的概念及其使用示例

在Unity和图形编程中,Alpha Blend(也称为Alpha混合)是一种用于处理像素透明度的技术。它允许像素与背景像素融合,从而实现透明或半透明的效果。Alpha Blend在渲染具有透明度的物体(如窗户、玻璃、水、雾等)时非常重要。 Alpha Blend的概念: Alpha值:Alpha值是一个介于0(完全透明)和1(完全不透明)的数值,用于表示像素的透明度。混合模式:Alpha B

物联网系统运维——移动电商应用发布,Tomcat应用服务器,实验CentOS 7安装JDK与Tomcat,配置Tomcat Web管理界面

一.Tomcat应用服务器 1.Tomcat介绍 Tomcat是- -个免费的开源的Ser Ivet容器,它是Apache基金会的Jakarta 项目中的一个核心项目,由Apache, Sun和其他一 些公司及个人共同开发而成。Tomcat是一一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。 在Tomcat中,应用程序的成部署很简

红队内网攻防渗透:内网渗透之内网对抗:横向移动篇Kerberos委派安全RBCD资源Operators组成员HTLMRelay结合

基于资源的约束委派(RBCD)是在Windows Server 2012中新加入的功能,与传统的约束委派相比,它不再需要域管理员权限去设置相关属性。RBCD把设置委派的权限赋予了机器自身,既机器自己可以决定谁可以被委派来控制我。也就是说机器自身可以直接在自己账户上配置msDS-AllowedToActOnBehalfOfOtherIdentity属性来设置RBCD。 所以核心就是谁或什么权限能修改

毫米波移动通信系统中的波束赋形

在毫米波移动通信系统中,系统的频点较高,因此毫米波系统的射频器件易于小型化,然而同时也带来绕射能力差、穿透损耗大、路径损耗大[4][5]等缺点,这将大大降低了毫米波通信系统的接收功率,其中阻挡效应被认为是制约毫米波应用于移动通信系统的关键因素之一。为了对抗毫米波移动通信系统的噪声受限问题,目前普遍认为在毫米波移动通信系统中将会在发射端和接收端上同时使用天线阵列进行发送和接收[4][5],因此必须要

Unity Meta Quest 开发:关闭 MR 应用的安全边界

社区链接: SpatialXR社区:完整课程、项目下载、项目孵化宣发、答疑、投融资、专属圈子 📕教程说明 这期教程我将介绍如何在应用中关闭 Quest 系统的安全边界。 视频讲解: https://www.bilibili.com/video/BV1Gm42157Zi 在 Unity 中导入 Meta XR SDK,进行环境配置后,打开 Assets > Plugins > An

ESP32使用按键配网并通过LED指示网络状态

前言 上面我们已经可以通过 ESPTOUCH 和 Airkiss 给模块配网,并且存储在 nvs 中,重启后仍然可以联网,只是这样仍然不能满足我们实际的应用,这次我们增加按键作为输入,LED作为输出,实现长按按键配网,并可以通过LED指示网络状态。 添加自己的组件 为了让程序结构更加清晰,所以我们在smart_config例程的基础上做了修改,在main文件夹里新建了main.c 、smar

在python中使用shutil库移动和复制文件

写一段python脚本,将文件夹中的文件根据文件名称、属性或者时间将文件分成几个不同种类,并保存到设定好的文件夹中。在这里需要用到几个模块。 os模块。主要使用该模块的两个功能,一是检查涉及到的文件夹是否存在,如不存在给出解决方案,停止运行或者新建文件               夹。二是listdir(path)提取源文件夹中的文件目录列表,可遍历此列表实现对文件夹中文件的遍历