unity3d 如何在Unity中让物体瞬间落地(跳过落地动画)?

w3nuxt5m  于 2023-03-09  发布在  其他
关注(0)|答案(2)|浏览(131)

现在,我有一个物体,我只知道x和z的位置,如果我把它放在一个很高的y坐标上,我会得到一个它掉向地面的动画,我想跳过这个,直接让它掉到地面上,我该怎么做?

ozxc1zmp

ozxc1zmp1#

将对象放置在地面上方的任意Y位置,然后向下投射光线到地面并将对象移动到命中位置。
伪代码:

transform.position.y = 200f;
if (Physics.Raycast(transform.position, Vector3.down, out var hit)) {
    transform.position = hit.point;
}
rryofs0p

rryofs0p2#

你可以使用RaycastBoxcast来确定从物体底部到下一个碰撞器的距离,然后从物体transform.position.y中减去这个距离。

相关问题