//
        // Initializes the preset list.
        //
        static void Initialize()
        {
            int numPresets = 4;

            values = new SimulationSettingsValue[numPresets];

            values[0] = new SimulationSettingsValue(4096, 1024, 2, 16384, 4096, 32, 1.0f, 1, 32);
            values[1] = new SimulationSettingsValue(8192, 1024, 4, 32768, 4096, 64, 1.0f, 1, 32);
            values[2] = new SimulationSettingsValue(16384, 1024, 8, 65536, 4096, 128, 1.0f, 1, 32);
            values[3] = new SimulationSettingsValue();
        }
        public ISimulationSettingsValue this[string key]
        {
            get
            {
                if (values.TryGetValue(key, out var res))
                {
                    return(res);
                }

                return(values[key] = new SimulationSettingsValue());
            }
            set => values[key] = value ?? new SimulationSettingsValue();