转动子对象代码(光线投射和鼠标点击和子对象)

时间:2014-06-04 23:40:01

标签: unity3d


游戏角色正在某个用鼠标点击的地方 我的问题:代码只适用于GameObject。我想在盒子里使用一个,它不能。
     enter image description here

我使用一行代码:

public GameObject obj;
void Update() {
    if(Input.GetMouseButton(0)) {
        RaycastHit rayHit;
        Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
        if (obj.collider.Raycast (ray, out rayHit, Mathf.Infinity)) {
            transform.position = rayHit.point;
            renderer.material.color = Color.green;
        }
    }
}

映射作为唯一的模型,所以我需要做。阻止我对我的地图进行更改 我需要调用各个子对象。但我不能。

翻译谷歌翻译:)

1 个答案:

答案 0 :(得分:0)

尝试使用Physics.Raycast(ray, out rayHit)。这将从您的屏幕光线投射到世界。然后你可以检查对象的类型:

if (rayHit.collider.GetType() == typeof(YourTypeHere))
{
    doSomething();
}