Unity限制在一个范围内移动

news2024/10/5 15:06:05

Unity限制在一个范围内移动

这个例子中,我们学习Vector3.ClampMagnitude的用法,限制小球在范围内移动。

在地图上放了一个小球,让他移动,但是不想让他掉下去,限制在一个球星范围内,就好像绳子拴住了一样,可以这样来实现。

Demo小球设置

我的小球上挂的刚体,物理摩擦力0
在这里插入图片描述
模拟杆子上有绳子牵制他在一定范围内。

代码如下

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.EventSystems;

public class MoveRange : MonoBehaviour
{
    public Transform center;
    public float radius;

    Rigidbody rig;

    public float moveSpeed = 2f;
    void Start()
    {
        rig = gameObject.GetComponent<Rigidbody>();
    }

    // Update is called once per frame
    void Update()
    {
        //给小球一个移动速度
        Vector3 movement = new Vector3(Input.GetAxis("Horizontal"), 0, Input.GetAxis("Vertical"));
        Vector3 nowVelocity = movement * moveSpeed * Time.deltaTime;
        nowVelocity.y = 0f;
        rig.velocity = nowVelocity;

        //限制小球范围
        Vector3 offset = transform.position - center.position;
        transform.position = center.position + Vector3.ClampMagnitude(offset, radius);
    }
}

效果图

请添加图片描述
参考

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

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

相关文章

MySQL流程控制(二十八)

二八佳人体似酥&#xff0c;腰悬利剑斩愚夫&#xff0c;虽然不见人头落,暗里教君骨髓枯。 上一章简单介绍了MySQL变量(二十七) ,如果没有看过,请观看上一章 一. 定义条件与处理程序 定义条件是事先定义程序执行过程中可能遇到的问题&#xff0c;处理程序定义了在遇到问题时应…

跨境B2B2C多用户购物网站源码快速部署

​ 搭建跨境B2B2C多用户购物网站需要以下步骤&#xff1a; 1. 确定业务模式和定位&#xff1a;确定网站的业务模式&#xff0c;包括跨境B2B2C的商业模式以及目标用户定位。 2. 营业执照和域名注册&#xff1a;根据当地法律要求&#xff0c;注册一家具有法人资格的公司&#xff…

java Springboot02--Controller,文件上传,拦截器

因为前后端分离了&#xff0c;所以这个项目基本用不到controller 这句话意思&#xff1a; controller只能用get接受前端的请求 RequestMapping(value "/hello",method RequestMethod.GET) GetMapping("/hello") 这两句等价的 前段传递参数&#xff0…

炸裂,靠“吹牛”过京东一面,月薪40K

说在前面 在40岁老架构师尼恩的&#xff08;50&#xff09;读者社区中&#xff0c;经常有小伙伴&#xff0c;需要面试美团、京东、阿里、 百度、头条等大厂。 下面是一个5年小伙伴成功拿到通过了京东一面面试&#xff0c;并且最终拿到offer&#xff0c;月薪40K。 现在把面试…

搜索综合训练

搜索综合训练 选数详细注释的代码 小木棍详细注释的代码 费解的开关详细注释的代码 选数 详细注释的代码 #include <iostream> #include <vector>using namespace std;// 判断一个数是否为素数 bool isPrime(int num) {if (num < 1)return false;// 判断从2到s…

利用状态监测和机器学习提高冷却塔性能的具体方法

在现代工业生产中&#xff0c;冷却塔扮演着至关重要的角色&#xff0c;它们的性能直接影响着工艺流程的稳定性和效率。为了确保冷却塔的正常运行和减少系统故障&#xff0c;状态监测和机器学习成为了关键技术。 图.冷却塔&#xff08;PreMaint&#xff09; 在前文《基于人工智…

P1629 邮递员送信(最短路)(内附封面)

邮递员送信 题目描述 有一个邮递员要送东西&#xff0c;邮局在节点 1 1 1。他总共要送 n − 1 n-1 n−1 样东西&#xff0c;其目的地分别是节点 2 2 2 到节点 n n n。由于这个城市的交通比较繁忙&#xff0c;因此所有的道路都是单行的&#xff0c;共有 m m m 条道路。这…

02_kafka_基本概念_基础架构

文章目录 常见的消息队列工作模式基本概念kafka 特性Kafka 基本架构topic 分区的 目的/ 好处 日志存储形式消费者&#xff0c;消费方式 逻辑消费组 高性能写入&#xff1a; 顺序写 mmap读取&#xff1a;零拷贝DMA 使用场景 常见的消息队列工作模式 至多一次&#xff1a;消息被…

cnvd通用型证书获取姿势

因为技术有限&#xff0c;只能挖挖不用脑子的漏洞&#xff0c;平时工作摸鱼的时候通过谷歌引擎引擎搜索找找有没有大点的公司有sql注入漏洞&#xff0c;找的方法就很简单&#xff0c;网站结尾加上’&#xff0c;有异常就测试看看&#xff0c;没有马上下一家&#xff0c;效率至上…

