public void onGUI(float x, float y)
        {
            if (GUI.Button(new Rect(x, y, 75, 20), "Default"))
            {
                m_model.Reset();
            }

            y += 25;

            int method = GUIUtils.drawIntSliderWithLabel(x, y, 0, 2, "Mode", getMethodLabel(getMethod()), getMethod());

            if (method == 0)
            {
                m_model.enabled = false;
                return;
            }

            y += 25;

            if (method == 1)
            {
                m_model.enabled = true;
                var settings = m_model.settings;
                settings.method = AntialiasingModel.Method.Fxaa;
                AntialiasingModel.FxaaPreset preset =
                    (AntialiasingModel.FxaaPreset)GUIUtils.drawIntSliderWithLabel(x, y, 0, 4, "Quality", m_model.settings.fxaaSettings.preset.ToString(),
                                                                                  (int)m_model.settings.fxaaSettings.preset);

                settings.fxaaSettings.preset = preset;
                m_model.settings             = settings;
                return;
            }

            if (method == 2)
            {
                m_model.enabled = true;
                var settings = m_model.settings;
                settings.method = AntialiasingModel.Method.Taa;

                settings.taaSettings.jitterSpread = GUIUtils.drawSliderWithLabel(x, y, 0.1f, 1f, "Jitter Speed", settings.taaSettings.jitterSpread);
                y += 25;
                settings.taaSettings.sharpen = GUIUtils.drawSliderWithLabel(x, y, 0f, 3f, "Sharpening", settings.taaSettings.sharpen);
                y += 25;
                settings.taaSettings.stationaryBlending = GUIUtils.drawSliderWithLabel(x, y, 0f, 0.99f, "Stationary Blending", settings.taaSettings.stationaryBlending);
                y += 25;
                settings.taaSettings.motionBlending = GUIUtils.drawSliderWithLabel(x, y, 0f, 0.99f, "Motion Blending", settings.taaSettings.motionBlending);

                m_model.settings = settings;
            }
        }
예제 #2
0
        private void UpdateAntialiasing()
        {
            try
            {
                AntialiasingModel.Settings settings = _antialiasingModel.settings;

                switch (ModProperties.Instance.ActiveProfile.AntialiasingTechnique)
                {
                case 0:
                    _antialiasingModel.enabled = false;
                    break;

                case 1:
                    _antialiasingModel.enabled = false;
                    break;

                case 2:
                    settings.method = AntialiasingModel.Method.Fxaa;
                    AntialiasingModel.FxaaPreset preset = (AntialiasingModel.FxaaPreset)ModProperties.Instance.ActiveProfile.FXAAQuality;
                    settings.fxaaSettings.preset = preset;
                    _antialiasingModel.settings  = settings;
                    _antialiasingModel.enabled   = true;
                    break;

                case 3:
                    settings.method = AntialiasingModel.Method.Taa;
                    settings.taaSettings.jitterSpread       = ModProperties.Instance.ActiveProfile.TAAJitterSpread;
                    settings.taaSettings.sharpen            = ModProperties.Instance.ActiveProfile.TAASharpen;
                    settings.taaSettings.stationaryBlending = ModProperties.Instance.ActiveProfile.TAAStationaryBlending;
                    settings.taaSettings.motionBlending     = ModProperties.Instance.ActiveProfile.TAAMotionBlending;
                    _antialiasingModel.settings             = settings;
                    _antialiasingModel.enabled = true;
                    break;

                default:
                    _antialiasingModel.enabled = false;
                    break;
                }

                _postProcessingBehaviour.profile.antialiasing.settings = _antialiasingModel.settings;
                _postProcessingBehaviour.profile.antialiasing.enabled  = _antialiasingModel.enabled;
            }
            catch (Exception e)
            {
                Debug.Log("[Render It!] ModManager:UpdateAntialiasing -> Exception: " + e.Message);
            }
        }