我想让球每次碰到桨时都要提高速度,但它不起作用。
ball.cs
using UnityEngine;
public class Ball : MonoBehaviour
{
[SerializeField] private float velocityMultiplier = 1.1f;
private void OnCollisioEnter2D(Collision2D collision)
{
if (collision.gameObject.CompareTag("Paddle"))
{
ballRb.velocity *= velocityMultiplier;
}
}
}
这是一位巡查员
而桨B是一样的
发布于 2022-05-11 19:19:55
你的校对似乎被标记为“运动学”。它不响应对撞机,只能用脚本移动。
从医生那里:
运动刚体对撞机 这是一个带有对撞机和运动刚体的GameObject (即启用了刚体的IsKinematic属性)。您可以通过修改其转换组件从脚本中移动一个运动刚体对象,但是它不会像非运动刚体那样对碰撞和力作出响应。运动刚体应用于对撞机,有时可以移动或禁用/启用,但在其他情况下应该像静态对撞机那样运行。这方面的一个例子是一个滑动门,通常应该作为一个不可移动的物理障碍,但可以在必要时打开。与静态对撞机不同,运动刚体会对其他物体施加摩擦,当其他刚体接触时会“唤醒”其他刚体。
https://stackoverflow.com/questions/72206457
复制相似问题