利用三角函数实现按钮上下漂浮

实现一个按钮的上下漂浮效果,我们通常会想到animation 和 itween来实现. 这次我们来使用三角函数实现

如图:

2

代码实现:

using UnityEngine;
using System.Collections;

public class Demo : MonoBehaviour {

    private float radian = 0;           //弧度
    public float perRadian = 0.02f;     //增加的弧度,可以控制上下移动的速度
    public float radius = 0.2f;         //运动的范围,可以控制上下移动的距离

    private Vector2 oldPos;
    private RectTransform rt;

    public void Start() 
    {
        rt = transform.GetComponent<RectTransform>();
        oldPos = rt.anchoredPosition;
    }   

    public void Update() 
    {
        radian += perRadian;

        //Matif.Cos传入弧度,返回是邻边:斜边的比, -1 到 1之间的值  乘以 运动范围 = 按钮上下移动的最大半径
        float dy = Mathf.Cos(radian) * radius;
        
        rt.anchoredPosition = oldPos + new Vector2(0, dy);
    }

}
如果你感兴趣,你可以把你妹妹介绍给我
原文地址:https://www.cnblogs.com/plateFace/p/4733468.html