From b40a5b656b666991d5dae1fa4ec0a4396de99369 Mon Sep 17 00:00:00 2001 From: omigamedev Date: Tue, 24 Oct 2017 14:20:12 +0100 Subject: [PATCH] add free and poly selection mask tools, fix some threading gl problems --- PanoPainter/GameViewController.m | 7 +- data/layout.xml | 4 +- engine/app.cpp | 1 + engine/app_layout.cpp | 79 ++++++------ engine/canvas.cpp | 2 + engine/canvas.h | 2 +- engine/canvas_modes.cpp | 200 +++++++++++++++++-------------- engine/canvas_modes.h | 13 ++ engine/node_canvas.cpp | 26 ++++ 9 files changed, 197 insertions(+), 137 deletions(-) diff --git a/PanoPainter/GameViewController.m b/PanoPainter/GameViewController.m index f43ba23..0278b5c 100644 --- a/PanoPainter/GameViewController.m +++ b/PanoPainter/GameViewController.m @@ -35,7 +35,7 @@ NSThread* lock_thread; lock_count++; [EAGLContext setCurrentContext:self.context]; GLKView* view = (GLKView*)self.view; - //[view bindDrawable]; + [view bindDrawable]; } - (void)async_unlock { @@ -45,7 +45,7 @@ NSThread* lock_thread; } - (void)async_swap { - [[EAGLContext currentContext] presentRenderbuffer:GL_RENDERBUFFER]; + [self.context presentRenderbuffer:GL_RENDERBUFFER]; } - (void)insertText:(NSString *)text @@ -317,6 +317,7 @@ NSThread* lock_thread; [gl_lock lock]; if (!(App::I.redraw || App::I.animate)) { + [self.context presentRenderbuffer:GL_FRAMEBUFFER]; [gl_lock unlock]; return; } @@ -324,7 +325,7 @@ NSThread* lock_thread; [view bindDrawable]; App::I.clear(); App::I.update(0); - //[self.context presentRenderbuffer:GL_FRAMEBUFFER]; + [self.context presentRenderbuffer:GL_FRAMEBUFFER]; [gl_lock unlock]; } diff --git a/data/layout.xml b/data/layout.xml index a4ba7f5..3eba331 100644 --- a/data/layout.xml +++ b/data/layout.xml @@ -541,7 +541,9 @@