我想解决此问题,但找不到任何教程。问题是,如果我在较高的地形上行走角色或可以行走的任何物体。一旦我离开较高的地形,角色就会漂浮。我想要角色会留在地面上的东西。我使用的组件是角色控制器和胶囊对撞机。预先感谢大家。
PS :您看到的曲线是一个对象。它不是颠簸/升高或绘制的高度地形。
在较高的对象/地形上行走并向后走之后,它看起来像这样。它仍然浮动。
到目前为止,这是我尝试过的,但是没有用。
Ray ray = new Ray(transform.position, Vector3.down);
RaycastHit hitInfo;
LayerMask layer = 1 << LayerMask.NameToLayer("Terrain");
//cast ray
if(Physics.Raycast(ray, out hitInfo, layer))
{
//get where on the z axis our raycast hit the ground
float z = hitInfo.point.z;
//copy current position into temporary container
Vector3 pos = transform.position;
//change z to where on the z axis our raycast hit the ground
pos.z = z;
//override our position with the new adjusted position.
transform.position = pos;
}