void Awake() { //Brightness -- make sure the main camera has this script attached! toneMappingScript = Camera.main.GetComponent<Tonemapping>(); if (toneMappingScript != null) toneMappingScript.middleGrey = middleGray; else { print("Could not find ToneMappingScript. Make sure it is attached to the Main Camera"); } //Quality qualityLevels = QualitySettings.names; //Check available quality settings and store them in an array; currentQualityLevel = QualitySettings.GetQualityLevel(); //Check the current quality setting and store it in a variable; qualityToggles[currentQualityLevel].isOn = true; }
// Use this for initialization void Start() { fogDensity = RenderSettings.fogDensity; //skydome = GameObject.FindGameObjectWithTag ("SkyDome").GetComponent<Sky> (); //skydomeLight = skydome.m_sunIntensity; colorCurve = Camera.main.GetComponent<ColorCorrectionCurves> (); toneMapper = Camera.main.GetComponent<Tonemapping> (); sunShafts = Camera.main.GetComponent<SunShafts> (); sunShaftIntens = sunShafts.sunShaftIntensity; colorSat = colorCurve.saturation; toneExp = toneMapper.exposureAdjustment; }
//public new void OnEnable() { // if(debugLogness)Debug.Log("ColorGrading OnEnable"); // UpdateTone(time); // base.OnEnable(); //} private void UpdateTone(float timeIn) { if (debugLogness) Debug.Log("ColorGrading UpdateTone: time:" + timeIn + " crossFade:" + crossFade + " :" + toneMapping, this); if (toneMapping == null) toneMapping = GetComponent<Tonemapping>(); var crossTo = 0f; var crossFade2 = crossFade; if (crossFade < 0) { crossTo = 30; crossFade2 = -crossFade; } if (exposure != null) toneMapping.exposureAdjustment = Mathf.Lerp(Mathf.Lerp(exposure2.x, exposure2.y, exposure.Evaluate(timeIn).r), crossTo, crossFade2); if (exposure != null) toneMapping.Brightness = Mathf.Lerp(brightness2.x, brightness2.y, exposure.Evaluate(timeIn).r); //if (exposure != null) toneMapping.Brightness = Mathf.Lerp(Mathf.Lerp(brightness2.x, brightness2.y, exposure.Evaluate(timeIn).r), Mathf.Lerp(brightness2.x, brightness2.y, exposure.Evaluate(timeIn).r)*0.0f, Mathf.Max(0, crossFade*2f - 0.5f)); if (exposure != null) toneMapping.Contrast = Mathf.Lerp(Mathf.Lerp(contrast2.x, contrast2.y, exposure.Evaluate(timeIn).r), 1f, crossFade); if (exposure != null) toneMapping.Saturation = Mathf.Lerp(saturation2.x, saturation2.y, exposure.Evaluate(timeIn).r); }
public static void CheckToggleSaturationCorrection() { GameObject obj2 = GameObject.FindWithTag("MainCamera"); if (obj2 != null) { if (Input.GetKeyUp(KeyCode.F12)) { isF12KeyDown = false; } if (!isF12KeyDown && Input.GetKeyDown(KeyCode.F12)) { if (iniHelper == null) { iniHelper = new IniHelper(Application.dataPath + "/Managed/new.ini"); } TM_Enable = (iniHelper.ReadValue("Graphics Enhance", "ToneMapping") == "1") ? true : false; SSAO_Enable = (iniHelper.ReadValue("Graphics Enhance", "SSAO") == "1") ? true : false; CE_Enable = (iniHelper.ReadValue("Graphics Enhance", "ContrastEnhance") == "1") ? true : false; CS_Enable = (iniHelper.ReadValue("Graphics Enhance", "ContrastStretch") == "1") ? true : false; Bloom_Enable = (iniHelper.ReadValue("Graphics Enhance", "Bloom") == "1") ? true : false; Tonemapping TM = obj2.GetComponent <Tonemapping> (); SSAOEffect SSAO = obj2.GetComponent <SSAOEffect>(); ContrastEnhance CE = obj2.GetComponent <ContrastEnhance> (); BloomAndLensFlares bloom = obj2.GetComponent <BloomAndLensFlares> (); ContrastStretchEffect CS = obj2.GetComponent <ContrastStretchEffect> (); QualitySettings.antiAliasing = 4; if (CS == null) { CS = obj2.AddComponent <ContrastStretchEffect> (); CS.shaderAdapt = Shader.Find("Hidden/Contrast Stretch Adaptation"); CS.shaderApply = Shader.Find("Hidden/Contrast Stretch Apply"); CS.shaderLum = Shader.Find("Hidden/Contrast Stretch Luminance"); CS.shaderReduce = Shader.Find("Hidden/Contrast Stretch Reduction"); } if (bloom == null) { bloom = obj2.AddComponent <BloomAndLensFlares> (); bloom.addBrightStuffOneOneShader = Shader.Find("Hidden/BlendOneOne"); bloom.brightPassFilterShader = Shader.Find("Hidden/BrightPassFilterForBloom"); bloom.hollywoodFlaresShader = Shader.Find("Hidden/MultipassHollywoodFlares"); bloom.lensFlareShader = Shader.Find("Hidden/LensFlareCreate"); bloom.screenBlendShader = Shader.Find("Hidden/Blend"); bloom.separableBlurShader = Shader.Find("Hidden/SeparableBlurPlus"); bloom.vignetteShader = Shader.Find("Hidden/VignetteShader"); } if (TM == null) { TM = obj2.AddComponent <Tonemapping> (); TM.tonemapper = Shader.Find("Hidden/Tonemapper"); TM.type = Tonemapping.TonemapperType.AdaptiveReinhardAutoWhite; } if (SSAO == null) { SSAO = obj2.AddComponent <SSAOEffect>(); SSAO.m_SSAOShader = Shader.Find("Hidden/SSAO"); obj2.camera.farClipPlane = 1000; } FightUIInterface.uiInterface.cheatWindow.Open(); //Main.actorMgr.SwitchControlActor (); if (CE == null) { CE = obj2.AddComponent <ContrastEnhance> (); CE.contrastCompositeShader = Shader.Find("Hidden/ContrastComposite"); CE.separableBlurShader = Shader.Find("Hidden/SeparableBlurPlus"); } isF12KeyDown = true; if (!SaturationCorrectionFlag) { FightUIInterface.ShowPromptText("画面增强打开", 1, 1f); SaturationCorrectionFlag = true; if (TM) { TM.enabled = TM_Enable; } if (SSAO) { SSAO.enabled = SSAO_Enable; SSAO.m_Radius = 0.8f; SSAO.m_SampleCount = SSAOEffect.SSAOSamples.Medium; SSAO.m_OcclusionIntensity = 2.4f; SSAO.m_Downsampling = 2; SSAO.m_MinZ = 0.8f; } if (CE) { CE.enabled = CE_Enable; } if (bloom) { bloom.enabled = Bloom_Enable; } if (CS) { CS.enabled = CS_Enable; } } else { FightUIInterface.ShowPromptText("画面增强关闭", 1, 1f); SaturationCorrectionFlag = false; //component.enabled = false; if (SSAO) { SSAO.enabled = false; } if (CE) { CE.enabled = false; } if (TM) { TM.enabled = false; } if (bloom) { bloom.enabled = false; } if (CS) { CS.enabled = false; } } //FightUIInterface.ShowPromptText (SSAO_Enable ? "SSAO ON" : "SSAO OFF"); } } //FightUIInterface.ShowPromptText (Application.unityVersion.ToString ()); }
public bool ReadBackBuffer(out ImageResult imageResult) { imageResult = null; if (_cameras == null) { Debug.LogError("[AmplifyColor] Camera collection is invalid."); return(false); } var camera = _cameras.SelectedCamera; if (camera == null) { Debug.LogError("[AmplifyColor] Selected camera is invalid."); return(false); } AmplifyColorEffect component = camera.GetComponent <AmplifyColorEffect>(); Tonemapping prevTonemapper = Tonemapping.Disabled; float prevExposure = 1.0f; float prevLinearWhitePoint = 11.2f; bool prevApplyDithering = false; float prevBlendAmount = 0.0f; Texture prevLUT = null; if (component != null) { prevTonemapper = component.Tonemapper; prevExposure = component.Exposure; prevLinearWhitePoint = component.LinearWhitePoint; prevApplyDithering = component.ApplyDithering; prevBlendAmount = component.BlendAmount; prevLUT = component.LutTexture; component.Tonemapper = ToolSettings.Instance.ApplyHDRControl ? component.Tonemapper : Tonemapping.Disabled; component.Exposure = ToolSettings.Instance.ApplyHDRControl ? component.Exposure : 1.0f; component.LinearWhitePoint = ToolSettings.Instance.ApplyHDRControl ? component.LinearWhitePoint : 11.2f; component.ApplyDithering = ToolSettings.Instance.ApplyHDRControl ? component.ApplyDithering : false; component.BlendAmount = ToolSettings.Instance.ApplyColorGrading ? component.BlendAmount : 0.0f; component.LutTexture = ToolSettings.Instance.ApplyColorGrading ? component.LutTexture : null; } var width = ToolSettings.Instance.Resolution.TargetWidth; var height = ToolSettings.Instance.Resolution.TargetHeight; //if (ToolSettings.Instance.Resolution.IsGameWindowSize) //{ // width = Screen.width; // height = Screen.height; //} var cameratarget = camera.targetTexture; var rt = RenderTexture.GetTemporary(width, height, 24, RenderTextureFormat.ARGB32); camera.targetTexture = rt; camera.Render(); camera.targetTexture = cameratarget; var activert = RenderTexture.active; RenderTexture.active = rt; var text = new Texture2D(width, height, TextureFormat.ARGB32, false); text.ReadPixels(new Rect(0, 0, width, height), 0, 0); text.Apply(); RenderTexture.active = activert; var colors = text.GetPixels(0, 0, width, height); Texture2D.DestroyImmediate(text); var colordata = new Color[width, height]; for (int i = height - 1; i >= 0; i--) { for (int j = 0; j < width; j++) { colordata[j, (height - 1 - i)] = colors[i * width + j]; colordata[j, (height - 1 - i)].a = 1; } } if (component != null) { component.Tonemapper = prevTonemapper; component.Exposure = prevExposure; component.LinearWhitePoint = prevLinearWhitePoint; component.ApplyDithering = prevApplyDithering; component.BlendAmount = prevBlendAmount; component.LutTexture = prevLUT; } imageResult = new ImageResult(colordata); return(true); }
// Use this for initialization void Start() { tone = GetComponent<Tonemapping>(); }
public new void Awake() { toneMapping = GetComponent<Tonemapping>(); base.Awake(); }
void Start() { Bloom bloomEffect = Camera.main.GetComponent <Bloom>(); Blur blurEffect = Camera.main.GetComponent <Blur>(); Tonemapping toneMappingEffect = Camera.main.GetComponent <Tonemapping>(); }