zoukankan      html  css  js  c++  java
  • unity---背景循环滚动

    方法一:场景创建Sprite
    Transform position 为0
    复制第二张 Y 位置为 图片像素/ Pixel Per Unit100

    using System.Collections;
    using System.Collections.Generic;
    using UnityEngine;
    //这里脚本挂到了管理上
    public class MainManager : MonoBehaviour
    {
        Transform bg1Spr, bg2Spr;
        Transform[] BgSprites;
        public float moveSpeed = 5f;
        private void Awake()
        {
            bg1Spr = transform.Find("BgGround/bg1");
            bg2Spr = transform.Find("BgGround/bg2");
        }
        void Start()
        {
            BgSprites = new Transform[] { bg1Spr, bg2Spr };
        }
    
        void Update()
        {
            Vector3 translate = Vector3.down * Time.deltaTime * this.moveSpeed;
            for (int i = 0; i < BgSprites.Length; i++)
            {
                BgSprites[i].Translate(translate);
                if (BgSprites[i].position.y < -19.49f)
                {
                    BgSprites[i].position += new Vector3(0, 19.49f * 2, 0);
                }
            }
        }
    }
    
    

    方法二:利用shader

    using System.Collections;
    using System.Collections.Generic;
    using UnityEngine;
    using UnityEngine.UI;
    
    public class GameManager : MonoBehaviour
    {
        float moveSpeed = 0.1f;
        Material material;
        private void Awake()
        {
            material = transform.Find("UIPanel/Bg/bg1").GetComponent<Image>().material;
        }
        float y;
        public float Y
        {
            get { return y; }
            set { y = value; }
        }
    
    
    
        void Update()
        {
    
            Y += Time.deltaTime * moveSpeed;
            //给shader里对应的字段赋值
            material.SetTextureOffset("_MainTex", new Vector2(0, Y));
            // material.mainTextureOffset = new Vector2(0, Y);
    
    
        }
    }
    
    

    http://www.ceeger.com/Script/Material/Material.SetTextureOffset.html#

    参考:https://fengyu.name/article/311

  • 相关阅读:
    威尔逊置信区间
    mysql函数
    python操作mysql之pymysql
    oracle 表分区
    Python连接sqlserver数据库之pymssql
    python-subprocess
    python-shutil
    python+logging
    公钥加密-DES-RSA
    python-Web-flask-蓝图和单元测试
  • 原文地址:https://www.cnblogs.com/Ms-Sake/p/10755499.html
Copyright © 2011-2022 走看看