Blender Git Loki

Git Commits -> Revision 29f3af9

Revision 29f3af9 by Antonio Vazquez (master)
March 9, 2020, 15:27 (GMT)
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

Commit Details:

Full Hash: 29f3af95272590d26f610ae828b2eeee89c82a00
Parent Commit: dcb9312
Lines Changed: +23269, -16861

24 Added Paths:

/source/blender/draw/engines/gpencil/gpencil_antialiasing.c (+169, -0) (View)
/source/blender/draw/engines/gpencil/gpencil_draw_data.c (+502, -0) (View)
/source/blender/draw/engines/gpencil/gpencil_shader.c (+311, -0) (View)
/source/blender/draw/engines/gpencil/shaders/gpencil_antialiasing_frag.glsl (+64, -0) (View)
/source/blender/draw/engines/gpencil/shaders/gpencil_antialiasing_vert.glsl (+21, -0) (View)
/source/blender/draw/engines/gpencil/shaders/gpencil_common_lib.glsl (+593, -0) (View)
/source/blender/draw/engines/gpencil/shaders/gpencil_depth_merge_frag.glsl (+17, -0) (View)
/source/blender/draw/engines/gpencil/shaders/gpencil_depth_merge_vert.glsl (+14, -0) (View)
/source/blender/draw/engines/gpencil/shaders/gpencil_frag.glsl (+126, -0) (View)
/source/blender/draw/engines/gpencil/shaders/gpencil_layer_blend_frag.glsl (+31, -0) (View)
/source/blender/draw/engines/gpencil/shaders/gpencil_mask_invert_frag.glsl (+11, -0) (View)
/source/blender/draw/engines/gpencil/shaders/gpencil_vert.glsl (+5, -0) (View)
/source/blender/draw/engines/gpencil/shaders/gpencil_vfx_frag.glsl (+354, -0) (View)
/source/blender/draw/engines/overlay/overlay_gpencil.c (+391, -0) (View)
/source/blender/draw/engines/overlay/shaders/edit_gpencil_canvas_vert.glsl (+35, -0) (View)
/source/blender/draw/engines/overlay/shaders/edit_gpencil_guide_vert.glsl (+14, -0) (View)
/source/blender/draw/engines/overlay/shaders/edit_gpencil_vert.glsl (+103, -0) (View)
/source/blender/draw/intern/draw_cache_impl_gpencil.c (+745, -0) (View)
/source/blender/editors/gpencil/gpencil_sculpt_paint.c (+2150, -0) (View)
/source/blender/editors/gpencil/gpencil_uv.c (+587, -0) (View)
/source/blender/editors/gpencil/gpencil_vertex_ops.c (+899, -0) (View)
/source/blender/editors/gpencil/gpencil_vertex_paint.c (+1414, -0) (View)
/source/blender/editors/gpencil/gpencil_weight_paint.c (+901, -0) (View)
/source/blender/gpencil_modifiers/intern/MOD_gpencilvertexcolor.c (+314, -0) (View)

32 Deleted Paths:

