[Bf-blender-cvs] [29f3af95272] master: GPencil: Refactor of Draw Engine, Vertex Paint and all internal functions

Antonio Vazquez noreply at git.blender.org
Mon Mar 9 16:28:24 CET 2020


Commit: 29f3af95272590d26f610ae828b2eeee89c82a00
Author: Antonio Vazquez
Date:   Mon Mar 9 16:27:24 2020 +0100
Branches: master
https://developer.blender.org/rB29f3af95272590d26f610ae828b2eeee89c82a00

GPencil: Refactor of Draw Engine, Vertex Paint and all internal functions

This commit is a full refactor of the grease pencil modules including Draw Engine, Modifiers, VFX, depsgraph update, improvements in operators and conversion of Sculpt and Weight paint tools to real brushes.

Also, a huge code cleanup has been done at all levels.

Thanks to @fclem for his work and yo @pepeland and @mendio for the testing and help in the development.

Differential Revision: https://developer.blender.org/D6293

===================================================================

M	release/datafiles/userdef/userdef_default.c
M	release/scripts/modules/bl_keymap_utils/keymap_from_toolbar.py
M	release/scripts/modules/bl_keymap_utils/keymap_hierarchy.py
M	release/scripts/presets/gpencil_material/fill_only.py
M	release/scripts/presets/gpencil_material/stroke_and_fill.py
M	release/scripts/presets/gpencil_material/stroke_only.py
M	release/scripts/presets/keyconfig/keymap_data/blender_default.py
M	release/scripts/presets/keyconfig/keymap_data/industry_compatible_data.py
M	release/scripts/startup/bl_operators/presets.py
M	release/scripts/startup/bl_ui/properties_data_gpencil.py
M	release/scripts/startup/bl_ui/properties_data_modifier.py
M	release/scripts/startup/bl_ui/properties_data_shaderfx.py
M	release/scripts/startup/bl_ui/properties_grease_pencil_common.py
M	release/scripts/startup/bl_ui/properties_material_gpencil.py
M	release/scripts/startup/bl_ui/properties_object.py
M	release/scripts/startup/bl_ui/properties_paint_common.py
M	release/scripts/startup/bl_ui/space_dopesheet.py
M	release/scripts/startup/bl_ui/space_image.py
M	release/scripts/startup/bl_ui/space_toolsystem_toolbar.py
M	release/scripts/startup/bl_ui/space_topbar.py
M	release/scripts/startup/bl_ui/space_userpref.py
M	release/scripts/startup/bl_ui/space_view3d.py
M	release/scripts/startup/bl_ui/space_view3d_toolbar.py
M	source/blender/blenkernel/BKE_blender_version.h
M	source/blender/blenkernel/BKE_brush.h
M	source/blender/blenkernel/BKE_context.h
M	source/blender/blenkernel/BKE_gpencil.h
M	source/blender/blenkernel/BKE_gpencil_modifier.h
M	source/blender/blenkernel/BKE_paint.h
M	source/blender/blenkernel/intern/brush.c
M	source/blender/blenkernel/intern/context.c
M	source/blender/blenkernel/intern/gpencil.c
M	source/blender/blenkernel/intern/gpencil_modifier.c
M	source/blender/blenkernel/intern/lib_query.c
M	source/blender/blenkernel/intern/material.c
M	source/blender/blenkernel/intern/object.c
M	source/blender/blenkernel/intern/object_update.c
M	source/blender/blenkernel/intern/paint.c
M	source/blender/blenkernel/intern/paint_toolslots.c
M	source/blender/blenkernel/intern/scene.c
M	source/blender/blenlib/intern/BLI_memblock.c
M	source/blender/blenloader/intern/readfile.c
M	source/blender/blenloader/intern/versioning_270.c
M	source/blender/blenloader/intern/versioning_280.c
M	source/blender/blenloader/intern/versioning_defaults.c
M	source/blender/blenloader/intern/writefile.c
M	source/blender/depsgraph/intern/builder/deg_builder_nodes.cc
M	source/blender/depsgraph/intern/builder/deg_builder_relations.cc
M	source/blender/depsgraph/intern/eval/deg_eval_copy_on_write.cc
M	source/blender/draw/CMakeLists.txt
M	source/blender/draw/DRW_engine.h
A	source/blender/draw/engines/gpencil/gpencil_antialiasing.c
M	source/blender/draw/engines/gpencil/gpencil_cache_utils.c
D	source/blender/draw/engines/gpencil/gpencil_draw_cache_impl.c
A	source/blender/draw/engines/gpencil/gpencil_draw_data.c
D	source/blender/draw/engines/gpencil/gpencil_draw_utils.c
M	source/blender/draw/engines/gpencil/gpencil_engine.c
M	source/blender/draw/engines/gpencil/gpencil_engine.h
M	source/blender/draw/engines/gpencil/gpencil_render.c
A	source/blender/draw/engines/gpencil/gpencil_shader.c
M	source/blender/draw/engines/gpencil/gpencil_shader_fx.c
D	source/blender/draw/engines/gpencil/shaders/fx/gpencil_fx_blur_frag.glsl
D	source/blender/draw/engines/gpencil/shaders/fx/gpencil_fx_colorize_frag.glsl
D	source/blender/draw/engines/gpencil/shaders/fx/gpencil_fx_flip_frag.glsl
D	source/blender/draw/engines/gpencil/shaders/fx/gpencil_fx_glow_prepare_frag.glsl
D	source/blender/draw/engines/gpencil/shaders/fx/gpencil_fx_glow_resolve_frag.glsl
D	source/blender/draw/engines/gpencil/shaders/fx/gpencil_fx_light_frag.glsl
D	source/blender/draw/engines/gpencil/shaders/fx/gpencil_fx_pixel_frag.glsl
D	source/blender/draw/engines/gpencil/shaders/fx/gpencil_fx_rim_prepare_frag.glsl
D	source/blender/draw/engines/gpencil/shaders/fx/gpencil_fx_rim_resolve_frag.glsl
D	source/blender/draw/engines/gpencil/shaders/fx/gpencil_fx_shadow_prepare_frag.glsl
D	source/blender/draw/engines/gpencil/shaders/fx/gpencil_fx_shadow_resolve_frag.glsl
D	source/blender/draw/engines/gpencil/shaders/fx/gpencil_fx_swirl_frag.glsl
D	source/blender/draw/engines/gpencil/shaders/fx/gpencil_fx_wave_frag.glsl
A	source/blender/draw/engines/gpencil/shaders/gpencil_antialiasing_frag.glsl
A	source/blender/draw/engines/gpencil/shaders/gpencil_antialiasing_vert.glsl
D	source/blender/draw/engines/gpencil/shaders/gpencil_background_frag.glsl
D	source/blender/draw/engines/gpencil/shaders/gpencil_blend_frag.glsl
A	source/blender/draw/engines/gpencil/shaders/gpencil_common_lib.glsl
A	source/blender/draw/engines/gpencil/shaders/gpencil_depth_merge_frag.glsl
A	source/blender/draw/engines/gpencil/shaders/gpencil_depth_merge_vert.glsl
D	source/blender/draw/engines/gpencil/shaders/gpencil_edit_point_frag.glsl
D	source/blender/draw/engines/gpencil/shaders/gpencil_edit_point_geom.glsl
D	source/blender/draw/engines/gpencil/shaders/gpencil_edit_point_vert.glsl
D	source/blender/draw/engines/gpencil/shaders/gpencil_fill_frag.glsl
D	source/blender/draw/engines/gpencil/shaders/gpencil_fill_vert.glsl
A	source/blender/draw/engines/gpencil/shaders/gpencil_frag.glsl
A	source/blender/draw/engines/gpencil/shaders/gpencil_layer_blend_frag.glsl
A	source/blender/draw/engines/gpencil/shaders/gpencil_mask_invert_frag.glsl
D	source/blender/draw/engines/gpencil/shaders/gpencil_paper_frag.glsl
D	source/blender/draw/engines/gpencil/shaders/gpencil_point_frag.glsl
D	source/blender/draw/engines/gpencil/shaders/gpencil_point_geom.glsl
D	source/blender/draw/engines/gpencil/shaders/gpencil_point_vert.glsl
D	source/blender/draw/engines/gpencil/shaders/gpencil_simple_mix_frag.glsl
D	source/blender/draw/engines/gpencil/shaders/gpencil_stroke_frag.glsl
D	source/blender/draw/engines/gpencil/shaders/gpencil_stroke_geom.glsl
D	source/blender/draw/engines/gpencil/shaders/gpencil_stroke_vert.glsl
A	source/blender/draw/engines/gpencil/shaders/gpencil_vert.glsl
A	source/blender/draw/engines/gpencil/shaders/gpencil_vfx_frag.glsl
D	source/blender/draw/engines/gpencil/shaders/gpencil_zdepth_mix_frag.glsl
M	source/blender/draw/engines/overlay/overlay_engine.c
M	source/blender/draw/engines/overlay/overlay_extra.c
A	source/blender/draw/engines/overlay/overlay_gpencil.c
M	source/blender/draw/engines/overlay/overlay_motion_path.c
M	source/blender/draw/engines/overlay/overlay_outline.c
M	source/blender/draw/engines/overlay/overlay_private.h
M	source/blender/draw/engines/overlay/overlay_shader.c
M	source/blender/draw/engines/overlay/overlay_wireframe.c
A	source/blender/draw/engines/overlay/shaders/edit_gpencil_canvas_vert.glsl
A	source/blender/draw/engines/overlay/shaders/edit_gpencil_guide_vert.glsl
A	source/blender/draw/engines/overlay/shaders/edit_gpencil_vert.glsl
M	source/blender/draw/engines/overlay/shaders/outline_prepass_frag.glsl
M	source/blender/draw/engines/overlay/shaders/outline_prepass_vert.glsl
M	source/blender/draw/engines/overlay/shaders/wireframe_vert.glsl
M	source/blender/draw/engines/workbench/workbench_render.c
M	source/blender/draw/intern/DRW_render.h
M	source/blender/draw/intern/draw_cache.c
M	source/blender/draw/intern/draw_cache.h
A	source/blender/draw/intern/draw_cache_impl_gpencil.c
M	source/blender/draw/intern/draw_common.c
M	source/blender/draw/intern/draw_common.h
M	source/blender/draw/intern/draw_manager.c
M	source/blender/draw/intern/draw_manager.h
M	source/blender/draw/intern/draw_manager_data.c
M	source/blender/draw/intern/draw_manager_exec.c
M	source/blender/draw/intern/shaders/common_globals_lib.glsl
M	source/blender/draw/intern/shaders/common_smaa_lib.glsl
M	source/blender/draw/intern/shaders/common_view_lib.glsl
M	source/blender/editors/animation/anim_channels_defines.c
M	source/blender/editors/animation/anim_channels_edit.c
M	source/blender/editors/armature/armature_naming.c
M	source/blender/editors/gpencil/CMakeLists.txt
M	source/blender/editors/gpencil/annotate_draw.c
M	source/blender/editors/gpencil/annotate_paint.c
M	source/blender/editors/gpencil/drawgpencil.c
M	source/blender/editors/gpencil/editaction_gpencil.c
M	source/blender/editors/gpencil/gpencil_add_monkey.c
M	source/blender/editors/gpencil/gpencil_add_stroke.c
M	source/blender/editors/gpencil/gpencil_armature.c
M	source/blender/editors/gpencil/gpencil_convert.c
M	source/blender/editors/gpencil/gpencil_data.c
M	source/blender/editors/gpencil/gpencil_edit.c
M	source/blender/editors/gpencil/gpencil_fill.c
M	source/blender/editors/gpencil/gpencil_intern.h
M	source/blender/editors/gpencil/gpencil_interpolate.c
M	source/blender/editors/gpencil/gpencil_merge.c
M	source/blender/editors/gpencil/gpencil_ops.c
M	source/blender/editors/gpencil/gpencil_ops_versioning.c
M	source/blender/editors/gpencil/gpencil_paint.c
M	source/blender/editors/gpencil/gpencil_primitive.c
R076	source/blender/editors/gpencil/gpencil_brush.c	source/blender/editors/gpencil/gpencil_sculpt_paint.c
M	source/blender/editors/gpencil/gpencil_select.c
M	source/blender/editors/gpencil/gpencil_undo.c
M	source/blender/editors/gpencil/gpencil_utils.c
A	source/blender/editors/gpencil/gpencil_uv.c
A	source/blender/editors/gpencil/gpencil_vertex_ops.c
A	source/blender/editors/gpencil/gpencil_vertex_paint.c
A	source/blender/editors/gpencil/gpencil_weight_paint.c
M	source/blender/editors/include/ED_gpencil.h
M	source/blender/editors/interface/interface.c
M	source/blender/editors/interface/interface_eyedropper_gpencil_color.c
M	source/blender/editors/interface/interface_handlers.c
M	source/blender/editors/interface/interface_icons.c
M	source/blender/editors/interface/interface_layout.c
M	source/blender/editors/interface/interface_templates.c
M	source/blender/editors/object/object_add.c
M	source/blender/editors/object/object_edit.c
M	source/blender/editors/object/object_gpencil_modifier.c
M	source/blender/editors/object/object_modes.c
M	source/blender/editors/object/object_transform.c
M	source/blender/editors/screen/area.c
M	source/blender/editors/screen/screen_context.c
M	source/blender/editors/sculpt_paint/paint_ops.c
M	source/blender/editors/space_action/action_edit.c
M	source/blender/editors/space_action/action_select.c
M	source/blender/editors/space_outliner/outliner_draw.c
M	source/blender/editors/space_outliner/outliner_select.c
M	source/blender/editors/space_view3d/space_view3d.c
M	source/blender/editors/space_view3d/view3d_gizmo_ruler.c
M	source/blender/editors/space_view3d/view3d_select.c
M	source/blender/editors/transform/transform_convert.c
M	source/blender/editors/transform/transform_convert_gpencil.c
M	source/blender/editors/transform/transform_generics.c
M	source/blender/editors/transform/transform_gizmo_3d.c
M	source/blender/editors/undo/ed_undo.c
M	source/blender/gpencil_modifiers/CMakeLists.txt
M	source/blender/gpencil_modifiers/MOD_gpencil_modifiertypes.h
M	source/blender/gpencil_modifiers/intern/MOD_gpencil_util.c
M	source/blender/gpencil_modifiers/intern/MOD_gpencil_util.h
M	source/blender/gpencil_modifiers/intern/MOD_gpencilarmature.c
M	source/blender/gpencil_modifiers/intern/MOD_gpencilarray.c
M	source/blender/gpencil_modifiers/intern/MOD_gpencilbuild.c
M	source/blender/gpencil_modifiers/intern/MOD_gpencilcolor.c
M	source/blender/gpencil_modifiers/intern/MOD_gpencilhook.c
M	source/blender/gpencil_modifiers/intern/MOD_gpencillattice.c
M	source/blender/gpencil_modifiers/intern/MOD_gpencilmirror.c
M	source/blender/gpencil_modifiers/intern/MOD_gpencilmultiply.c
M	source/blender/gpencil_modifiers/intern/MOD_gpencilnoise.c
M	source/blender/gpencil_modifiers/intern/MOD_gpenciloffset.c
M	source/blender/gpencil_modifiers/intern/MOD_gpencilopacity.c
M	source/blender/gpencil_modifiers/intern/MOD_gpencilsimplify.c
M	source/blender/gpencil_modifiers/intern/MOD_gpencilsmooth.c
M	source/blender/gpencil_modifiers/intern/MOD_gpencilsubdiv.c
M	source/blender/gpencil_modifiers/intern/MOD_gpencilthick.c
M	source/blender/gpencil_modifiers/intern/MOD_gpenciltint.c
A	source/blender/gpencil_modifiers/intern/MOD_gpencilvertexcolor.c
M	source/blender/gpu/GPU_framebuffer.h
M	source/blender/gpu/GPU_shader_interface.h
M	source/blender/gpu/GPU_texture.h
M	source/blender/gpu/GPU_vertex_format.h
M	source/blender/gpu/intern/gpu_framebuffer.c
M	source/blender/gpu/intern/gpu_shader_interface.c
M	source/blender/gpu/intern/gpu_vertex_format.c
M	source/blender/imbuf/IMB_imbuf.h
M	source/blender/imbuf/intern/imageprocess.c
M	source/blender/makesdna/DNA_brush_types.h
M	source/blender/makesdna/DNA_gpencil_modifier_types.h
M	source/blender/makesdna/DNA_gpencil_types.h
M	source/blender/makesdna/DNA_material_types.h
M	source/blender/makesdna/DNA_object_enums.h
M	source/blender/makesdna/DNA_object_types.h
M	source/blender/makesdna/DNA_scene_types.h
M	source/blender/makesdna/DNA_shader_fx_types.h
M	source/blender/makesdna/DNA_userdef_types.h
M	source/blender/makesdna/DNA_view3d_types.h
M	source/blender/makesdna/intern/dna_rename_defs.h
M	source/blender/makesrna/RNA_access.h
M	source/blender/makesrna/RNA_enum_types.h
M	source/blender/makesrna/intern/rna_brush.c
M	source/blender/makesrna/intern/rna_context.c
M	source/blender/makesrna/intern/rna_gpencil.c
M	source/blender/makesrna/intern/rna_gpencil_modifier.c
M	source/blender/makesrna/intern/rna_material.c
M	source/blender/makesrna/intern/rna_object.c
M	source/blender/makesrna/intern/rna_scene.c
M	source/blender/makesrna/intern/rna_sculpt_paint.c
M	source/blender/makesrna/intern/rna_shader_fx.c
M	source/blender/makesrna/intern/rna_space.c
M	source/blender/makesrna/intern/rna_ui_api.c
M	source/blender/makesrna/intern/rna_userdef.c
M	source/blender/shader_fx/CMakeLists.txt
M	source/blender/shader_fx/FX_shader_types.h
M	source/blender/shader_fx/intern/FX_shader_blur.c
M	source/blender/shader_fx/intern/FX_shader_flip.c
M	source/blender/shader_fx/intern/FX_shader_glow.c
M	source/blender/shader_fx/intern/FX_shader_pixel.c
M	source/blender/shader_fx/intern/FX_shader_rim.c
M	source/blender/shader_fx/intern/FX_shader_shadow.c
M	source/blender/shader_fx/intern/FX_shader_util.c
M	source/blender/shader_fx/intern/FX_shader_wave.c
M	source/blender/windowmanager/intern/wm_keymap_utils.c
M	source/blender/windowmanager/intern/wm_toolsystem.c

