Unity3d 在移动玩家时,游戏中的所有物体来回振动(摇晃)。我怎样才能使它光滑?

Unity3d 在移动玩家时,游戏中的所有物体来回振动(摇晃)。我怎样才能使它光滑?,unity3d,velocity,vibration,jitter,Unity3d,Velocity,Vibration,Jitter,我是unity的新手,我寻找了这个问题,但没有找到满意的答案 我有一个立方体作为球员与刚体(重力停用)连接 很少有其他大立方体像建筑物一样 和相机连接到播放器 当我用箭头键移动玩家时,它移动平稳,但所有其他物体都会振动,因为我提高了玩家场地和建筑物星星的振动速度 我的玩家脚本:- using UnityEngine; using System.Collections; public class playerController : MonoBehaviour { public Ri

我是unity的新手,我寻找了这个问题,但没有找到满意的答案

我有一个立方体作为球员与刚体(重力停用)连接

很少有其他大立方体像建筑物一样 和相机连接到播放器

当我用箭头键移动玩家时,它移动平稳,但所有其他物体都会振动,因为我提高了玩家场地和建筑物星星的振动速度


我的玩家脚本:-

    using UnityEngine;
using System.Collections;

public class playerController : MonoBehaviour {

public Rigidbody player;
public float speed;
private Vector3 vect;

// Use this for initialization
void Start () {

    player = GetComponent<Rigidbody> ();
}


void  Update () {
    float moveH = Input.GetAxis ("Horizontal");
    float moveV = Input.GetAxis ("Vertical");
    vect = new Vector3 (moveH,0.0f,moveV);   
}

void FixedUpdate () {
    player.velocity = vect*speed;
}

}
  • 在照相机中,我尝试了Update()、FixedUpdate()和LateUpdate() 但效果几乎相同,而且不平滑

如何使gound和其他对象平滑移动???

您可以通过将“物理设置”b(编辑>项目设置>物理>反弹阈值)中的反弹阈值更改为8之类的值来避免玩家振动。

您可以通过更改“物理设置”b中的反弹阈值来避免玩家振动(编辑>项目设置>物理>反弹阈值)到类似于8的值,如果希望物理正常工作,请使用AddForce而不是更改速度(可能也有助于解决当前问题)。除此之外,选择SmoothDamp(移动凸轮)。如果仍然不完美,请检查阻力值并调试。记录速度变化;我的假设是,两个曲面的“滑动”不完美,但你“继续用力推”立方体。规则是,你无法统一设置对象的速度。只需使用“AddForce”进行实验即可。如果你想让物理学正常工作,请使用AddForce,而不是改变速度(可能对你当前的问题也有帮助)。除此之外,请使用SmoothDamp(移动凸轮)。如果仍然不完美,请检查阻力值并调试。记录速度变化;我的假设是,两个曲面的“滑动”不完美,但是“继续用力推”立方体是一条规则,你不能设定一个物体的统一速度。只需用“加力”进行实验即可。
    using UnityEngine;
using System.Collections;

public class CameraController : MonoBehaviour {

public Transform player;
public  GameObject cameraa;
private Vector3 offset;
public float speed;


void Start () {

    //calculating offset
    offset = cameraa.transform.position - player.position;
}

// Update is called once per frame
void    FixedUpdate () {

    cameraa.transform.position = player.position + offset;
}
}