我想创建一个可以通过2种不同方式点击的游戏对象。
这张照片只是一个例子,但这就是我想要的。有两个不同的可点击"生命点"它们有不同的功能。第一个(黑色的)应该在x坐标和y坐标上移动游戏对象。黄色部分应该改变游戏对象的角度。我已经用raycast尝试了一些东西,但我没有得到它。有人有一个很好的例子吗?会很好......
电贺 桑德
答案 0 :(得分:0)
您可以在同一个游戏对象中拥有多个碰撞器,并更改其“中心”和“大小”属性以正确定位它们。我认为这是最简单的方法。
比你使用像这个例子的钩子OnCollisionEnter(Collision collision)
:
public class CollisionHandler : MonoBehaviour {
private IDictionary<Collider, string> colliders;
void Start () {
int i = 0;
colliders = new Dictionary<Collider, string>();
foreach (var collider in GetComponents<Collider>())
colliders.Add(collider, "collider_" + i++);
}
void OnCollisionEnter(Collision collision)
{
Debug.Log(colliders[collision.contacts[0].thisCollider]);
}
}
我类似的方法是将2个空游戏对象作为游戏对象的子对象;它们每个只有一个对撞机,还有一个处理碰撞的脚本。