===================================================================

diff --git a/release/datafiles/userdef/userdef_default.c b/release/datafiles/userdef/userdef_default.c
index 576cff5bd0e..18750c12d55 100644
--- a/release/datafiles/userdef/userdef_default.c
+++ b/release/datafiles/userdef/userdef_default.c
@@ -187,7 +187,6 @@ const UserDef U_default = {
     .pie_menu_radius = 100,
     .pie_menu_threshold = 12,
     .opensubdiv_compute_type = 0,
-    .gpencil_multisamples = 4,
     .factor_display_type = USER_FACTOR_AS_FACTOR,
     .render_display_type = USER_RENDER_DISPLAY_WINDOW,
     .filebrowser_display_type = USER_TEMP_SPACE_DISPLAY_WINDOW,
diff --git a/release/scripts/modules/bl_keymap_utils/keymap_from_toolbar.py b/release/scripts/modules/bl_keymap_utils/keymap_from_toolbar.py
index da4a47783ad..505223872fe 100644
--- a/release/scripts/modules/bl_keymap_utils/keymap_from_toolbar.py
+++ b/release/scripts/modules/bl_keymap_utils/keymap_from_toolbar.py
@@ -199,6 +199,9 @@ def generate(context, space_type, use_fallback_keys=True, use_reset=True):
                         'WEIGHT_PAINT': "weight_tool",
                         'TEXTURE_PAINT': "image_tool",
                         'PAINT_GPENCIL': "gpencil_tool",
+                        'VERTEX_GPENCIL': "gpencil_vertex_tool",
+                        'SCULPT_GPENCIL': "gpencil_sculpt_tool",
+                        'WEIGHT_GPENCIL': "gpencil_weight_tool",
                     }.get(mode, None)
                     if attr is not None:
                         setattr(kmi_hack_brush_select_properties, attr, item.data_block)
