Commit: d0c9a62904b8e31f66d0b9d7c1f2eec0e3688b50 Author: Falk David Date: Wed Jul 22 17:33:29 2020 +0200 Branches: soc-2020-greasepencil-curve https://developer.blender.org/rBd0c9a62904b8e31f66d0b9d7c1f2eec0e3688b50
GPencil: Update defaults for curve resolution =================================================================== M source/blender/blenkernel/intern/gpencil.c M source/blender/blenloader/intern/versioning_290.c M source/blender/makesdna/DNA_gpencil_types.h M source/blender/makesrna/intern/rna_gpencil.c =================================================================== diff --git a/source/blender/blenkernel/intern/gpencil.c b/source/blender/blenkernel/intern/gpencil.c index 7932be4000f..8d73ad44071 100644 --- a/source/blender/blenkernel/intern/gpencil.c +++ b/source/blender/blenkernel/intern/gpencil.c @@ -536,6 +536,7 @@ bGPdata *BKE_gpencil_data_addnew(Main *bmain, const char name[]) gpd->flag |= GP_DATA_VIEWALIGN; /* always enable object onion skin switch */ gpd->flag |= GP_DATA_SHOW_ONIONSKINS; + /* GP object specific settings */ ARRAY_SET_ITEMS(gpd->line_color, 0.6f, 0.6f, 0.6f, 0.5f); @@ -543,6 +544,8 @@ bGPdata *BKE_gpencil_data_addnew(Main *bmain, const char name[]) gpd->editcurve_resolution = GP_DEFAULT_CURVE_RESOLUTION; gpd->curve_edit_threshold = GP_DEFAULT_CURVE_ERROR; + /* use adaptive curve resolution by default */ + gpd->flag |= GP_DATA_CURVE_ADAPTIVE_RESOLUTION; gpd->zdepth_offset = 0.150f; diff --git a/source/blender/blenloader/intern/versioning_290.c b/source/blender/blenloader/intern/versioning_290.c index 76d25d744fe..807a3505db6 100644 --- a/source/blender/blenloader/intern/versioning_290.c +++ b/source/blender/blenloader/intern/versioning_290.c @@ -307,13 +307,14 @@ void blo_do_versions_290(FileData *fd, Library *UNUSED(lib), Main *bmain) /* Init grease pencil default curve resolution. */ if (!DNA_struct_elem_find(fd->filesdna, "bGPdata", "int", "editcurve_resolution")) { - for (bGPdata *gpd = bmain->gpencils.first; gpd; gpd = gpd->id.next) { + LISTBASE_FOREACH (bGPdata *, gpd, &bmain->gpencils) { gpd->editcurve_resolution = GP_DEFAULT_CURVE_RESOLUTION; + gpd->flag |= GP_DATA_CURVE_ADAPTIVE_RESOLUTION; } } /* Init grease pencil curve editing error threshold. */ if (!DNA_struct_elem_find(fd->filesdna, "bGPdata", "float", "curve_edit_threshold")) { - for (bGPdata *gpd = bmain->gpencils.first; gpd; gpd = gpd->id.next) { + LISTBASE_FOREACH (bGPdata *, gpd, &bmain->gpencils) { gpd->curve_edit_threshold = GP_DEFAULT_CURVE_ERROR; } } diff --git a/source/blender/makesdna/DNA_gpencil_types.h b/source/blender/makesdna/DNA_gpencil_types.h index adac760f8fb..914f422b600 100644 --- a/source/blender/makesdna/DNA_gpencil_types.h +++ b/source/blender/makesdna/DNA_gpencil_types.h @@ -38,8 +38,8 @@ struct Curve; #define GP_MATERIAL_BUFFER_LEN 256 -#define GP_DEFAULT_CURVE_RESOLUTION 16 -#define GP_DEFAULT_CURVE_ERROR 0.01f +#define GP_DEFAULT_CURVE_RESOLUTION 32 +#define GP_DEFAULT_CURVE_ERROR 0.1f /* ***************************************** */ /* GP Stroke Points */ diff --git a/source/blender/makesrna/intern/rna_gpencil.c b/source/blender/makesrna/intern/rna_gpencil.c index b75d290371c..962ea90aa29 100644 --- a/source/blender/makesrna/intern/rna_gpencil.c +++ b/source/blender/makesrna/intern/rna_gpencil.c @@ -2376,11 +2376,12 @@ static void rna_def_gpencil_data(BlenderRNA *brna) prop = RNA_def_property(srna, "use_adaptive_curve_resolution", PROP_BOOLEAN, PROP_NONE); RNA_def_property_boolean_sdna(prop, NULL, "flag", GP_DATA_CURVE_ADAPTIVE_RESOLUTION); + RNA_def_property_boolean_default(prop, true); RNA_def_property_ui_text(prop, "Adaptive Resolution", "Set the resolution of each editcurve segment dynamically depending on " "the length of the segment. The resolution is the number of points " - "generated per unit distance. "); + "generated per unit distance"); RNA_def_property_update( prop, NC_GPENCIL | ND_DATA, "rna_GPencil_stroke_curve_resolution_update"); _______________________________________________ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs