diff options
| author | jpbruyere <jp.bruyere@hotmail.com> | 2017-01-03 13:20:21 +0100 |
|---|---|---|
| committer | jpbruyere <jp.bruyere@hotmail.com> | 2017-01-03 13:20:21 +0100 |
| commit | 3d3e97a4f86c5efd7292142f74dbd2f1168b61d0 (patch) | |
| tree | b38c167468c03efd638336f3c0de889ef0b6def7 /Tests/OpenTKGameWindow.cs | |
| parent | 96698e1d3a00679932bf3b0c4a30f9d91250eea0 (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.cs | 3 |
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); |