Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTamito Kajiyama <rd6t-kjym@asahi-net.or.jp>2012-07-17 03:29:12 +0400
committerTamito Kajiyama <rd6t-kjym@asahi-net.or.jp>2012-07-17 03:29:12 +0400
commit5a581c1fd116c51df13e09c5c320feba48d069bb (patch)
tree91df14a7a43b19af4ecac736460cbbd8c1b1e291 /source/blender/freestyle/intern/winged_edge/WingedEdgeBuilder.h
parent9d2a957a0d440b07d1a5e9e0ee5fb613d93637d9 (diff)
Better handling of the ESC key during Freestyle rendering.
This commit is meant to improve the response of the ESC key for stopping Freestyle rendering throughout the rendering process. The rendering with Freestyle consists of several steps including: (1) mesh data loading, (2) winged edge construction, (3) silhouette edge detection, (4) view map construction, and (5) stroke drawing. All these steps have been extended to frequently check if the ESC key is pressed, so that users can abort time-consuming rendering at any point of time.
Diffstat (limited to 'source/blender/freestyle/intern/winged_edge/WingedEdgeBuilder.h')
-rwxr-xr-xsource/blender/freestyle/intern/winged_edge/WingedEdgeBuilder.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/source/blender/freestyle/intern/winged_edge/WingedEdgeBuilder.h b/source/blender/freestyle/intern/winged_edge/WingedEdgeBuilder.h
index 8e9d0122e35..972d67355d2 100755
--- a/source/blender/freestyle/intern/winged_edge/WingedEdgeBuilder.h
+++ b/source/blender/freestyle/intern/winged_edge/WingedEdgeBuilder.h
@@ -33,6 +33,7 @@
# define WINGED_EDGE_BUILDER_H
# include "../system/FreestyleConfig.h"
+# include "../system/RenderMonitor.h"
# include "../scene_graph/SceneVisitor.h"
# include "WEdge.h"
# include "../scene_graph/IndexedFaceSet.h"
@@ -47,6 +48,7 @@ class LIB_WINGED_EDGE_EXPORT WingedEdgeBuilder : public SceneVisitor
_current_frs_material = NULL;
_current_matrix = NULL;
_winged_edge = new WingedEdge; // Not deleted by the destructor
+ _pRenderMonitor = NULL;
}
virtual ~WingedEdgeBuilder() {
@@ -101,6 +103,10 @@ class LIB_WINGED_EDGE_EXPORT WingedEdgeBuilder : public SceneVisitor
// _current_matrix = matrix;
// }
+ inline void setRenderMonitor(RenderMonitor *iRenderMonitor) {
+ _pRenderMonitor = iRenderMonitor;
+ }
+
protected:
virtual void buildWShape(WShape& shape, IndexedFaceSet& ifs);
@@ -108,6 +114,8 @@ class LIB_WINGED_EDGE_EXPORT WingedEdgeBuilder : public SceneVisitor
const real *vertices,
unsigned vsize);
+ RenderMonitor *_pRenderMonitor;
+
private:
void buildTriangleStrip(const real *vertices,