Browse Source

Add sRGB option to editor

1vanK 5 years ago
parent
commit
7ec6290d68

+ 2 - 0
bin/Data/Scripts/Editor.as

@@ -266,6 +266,7 @@ void LoadConfig()
         if (renderingElem.HasAttribute("framelimiter")) engine.maxFps = renderingElem.GetBool("framelimiter") ? 200 : 0;
         if (renderingElem.HasAttribute("framelimiter")) engine.maxFps = renderingElem.GetBool("framelimiter") ? 200 : 0;
         if (renderingElem.HasAttribute("gammacorrection")) gammaCorrection = renderingElem.GetBool("gammacorrection");
         if (renderingElem.HasAttribute("gammacorrection")) gammaCorrection = renderingElem.GetBool("gammacorrection");
         if (renderingElem.HasAttribute("hdr")) HDR = renderingElem.GetBool("hdr");
         if (renderingElem.HasAttribute("hdr")) HDR = renderingElem.GetBool("hdr");
+        if (renderingElem.HasAttribute("srgb")) graphics.sRGB = renderingElem.GetBool("srgb");
     }
     }
 
 
     if (!uiElem.isNull)
     if (!uiElem.isNull)
@@ -400,6 +401,7 @@ void SaveConfig()
     renderingElem.SetBool("framelimiter", engine.maxFps > 0);
     renderingElem.SetBool("framelimiter", engine.maxFps > 0);
     renderingElem.SetBool("gammacorrection", gammaCorrection);
     renderingElem.SetBool("gammacorrection", gammaCorrection);
     renderingElem.SetBool("hdr", HDR);
     renderingElem.SetBool("hdr", HDR);
+    renderingElem.SetBool("srgb", graphics.sRGB);
 
 
     uiElem.SetFloat("minopacity", uiMinOpacity);
     uiElem.SetFloat("minopacity", uiMinOpacity);
     uiElem.SetFloat("maxopacity", uiMaxOpacity);
     uiElem.SetFloat("maxopacity", uiMaxOpacity);

+ 10 - 0
bin/Data/Scripts/Editor/EditorSettings.as

@@ -115,6 +115,9 @@ void UpdateEditorSettingsDialog()
     CheckBox@ HDRToggle = settingsDialog.GetChild("HDRToggle", true);
     CheckBox@ HDRToggle = settingsDialog.GetChild("HDRToggle", true);
     HDRToggle.checked = HDR;
     HDRToggle.checked = HDR;
 
 
+    CheckBox@ sRGBToggle = settingsDialog.GetChild("SRGBToggle", true);
+    sRGBToggle.checked = graphics.sRGB;
+
     LineEdit@ cubemapPath = settingsDialog.GetChild("CubeMapGenPath", true);
     LineEdit@ cubemapPath = settingsDialog.GetChild("CubeMapGenPath", true);
     cubemapPath.text = cubeMapGen_Path;
     cubemapPath.text = cubeMapGen_Path;
     LineEdit@ cubemapName = settingsDialog.GetChild("CubeMapGenKey", true);
     LineEdit@ cubemapName = settingsDialog.GetChild("CubeMapGenKey", true);
@@ -169,6 +172,7 @@ void UpdateEditorSettingsDialog()
         SubscribeToEvent(frameLimiterToggle, "Toggled", "EditFrameLimiter");
         SubscribeToEvent(frameLimiterToggle, "Toggled", "EditFrameLimiter");
         SubscribeToEvent(gammaCorrectionToggle, "Toggled", "EditGammaCorrection");
         SubscribeToEvent(gammaCorrectionToggle, "Toggled", "EditGammaCorrection");
         SubscribeToEvent(HDRToggle, "Toggled", "EditHDR");
         SubscribeToEvent(HDRToggle, "Toggled", "EditHDR");
+        SubscribeToEvent(sRGBToggle, "Toggled", "EditSRGB");
         SubscribeToEvent(settingsDialog.GetChild("CloseButton", true), "Released", "HideEditorSettingsDialog");
         SubscribeToEvent(settingsDialog.GetChild("CloseButton", true), "Released", "HideEditorSettingsDialog");
         
         
         SubscribeToEvent(cubemapPath, "TextChanged",  "EditCubemapPath");
         SubscribeToEvent(cubemapPath, "TextChanged",  "EditCubemapPath");
@@ -427,6 +431,12 @@ void EditHDR(StringHash eventType, VariantMap& eventData)
     SetHDR(edit.checked);
     SetHDR(edit.checked);
 }
 }
 
 
+void EditSRGB(StringHash eventType, VariantMap& eventData)
+{
+    CheckBox@ edit = eventData["Element"].GetPtr();
+    graphics.sRGB = edit.checked;
+}
+
 void EditCubemapPath(StringHash eventType, VariantMap& eventData)
 void EditCubemapPath(StringHash eventType, VariantMap& eventData)
 {
 {
     LineEdit@ edit = eventData["Element"].GetPtr();
     LineEdit@ edit = eventData["Element"].GetPtr();

+ 10 - 1
bin/Data/UI/EditorSettingsDialog.xml

@@ -341,7 +341,7 @@
                         <attribute name="Name" value="GammaCorrectionToggle" />
                         <attribute name="Name" value="GammaCorrectionToggle" />
                     </element>
                     </element>
                     <element type="Text">
                     <element type="Text">
-                        <attribute name="Text" value="Gamma correction" />
+                        <attribute name="Text" value="Gamma correction postproc" />
                     </element>
                     </element>
                 </element>
                 </element>
                 <element style="ListRow">
                 <element style="ListRow">
@@ -353,6 +353,15 @@
                         <attribute name="Text" value="HDR rendering" />
                         <attribute name="Text" value="HDR rendering" />
                     </element>
                     </element>
                 </element>
                 </element>
+                <element style="ListRow">
+                    <attribute name="Layout Spacing" value="8" />
+                    <element type="CheckBox">
+                        <attribute name="Name" value="SRGBToggle" />
+                    </element>
+                    <element type="Text">
+                        <attribute name="Text" value="sRGB" />
+                    </element>
+                </element>
                 <element style="ListRow">
                 <element style="ListRow">
                     <attribute name="Layout Spacing" value="8" />
                     <attribute name="Layout Spacing" value="8" />
                     <element type="Text">
                     <element type="Text">