Merged changes in the trunk up to revision 51718.
[blender.git] / source / blender / makesdna / DNA_scene_types.h
index 9d59817632a40106018aff7f5f5a31f6ac1a8ce4..9bfa0e7fdf7094b9b5e3eff15c5a6b15bb63d775 100644 (file)
@@ -45,6 +45,7 @@ extern "C" {
 #include "DNA_vec_types.h"
 #include "DNA_listBase.h"
 #include "DNA_ID.h"
+#include "DNA_freestyle_types.h"
 
 struct Object;
 struct Brush;
@@ -187,6 +188,9 @@ typedef struct SceneRenderLayer {
 
        int samples;
        int pad;
+       
+       struct FreestyleConfig freestyleConfig;
+       
 } SceneRenderLayer;
 
 /* srl->layflag */
@@ -196,7 +200,8 @@ typedef struct SceneRenderLayer {
 #define SCE_LAY_EDGE   8
 #define SCE_LAY_SKY            16
 #define SCE_LAY_STRAND 32
-       /* flags between 32 and 0x8000 are set to 1 already, for future options */
+#define SCE_LAY_FRS            64
+       /* flags between 64 and 0x8000 are set to 1 already, for future options */
 
 #define SCE_LAY_ALL_Z          0x8000
 #define SCE_LAY_XOR                    0x10000
@@ -528,6 +533,10 @@ typedef struct RenderData {
        float pad2;
        struct Text *dometext  DNA_DEPRECATED;  //  XXX deprecated since 2.5
 
+       /* Freestyle line thickness options */
+       int line_thickness_mode;
+       float unit_line_thickness; /* in pixels */
+
        /* render engine */
        char engine[32];
 } RenderData;
@@ -1185,6 +1194,7 @@ typedef struct Scene {
 #define R_NO_OVERWRITE 0x400000 /* skip existing files */
 #define R_TOUCH                        0x800000 /* touch files before rendering */
 #define R_SIMPLIFY             0x1000000
+#define R_EDGE_FRS             0x2000000 /* R_EDGE for Freestyle */
 
 /* seq_flag */
 #define R_SEQ_GL_PREV 1
@@ -1299,6 +1309,10 @@ typedef struct Scene {
 /* simplify_flag */
 #define R_SIMPLE_NO_TRIANGULATE                1
 
+/* line_thickness_mode */
+#define R_LINE_THICKNESS_ABSOLUTE 1
+#define R_LINE_THICKNESS_RELATIVE 2
+
 /* sequencer seq_prev_type seq_rend_type */
 
 
@@ -1493,6 +1507,7 @@ typedef enum SculptFlags {
 #define EDGE_MODE_TAG_SHARP                            2
 #define EDGE_MODE_TAG_CREASE                   3
 #define EDGE_MODE_TAG_BEVEL                            4
+#define EDGE_MODE_TAG_FREESTYLE                        5
 
 /* toolsettings->gpencil_flags */
 #define GP_TOOL_FLAG_PAINTSESSIONS_ON  (1<<0)