Пример #1
0
        public void LoadDefaultSettings()
        {
            autosettingsEnabled.Set(false);
            currentQualitySettings = qualitySettingsPreset.defaultPreset;
            currentGeneralSettings = GetDefaultGeneralSettings();

            ApplyQualitySettings(currentQualitySettings);
            ApplyGeneralSettings(currentGeneralSettings);
        }
Пример #2
0
        public void ApplyQualitySettings(SettingsData.QualitySettings settings)
        {
            if (settings.Equals(currentQualitySettings))
            {
                return;
            }

            currentQualitySettings = settings;
            OnQualitySettingsChanged?.Invoke(settings);
        }
    internal void OnQualitySettingsChanged(QualitySettings settings)
    {
        if (fpsCapped == settings.fpsCap)
        {
            return;
        }

        fpsCapped = settings.fpsCap;
        if (settings.fpsCap)
        {
            controller = new AutoQualityCappedFPSController(TARGET_FPS, currentQualityIndex, qualitySettings);
        }
        else
        {
            controller = new AutoQualityUncappedFPSController(currentQualityIndex, qualitySettings);
        }
    }
Пример #4
0
        /// <summary>
        /// Apply the auto quality setting by its index on the array
        /// </summary>
        /// <param name="index">Index within the autoQualitySettings array</param>
        public void ApplyAutoQualitySettings(int index)
        {
            if (index < 0 || index >= autoqualitySettings.Length)
            {
                return;
            }

            lastValidAutoqualitySet = autoqualitySettings[index];
            lastValidAutoqualitySet.baseResolution = currentQualitySettings.baseResolution;
            lastValidAutoqualitySet.fpsCap         = currentQualitySettings.fpsCap;

            if (currentQualitySettings.Equals(lastValidAutoqualitySet))
            {
                return;
            }

            ApplyQualitySettings(lastValidAutoqualitySet);
        }
Пример #5
0
        private void LoadQualitySettings()
        {
            bool isQualitySettingsSet = false;

            if (PlayerPrefs.HasKey(QUALITY_SETTINGS_KEY))
            {
                try
                {
                    currentQualitySettings = JsonUtility.FromJson <SettingsData.QualitySettings>(PlayerPrefs.GetString(QUALITY_SETTINGS_KEY));
                    isQualitySettingsSet   = true;
                }
                catch (Exception e)
                {
                    Debug.Log(e.Message);
                }
            }
            if (!isQualitySettingsSet)
            {
                currentQualitySettings = qualitySettingsPreset.defaultPreset;
            }
        }
Пример #6
0
        public Settings()
        {
            if (qualitySettingsPreset == null)
            {
                qualitySettingsPreset = Resources.Load <SettingsData.QualitySettingsData>("ScriptableObjects/QualitySettingsData");
            }

            if (autoqualitySettings == null)
            {
                autoqualitySettings     = Resources.Load <SettingsData.QualitySettingsData>("ScriptableObjects/AutoQualitySettingsData");
                lastValidAutoqualitySet = autoqualitySettings[autoqualitySettings.Length / 2];
            }

            if (autosettingsEnabled == null)
            {
                autosettingsEnabled = Resources.Load <BooleanVariable>("ScriptableObjects/AutoQualityEnabled");
            }

            LoadQualitySettings();
            LoadGeneralSettings();
        }
 public static void Dump(DCL.SettingsData.QualitySettings settings, CrashPayload payload)
 {
     payload.fields.Add(CrashPayload.DumpLiterals.QUALITY_SETTINGS, settings);
 }
Пример #8
0
 public void ApplyQualitySettings(SettingsData.QualitySettings settings)
 {
     currentQualitySettings = settings;
     OnQualitySettingsChanged?.Invoke(settings);
 }