找回密码
 立即注册
查看: 324|回复: 0

unity物体自动移动

[复制链接]
发表于 2022-5-4 19:18 | 显示全部楼层 |阅读模式
版本unity2020.3.32
测试中建了两个空对象确定要移动到的位置


下边是代码
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class move : MonoBehaviour
{
    public float speed = 2; //[1] 物体移动速度
    public Transform[] target;  // [2] 目标
    public float delta = 0.2f; // 误差值
    private static int i = 0;

    void Update()
    {
        moveTo();
    }

    void moveTo()
    {
        // [3] 重新初始化目标点
        target.position = new Vector3(target.position.x, transform.position.y, target.position.z);

        // [4] 让物体朝向目标点
        transform.LookAt(target);

        // [5] 物体向前移动
        transform.Translate(Vector3.forward * Time.deltaTime * speed);

        // [6] 判断物体是否到达目标点
        if (transform.position.x > target.position.x - delta
            && transform.position.x < target.position.x + delta
            && transform.position.z > target.position.z - delta
            && transform.position.z < target.position.z + delta)
            i = (i + 1) % target.Length;
    }
}

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-11-16 15:26 , Processed in 0.090221 second(s), 26 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表