diff options
author | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2012-10-25 17:31:45 +0400 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2012-10-25 17:31:45 +0400 |
commit | a64016c71a87475e43fd31c9169eed3caa8f6195 (patch) | |
tree | ef5a486ac8ebd03b80897de65d69b14febf5739a | |
parent | 15362e1c02ece1e506b880c17c7af17502ffc5bb (diff) |
Camera: bring Title Safe display up to date, making it a Safe Areas option that
shows both title safe and action safe areas following more modern standards.
Patch #32822 by Harley Acheson, full description:
Our current "title safe" camera display option is anachronistic. It shows a
border of 10% on all edges, which used to be the recommended title safe area
for 4:3 content on standard definition CRT televisions. However we are very
unlikely to create new projects that output for SD TV at that aspect ratio.
This patch change the option to "safe areas" with and indicates the
"title safe" area (also known as "graphic safe") as well as the "action safe"
area. "Title Safe" is an area visible by all reasonably maintained sets, where
text was certain not to be cut off. "Action Safe" is a larger area that
represented where a "perfect" set (with high precision to allow less
overscanning) would cut the image off.
The current recommendation for Action Safe is 3.5% on all edges, which is the
maxiumum overscan for TVs now. The recommended title safe is now 5% vertically
and 10% horizontally for content that is of wider aspect ratio than 4:3. The
reason for the difference between horizontal versus vertical margin is because
wider content would be letterboxed on an older 4:3 television, giving it
additional margin.
-rw-r--r-- | release/scripts/startup/bl_ui/properties_data_camera.py | 2 | ||||
-rw-r--r-- | source/blender/editors/space_view3d/view3d_draw.c | 21 | ||||
-rw-r--r-- | source/blender/makesrna/intern/rna_camera.c | 2 |
3 files changed, 10 insertions, 15 deletions
diff --git a/release/scripts/startup/bl_ui/properties_data_camera.py b/release/scripts/startup/bl_ui/properties_data_camera.py index 49457b8e569..c8d3bf65ef6 100644 --- a/release/scripts/startup/bl_ui/properties_data_camera.py +++ b/release/scripts/startup/bl_ui/properties_data_camera.py @@ -175,7 +175,7 @@ class DATA_PT_camera_display(CameraButtonsPanel, Panel): col = split.column() col.prop(cam, "show_limits", text="Limits") col.prop(cam, "show_mist", text="Mist") - col.prop(cam, "show_title_safe", text="Title Safe") + col.prop(cam, "show_title_safe", text="Safe Areas") col.prop(cam, "show_sensor", text="Sensor") col.prop(cam, "show_name", text="Name") diff --git a/source/blender/editors/space_view3d/view3d_draw.c b/source/blender/editors/space_view3d/view3d_draw.c index 18598a134af..415ee5a0802 100644 --- a/source/blender/editors/space_view3d/view3d_draw.c +++ b/source/blender/editors/space_view3d/view3d_draw.c @@ -1060,7 +1060,7 @@ static void drawviewborder_triangle(float x1, float x2, float y1, float y2, cons static void drawviewborder(Scene *scene, ARegion *ar, View3D *v3d) { - float fac, a; + float fac, hmargin, vmargin; float x1, x2, y1, y2; float x1i, x2i, y1i, y2i; float x3, y3, x4, y4; @@ -1214,20 +1214,15 @@ static void drawviewborder(Scene *scene, ARegion *ar, View3D *v3d) } if (ca->flag & CAM_SHOWTITLESAFE) { - fac = 0.1; - - a = fac * (x2 - x1); - x1 += a; - x2 -= a; - - a = fac * (y2 - y1); - y1 += a; - y2 -= a; - UI_ThemeColorBlendShade(TH_WIRE, TH_BACK, 0.25, 0); - uiSetRoundBox(UI_CNR_ALL); - uiDrawBox(GL_LINE_LOOP, x1, y1, x2, y2, 12.0); + hmargin = 0.1 * (x2 - x1); + vmargin = 0.05 * (y2 - y1); + uiDrawBox(GL_LINE_LOOP, x1+hmargin, y1+vmargin, x2-hmargin, y2-vmargin, 2.0); + + hmargin = 0.035 * (x2 - x1); + vmargin = 0.035 * (y2 - y1); + uiDrawBox(GL_LINE_LOOP, x1+hmargin, y1+vmargin, x2-hmargin, y2-vmargin, 2.0); } if (ca && (ca->flag & CAM_SHOWSENSOR)) { /* determine sensor fit, and get sensor x/y, for auto fit we diff --git a/source/blender/makesrna/intern/rna_camera.c b/source/blender/makesrna/intern/rna_camera.c index ad926d6a08e..b72bba0422a 100644 --- a/source/blender/makesrna/intern/rna_camera.c +++ b/source/blender/makesrna/intern/rna_camera.c @@ -258,7 +258,7 @@ void RNA_def_camera(BlenderRNA *brna) prop = RNA_def_property(srna, "show_title_safe", PROP_BOOLEAN, PROP_NONE); RNA_def_property_boolean_sdna(prop, NULL, "flag", CAM_SHOWTITLESAFE); - RNA_def_property_ui_text(prop, "Show Title Safe", "Show indicators for the title safe zone in Camera view"); + RNA_def_property_ui_text(prop, "Show Safe Areas", "Show TV title safe and action safe zones in Camera view"); RNA_def_property_update(prop, NC_OBJECT | ND_DRAW, NULL); prop = RNA_def_property(srna, "show_name", PROP_BOOLEAN, PROP_NONE); |