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

如图:

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

 

代码实现:

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);
    }

}

相关文章:

  • 2021-07-02
  • 2022-12-23
  • 2021-08-01
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-11-26
  • 2022-02-16
  • 2022-12-23
  • 2022-12-23
  • 2023-03-16
相关资源
相似解决方案