【Unity How】Unity中如何实现物体的匀速往返移动

ops/2024/11/25 6:10:25/

直接上代码

using UnityEngine;public class CubeBouncePingPong : MonoBehaviour
{[Header("移动参数")][Tooltip("移动速度")]public float moveSpeed = 2f; // 控制移动的速度[Tooltip("最大移动距离")]public float maxDistance = 5f; // 最大移动范围private Vector3 startPosition; // 初始位置private float currentOffset = 0f; // 当前偏移量private int direction = -1; // 初始方向(-1 向下,1 向上)void Start(){// 记录物体的初始位置startPosition = transform.position;}void Update(){// 更新偏移量,基于方向移动currentOffset += direction * moveSpeed * Time.deltaTime;// 到达边界时自动反向if (currentOffset <= -maxDistance){currentOffset = -maxDistance; // 保持在边界direction = 1; // 改为向上}else if (currentOffset >= 0){currentOffset = 0; // 保持在边界direction = -1; // 改为向下}// 更新物体位置transform.position = startPosition + new Vector3(0, currentOffset, 0);}void OnCollisionEnter(Collision collision){// 检测到碰撞后反转运动方向direction *= -1;// 打印碰撞信息(可选)Debug.Log($"碰撞到 {collision.gameObject.name},方向反转!");}
}

http://www.ppmy.cn/ops/136497.html

相关文章

DataGrip 连接 Redis、TongRDS

连接 Redis 或 TongRDS 有些旧版本 没有 redis 驱动用不了 1&#xff09;选择驱动 2&#xff09;添加连接信息 3&#xff09;测试连接 4&#xff09;保存连接 5&#xff09;使用案例

【阵列信号处理】相干信号和非相干信号生成

文章目录 一、总结二、知识点相干&#xff08;coherent&#xff09;和非相干&#xff08;incoherent&#xff09;信号相干信号生成代码 相关信号&#xff08;correlated signal&#xff09;相关信号生成代码 正交信号定义 本文记录博主的科研日记。如果对博主的其他文章感兴趣&…

uni-app 玩转条件编译:自定义平台的条件编译实战详解

一. 条件编译支持的场景 uni-app 的条件编译能支持以下几种场景&#xff0c;具体如图所示&#xff1a; 1. API 的条件编译 简言之&#xff0c;同一功能实现&#xff0c;可能有不同的逻辑处理&#xff0c;比如&#xff1a;在 js 文件中&#xff0c;或者在 Vue 文件中的 scrip…

PW系列工控电脑复制机:效率与精度双重提升

工控电脑复制应用&#xff1a;效率与精度的双重提升 随着现代企业对大数据、数据备份、和跨平台兼容性需求的快速增长&#xff0c;工控电脑已成为数据密集型产业的核心设备。针对工控环境中大量数据复制的特殊需求&#xff0c;PW系列NVMe/SATA PCIe SSD复制机&#xff08;如PW…

深入理解 Seata:分布式事务的最佳解决方案

随着微服务架构的广泛应用&#xff0c;分布式事务管理成为系统设计中一项重要且极具挑战的任务。在微服务架构下&#xff0c;服务之间通过网络调用&#xff0c;单个业务操作往往需要多个服务的协作来完成&#xff0c;这样分布式事务的问题就不可避免。Seata 是目前较为流行的一…

python 正则表达式re 模块的基本使用方法

目录 一、正则化表达式语法1、如下表格&#xff1a;2、元字符 二、re模块常用方法1、compile2、findall3、search4、match5、split6、sub7、finditer 一、正则化表达式语法 1、如下表格&#xff1a; 语法意义.匹配除换行外的任意字符(如果DOTALL则连换行也匹配)^匹配字符串开…

修改一下达梦disql 提示符

经常用disql的有时某些信息希望提示一下&#xff0c;默认的只显示SQL> 为了方便使用&#xff0c;可以在 glogin.sql 中增加些内容。 vi $DM_HOME/bin/disql_conf/glogin.sql增加以下几行 set time on set lineshow offcol global_name new_value global_name SELECT ins…

抓包 127.0.0.1 (loopback) 使用 tcpdump+wireshark

直接使用 wireshark无法抓取 127.0.0.1环回的数据包&#xff0c;一种解决方法是先传到路由器再返回&#xff0c;但这样可能造成拥塞。 Linux 先使用tcpdump抓包并输出为二进制文件&#xff0c;然后wireshark打开。 比如 sudo tcpdump -i lo src host localhost and dst host…