让 图片 摇摆起来

 

最近玩  超级玛丽,地图上的 花草都会摇摆,很是有趣。

于是我用来模仿一下。摇摆和伸展 的设计。

这个是  同一个 方向摇摆的。

这个是不同方向摇摆的。

代码设计很简单,开放了两个参数接口,就是摆动和拉伸的 幅度。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class dongqilai : MonoBehaviour
{

    Vector3 vec;
    Vector3 vecs;
    Quaternion rotations;
    void Start()
    {
        vec = transform.position;
        vecs = transform.localScale;
        rotations = transform.rotation;
        zhuan_dongleiji = rotations.z;
        rd = Random.Range(0, 100);
    }
    private int rd;
    void Update()
    {

    }
    public float zhuan_dongspeed;
    private int zhuan_zongshen;
    private int zhuan_zhengfanqiehuan;
    private float zhuan_dongleiji;

    public float yidonglasheng_dongspeed;
    private int yidonglasheng_zongshen;
    private int yidonglasheng_zhengfanqiehuan;
    private float yidonglasheng_dongleiji;


    void LateUpdate()
    {
        rd--;
        if (rd < 0)
        {
            zhuan_zongshen++;
            if (zhuan_zongshen > 44)
            {
                zhuan_zhengfanqiehuan++;
                zhuan_zongshen = 0;
            }
            //正常转
            if (zhuan_zhengfanqiehuan % 2 == 0)
            {
                zhuan_dongleiji -= zhuan_dongspeed;
            }
            else
            {
                zhuan_dongleiji += zhuan_dongspeed;
            }
            yidonglasheng_zongshen++;
            if (yidonglasheng_zongshen > 22)
            {
                yidonglasheng_zhengfanqiehuan++;
                yidonglasheng_zongshen = 0;
            }

            if (yidonglasheng_zhengfanqiehuan % 2 == 0)
            {
                vec.y += yidonglasheng_dongspeed;
                vecs.y += yidonglasheng_dongspeed;
            }
            else
            {
                vec.y -= yidonglasheng_dongspeed;
                vecs.y -= yidonglasheng_dongspeed;
            }
            transform.position = vec;
            transform.localScale = vecs;
            rotations.eulerAngles = new Vector3(0.0f, 0.0f, 500 * zhuan_dongleiji);
            transform.rotation = rotations;
        }
    }
}

这里面最关键的一点就是,图片 中心点,必须 调整到  下方。

 

posted on 2019-07-04 22:14  太粗难进  阅读(420)  评论(0编辑  收藏  举报