基于Python++PyQt5马尔科夫模型的智能AI即兴作曲—深度学习算法应用(含全部工程源码+测试数据)

目录 前言总体设计系统整体结构图系统流程图 运行环境Python 环境PC环境配置 模块实现1. 钢琴伴奏制作1&#xff09;和弦的实现2&#xff09;和弦级数转为当前调式音阶3&#xff09;根据预置节奏生成伴奏 2. 乐句生成1&#xff09;添加音符2&#xff09;旋律生成3&#xff09;节…

Llama2 评测大公开!知识库场景下能否赶超 ChatGPT?

AIGC 人狂喜&#xff01;最近&#xff0c;Meta AI 发布了大语言模型 Llama2&#xff0c;为大模型的开发者注入了一剂强心针&#xff0c;因为无论从其灵活性、竞争力还是便捷性来看&#xff0c;都有不小的优势。 具体来看&#xff1a; Llama2 为开源产品且可免费商用&#xff0c…

【Spring AOP】什么是AOP

文章目录 1、AOP思想2、AOP入门案例3、AOP工作流程4、AOP切入点表达式5、AOP的五种通知类型6、AOP通知获取数据7、案例&#xff1a;百度网盘密码数据兼容处理8、AOP总结 1、AOP思想 AOP&#xff0c;即Aspect Oriented Programming&#xff0c;面向切面编程。是一种编程范式&am…

8.18信号量Semaphore和CountDownLatch

一 .Semaphore: 1.Semaphore是一个计数器(变量),描述可用资源的个数,用来判断是否有临界资源可用. 2.临界资源:多个进程或线程并发执行的实体可以公共使用到的资源. 3.pv操作:p操作(accquire(申请))表示计数器减一,v操作(release(释放))表示计数器加一. 4.锁是特殊的信号量…

RISC-V公测平台发布:如何在SG2042上玩转OpenMPI

About HS-2 HS-2 RISC-V通用主板是澎峰科技与合作伙伴共同研发的一款专为开发者设计的标准mATX主板&#xff0c;它预装了澎峰科技为RISC-V高性能服务器定制开发的软件包&#xff0c;包括各种标准bencmark、支持V扩展的GCC编译器、计算库、中间件以及多种典型服务器应用程序。…

[webpack] 处理样式 (二)

文章目录 1.介绍2.处理 Css 资源2.1 导入包2.2 功能配置2.3 添加 Css 资源 3.处理 Less 资源3.1 导入包3.2 功能配置3.3 添加 Less 资源 4.处理 Sass 和 Scss 资源4.1 导入包4.2 配置4.3 添加 Sass 资源4.4 运行webpack 5.处理 Styl 资源5.1 导入包5.2 配置5.3 添加 Styl 资源5…

微信开发之自动同意好友的技术实现

简要描述&#xff1a; 同意添加好友 请求URL&#xff1a; http://域名地址/acceptUser 请求方式&#xff1a; POST 请求头Headers&#xff1a; Content-Type&#xff1a;application/jsonAuthorization&#xff1a;login接口返回 参数&#xff1a; 参数名必选类型说明…

Jmeter学习和一个关于jmeter获取X-XSRF-TOKEN时的坑

Jmeter学习和一个关于jmeter获取X-XSRF-TOKEN时的坑 现在想对一个接口做性能测试&#xff0c;需要测试它多个线程并发下的调用 1.新建测试计划和线程组 略 2.新建http接口 一个完整的http接口包含请求头和请求&#xff0c;这里就需要两个组件&#xff1a;HTTP request、HT…

c语言函数作为形参的注意事项

1、c语言数组作为形参会退化成数组指针 #include "stdio.h" #include <stdlib.h>//数组作为函数的形参会退化成指针 void print_arr(int a[5]);// int *b int main() {int arr[5] { 1,2,3,4,5 };print_arr(arr);return 0; }void print_arr(int a[5]) {printf…

SocialFi 的开发中如何利用 NFTScan API 获取 NFT 数据

SocialFi 作为社交媒体与 Web3 的创新融合&#xff0c;致力于构建更加开放去中心化的社交平台。它赋能用户拥有数据控制权、实现内容价值&#xff0c;并通过代币经济建立起激励与治理机制&#xff0c;这正是 Web3 社交的独特魅力所在。SocialFi 为我们描绘了一个更加用户驱动、…

从0开始全栈深度学习工程师之路(四):VSCode提效设置和插件

在从0开始深度学习工程师之路&#xff08;三&#xff09;&#xff1a;Python开发环境搭建&#xff08;VSCode) 中,我们一步步搭建了基于VSCode的开发环境&#xff0c;这一篇我们继续优化我们的开发环境&#xff0c;毕竟工欲善其事&#xff0c;必先利其器。 配置 同步设置 我…