Beispiel #1
0
    /// <summary>
    /// Prompts the flocks to calculate their centroid and flock direction,
    /// adjusts the camera as necessary in reaction to user input.
    /// </summary>
    void Update()
    {
        if (wolves != null && wolves.NumFlockers != 0)
        {
            wolves.CalcCentroid();
            wolves.CalcFlockDirection();
        }

        foreach (Flock flock in herds)
        {
            flock.CalcCentroid();
            flock.CalcFlockDirection();
        }

        //for switching cameras
        if (Input.GetKeyDown(KeyCode.C))
        {
            if (myCamera.enabled)
            {
                myCamera.enabled    = false;
                Camera.main.enabled = true;
            }
            else
            {
                myCamera.enabled    = true;
                Camera.main.enabled = false;
            }
        }

        if (Input.GetKey(KeyCode.RightArrow))
        {
            myCamera.transform.position = new Vector3(myCamera.transform.position.x + 1, myCamera.transform.position.y, myCamera.transform.position.z);
        }
        if (Input.GetKey(KeyCode.LeftArrow))
        {
            myCamera.transform.position = new Vector3(myCamera.transform.position.x - 1, myCamera.transform.position.y, myCamera.transform.position.z);
        }
        if (Input.GetKey(KeyCode.DownArrow))
        {
            myCamera.transform.position = new Vector3(myCamera.transform.position.x, myCamera.transform.position.y, myCamera.transform.position.z - 1);
        }
        if (Input.GetKey(KeyCode.UpArrow))
        {
            myCamera.transform.position = new Vector3(myCamera.transform.position.x, myCamera.transform.position.y, myCamera.transform.position.z + 1);
        }
    }