コード例 #1
0
    void CheckObstacles()
    {
        int     staticSolid_mask = LayerMask.GetMask(StaticVariables.pc_StaticSolidLayer);
        Vector3 objToCamVec      = transform.position - target.position;
        float   heightDifference;

        //Actions
        transform.position = StaticFunctions.CheckObstaclesAndBringCloser(target.position, objToCamVec, objToCamVec.magnitude, staticSolid_mask, distanceWhenRaycast, transform.position, transform.position);
        if (automaticMode)
        {
            heightDifference = (target.position.y + cameraHeight) - transform.position.y;

            transform.position = StaticFunctions.CheckObstaclesAndBringCloser(transform.position, Vector3.up, heightDifference, staticSolid_mask,
                                                                              distanceWhenRaycast, transform.position, new Vector3(transform.position.x, target.position.y + cameraHeight, transform.position.z));
        }
    }