相关疑难解决方法(0)

团结:在给定目标点和方向的情况下逼真地转动汽车

我有一个CSV,它给我x,z一个汽车的坐标,id在给定的时间内t以秒为单位.下面是一辆汽车的摘录数据id=1,它的坐标是几秒钟.在前三秒钟,汽车停了下来.然后它向左转并继续直行几秒钟.

目前我正在根据下一个位置计算方向并将车辆朝向该方向旋转,但转弯处没有"曲线",它只是直接移动到下一个位置:

Vector3 direction = (nextPosition - car.transform.position).normalized;
if(direction != Vector3.zero)
{
    Quaternion lookRotation = Quaternion.LookRotation(direction);
    float step = speed * Time.deltaTime;
    car.transform.rotation = Quaternion.Slerp(car.transform.rotation, lookRotation, Time.deltaTime * rotationSpeed);
}
Run Code Online (Sandbox Code Playgroud)

鉴于刚刚这些点,特别是两个在958959在转弯时,有没有办法更真实地使转弯?我知道Unity的标准资产CarController.cs具有转向功能,但我不确定我是否可以利用它来获得优势.

t,id,x,z
956,1,-1.50,232.39
957,1,-1.50,232.39
958,1,-1.50,232.39
959,1,-4.50,209.72
960,1,-4.50,193.05
961,1,-4.50,176.39
Run Code Online (Sandbox Code Playgroud)

c# simulation unity-game-engine

0
推荐指数
1
解决办法
485
查看次数

标签 统计

c# ×1

simulation ×1

unity-game-engine ×1