diff --git a/release/scripts/modules/bl_keymap_utils/keymap_hierarchy.py b/release/scripts/modules/bl_keymap_utils/keymap_hierarchy.py
index 35b5f217247..3b829de405a 100644
--- a/release/scripts/modules/bl_keymap_utils/keymap_hierarchy.py
+++ b/release/scripts/modules/bl_keymap_utils/keymap_hierarchy.py
@@ -194,9 +194,26 @@ _km_hierarchy = [
         ('Grease Pencil Stroke Paint (Draw brush)', 'EMPTY', 'WINDOW', []),
         ('Grease Pencil Stroke Paint (Fill)', 'EMPTY', 'WINDOW', []),
         ('Grease Pencil Stroke Paint (Erase)', 'EMPTY', 'WINDOW', []),
+        ('Grease Pencil Stroke Paint (Tint)', 'EMPTY', 'WINDOW', []),
         ('Grease Pencil Stroke Paint Mode', 'EMPTY', 'WINDOW', []),
         ('Grease Pencil Stroke Sculpt Mode', 'EMPTY', 'WINDOW', []),
+        ('Grease Pencil Stroke Sculpt (Smooth)', 'EMPTY', 'WINDOW', []),
+        ('Grease Pencil Stroke Sculpt (Thickness)', 'EMPTY', 'WINDOW', []),
+        ('Grease Pencil Stroke Sculpt (Strength)', 'EMPTY', 'WINDOW', []),
+        ('Grease Pencil Stroke Sculpt (Grab)', 'EMPTY', 'WINDOW', []),
+        ('Grease Pencil Stroke Sculpt (Push)', 'EMPTY', 'WINDOW', []),
+        ('Grease Pencil Stroke Sculpt (Twist)', 'EMPTY', 'WINDOW', []),
+        ('Grease Pencil Stroke Sculpt (Pinch)', 'EMPTY', 'WINDOW', []),
+        ('Grease Pencil Stroke Sculpt (Randomize)', 'EMPTY', 'WINDOW', []),
+        ('Grease Pencil Stroke Sculpt (Clone)', 'EMPTY', 'WINDOW', []),
         ('Grease Pencil Stroke Weight Mode', 'EMPTY', 'WINDOW', []),
+        ('Grease Pencil Stroke Weight (Draw)', 'EMPTY', 'WINDOW', []),
+        ('Grease Pencil Stroke Vertex Mode', 'EMPTY', 'WINDOW', []),
+        ('Grease Pencil Stroke Vertex (Draw)', 'EMPTY', 'WINDOW', []),
+        ('Grease Pencil Stroke Vertex (Blur)', 'EMPTY', 'WINDOW', []),
+        ('Grease Pencil Stroke Vertex (Average)', 'EMPTY', 'WINDOW', []),
+        ('Grease Pencil Stroke Vertex (Smear)', 'EMPTY', 'WINDOW', []),
+        ('Grease Pencil Stroke Vertex (Replace)', 'EMPTY', 'WINDOW', []),
     ]),
     ('Mask Editing', 'EMPTY', 'WINDOW', []),
     ('Frames', 'EMPTY', 'WINDOW', []),    # frame navigation (per region)
