代码之家  ›  专栏  ›  技术社区  ›  Siddharth

滚球动画工作不正常-统一游戏

  •  0
  • Siddharth  · 技术社区  · 6 年前

    在我的游戏中,我试图实现基于手指运动的滚动球动画。

    Catch Up (Ketchapp)

    现在基于手指拖动,我想根据所需的测量将球左右旋转,因此我启用了前向矢量旋转,但无法在左右拖动中生成平滑的旋转。

    public class BallMeshRolling : MonoBehaviour
    {
    private Vector3 ballLastPosition;
    
    
    void Start ()
    {
        ballLastPosition = transform.parent.position;
    }
    
    void Update ()
    {
    
        // ball moving forward animation
        float rollingSpeed = Vector3.Distance (transform.parent.position, ballLastPosition) * 30f;
        transform.RotateAround (transform.position, Vector3.right, rollingSpeed);
    
        // ball moving left & right animation
        float dragDifference = (transform.position.x - ballLastPosition.x) * 30f;
        transform.RotateAround (transform.position, Vector3.forward, dragDifference);
    
        ballLastPosition = transform.parent.position;
    }
    }
    

    0 回复  |  直到 6 年前