Color Editor Dialog

From Synfig Studio :: Documentation
Revision as of 09:41, 4 June 2013 by D.j.a.y (Talk | contribs) (Examples of RGB channels outside [0,100]: screenshot progress)

Jump to: navigation, search
Languages Language: 

English • français • italiano • română • русский


Somes of the screenshots needs to be updated with 0.64.0

The Colors Dialog

The "Colors Dialog" has two sections: one for the color itself and another for the "Alpha" channel (the opacity of the color). The color section (only RGB ones) allows changes to the color channels and shows the "HTML code" of the color. This "HTML code" representation doesn't include the "Alpha" channel.

Color1-0.63.06.png

ColorDialog1-0.63.06.png ColorDialogYUV1-0.63.06.png ColorTest1.png

You can set the color you are editing using two methods: "RGB" composition (Red, Green and Blue channels) or "YUV" composition (Luma, Hue, Saturation, U and V channels). Select one of the tabs to make the modifications using the method you prefer.

All the "RGB" channels and alpha values can be modified using the triangular sliders or the numeric input. In all cases the value can be between 0 and 100. "RGB" values, and alpha values as well, can actually be higher than 100 and lower than 0. If you set RGB values higher than 100 it produces a shifted color with transparency. Same happens if values are lower than 0. You can create an object with a color with "Alpha" = 200. Then if you apply it over another layer with "Alpha" = 100 and use "alpha over" as the composition method. You will then obtain a composited alpha of -100 (-100 = 100-200). Anyway the alpha value will be truncated to be in the [0,100] interval when the image is rendered because images cannot hold negative alpha or bigger than 100% (Are you sure?).

On the other hand, "YUV" channels can only be set using the triangular sliders. It would be a good feature if those channels could also be modified by their numerical values.

Examples of RGB channels outside [0,100]

 Note : Setting colors outside [0,100] did'nt work with Cairo Rendering on the WorkArea either in preview.
 Cairo rendering engine is ARGB32 (8 bits per color channel) but Synfig rendering engine is RGBA128 (32 bits per color channel).
 Cairo admits color channels as float point values between 0.0 and 1.0 (that finally is mapped to a 0-255 unsigned value), anything outside 
 that is clamped by Cairo API.

Here are some examples of what happens when a color channel value is set to values beyond its natural scope.

Color2-0.63.06.png ColorDialog2-0.63.06.png ColorTest2.png

Color3-0.63.06.png ColorDialog3-0.63.06.png ColorTest3.png

Color4-0.63.06.png ColorDialog4-0.63.06.png ColorTest4.png

Color5-0.63.06.png ColorDialog5-0.63.06.png ColorTest5.png

Color6-0.63.06.png ColorDialog6-0.63.06.png ColorTest6.png

Color7-0.63.06.png ColorDialog7-0.63.06.png ColorTest7.png

Color8-0.63.06.png ColorDialog8-0.63.06.png ColorTest8.png

Color9-0.63.06.png ColorDialog9-0.63.06.png ColorTest9.png

Color10-0.63.06.png ColorDialog10-0.63.06.png ColorTest10.png

 In all the examples the Blend Method of the horizontal rectangle was Composite.

In the examples you can notice that negative values for an RGB channel ("overdesaturated") combined with alpha set to an intermediate value affects light colors more than dark colors. On the other hand RGB channel values greater than 100 ("oversaturated") affects dark colors more than light colors.

Examples of Alpha channel outside [0,100]

In the following examples you can see that negative Alpha values and bigger than 100% Alpha values composited with other layers produces very interesting effects. If someone want to explain why those effects are produced, please edit this page! :)

Image:Color11.png Image:ColorDialog11.png Image:ColorTest11.png

Image:Color12.png Image:ColorDialog12.png Image:ColorTest12.png

Image:Color13.png Image:ColorDialog13.png Image:ColorTest13.png

The sample file

This is the file that I've used to produce the color effects. Media:ColorTest.sifz


Languages Language: 

English • français • italiano • română • русский