diff --git a/release/scripts/presets/gpencil_material/fill_only.py b/release/scripts/presets/gpencil_material/fill_only.py
index c60811d25bc..57d5dc3b860 100644
--- a/release/scripts/presets/gpencil_material/fill_only.py
+++ b/release/scripts/presets/gpencil_material/fill_only.py
@@ -7,8 +7,6 @@ gpcolor.stroke_style = 'SOLID'
 gpcolor.color = (0.0, 0.0, 0.0, 0.0)
 gpcolor.stroke_image = None
 gpcolor.pixel_size = 100.0
-gpcolor.use_stroke_pattern = False
-gpcolor.use_stroke_texture_mix = False
 gpcolor.mix_stroke_factor = 0.0
 gpcolor.alignment_mode = 'PATH'
 gpcolor.fill_style = 'SOLID'
@@ -18,18 +16,11 @@ gpcolor.gradient_type = 'LINEAR'
 gpcolor.mix_color = (1.0, 1.0, 1.0, 0.2)
 gpcolor.mix_factor = 0.0
 gpcolor.flip = False
-gpcolor.pattern_shift = (0.0, 0.0)
-gpcolor.pattern_scale = (1.0, 1.0)
-gpcolor.pattern_radius = 0.5
-gpcolor.pattern_angle = 0.0
-gpcolor.pattern_gridsize = 0.1
-gpcolor.use_fill_pattern = False
 gpcolor.texture_offset = (0.0, 0.0)
 gpcolor.texture_scale = (1.0, 1.0)
 gpcolor.texture_angle = 0.0
 gpcolor.texture_opacity = 1.0
 gpcolor.texture_clamp = False
