public void Refresh(int count, EnvironmentSpecs environment)
    {
        LoadIfNecessary();

#if RANDOM
        NewDataCloud(count, environment);
#else
        mDataCloud = new List <Vector3>();
        mDataCloud.Add(new Vector3(-1f, -1f, -1f));
        mDataCloud.Add(new Vector3(1f, -1f, 1f));
        mDataCloud.Add(new Vector3(-1f, 1f, 1f));
        mDataCloud.Add(new Vector3(1f, 1f, -1f));
#endif

        switch (environment.dataDimension)
        {
        default:
        case DataDimension._3D:
        {
            On3D();
            break;
        }

        case DataDimension._2D:
        {
            On2D();
            break;
        }
        }
    }
    void NewDataCloud(int count, EnvironmentSpecs environment)
    {
        switch (environment.dataDimension)
        {
        default:        // Use 3D
        case DataDimension._3D:
        {
            switch (environment.dataCloud3Type)
            {
            default:                // Use Cube
            case DataCloud3Type.Cuboid:
            {
                mDataCloud = DataCloud3.Cube(count, transform.localScale, transform.position);
                break;
            }

            case DataCloud3Type.Ellipsoid:
            {
                mDataCloud = DataCloud3.Ellipsoid(count, transform.localScale, transform.position);
                break;
            }
            }

            break;
        }

        case DataDimension._2D:
        {
            switch (environment.dataCloud2Type)
            {
            default:                // Use Rectangle
            case DataCloud2Type.Rectangle:
            {
                mDataCloud = DataCloud2.Rectangle(count, transform.localScale, transform.position);
                break;
            }

            case DataCloud2Type.Ellipse:
            {
                mDataCloud = DataCloud2.Ellipse(count, transform.localScale, transform.position);
                break;
            }
            }

            break;
        }
        }
    }
    private void Awake()
    {
        environment = new EnvironmentSpecs();

        fillDataCloudTypeDropdown(Enum.GetNames(environment.dataCloud3Type.GetType()));
    }