2d场景背景无限滚动

Posted allyh

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2d场景背景无限滚动相关的知识,希望对你有一定的参考价值。

之前都是直接借用的DoTween插件,两个背景无限交替位置进行,还有就是三个背景在利用Trigger进行判断显示与否循环;

技术分享图片

  示例脚本:

  

 private List<RectTransform> m_ScrollGroup;
    private RectTransform[] _ts;
    void Awake()
    {
        m_ScrollGroup = new List<RectTransform>();
        _ts = transform.GetComponentsInChildren<RectTransform>();
        foreach(RectTransform t in _ts)
        {
            if(t.name.StartsWith("Background"))
            {
                m_ScrollGroup.Add(t);                
            }           
        }
        //Debug.Log(m_ScrollGroup.Count + ":" + m_ScrollGroup[0]);//2 object
    }
    private Vector2 m_StartPos = new Vector2(788, 0);
    private int m_Speed = 50;   
    void Update () {
        PosLimit();
        m_ScrollGroup[0].transform.Translate(Vector3.left * Time.deltaTime * m_Speed);
        m_ScrollGroup[1].transform.Translate(Vector3.left * Time.deltaTime * m_Speed);
        //m_ScrollGroup[0].position = Vector2.Lerp(new Vector2(-11, 0), new Vector2(-800, 0), 60);       
    }
    public void PosLimit()
    {
        //width 800 height600
        if (m_ScrollGroup[0].position.x <= -400f)
        {
            m_ScrollGroup[0].position = new Vector2(1198f, m_ScrollGroup[0].position.y);
        }
        if (m_ScrollGroup[1].position.x <= -400f)
        {
            m_ScrollGroup[1].position = new Vector2(1198f, m_ScrollGroup[1].position.y);
        }

    }

  

以上是关于2d场景背景无限滚动的主要内容,如果未能解决你的问题,请参考以下文章

创建 Cocos2D 无限背景图片

Cocos2d-x《雷电大战》-双层地图无限滚动

libgdx上的无限滚动背景

如何在 MS Word 文档中显示代码片段,因为它在 *** 中显示(滚动条和灰色背景)

图片循环滚动效果shader

精灵上的无限滚动(视差)