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);
}
}
}
网友评论