/source/blender/draw/engines/gpencil/gpencil_draw_cache_impl.c (+0, -1021)
/source/blender/draw/engines/gpencil/gpencil_draw_utils.c (+0, -2071)
/source/blender/draw/engines/gpencil/shaders/fx/gpencil_fx_blur_frag.glsl (+0, -85)
/source/blender/draw/engines/gpencil/shaders/fx/gpencil_fx_colorize_frag.glsl (+0, -82)
/source/blender/draw/engines/gpencil/shaders/fx/gpencil_fx_flip_frag.glsl (+0, -37)
/source/blender/draw/engines/gpencil/shaders/fx/gpencil_fx_glow_prepare_frag.glsl (+0, -68)
/source/blender/draw/engines/gpencil/shaders/fx/gpencil_fx_glow_resolve_frag.glsl (+0, -46)
/source/blender/draw/engines/gpencil/shaders/fx/gpencil_fx_light_frag.glsl (+0, -70)
/source/blender/draw/engines/gpencil/shaders/fx/gpencil_fx_pixel_frag.glsl (+0, -51)
/source/blender/draw/engines/gpencil/shaders/fx/gpencil_fx_rim_prepare_frag.glsl (+0, -65)
/source/blender/draw/engines/gpencil/shaders/fx/gpencil_fx_rim_resolve_frag.glsl (+0, -98)
/source/blender/draw/engines/gpencil/shaders/fx/gpencil_fx_shadow_prepare_frag.glsl (+0, -98)
/source/blender/draw/engines/gpencil/shaders/fx/gpencil_fx_shadow_resolve_frag.glsl (+0, -32)
/source/blender/draw/engines/gpencil/shaders/fx/gpencil_fx_swirl_frag.glsl (+0, -74)
/source/blender/draw/engines/gpencil/shaders/fx/gpencil_fx_wave_frag.glsl (+0, -44)
/source/blender/draw/engines/gpencil/shaders/gpencil_background_frag.glsl (+0, -12)
/source/blender/draw/engines/gpencil/shaders/gpencil_blend_frag.glsl (+0, -157)
/source/blender/draw/engines/gpencil/shaders/gpencil_edit_point_frag.glsl (+0, -17)
/source/blender/draw/engines/gpencil/shaders/gpencil_edit_point_geom.glsl (+0, -53)
/source/blender/draw/engines/gpencil/shaders/gpencil_edit_point_vert.glsl (+0, -19)
/source/blender/draw/engines/gpencil/shaders/gpencil_fill_frag.glsl (+0, -234)
/source/blender/draw/engines/gpencil/shaders/gpencil_fill_vert.glsl (+0, -16)
/source/blender/draw/engines/gpencil/shaders/gpencil_paper_frag.glsl (+0, -9)
/source/blender/draw/engines/gpencil/shaders/gpencil_point_frag.glsl (+0, -126)
/source/blender/draw/engines/gpencil/shaders/gpencil_point_geom.glsl (+0, -142)
/source/blender/draw/engines/gpencil/shaders/gpencil_point_vert.glsl (+0, -66)
/source/blender/draw/engines/gpencil/shaders/gpencil_simple_mix_frag.glsl (+0, -15)
/source/blender/draw/engines/gpencil/shaders/gpencil_stroke_frag.glsl (+0, -110)
/source/blender/draw/engines/gpencil/shaders/gpencil_stroke_geom.glsl (+0, -264)
/source/blender/draw/engines/gpencil/shaders/gpencil_stroke_vert.glsl (+0, -63)
/source/blender/draw/engines/gpencil/shaders/gpencil_zdepth_mix_frag.glsl (+0, -76)
/source/blender/editors/gpencil/gpencil_brush.c (+0, -2343)

197 Modified Paths:

