void OnQualityLevelChanged()
 {
     GetComponent <Camera>().renderingPath =
         GameBuilderApplication.GetQuality() == GameBuilderApplication.Quality.Low
   ? RenderingPath.Forward
   : RenderingPath.DeferredShading;
 }
Exemple #2
0
    void OnQualityLevelChanged()
    {
        CheckHQL();
        CheckLQL();
        CheckPost();
        CheckPostProfile();

        var quality = GameBuilderApplication.GetQuality();

        if (quality == GameBuilderApplication.Quality.High)
        {
            HighQualityLighting.SetActive(true);
            LowQualityLighting.SetActive(false);
            post.enabled = true;
            post.profile.GetSetting <URP.MotionBlur>().enabled.value       = true;
            post.profile.GetSetting <URP.AmbientOcclusion>().enabled.value = true;
        }
        else if (quality == GameBuilderApplication.Quality.Medium)
        {
            // Still want shadows for med, but their distance is reduced.
            HighQualityLighting.SetActive(true);
            LowQualityLighting.SetActive(false);
            post.enabled = true;
            post.profile.GetSetting <URP.MotionBlur>().enabled.value       = false;
            post.profile.GetSetting <URP.AmbientOcclusion>().enabled.value = false;
        }
        else
        {
            Debug.Assert(quality == GameBuilderApplication.Quality.Low, $"Expected Low quality. Got: {quality.ToString()}");

            HighQualityLighting.SetActive(false);
            LowQualityLighting.SetActive(true);

            // NO POST!
            post.enabled = false;
        }
    }