Unity_往复运动_057

来源:互联网 发布:go开头的软件 编辑:程序博客网 时间:2024/04/29 22:10

题目:创建脚本实现沿着z轴方向移动,当到达10后,反向移动10,如此不断重复

using UnityEngine;using System.Collections;public class Move : MonoBehaviour {    //设置一个标志位 当intFlag 为1的时候表示向Z轴的正方向移动 当intFlag 为-1的时候表示向Z轴的负方向移动     int intFlag = 1;    // Update is called once per frame    void Update ()    {        //当Z轴位置大于10的时候就向负方向移动        if (transform.position.z>=10)        {            intFlag = -1;        }        //当Z轴位置小于0的时候就向正方向移动        if (transform.position.z<0)        {            intFlag = 1;        }        transform.Translate(new Vector3(0, 0, intFlag) * Time.deltaTime * 2);    }}

第二种方法

using UnityEngine;using System.Collections;public class Move : MonoBehaviour {    // Update is called once per frame    void Update ()    {        //利用Mathf的pingpong方法达到往复的运动        transform.position = new Vector3(0,0,Mathf.PingPong(Time.time,10));    }}

效果如下:
这里写图片描述