美文网首页
2D小游戏——背景滚动

2D小游戏——背景滚动

作者: GZoO | 来源:发表于2019-01-17 10:57 被阅读0次
Game视窗 Scene视窗
    思路:图片向左水平移动,当完全移出画面时,移到右侧画面外,继续向左移动进入画面。

    背景图片排队,队头移出画面时,需要排到队尾处成为新的队尾。新的队尾的位置计算方法为,队尾的位置+图片的间隔长度。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class BackgroundRoll : MonoBehaviour
{

    [Tooltip("移动速度")]
    public float speed;

    [Tooltip("间隔")]
    public float interval;

    [Tooltip("位置")]
    public float changePos;

    // Update is called once per frame
    void Update()
    {

        //水平移动
        transform.Translate(Vector3.right * Time.deltaTime * speed);

        //出画操作
        if (transform.position.x < changePos)
        {
            //获取同级索引
            int index = transform.GetSiblingIndex();

            //防止溢出
            if (index == 0)
            {
                index = transform.parent.childCount - 1;
            }
            else
            {
                --index;
            }

            //重置位置
            transform.position = transform.parent.GetChild(index).position + new Vector3(interval, 0, 0);
        }
    }
}

相关文章

网友评论

      本文标题:2D小游戏——背景滚动

      本文链接:https://www.haomeiwen.com/subject/negbdqtx.html