예제 #1
0
    void Awake()
    {
        _cameraController = FindObjectOfType <CameraController>();
        _cameraController.Initialize(Navmesh.Size, .5f);
        _lineDrawer = GetComponent <LineDrawer>();
        _camera     = Camera.main;
        Help.gameObject.SetActive(!Application.isEditor);
        _agent = FindObjectOfType <DotsNavAgent>();
        var tr = _agent.transform;

        _start = tr.Find("Start");
        _goal  = tr.Find("Goal");
        var size = _start.localScale.x;
        var s    = new Vector3(size, size, size);

        _goal.localScale = s;
        _agent.Radius    = size / 2;
    }
예제 #2
0
    void Awake()
    {
        foreach (var obstacle in FindObjectsOfType <DotsNavObstacle>())
        {
            var l = new List <Vector2>();
            for (int i = 0; i < obstacle.Vertices.Length; i++)
            {
                l.Add(obstacle.GetVertex(i));
            }
            if (obstacle.Closed)
            {
                l.Add(obstacle.GetVertex(0));
            }
            _toDump.Add(l);
        }

        _cameraController = FindObjectOfType <CameraController>();
        _cameraController.Initialize(Navmesh.Size);
        _lineDrawer = GetComponent <LineDrawer>();
        _camera     = Camera.main;
        Help.gameObject.SetActive(!Application.isEditor);
        _agent = FindObjectOfType <DotsNavAgent>();

        if (Reverse)
        {
            var start   = _agent.transform.Find("Start");
            var goal    = _agent.transform.Find("Goal");
            var tempPos = start.position;
            start.position = goal.position;
            goal.position  = tempPos;
        }

        var tr = _agent.transform;

        _start = tr.Find("Start");
        _goal  = tr.Find("Goal");
        var size = _start.localScale.x;
        var s    = new Vector3(size, size, size);

        _goal.localScale = s;
        _agent.Radius    = size / 2;
    }