-gpcolor.use_fill_texture_mix = False
 gpcolor.mix_factor = 0.0
 gpcolor.show_stroke = False
 gpcolor.show_fill = True
diff --git a/release/scripts/presets/gpencil_material/stroke_and_fill.py b/release/scripts/presets/gpencil_material/stroke_and_fill.py
index ee18eeb0114..eff728a7857 100644
--- a/release/scripts/presets/gpencil_material/stroke_and_fill.py
+++ b/release/scripts/presets/gpencil_material/stroke_and_fill.py
@@ -7,8 +7,6 @@ gpcolor.stroke_style = 'SOLID'
 gpcolor.color = (0.0, 0.0, 0.0, 1.0)
 gpcolor.stroke_image = None
 gpcolor.pixel_size = 100.0
-gpcolor.use_stroke_pattern = False
-gpcolor.use_stroke_texture_mix = False
 gpcolor.mix_stroke_factor = 0.0
 gpcolor.alignment_mode = 'PATH'
 gpcolor.fill_style = 'SOLID'
@@ -18,18 +16,11 @@ gpcolor.gradient_type = 'LINEAR'
 gpcolor.mix_color = (1.0, 1.0, 1.0, 0.2)
 gpcolor.mix_factor = 0.0
 gpcolor.flip = False
