// Use this for initialization
    void Start()
    {
        int startNodeIdx = nodeGroup.RandomizeStartNodeIdx();
        int goalNodeIdx  = nodeGroup.RandomizeGoalNodeIdx(startNodeIdx);

        Vector2 startPosition = new Vector2(nodeGroup.nodes[startNodeIdx].X, nodeGroup.nodes[startNodeIdx].Y);

        blipControl                    = Instantiate(blipPrefab, startPosition, new Quaternion(0, 0, 0, 0)).GetComponent <BlipControl>();
        camera.transform.parent        = blipControl.transform;
        camera.transform.localPosition = new Vector3(0, 0, camera.transform.localPosition.z);

        blobControls = new BlobControl[Preferences.Difficulty];
        for (int i = 0; i < blobControls.Length; i++)
        {
            blobControls[i] = Instantiate(blobPrefab, startPosition, new Quaternion(0, 0, 0, 0)).GetComponent <BlobControl>();
        }

        Vector2    goalPosition = new Vector2(nodeGroup.nodes[goalNodeIdx].X, nodeGroup.nodes[goalNodeIdx].Y);
        GameObject block        = Instantiate(blockPrefab, goalPosition, new Quaternion(0, 0, 0, 0));

        block.transform.position = goalPosition;

        fog.SetActive(true);
        levelAnimator.PlayStartGame(startNodeIdx);
    }