/release/datafiles/userdef/userdef_default.c (+0, -1) (Diff)
/release/scripts/modules/bl_keymap_utils/keymap_from_toolbar.py (+3, -0) (Diff)
/release/scripts/modules/bl_keymap_utils/keymap_hierarchy.py (+17, -0) (Diff)
/release/scripts/presets/gpencil_material/fill_only.py (+0, -9) (Diff)
/release/scripts/presets/gpencil_material/stroke_and_fill.py (+0, -9) (Diff)
/release/scripts/presets/gpencil_material/stroke_only.py (+0, -9) (Diff)
/release/scripts/presets/keyconfig/keymap_data/blender_default.py (+422, -18) (Diff)
/release/scripts/presets/keyconfig/keymap_data/industry_compatible_data.py (+387, -12) (Diff)
/release/scripts/startup/bl_operators/presets.py (+0, -12) (Diff)
/release/scripts/startup/bl_ui/properties_data_gpencil.py (+15, -8) (Diff)
/release/scripts/startup/bl_ui/properties_data_modifier.py (+131, -420) (Diff)
/release/scripts/startup/bl_ui/properties_data_shaderfx.py (+20, -20) (Diff)
/release/scripts/startup/bl_ui/properties_grease_pencil_common.py (+271, -293) (Diff)
/release/scripts/startup/bl_ui/properties_material_gpencil.py (+32, -48) (Diff)
/release/scripts/startup/bl_ui/properties_object.py (+22, -0) (Diff)
/release/scripts/startup/bl_ui/properties_paint_common.py (+33, -16) (Diff)
/release/scripts/startup/bl_ui/space_dopesheet.py (+11, -0) (Diff)
/release/scripts/startup/bl_ui/space_image.py (+5, -0) (Diff)
/release/scripts/startup/bl_ui/space_toolsystem_toolbar.py (+68, -7) (Diff)
/release/scripts/startup/bl_ui/space_topbar.py (+3, -3) (Diff)
/release/scripts/startup/bl_ui/space_userpref.py (+0, -1) (Diff)
/release/scripts/startup/bl_ui/space_view3d.py (+216, -53) (Diff)
/release/scripts/startup/bl_ui/space_view3d_toolbar.py (+421, -33) (Diff)
/source/blender/blenkernel/BKE_blender_version.h (+1, -1) (Diff)
/source/blender/blenkernel/BKE_brush.h (+11, -2) (Diff)
/source/blender/blenkernel/BKE_context.h (+2, -1) (Diff)
/source/blender/blenkernel/BKE_gpencil.h (+113, -46) (Diff)
/source/blender/blenkernel/BKE_gpencil_modifier.h (+10, -29) (Diff)
/source/blender/blenkernel/BKE_paint.h (+16, -1) (Diff)
/source/blender/blenkernel/intern/brush.c (+715, -362) (Diff)
/source/blender/blenkernel/intern/context.c (+8, -19) (Diff)
/source/blender/blenkernel/intern/gpencil.c (+841, -220) (Diff)
/source/blender/blenkernel/intern/gpencil_modifier.c (+167, -191) (Diff)
/source/blender/blenkernel/intern/lib_query.c (+9, -0) (Diff)
/source/blender/blenkernel/intern/material.c (+1, -4) (Diff)
/source/blender/blenkernel/intern/object.c (+12, -3) (Diff)
/source/blender/blenkernel/intern/object_update.c (+10, -1) (Diff)
/source/blender/blenkernel/intern/paint.c (+270, -0) (Diff)
/source/blender/blenkernel/intern/paint_toolslots.c (+9, -0) (Diff)
/source/blender/blenkernel/intern/scene.c (+24, -66) (Diff)
/source/blender/blenlib/intern/BLI_memblock.c (+10, -1) (Diff)
/source/blender/blenloader/intern/readfile.c (+139, -84) (Diff)
/source/blender/blenloader/intern/versioning_270.c (+4, -93) (Diff)
/source/blender/blenloader/intern/versioning_280.c (+359, -88) (Diff)
/source/blender/blenloader/intern/versioning_defaults.c (+53, -2) (Diff)
/source/blender/blenloader/intern/writefile.c (+58, -3) (Diff)
/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc (+1, -1) (Diff)
/source/blender/depsgraph/intern/builder/deg_builder_relations.cc (+9, -0) (Diff)
/source/blender/depsgraph/intern/eval/deg_eval_copy_on_write.cc (+4, -0) (Diff)
/source/blender/draw/CMakeLists.txt (+18, -32) (Diff)
/source/blender/draw/DRW_engine.h (+0, -1) (Diff)
/source/blender/draw/engines/gpencil/gpencil_cache_utils.c (+306, -262) (Diff)
/source/blender/draw/engines/gpencil/gpencil_engine.c (+754, -971) (Diff)
/source/blender/draw/engines/gpencil/gpencil_engine.h (+347, -445) (Diff)
/source/blender/draw/engines/gpencil/gpencil_render.c (+120, -245) (Diff)
/source/blender/draw/engines/gpencil/gpencil_shader_fx.c (+505, -910) (Diff)
/source/blender/draw/engines/overlay/overlay_engine.c (+20, -4) (Diff)
/source/blender/draw/engines/overlay/overlay_extra.c (+1, -84) (Diff)
/source/blender/draw/engines/overlay/overlay_motion_path.c (+2, -2) (Diff)
/source/blender/draw/engines/overlay/overlay_outline.c (+157, -1) (Diff)
/source/blender/draw/engines/overlay/overlay_private.h (+18, -1) (Diff)
/source/blender/draw/engines/overlay/overlay_shader.c (+103, -0) (Diff)
/source/blender/draw/engines/overlay/overlay_wireframe.c (+5, -1) (Diff)
/source/blender/draw/engines/overlay/shaders/outline_prepass_frag.glsl (+37, -1) (Diff)
/source/blender/draw/engines/overlay/shaders/outline_prepass_vert.glsl (+12, -2) (Diff)
/source/blender/draw/engines/overlay/shaders/wireframe_vert.glsl (+4, -2) (Diff)
/source/blender/draw/engines/workbench/workbench_render.c (+58, -2) (Diff)
/source/blender/draw/intern/draw_cache.c (+27, -0) (Diff)
/source/blender/draw/intern/draw_cache.h (+17, -0) (Diff)
/source/blender/draw/intern/draw_common.c (+2, -0) (Diff)
/source/blender/draw/intern/draw_common.h (+2, -0) (Diff)
/source/blender/draw/intern/draw_manager.c (+8, -26) (Diff)
/source/blender/draw/intern/draw_manager.h (+15, -3) (Diff)
/source/blender/draw/intern/draw_manager_data.c (+55, -10) (Diff)
/source/blender/draw/intern/draw_manager_exec.c (+68, -23) (Diff)
/source/blender/draw/intern/DRW_render.h (+17, -5) (Diff)
/source/blender/draw/intern/shaders/common_globals_lib.glsl (+2, -0) (Diff)
/source/blender/draw/intern/shaders/common_smaa_lib.glsl (+10, -1) (Diff)
/source/blender/draw/intern/shaders/common_view_lib.glsl (+10, -3) (Diff)
/source/blender/editors/animation/anim_channels_defines.c (+8, -2) (Diff)
/source/blender/editors/animation/anim_channels_edit.c (+1, -1) (Diff)
/source/blender/editors/armature/armature_naming.c (+1, -1) (Diff)
/source/blender/editors/gpencil/annotate_draw.c (+11, -26) (Diff)
/source/blender/editors/gpencil/annotate_paint.c (+9, -12) (Diff)
/source/blender/editors/gpencil/CMakeLists.txt (+5, -1) (Diff)
/source/blender/editors/gpencil/drawgpencil.c (+11, -293) (Diff)
/source/blender/editors/gpencil/editaction_gpencil.c (+16, -42) (Diff)
/source/blender/editors/gpencil/gpencil_add_monkey.c (+62, -31) (Diff)
/source/blender/editors/gpencil/gpencil_add_stroke.c (+6, -2) (Diff)
/source/blender/editors/gpencil/gpencil_armature.c (+2, -2) (Diff)
/source/blender/editors/gpencil/gpencil_convert.c (+96, -8) (Diff)
/source/blender/editors/gpencil/gpencil_data.c (+493, -78) (Diff)
/source/blender/editors/gpencil/gpencil_edit.c (+302, -191) (Diff)
/source/blender/editors/gpencil/gpencil_fill.c (+125, -45) (Diff)
/source/blender/editors/gpencil/gpencil_intern.h (+38, -30) (Diff)
/source/blender/editors/gpencil/gpencil_interpolate.c (+60, -85) (Diff)
/source/blender/editors/gpencil/gpencil_merge.c (+111, -15) (Diff)
/source/blender/editors/gpencil/gpencil_ops.c (+312, -4) (Diff)
/source/blender/editors/gpencil/gpencil_ops_versioning.c (+8, -9) (Diff)
/source/blender/editors/gpencil/gpencil_paint.c (+482, -892) (Diff)
/source/blender/editors/gpencil/gpencil_primitive.c (+47, -72) (Diff)
/source/blender/editors/gpencil/gpencil_select.c (+177, -25) (Diff)
/source/blender/editors/gpencil/gpencil_undo.c (+2, -2) (Diff)
/source/blender/editors/gpencil/gpencil_utils.c (+230, -253) (Diff)
/source/blender/editors/include/ED_gpencil.h (+28, -28) (Diff)
/source/blender/editors/interface/interface.c (+3, -3) (Diff)
/source/blender/editors/interface/interface_eyedropper_gpencil_color.c (+87, -27) (Diff)
/source/blender/editors/interface/interface_handlers.c (+29, -12) (Diff)
/source/blender/editors/interface/interface_icons.c (+52, -1) (Diff)
/source/blender/editors/interface/interface_layout.c (+1, -1) (Diff)
/source/blender/editors/interface/interface_templates.c (+48, -0) (Diff)
/source/blender/editors/object/object_add.c (+2, -2) (Diff)
/source/blender/editors/object/object_edit.c (+2, -1) (Diff)
/source/blender/editors/object/object_gpencil_modifier.c (+6, -1) (Diff)
/source/blender/editors/object/object_modes.c (+4, -1) (Diff)
/source/blender/editors/object/object_transform.c (+5, -5) (Diff)
/source/blender/editors/screen/area.c (+72, -0) (Diff)
/source/blender/editors/screen/screen_context.c (+5, -5) (Diff)
/source/blender/editors/sculpt_paint/paint_ops.c (+322, -0) (Diff)
/source/blender/editors/space_action/action_edit.c (+1, -1) (Diff)
/source/blender/editors/space_action/action_select.c (+2, -2) (Diff)
/source/blender/editors/space_outliner/outliner_draw.c (+4, -1) (Diff)
/source/blender/editors/space_outliner/outliner_select.c (+1, -1) (Diff)
/source/blender/editors/space_view3d/space_view3d.c (+6, -0) (Diff)
/source/blender/editors/space_view3d/view3d_gizmo_ruler.c (+7, -6) (Diff)
/source/blender/editors/space_view3d/view3d_select.c (+2, -1) (Diff)
/source/blender/editors/transform/transform_convert.c (+6, -4) (Diff)
/source/blender/editors/transform/transform_convert_gpencil.c (+8, -6) (Diff)
/source/blender/editors/transform/transform_generics.c (+5, -2) (Diff)
/source/blender/editors/transform/transform_gizmo_3d.c (+3, -3) (Diff)
/source/blender/editors/undo/ed_undo.c (+2, -1) (Diff)
/source/blender/gpencil_modifiers/CMakeLists.txt (+1, -0) (Diff)
/source/blender/gpencil_modifiers/intern/MOD_gpencilarmature.c (+6, -3) (Diff)
/source/blender/gpencil_modifiers/intern/MOD_gpencilarray.c (+148, -156) (Diff)
/source/blender/gpencil_modifiers/intern/MOD_gpencilbuild.c (+22, -14) (Diff)
/source/blender/gpencil_modifiers/intern/MOD_gpencilcolor.c (+76, -44) (Diff)
/source/blender/gpencil_modifiers/intern/MOD_gpencilhook.c (+6, -3) (Diff)
/source/blender/gpencil_modifiers/intern/MOD_gpencillattice.c (+6, -3) (Diff)
/source/blender/gpencil_modifiers/intern/MOD_gpencilmirror.c (+20, -10) (Diff)
/source/blender/gpencil_modifiers/intern/MOD_gpencilmultiply.c (+62, -86) (Diff)
/source/blender/gpencil_modifiers/intern/MOD_gpencilnoise.c (+117, -110) (Diff)
/source/blender/gpencil_modifiers/intern/MOD_gpenciloffset.c (+6, -3) (Diff)
/source/blender/gpencil_modifiers/intern/MOD_gpencilopacity.c (+65, -69) (Diff)
/source/blender/gpencil_modifiers/intern/MOD_gpencilsimplify.c (+8, -7) (Diff)
/source/blender/gpencil_modifiers/intern/MOD_gpencilsmooth.c (+43, -9) (Diff)
/source/blender/gpencil_modifiers/intern/MOD_gpencilsubdiv.c (+6, -5) (Diff)
/source/blender/gpencil_modifiers/intern/MOD_gpencilthick.c (+25, -54) (Diff)
/source/blender/gpencil_modifiers/intern/MOD_gpenciltint.c (+70, -46) (Diff)
/source/blender/gpencil_modifiers/intern/MOD_gpencil_util.c (+1, -41) (Diff)
/source/blender/gpencil_modifiers/intern/MOD_gpencil_util.h (+0, -7) (Diff)
/source/blender/gpencil_modifiers/MOD_gpencil_modifiertypes.h (+1, -0) (Diff)
/source/blender/gpu/GPU_framebuffer.h (+2, -0) (Diff)
/source/blender/gpu/GPU_shader_interface.h (+1, -0) (Diff)
/source/blender/gpu/GPU_texture.h (+1, -0) (Diff)
/source/blender/gpu/GPU_vertex_format.h (+2, -0) (Diff)
/source/blender/gpu/intern/gpu_framebuffer.c (+15, -0) (Diff)
/source/blender/gpu/intern/gpu_shader_interface.c (+1, -0) (Diff)
/source/blender/gpu/intern/gpu_vertex_format.c (+41, -0) (Diff)
/source/blender/imbuf/IMB_imbuf.h (+3, -0) (Diff)
/source/blender/imbuf/intern/imageprocess.c (+17, -0) (Diff)
/source/blender/makesdna/DNA_brush_types.h (+155, -16) (Diff)
/source/blender/makesdna/DNA_gpencil_modifier_types.h (+83, -23) (Diff)
/source/blender/makesdna/DNA_gpencil_types.h (+114, -51) (Diff)
/source/blender/makesdna/DNA_material_types.h (+32, -33) (Diff)
/source/blender/makesdna/DNA_object_enums.h (+4, -2) (Diff)
/source/blender/makesdna/DNA_object_types.h (+14, -8) (Diff)
/source/blender/makesdna/DNA_scene_types.h (+57, -89) (Diff)
/source/blender/makesdna/DNA_shader_fx_types.h (+12, -25) (Diff)
/source/blender/makesdna/DNA_userdef_types.h (+2, -3) (Diff)
/source/blender/makesdna/DNA_view3d_types.h (+7, -2) (Diff)
/source/blender/makesdna/intern/dna_rename_defs.h (+4, -0) (Diff)
/source/blender/makesrna/intern/rna_brush.c (+210, -56) (Diff)
/source/blender/makesrna/intern/rna_context.c (+1, -0) (Diff)
/source/blender/makesrna/intern/rna_gpencil.c (+314, -102) (Diff)
/source/blender/makesrna/intern/rna_gpencil_modifier.c (+359, -134) (Diff)
/source/blender/makesrna/intern/rna_material.c (+48, -98) (Diff)
/source/blender/makesrna/intern/rna_object.c (+28, -1) (Diff)
/source/blender/makesrna/intern/rna_scene.c (+105, -31) (Diff)
/source/blender/makesrna/intern/rna_sculpt_paint.c (+98, -215) (Diff)
/source/blender/makesrna/intern/rna_shader_fx.c (+56, -73) (Diff)
/source/blender/makesrna/intern/rna_space.c (+33, -8) (Diff)
/source/blender/makesrna/intern/rna_ui_api.c (+4, -2) (Diff)
/source/blender/makesrna/intern/rna_userdef.c (+0, -19) (Diff)
/source/blender/makesrna/RNA_access.h (+1, -0) (Diff)
/source/blender/makesrna/RNA_enum_types.h (+3, -2) (Diff)
/source/blender/shader_fx/CMakeLists.txt (+0, -1) (Diff)
/source/blender/shader_fx/FX_shader_types.h (+0, -1) (Diff)
/source/blender/shader_fx/intern/FX_shader_blur.c (+5, -4) (Diff)
/source/blender/shader_fx/intern/FX_shader_flip.c (+1, -1) (Diff)
/source/blender/shader_fx/intern/fx_shader_glow.c (+4, -4) (Diff)
/source/blender/shader_fx/intern/FX_shader_pixel.c (+1, -1) (Diff)
/source/blender/shader_fx/intern/FX_shader_rim.c (+1, -1) (Diff)
/source/blender/shader_fx/intern/FX_shader_shadow.c (+1, -1) (Diff)
/source/blender/shader_fx/intern/FX_shader_util.c (+0, -1) (Diff)
/source/blender/shader_fx/intern/FX_shader_wave.c (+1, -1) (Diff)
/source/blender/windowmanager/intern/wm_keymap_utils.c (+3, -0) (Diff)
/source/blender/windowmanager/intern/wm_toolsystem.c (+4, -54) (Diff)
Tehnyt: Miika HämäläinenViimeksi päivitetty: 07.11.2014 14:18MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021