-gpcolor.pattern_shift = (0.0, 0.0)
-gpcolor.pattern_scale = (1.0, 1.0)
-gpcolor.pattern_radius = 0.5
-gpcolor.pattern_angle = 0.0
-gpcolor.pattern_gridsize = 0.1
-gpcolor.use_fill_pattern = False
 gpcolor.texture_offset = (0.0, 0.0)
 gpcolor.texture_scale = (1.0, 1.0)
 gpcolor.texture_angle = 0.0
 gpcolor.texture_opacity = 1.0
 gpcolor.texture_clamp = False
-gpcolor.use_fill_texture_mix = False
 gpcolor.mix_factor = 0.0
 gpcolor.show_stroke = True
 gpcolor.show_fill = True
diff --git a/release/scripts/presets/gpencil_material/stroke_only.py b/release/scripts/presets/gpencil_material/stroke_only.py
index 3ca05c6a073..1724a62bffc 100644
--- a/release/scripts/presets/gpencil_material/stroke_only.py
+++ b/release/scripts/presets/gpencil_material/stroke_only.py
@@ -7,8 +7,6 @@ gpcolor.stroke_style = 'SOLID'
 gpcolor.color = (0.0, 0.0, 0.0, 1.0)
 gpcolor.stroke_image = None
 gpcolor.pixel_size = 100.0
