Animation: Move Graph Editor settings to User Preferences #104532
|
@ -157,6 +157,7 @@ const UserDef U_default = {
|
|||
.glalphaclip = 0.004,
|
||||
.autokey_mode = (AUTOKEY_MODE_NORMAL & ~AUTOKEY_ON),
|
||||
.autokey_flag = AUTOKEY_FLAG_XYZ2RGB,
|
||||
.animation_flag = USER_ANIM_HIGH_QUALITY_DRAWING,
|
||||
.text_render = 0,
|
||||
.navigation_mode = VIEW_NAVIGATION_WALK,
|
||||
.view_rotate_sensitivity_turntable = DEG2RAD(0.4),
|
||||
|
|
|
@ -107,11 +107,6 @@ class GRAPH_MT_view(Menu):
|
|||
layout.separator()
|
||||
layout.prop(st, "show_markers")
|
||||
|
||||
layout.separator()
|
||||
layout.prop(st, "use_beauty_drawing")
|
||||
|
||||
layout.separator()
|
||||
|
||||
layout.prop(st, "show_extrapolation")
|
||||
|
||||
layout.prop(st, "show_handles")
|
||||
|
|
|
@ -560,6 +560,7 @@ class USERPREF_PT_animation_fcurves(AnimationPanel, CenterAlignMixIn, Panel):
|
|||
flow.prop(edit, "use_insertkey_xyz_to_rgb", text="XYZ to RGB")
|
||||
flow.prop(edit, "use_anim_channel_group_colors")
|
||||
flow.prop(edit, "show_only_selected_curve_keyframes")
|
||||
flow.prop(edit, "fcurve_high_quality_drawing")
|
||||
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
|
|
|
@ -406,7 +406,7 @@ static void draw_fcurve_handles(SpaceGraph *sipo, FCurve *fcu)
|
|||
uint color = GPU_vertformat_attr_add(
|
||||
format, "color", GPU_COMP_U8, 4, GPU_FETCH_INT_TO_FLOAT_UNIT);
|
||||
immBindBuiltinProgram(GPU_SHADER_3D_FLAT_COLOR);
|
||||
if ((sipo->flag & SIPO_BEAUTYDRAW_OFF) == 0) {
|
||||
if (U.animation_flag & USER_ANIM_HIGH_QUALITY_DRAWING) {
|
||||
GPU_line_smooth(true);
|
||||
}
|
||||
GPU_blend(GPU_BLEND_ALPHA);
|
||||
|
@ -482,7 +482,7 @@ static void draw_fcurve_handles(SpaceGraph *sipo, FCurve *fcu)
|
|||
immEnd();
|
||||
immUnbindProgram();
|
||||
GPU_blend(GPU_BLEND_NONE);
|
||||
if ((sipo->flag & SIPO_BEAUTYDRAW_OFF) == 0) {
|
||||
if (U.animation_flag & USER_ANIM_HIGH_QUALITY_DRAWING) {
|
||||
GPU_line_smooth(false);
|
||||
}
|
||||
}
|
||||
|
@ -515,7 +515,7 @@ static void draw_fcurve_sample_control(
|
|||
}
|
||||
|
||||
/* helper func - draw keyframe vertices only for an F-Curve */
|
||||
static void draw_fcurve_samples(SpaceGraph *sipo, ARegion *region, FCurve *fcu)
|
||||
static void draw_fcurve_samples(ARegion *region, FCurve *fcu)
|
||||
{
|
||||
FPoint *first, *last;
|
||||
float hsize, xscale, yscale;
|
||||
|
@ -531,7 +531,7 @@ static void draw_fcurve_samples(SpaceGraph *sipo, ARegion *region, FCurve *fcu)
|
|||
/* draw */
|
||||
if (first && last) {
|
||||
/* anti-aliased lines for more consistent appearance */
|
||||
if ((sipo->flag & SIPO_BEAUTYDRAW_OFF) == 0) {
|
||||
if (U.animation_flag & USER_ANIM_HIGH_QUALITY_DRAWING) {
|
||||
GPU_line_smooth(true);
|
||||
}
|
||||
GPU_blend(GPU_BLEND_ALPHA);
|
||||
|
@ -547,7 +547,7 @@ static void draw_fcurve_samples(SpaceGraph *sipo, ARegion *region, FCurve *fcu)
|
|||
immUnbindProgram();
|
||||
|
||||
GPU_blend(GPU_BLEND_NONE);
|
||||
if ((sipo->flag & SIPO_BEAUTYDRAW_OFF) == 0) {
|
||||
if (U.animation_flag & USER_ANIM_HIGH_QUALITY_DRAWING) {
|
||||
GPU_line_smooth(false);
|
||||
}
|
||||
}
|
||||
|
@ -565,7 +565,6 @@ static void draw_fcurve_curve(bAnimContext *ac,
|
|||
const bool use_nla_remap,
|
||||
const bool draw_extrapolation)
|
||||
{
|
||||
SpaceGraph *sipo = (SpaceGraph *)ac->sl;
|
||||
short mapping_flag = ANIM_get_normalization_flags(ac);
|
||||
|
||||
/* when opening a blend file on a different sized screen or while dragging the toolbar this can
|
||||
|
@ -601,7 +600,7 @@ static void draw_fcurve_curve(bAnimContext *ac,
|
|||
float pixels_per_sample = 1.5f;
|
||||
float samplefreq = pixels_per_sample / UI_view2d_scale_get_x(v2d);
|
||||
|
||||
if (sipo->flag & SIPO_BEAUTYDRAW_OFF) {
|
||||
if (!(U.animation_flag & USER_ANIM_HIGH_QUALITY_DRAWING)) {
|
||||
/* Low Precision = coarse lower-bound clamping
|
||||
*
|
||||
* Although the "Beauty Draw" flag was originally for AA'd
|
||||
|
@ -1030,7 +1029,7 @@ static void draw_fcurve(bAnimContext *ac, SpaceGraph *sipo, ARegion *region, bAn
|
|||
}
|
||||
|
||||
/* anti-aliased lines for less jagged appearance */
|
||||
if ((sipo->flag & SIPO_BEAUTYDRAW_OFF) == 0) {
|
||||
if (U.animation_flag & USER_ANIM_HIGH_QUALITY_DRAWING) {
|
||||
GPU_line_smooth(true);
|
||||
}
|
||||
GPU_blend(GPU_BLEND_ALPHA);
|
||||
|
@ -1105,7 +1104,7 @@ static void draw_fcurve(bAnimContext *ac, SpaceGraph *sipo, ARegion *region, bAn
|
|||
|
||||
immUnbindProgram();
|
||||
|
||||
if ((sipo->flag & SIPO_BEAUTYDRAW_OFF) == 0) {
|
||||
if (U.animation_flag & USER_ANIM_HIGH_QUALITY_DRAWING) {
|
||||
GPU_line_smooth(false);
|
||||
}
|
||||
GPU_blend(GPU_BLEND_NONE);
|
||||
|
@ -1154,7 +1153,7 @@ static void draw_fcurve(bAnimContext *ac, SpaceGraph *sipo, ARegion *region, bAn
|
|||
}
|
||||
else {
|
||||
/* samples: only draw two indicators at either end as indicators */
|
||||
draw_fcurve_samples(sipo, region, fcu);
|
||||
draw_fcurve_samples(region, fcu);
|
||||
}
|
||||
|
||||
GPU_matrix_pop();
|
||||
|
@ -1301,7 +1300,7 @@ void graph_draw_ghost_curves(bAnimContext *ac, SpaceGraph *sipo, ARegion *region
|
|||
GPU_line_width(3.0f);
|
||||
|
||||
/* anti-aliased lines for less jagged appearance */
|
||||
if ((sipo->flag & SIPO_BEAUTYDRAW_OFF) == 0) {
|
||||
if (U.animation_flag & USER_ANIM_HIGH_QUALITY_DRAWING) {
|
||||
GPU_line_smooth(true);
|
||||
}
|
||||
GPU_blend(GPU_BLEND_ALPHA);
|
||||
|
@ -1334,7 +1333,7 @@ void graph_draw_ghost_curves(bAnimContext *ac, SpaceGraph *sipo, ARegion *region
|
|||
|
||||
immUnbindProgram();
|
||||
|
||||
if ((sipo->flag & SIPO_BEAUTYDRAW_OFF) == 0) {
|
||||
if (U.animation_flag & USER_ANIM_HIGH_QUALITY_DRAWING) {
|
||||
GPU_line_smooth(false);
|
||||
}
|
||||
GPU_blend(GPU_BLEND_NONE);
|
||||
|
|
|
@ -496,8 +496,6 @@ typedef enum eGraphEdit_Flag {
|
|||
SIPO_SELVHANDLESONLY = (1 << 9),
|
||||
/* don't perform realtime updates */
|
||||
SIPO_NOREALTIMEUPDATES = (1 << 11),
|
||||
/* don't draw curves with AA ("beauty-draw") for performance */
|
||||
SIPO_BEAUTYDRAW_OFF = (1 << 12),
|
||||
/* draw grouped channels with colors set in group */
|
||||
/* SIPO_NODRAWGCOLORS = (1 << 13), DEPRECATED */
|
||||
/* normalize curves on display */
|
||||
|
|
|
@ -1221,6 +1221,7 @@ typedef enum eAutokey_Flag {
|
|||
typedef enum eUserpref_Anim_Flags {
|
||||
USER_ANIM_SHOW_CHANNEL_GROUP_COLORS = (1 << 0),
|
||||
USER_ANIM_ONLY_SHOW_SELECTED_CURVE_KEYS = (1 << 1),
|
||||
USER_ANIM_HIGH_QUALITY_DRAWING = (1 << 2),
|
||||
} eUserpref_Anim_Flags;
|
||||
|
||||
/** #UserDef.transopts */
|
||||
|
|
|
@ -6316,14 +6316,6 @@ static void rna_def_space_graph(BlenderRNA *brna)
|
|||
prop, "Only Selected Keyframes Handles", "Only show and edit handles of selected keyframes");
|
||||
RNA_def_property_update(prop, NC_SPACE | ND_SPACE_GRAPH, NULL);
|
||||
|
||||
prop = RNA_def_property(srna, "use_beauty_drawing", PROP_BOOLEAN, PROP_NONE);
|
||||
RNA_def_property_boolean_negative_sdna(prop, NULL, "flag", SIPO_BEAUTYDRAW_OFF);
|
||||
RNA_def_property_ui_text(prop,
|
||||
"Use High Quality Display",
|
||||
"Display F-Curves using Anti-Aliasing and other fancy effects "
|
||||
"(disable for better performance)");
|
||||
RNA_def_property_update(prop, NC_SPACE | ND_SPACE_GRAPH, NULL);
|
||||
|
||||
prop = RNA_def_property(srna, "show_markers", PROP_BOOLEAN, PROP_NONE);
|
||||
RNA_def_property_boolean_sdna(prop, NULL, "flag", SIPO_SHOW_MARKERS);
|
||||
RNA_def_property_ui_text(
|
||||
|
|
|
@ -5155,6 +5155,15 @@ static void rna_def_userdef_edit(BlenderRNA *brna)
|
|||
"Only keyframes of selected F-Curves are visible and editable");
|
||||
RNA_def_property_update(prop, NC_SPACE | ND_SPACE_GRAPH, NULL);
|
||||
|
||||
/* Graph Editor line drawing quality. */
|
||||
prop = RNA_def_property(srna, "fcurve_high_quality_drawing", PROP_BOOLEAN, PROP_NONE);
|
||||
RNA_def_property_boolean_sdna(prop, NULL, "animation_flag", USER_ANIM_HIGH_QUALITY_DRAWING);
|
||||
RNA_def_property_ui_text(prop,
|
||||
"FCurve High Quality Display",
|
||||
"Display F-Curves using Anti-Aliasing and other fancy effects "
|
||||
"(disable for better performance)");
|
||||
RNA_def_property_update(prop, NC_SPACE | ND_SPACE_GRAPH, NULL);
|
||||
|
||||
/* grease pencil */
|
||||
prop = RNA_def_property(srna, "grease_pencil_manhattan_distance", PROP_INT, PROP_PIXEL);
|
||||
RNA_def_property_int_sdna(prop, NULL, "gp_manhattandist");
|
||||
|
|
Loading…
Reference in New Issue