diff --git a/Dashboard.OpenGL/Drawing/ImmediateMode.cs b/Dashboard.OpenGL/Drawing/ImmediateMode.cs
index 5f42941..e0ddf55 100644
--- a/Dashboard.OpenGL/Drawing/ImmediateMode.cs
+++ b/Dashboard.OpenGL/Drawing/ImmediateMode.cs
@@ -1,10 +1,7 @@
-using System.Diagnostics.CodeAnalysis;
using System.Drawing;
using System.Numerics;
-using System.Runtime;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
-using System.Security.Cryptography;
using Dashboard.Drawing;
using Dashboard.Pal;
using OpenTK.Graphics.OpenGL;
@@ -63,7 +60,11 @@ namespace Dashboard.OpenGL.Drawing
_white = (GLTexture)_dr.CreateTexture(TextureType.Texture2D);
_white.SetStorage(PixelFormat.Rgb8I, 1, 1, 1, 1);
+ _white.Swizzle = new ColorSwizzle(ColorChannel.One, ColorChannel.One, ColorChannel.One, ColorChannel.One);
+ _white.MinifyFilter = TextureFilter.Nearest;
+ _white.MagnifyFilter = TextureFilter.Nearest;
+ // TODO: implement the API above instead of writing this manually.
GL.BindTexture(TextureTarget.Texture2D, _white.Handle);
GL.TexSubImage2D(TextureTarget.Texture2D, 0, 0, 0, 1, 1, OpenTK.Graphics.OpenGL.PixelFormat.Rgb, PixelType.Byte, stackalloc byte[] { 0xFF, 0xFF, 0xFF, 0xFF });
GL.TexParameteri(TextureTarget.Texture2D, TextureParameterName.TextureSwizzleA, (int)All.One);
diff --git a/Dashboard.sln b/Dashboard.sln
index 1771816..eb528bc 100644
--- a/Dashboard.sln
+++ b/Dashboard.sln
@@ -16,15 +16,15 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Dashboard.Common", "Dashboa
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Frameworks", "Frameworks", "{9B62A92D-ABF5-4704-B831-FD075515A82F}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Dashboard.OpenTK", "Dashboard.OpenTK\Dashboard.OpenTK.csproj", "{7B064228-2629-486E-95C6-BDDD4B4602C4}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Dashboard.OpenTK", "Frameworks\Dashboard.OpenTK\Dashboard.OpenTK.csproj", "{7B064228-2629-486E-95C6-BDDD4B4602C4}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Dashboard.OpenGL", "Dashboard.OpenGL\Dashboard.OpenGL.csproj", "{33EB657C-B53A-41B4-BC3C-F38C09ABA577}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Dashboard.StbImage", "Dashboard.StbImage\Dashboard.StbImage.csproj", "{85BCEB9E-DEC2-4A53-B2DA-6BFC6F3EE4E7}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Dashboard.StbImage", "Frameworks\Dashboard.StbImage\Dashboard.StbImage.csproj", "{85BCEB9E-DEC2-4A53-B2DA-6BFC6F3EE4E7}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Dashboard.BlurgText.OpenGL", "Dashboard.BlurgText.OpenGL\Dashboard.BlurgText.OpenGL.csproj", "{14616F42-663B-4673-8561-5637FAD1B22F}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Dashboard.BlurgText.OpenGL", "Frameworks\Dashboard.BlurgText.OpenGL\Dashboard.BlurgText.OpenGL.csproj", "{14616F42-663B-4673-8561-5637FAD1B22F}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Dashboard.BlurgText", "Dashboard.BlurgText\Dashboard.BlurgText.csproj", "{8C68EFB6-B477-48EC-9AAA-31E89883482B}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Dashboard.BlurgText", "Frameworks\Dashboard.BlurgText\Dashboard.BlurgText.csproj", "{8C68EFB6-B477-48EC-9AAA-31E89883482B}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
diff --git a/Dashboard.BlurgText.OpenGL/BlurgGLExtension.cs b/Frameworks/Dashboard.BlurgText.OpenGL/BlurgGLExtension.cs
similarity index 100%
rename from Dashboard.BlurgText.OpenGL/BlurgGLExtension.cs
rename to Frameworks/Dashboard.BlurgText.OpenGL/BlurgGLExtension.cs
diff --git a/Dashboard.BlurgText.OpenGL/Dashboard.BlurgText.OpenGL.csproj b/Frameworks/Dashboard.BlurgText.OpenGL/Dashboard.BlurgText.OpenGL.csproj
similarity index 75%
rename from Dashboard.BlurgText.OpenGL/Dashboard.BlurgText.OpenGL.csproj
rename to Frameworks/Dashboard.BlurgText.OpenGL/Dashboard.BlurgText.OpenGL.csproj
index f249613..eae84e9 100644
--- a/Dashboard.BlurgText.OpenGL/Dashboard.BlurgText.OpenGL.csproj
+++ b/Frameworks/Dashboard.BlurgText.OpenGL/Dashboard.BlurgText.OpenGL.csproj
@@ -8,8 +8,8 @@
-
-
+
+
diff --git a/Dashboard.BlurgText.OpenGL/text.frag b/Frameworks/Dashboard.BlurgText.OpenGL/text.frag
similarity index 100%
rename from Dashboard.BlurgText.OpenGL/text.frag
rename to Frameworks/Dashboard.BlurgText.OpenGL/text.frag
diff --git a/Dashboard.BlurgText.OpenGL/text.vert b/Frameworks/Dashboard.BlurgText.OpenGL/text.vert
similarity index 100%
rename from Dashboard.BlurgText.OpenGL/text.vert
rename to Frameworks/Dashboard.BlurgText.OpenGL/text.vert
diff --git a/Dashboard.BlurgText/BlurgFontProxy.cs b/Frameworks/Dashboard.BlurgText/BlurgFontProxy.cs
similarity index 100%
rename from Dashboard.BlurgText/BlurgFontProxy.cs
rename to Frameworks/Dashboard.BlurgText/BlurgFontProxy.cs
diff --git a/Dashboard.BlurgText/BlurgTextExtension.cs b/Frameworks/Dashboard.BlurgText/BlurgTextExtension.cs
similarity index 100%
rename from Dashboard.BlurgText/BlurgTextExtension.cs
rename to Frameworks/Dashboard.BlurgText/BlurgTextExtension.cs
diff --git a/Dashboard.BlurgText/Dashboard.BlurgText.csproj b/Frameworks/Dashboard.BlurgText/Dashboard.BlurgText.csproj
similarity index 81%
rename from Dashboard.BlurgText/Dashboard.BlurgText.csproj
rename to Frameworks/Dashboard.BlurgText/Dashboard.BlurgText.csproj
index e8a58af..6f40c0e 100644
--- a/Dashboard.BlurgText/Dashboard.BlurgText.csproj
+++ b/Frameworks/Dashboard.BlurgText/Dashboard.BlurgText.csproj
@@ -9,7 +9,7 @@
-
+
diff --git a/Dashboard.OpenTK/Dashboard.OpenTK.csproj b/Frameworks/Dashboard.OpenTK/Dashboard.OpenTK.csproj
similarity index 70%
rename from Dashboard.OpenTK/Dashboard.OpenTK.csproj
rename to Frameworks/Dashboard.OpenTK/Dashboard.OpenTK.csproj
index 063ca97..5bf4acf 100644
--- a/Dashboard.OpenTK/Dashboard.OpenTK.csproj
+++ b/Frameworks/Dashboard.OpenTK/Dashboard.OpenTK.csproj
@@ -11,8 +11,8 @@
-
-
+
+
diff --git a/Dashboard.OpenTK/PAL2/Extensions.cs b/Frameworks/Dashboard.OpenTK/PAL2/Extensions.cs
similarity index 100%
rename from Dashboard.OpenTK/PAL2/Extensions.cs
rename to Frameworks/Dashboard.OpenTK/PAL2/Extensions.cs
diff --git a/Dashboard.OpenTK/PAL2/Pal2Application.cs b/Frameworks/Dashboard.OpenTK/PAL2/Pal2Application.cs
similarity index 100%
rename from Dashboard.OpenTK/PAL2/Pal2Application.cs
rename to Frameworks/Dashboard.OpenTK/PAL2/Pal2Application.cs
diff --git a/Dashboard.OpenTK/PAL2/Pal2GLContext.cs b/Frameworks/Dashboard.OpenTK/PAL2/Pal2GLContext.cs
similarity index 100%
rename from Dashboard.OpenTK/PAL2/Pal2GLContext.cs
rename to Frameworks/Dashboard.OpenTK/PAL2/Pal2GLContext.cs
diff --git a/Dashboard.OpenTK/PAL2/PhysicalWindow.cs b/Frameworks/Dashboard.OpenTK/PAL2/PhysicalWindow.cs
similarity index 100%
rename from Dashboard.OpenTK/PAL2/PhysicalWindow.cs
rename to Frameworks/Dashboard.OpenTK/PAL2/PhysicalWindow.cs
diff --git a/Dashboard.StbImage/Dashboard.StbImage.csproj b/Frameworks/Dashboard.StbImage/Dashboard.StbImage.csproj
similarity index 82%
rename from Dashboard.StbImage/Dashboard.StbImage.csproj
rename to Frameworks/Dashboard.StbImage/Dashboard.StbImage.csproj
index 3cb98a3..1f2f34c 100644
--- a/Dashboard.StbImage/Dashboard.StbImage.csproj
+++ b/Frameworks/Dashboard.StbImage/Dashboard.StbImage.csproj
@@ -8,7 +8,7 @@
-
+
diff --git a/Dashboard.StbImage/StbImageLoader.cs b/Frameworks/Dashboard.StbImage/StbImageLoader.cs
similarity index 100%
rename from Dashboard.StbImage/StbImageLoader.cs
rename to Frameworks/Dashboard.StbImage/StbImageLoader.cs
diff --git a/tests/Dashboard.TestApplication/Dashboard.TestApplication.csproj b/tests/Dashboard.TestApplication/Dashboard.TestApplication.csproj
index a2d3ffd..1a21402 100644
--- a/tests/Dashboard.TestApplication/Dashboard.TestApplication.csproj
+++ b/tests/Dashboard.TestApplication/Dashboard.TestApplication.csproj
@@ -8,9 +8,9 @@
-
-
-
-
+
+
+
+