diff --git a/Source/Editor/EditorAssets.cs b/Source/Editor/EditorAssets.cs
index d30ca91c0..bdfc7dfa6 100644
--- a/Source/Editor/EditorAssets.cs
+++ b/Source/Editor/EditorAssets.cs
@@ -134,11 +134,6 @@ namespace FlaxEditor
///
public static string FlaxIconBlueTexture = "Engine/Textures/FlaxIconBlue";
- ///
- /// The checkboard material used as a background for displaying transparent colors.
- ///
- public static string ColorAlphaBackgroundGrid = "Editor/AlphaBackgroundGrid";
-
///
/// The icon lists used by editor from the SegMDL2 font.
///
diff --git a/Source/Editor/GUI/Input/ColorValueBox.cs b/Source/Editor/GUI/Input/ColorValueBox.cs
index 1893c4124..d4bc03fd9 100644
--- a/Source/Editor/GUI/Input/ColorValueBox.cs
+++ b/Source/Editor/GUI/Input/ColorValueBox.cs
@@ -14,12 +14,7 @@ namespace FlaxEditor.GUI.Input
[HideInEditor]
public class ColorValueBox : Control
{
- private const String ScaleParamName = "Scale";
- // 4.8 is a magic number that makes the grid fit perfect in the color value box
- private const float GridScale = 4.8f;
-
private bool _isMouseDown;
- private MaterialBase checkerMaterial;
///
/// Delegate function used for the color picker events handling.
@@ -106,9 +101,6 @@ namespace FlaxEditor.GUI.Input
public ColorValueBox()
: base(0, 0, 32, 18)
{
- checkerMaterial = FlaxEngine.Content.LoadAsyncInternal(EditorAssets.ColorAlphaBackgroundGrid);
- checkerMaterial = checkerMaterial.CreateVirtualInstance();
- checkerMaterial.SetParameterValue(ScaleParamName, GridScale);
}
///
@@ -146,7 +138,25 @@ namespace FlaxEditor.GUI.Input
if (isTransparent)
{
var alphaRect = new Rectangle(colorRect.Right, 0, Width - colorRect.Right, Height);
- Render2D.DrawMaterial(checkerMaterial, alphaRect);
+
+ // Draw checkerboard pattern to part of the color value box
+ Render2D.FillRectangle(alphaRect, Color.White);
+ var smallRectSize = 7.9f;
+ var numHor = Mathf.CeilToInt(alphaRect.Width / smallRectSize);
+ var numVer = Mathf.CeilToInt(alphaRect.Height / smallRectSize);
+ for (int i = 0; i < numHor; i++)
+ {
+ for (int j = 0; j < numVer; j++)
+ {
+ if ((i + j) % 2 == 0)
+ {
+ var rect = new Rectangle(alphaRect.X + smallRectSize * i, alphaRect.Y + smallRectSize * j, new Float2(smallRectSize));
+ Render2D.PushClip(alphaRect);
+ Render2D.FillRectangle(rect, Color.Gray);
+ Render2D.PopClip();
+ }
+ }
+ }
Render2D.FillRectangle(alphaRect, _value);
}