예제 #1
0
        public void NextPostProcessConfig()
        {
            if (postProcessEffectsList.Count == 0 || processor.GraphicsDevice.GraphicsProfile == GraphicsProfile.Reach)
            {
                postProcess = null;
            }
            else if (postProcess == null)
            {
                postProcess = postProcessEffectsList[0];
            }
            else
            {
                int index = postProcessEffectsList.IndexOf(postProcess) + 1;
                if (index == postProcessEffectsList.Count)
                {
                    postProcess = null;
                }
                else
                {
                    postProcess = postProcessEffectsList[index];
                }
            }

            processor.UpdateCameraWindows();
            LoadPostProcessEffects();
        }
예제 #2
0
        public void PreviousPostProcessConfig()
        {
            if (postProcessEffectsList.Count == 0 || processor.GraphicsDevice.GraphicsProfile == GraphicsProfile.Reach)
            {
                postProcess = null;
            }
            else if (postProcess == null)
            {
                postProcess = postProcessEffectsList[postProcessEffectsList.Count - 1];
            }
            else
            {
                int index = postProcessEffectsList.IndexOf(postProcess);
                if (index == 0)                 // was first
                {
                    postProcess = null;
                }
                else if (index == -1)                 // was unknown (treat as null)
                {
                    postProcess = postProcessEffectsList[postProcessEffectsList.Count - 1];
                }
                else
                {
                    postProcess = postProcessEffectsList[index - 1];
                }
            }

            processor.UpdateCameraWindows();
            LoadPostProcessEffects();
        }
예제 #3
0
        public void SetPostProcessTo(sbyte index)
        {
            if (index == -1 || postProcessEffectsList.Count == 0 || processor.GraphicsDevice.GraphicsProfile == GraphicsProfile.Reach)
            {
                postProcess = null;
            }
            else if (postProcess == null)
            {
                postProcess = postProcessEffectsList[0];
            }
            else
            {
                postProcess = postProcessEffectsList[index];
            }

            processor.UpdateCameraWindows();
            LoadPostProcessEffects();
        }