-gpcolor.use_stroke_pattern = False
-gpcolor.use_stroke_texture_mix = False
 gpcolor.mix_stroke_factor = 0.0
 gpcolor.alignment_mode = 'PATH'
 gpcolor.fill_style = 'SOLID'
@@ -18,18 +16,11 @@ gpcolor.gradient_type = 'LINEAR'
 gpcolor.mix_color = (1.0, 1.0, 1.0, 0.2)
 gpcolor.mix_factor = 0.0
 gpcolor.flip = False
-gpcolor.pattern_shift = (0.0, 0.0)
-gpcolor.pattern_scale = (1.0, 1.0)
-gpcolor.pattern_radius = 0.5
-gpcolor.pattern_angle = 0.0
-gpcolor.pattern_gridsize = 0.1
-gpcolor.use_fill_pattern = False
 gpcolor.texture_offset = (0.0, 0.0)
 gpcolor.texture_scale = (1.0, 1.0)
 gpcolor.texture_angle = 0.0
 gpcolor.texture_opacity = 1.0
 gpcolor.texture_clamp = False
-gpcolor.use_fill_texture_mix = False
 gpcolor.mix_factor = 0.0
 gpcolor.show_stroke = True
 gpcolor.show_fill = False
diff --git a/release/scripts/presets/keyconfig/keymap_data/blender_default.py b/release/scripts/presets/keyconfig/keymap_data/blender_default.py
index 5aff2a75e03..bf1ff0604ad 100644
--- a/release/scripts/presets/keyconfig/keymap_data/blender_default.py
+++ b/release/scripts/presets/keyconfig/keymap_data/blender_default.py
@@ -3168,6 +3168,10 @@ def km_grease_pencil_stroke_edit_mode(params):
          {"properties": [("mode", 1)]}),
         ("gpencil.selectmode_toggle", {"type": 'THREE', "value": 'PRESS'},
          {"properties": [("mode", 2)]}),
