unity3d中的球抖动运动问题

unity3d中的球抖动运动问题,unity3d,game-physics,Unity3d,Game Physics,我正在使用unity3d进行一个斯诺克游戏项目。我对球的移动有严重的问题。在向主球施加一定方向的力后,它会做一种急促的运动。我的相机位置是从顶视图固定的。我已经在主球上应用了弹性物理材料。请告诉我我到底错过了什么 using UnityEngine; using System.Collections; public class CueBall1 : MonoBehaviour { public Transform cueStick; private float force

我正在使用unity3d进行一个斯诺克游戏项目。我对球的移动有严重的问题。在向主球施加一定方向的力后,它会做一种急促的运动。我的相机位置是从顶视图固定的。我已经在主球上应用了弹性物理材料。请告诉我我到底错过了什么

using UnityEngine;
using System.Collections;

public class CueBall1 : MonoBehaviour {

    public Transform cueStick;

    private float force = 1000;

    // Use this for initialization
    void Start () {

        gameObject.rigidbody.collisionDetectionMode = CollisionDetectionMode.ContinuousDynamic; 
        rigidbody.interpolation = RigidbodyInterpolation.Interpolate;

    }

    void FixedUpdate () {

        if(Input.GetMouseButtonDown(0)){

            rigidbody.AddForceAtPosition(cueStick.forward * force,transform.position,ForceMode.Acceleration);

        }

    }
}

谢谢你

你能分享一段视频来展示到底发生了什么吗?一件事是你可能想使用ForceMode.VelocityChange而不是加速度。代码中的力是瞬间施加的,加速度是在一段时间内施加的。我想这就是为什么你的力变量设置得这么高的原因。也可以进入编辑->项目设置->物理,尝试将你的解算器迭代次数设置得更高。我已经通过增加解算器迭代计数器尝试过了。但还是一样的问题。不幸的是,我无法将力模式ForceMode.Acceleration更改为ForceMode.VelocityChange,因为它会影响我的旋转功能。