aboutsummaryrefslogtreecommitdiffstatsci
path: root/Tests/OpenTKGameWindow.cs
diff options
context:
space:
mode:
authorjpbruyere <jp.bruyere@hotmail.com>2017-01-03 13:20:21 +0100
committerjpbruyere <jp.bruyere@hotmail.com>2017-01-03 13:20:21 +0100
commit3d3e97a4f86c5efd7292142f74dbd2f1168b61d0 (patch)
treeb38c167468c03efd638336f3c0de889ef0b6def7 /Tests/OpenTKGameWindow.cs
parent96698e1d3a00679932bf3b0c4a30f9d91250eea0 (diff)
* Grid.cs, TabView.cs, Wrapper.cs, GenericStack.cs, GraphicObject.cs:
IsDirty instead of deleting bmp, resolve blinking bug * Interface.cs: DrawingQueue locked inside the foreach loop, once per item * OpenTKGameWindow.cs: non blocking mutex inside render frame loop
Diffstat (limited to 'Tests/OpenTKGameWindow.cs')
-rw-r--r--Tests/OpenTKGameWindow.cs3
1 files changed, 2 insertions, 1 deletions
diff --git a/Tests/OpenTKGameWindow.cs b/Tests/OpenTKGameWindow.cs
index 359948c7..f5e69671 100644
--- a/Tests/OpenTKGameWindow.cs
+++ b/Tests/OpenTKGameWindow.cs
@@ -184,7 +184,7 @@ namespace Crow
shader.SetMVP (projection);
GL.ActiveTexture (TextureUnit.Texture0);
GL.BindTexture (TextureTarget.Texture2D, texID);
- lock (CrowInterface.RenderMutex) {
+ if (Monitor.TryEnter(CrowInterface.RenderMutex)) {
if (CrowInterface.IsDirty) {
GL.TexSubImage2D (TextureTarget.Texture2D, 0,
CrowInterface.DirtyRect.Left, CrowInterface.DirtyRect.Top,
@@ -192,6 +192,7 @@ namespace Crow
OpenTK.Graphics.OpenGL.PixelFormat.Bgra, PixelType.UnsignedByte, CrowInterface.dirtyBmp);
CrowInterface.IsDirty = false;
}
+ Monitor.Exit (CrowInterface.RenderMutex);
}
quad.Render (BeginMode.TriangleStrip);
GL.BindTexture(TextureTarget.Texture2D, 0);