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:
Diffstat (limited to 'source/blender/makesdna/DNA_scene_types.h')
-rw-r--r--source/blender/makesdna/DNA_scene_types.h76
1 files changed, 76 insertions, 0 deletions
diff --git a/source/blender/makesdna/DNA_scene_types.h b/source/blender/makesdna/DNA_scene_types.h
index 5e96759bc90..89555458f8f 100644
--- a/source/blender/makesdna/DNA_scene_types.h
+++ b/source/blender/makesdna/DNA_scene_types.h
@@ -1648,6 +1648,79 @@ typedef struct SceneEEVEE {
float light_threshold;
} SceneEEVEE;
+/* LANPR Global Config */
+
+struct LANPR_RenderBuffer;
+struct LANPR_LineLayer;
+
+typedef enum LANPR_MasterMode {
+ LANPR_MASTER_MODE_SOFTWARE = 0,
+ LANPR_MASTER_MODE_DPIX = 1,
+ LANPR_MASTER_MODE_SNAKE = 2,
+} LANPR_MasterMode;
+
+typedef enum LANPR_PostProcessingStatus {
+ LANPR_POST_PROCESSING_DISABLED = 0,
+ LANPR_POST_PROCESSING_ENABLED = 1,
+} LANPR_PostProcessingStatus;
+
+typedef enum LANPR_MainFlags {
+ LANPR_ENABLED = 0,
+ /* For LANPR->GP and viewport to update automatically. */
+ LANPR_AUTO_UPDATE = (1 << 0),
+ LANPR_SAME_TAPER = (1 << 2),
+ /* Edge split modifier will cause problems in LANPR. */
+ LANPR_DISABLE_EDGE_SPLITS = (1 << 3),
+ LANPR_USE_CHAINING = (1 << 4),
+ LANPR_USE_INTERSECTIONS = (1 << 5),
+ /* Overwrite existing strokes in this frame. */
+ LANPR_GPENCIL_OVERWRITE = (1 << 6),
+} LANPR_MainFlags;
+
+typedef struct SceneLANPR {
+
+ int flags;
+
+ int master_mode; /* LANPR_MasterMode */
+
+ float taper_left_distance;
+ float taper_left_strength;
+ float taper_right_distance;
+ float taper_right_strength;
+
+ /* shared */
+
+ float contour_fade; /* for dpix contour fading,reserved for future usage */
+ float crease_threshold; /* 0-1 range for cosine angle */
+ float crease_fade_threshold; /* for dpix crease fading */
+
+ float line_color[4];
+
+ float depth_width_influence;
+ float depth_width_curve;
+ float depth_alpha_influence;
+ float depth_alpha_curve;
+
+ int gpu_cache_size; /* enum! */
+ int _pad;
+
+ int enable_chain_connection;
+
+ /* offline render */
+ ListBase line_layers;
+ struct LANPR_LineLayer *active_layer;
+
+ float chaining_geometry_threshold;
+ float chaining_image_threshold;
+} SceneLANPR;
+
+enum {
+ LANPR_GPU_CACHE_SIZE_512 = 0,
+ LANPR_GPU_CACHE_SIZE_1K = 1, /* default */
+ LANPR_GPU_CACHE_SIZE_2K = 2,
+ LANPR_GPU_CACHE_SIZE_4K = 3,
+};
+
/* *************************************************************** */
/* Scene ID-Block */
@@ -1778,6 +1851,9 @@ typedef struct Scene {
struct SceneDisplay display;
struct SceneEEVEE eevee;
+
+ /* LANPR stuff */
+ struct SceneLANPR lanpr;
} Scene;
/* **************** RENDERDATA ********************* */