【问题标题】:Unity3D RayCasting in 4 directions onlyUnity3D RayCasting 仅在 4 个方向
【发布时间】:2015-09-17 21:40:35
【问题描述】:

我正在尝试创建一个迷宫游戏,玩家只有在看到糖果时才能移动。

目前,光线投射正在各个方向(360 度)搜索但我只希望光线投射直接向上、向左、向下、向右(而不是 360 度)看...这样玩家只有在将糖果放在直接视线中时才能移动。

public function setTargetSweet(target:GameObject)
{
    too = target.transform.position;
    targetSweet = target;

    var fwd = too - transform.position;

    Debug.Log("Setting target sweet: " + target.name);
    Debug.DrawRay(transform.position, fwd, Color.red, 5f);

    Physics.Raycast (transform.position, fwd, hit);

    if ( hit.collider.tag == "MoveToSweet") {
        print ("Can See Sweet");
        gotoSweet = true;
    }
    else
    {
        Debug.Log(hit.collider.name);
        Debug.Log(hit.collider.tag);
        gotoSweet = false;
    }
}

【问题讨论】:

    标签: unity3d raycasting


    【解决方案1】:

    你每次都在朝着任何甜蜜的方向进行射线投射。您需要四个电话,例如Physics.Raycast(transform.position, Vector3.forward, hit),并检查电话之间的命中率。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-04-02
      • 1970-01-01
      • 2020-12-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多