+        # Active layer
+        op_menu("GPENCIL_MT_layer_active", {"type": 'Y', "value": 'PRESS'}),
+        # Keyframe menu
+        op_menu("VIEW3D_MT_gpencil_animation", {"type": 'I', "value": 'PRESS'}),
         # Context menu
         *_template_items_context_menu("VIEW3D_MT_gpencil_edit_context_menu", params.context_menu_event),
     ])
@@ -3211,6 +3215,10 @@ def km_grease_pencil_stroke_paint_mode(params):
          {"properties": [("unselected", False)]}),
         ("gpencil.hide", {"type": 'H', "value": 'PRESS', "shift": True},
          {"properties": [("unselected", True)]}),
+        # Active layer
+        op_menu("GPENCIL_MT_layer_active", {"type": 'Y', "value": 'PRESS'}),
+        # Keyframe menu
+        op_menu("VIEW3D_MT_gpencil_animation", {"type": 'I', "value": 'PRESS'}),
         # Draw context menu
         *_template_items_context_panel("VIEW3D_PT_gpencil_draw_context_menu", params.context_menu_event),
     ])
@@ -3322,6 +3330,25 @@ def km_grease_pencil_stroke_paint_fill(params):
     return keymap
 
 
+def km_grease_pencil_stroke_paint_tint(params):
+    items = []
+    keymap = (
+        "Grease Pencil Stroke Paint (Tint)",
+        {"space_type": 'EMPTY', "region_type": 'WINDOW'},
+        {"items": items},
+    )
+
+    items.extend([
+        # Tint
+        ("gpencil.vertex_paint", {"type": 'LEFTMOUSE', "value": 'PRESS'},
+         {"properties": [("wait_for_input", False)]}),
+        ("gpencil.vertex_paint", {"type": 'LEFTMOUSE', "value": 'PRESS', "ctrl": True},
+         {"properties": [("wait_for_input", False)]}),
+    ])
+
+    return keymap
+
+
 def km_grease_pencil_stroke_sculpt_mode(params):
     items = []
     keymap = (
@@ -3336,14 +3363,22 @@ def km_grease_pencil_stroke_sculpt_mode(params):
 
         # Brush strength
         ("wm.radial_control", {"type": 'F', "value": 'PRESS', "shift": True},
-         {"properties": [("data_path_primary", 'tool_settings.gpencil_sculpt.brush.strength')]}),
+         {"properties": [("data_path_primary", 'tool_settings.gpencil_sculpt_paint.brush.strength')]}),
         # Brush size
         ("wm.radial_control", {"type": 'F', "value": 'PRESS'},
-         {"properties": [("data_path_primary", 'tool_settings.gpencil_sculpt.brush.size')]}),
+         {"properties": [("data_path_primary", 'tool_s

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list