Changeset View
Changeset View
Standalone View
Standalone View
general_concepts/colors/scene_linear_painting.rst
Show All 23 Lines | |||||
24 | So, *Scene Linear is not a single one colorspace, but a **TYPE** of colorspace*. You can have a scene linear space that uses the sRGB/rec 709 colorants, or one that uses adobeRGB, or maybe one that uses rec 2020, as long as it is *linear* and in a *floating point bit depth*. | 24 | So, *Scene Linear is not a single one colorspace, but a **TYPE** of colorspace*. You can have a scene linear space that uses the sRGB/rec 709 colorants, or one that uses adobeRGB, or maybe one that uses rec 2020, as long as it is *linear* and in a *floating point bit depth*. | ||
25 | 25 | | |||
26 | These two factors are for one reason: To make black and white arbitrary values. This might seem a bit weird. But when you are dealing with light-sources, you are dealing with a massive range of contrasts, and will have to decide afterwards which white and black you’d like to have. This is what the scene means in scene-linear, the relevant values are unique per scene, like a real world scene: a flowerfield lit by moonlight, a city in twilight or a sunny beach. You want to be able to put the right emphasis on the most important contrasting values, and being able to choose what is white and what is black is a very powerful tool here. After all, humans in the real world can see much more when they get used to the dark, or to the sun, so why not apply that to how we make our images? | 26 | These two factors are for one reason: To make black and white arbitrary values. This might seem a bit weird. But when you are dealing with light-sources, you are dealing with a massive range of contrasts, and will have to decide afterwards which white and black you’d like to have. This is what the scene means in scene-linear, the relevant values are unique per scene, like a real world scene: a flowerfield lit by moonlight, a city in twilight or a sunny beach. You want to be able to put the right emphasis on the most important contrasting values, and being able to choose what is white and what is black is a very powerful tool here. After all, humans in the real world can see much more when they get used to the dark, or to the sun, so why not apply that to how we make our images? | ||
27 | 27 | | |||
28 | This is also why it needs to be Linear. Gamma and Tone-mapped color spaces are already choosing which contrast is the most important to you. But for that, they too need to choose what is white or black. Linear doesn’t make such assumptions, so much better for when you want to choose yourself. You will eventually want to stick your image through some tone-mapping or gamma correction, but only at the end after you have applied filters and mixed colors! | 28 | This is also why it needs to be Linear. Gamma and Tone-mapped color spaces are already choosing which contrast is the most important to you. But for that, they too need to choose what is white or black. Linear doesn’t make such assumptions, so much better for when you want to choose yourself. You will eventually want to stick your image through some tone-mapping or gamma correction, but only at the end after you have applied filters and mixed colors! | ||
29 | 29 | | |||
30 | In fact, there’s always a non-destructive sort of transform going on while you are working on your image which includes the tone-mapping. This is called a display or view transform, and they provide a sort of set of binoculars into the world of your image. Without it, your computer cannot show these colors properly; it doesn’t know how to interpret it properly, often making the image too dark. Providing such a transform and allowing you to configure it is the prime function of color management. | 30 | In fact, there’s always a non-destructive sort of transform going on while you are working on your image which includes the tone-mapping. This is called a display or view transform, and they provide a sort of set of binoculars into the world of your image. Without it, your computer cannot show these colors properly; it doesn’t know how to interpret it properly, often making the image too dark. Providing such a transform and allowing you to configure it is the prime function of color management. | ||
31 | 31 | | |||
32 | Between different view and display transforms, there’s also a difference in types. Some are really naive, others are more sophisticated, and some need to be used in a certain manner to work properly. The ICC color management can only give a certain type of view transforms, while OCIO color management in the lut docker can give much more complex transforms easily configurable and custom settings that can be shared between programs. | 32 | Between different view and display transforms, there’s also a difference in types. Some are really naive, others are more sophisticated, and some need to be used in a certain manner to work properly. The ICC color management can only give a certain type of view transforms, while OCIO color management in the LUT docker can give much more complex transforms easily configurable and custom settings that can be shared between programs. | ||
33 | 33 | | |||
34 | .. figure:: /images/en/color_category/Krita_scenelinear_cat_01.png | 34 | .. figure:: /images/en/color_category/Krita_scenelinear_cat_01.png | ||
35 | :figwidth: 800 | 35 | :figwidth: 800 | ||
36 | :align: center | 36 | :align: center | ||
37 | 37 | | |||
38 | Above, an example of the more naive transform provided by going from scene-linear sRGB to regular sRGB, and to the right a more sophisticated transform coming from the filmic blender ocio configuration. Look at the difference between the paws. Image by Wolthera van Hövell tot Westerflier, License: CC-BY-SA | 38 | Above, an example of the more naive transform provided by going from scene-linear sRGB to regular sRGB, and to the right a more sophisticated transform coming from the filmic blender OCIO configuration. Look at the difference between the paws. Image by Wolthera van Hövell tot Westerflier, License: CC-BY-SA | ||
39 | 39 | | |||
40 | Conversely, transforming and interpreting your image’s colors is the only thing OCIO can do, and it can do it with really complex transforms, really fast. It doesn’t understand what your image’s color space is originally, doesn’t understand what CMYK is, and there’s also no such thing as a OCIO color profile. Therefore you will need to switch to an ICC workflow if you wish to prepare for print. | 40 | Conversely, transforming and interpreting your image’s colors is the only thing OCIO can do, and it can do it with really complex transforms, really fast. It doesn’t understand what your image’s color space is originally, doesn’t understand what CMYK is, and there’s also no such thing as a OCIO color profile. Therefore you will need to switch to an ICC workflow if you wish to prepare for print. | ||
41 | 41 | | |||
42 | Yes, but what is the point? | 42 | Yes, but what is the point? | ||
43 | --------------------------- | 43 | --------------------------- | ||
44 | 44 | | |||
45 | The point is making things easier in the long run: | 45 | The point is making things easier in the long run: | ||
46 | 46 | | |||
▲ Show 20 Lines • Show All 49 Lines • ▼ Show 20 Line(s) | |||||
96 | * Make a special brush that is more opaque than the regular sketching brushes you use. | 96 | * Make a special brush that is more opaque than the regular sketching brushes you use. | ||
97 | * Or conversely, sketch with white instead. | 97 | * Or conversely, sketch with white instead. | ||
98 | * For painting, block out the shapes with a big opaque brush before you start doing your mixing. | 98 | * For painting, block out the shapes with a big opaque brush before you start doing your mixing. | ||
99 | 99 | | |||
100 | Overall, this is something that will take a little while getting used to, but you will get used to it soon enough. | 100 | Overall, this is something that will take a little while getting used to, but you will get used to it soon enough. | ||
101 | 101 | | |||
102 | Finally, there’s the **issue of size**. | 102 | Finally, there’s the **issue of size**. | ||
103 | 103 | | |||
104 | 16 bit float per channel images are big. 32 bit float per channel images are bigger. This means that they will eat RAM and that painting and filtering will be slower. This is something that will fix itself over the years, but not many people have such a high-end pc yet, so it can be a blocker. | 104 | 16 bit float per channel images are big. 32 bit float per channel images are bigger. This means that they will eat RAM and that painting and filtering will be slower. This is something that will fix itself over the years, but not many people have such a high-end PC yet, so it can be a blocker. | ||
105 | 105 | | |||
106 | So the issues are tools, expectations and size. | 106 | So the issues are tools, expectations and size. | ||
107 | 107 | | |||
108 | In Summary | 108 | In Summary | ||
109 | ~~~~~~~~~~ | 109 | ~~~~~~~~~~ | ||
110 | 110 | | |||
111 | Scene Linear Painting is painting an image in a color space that is linear and has a floating point bit depth. This does not assume anything about the values of black and white, so you can only use tools that don’t assume anything about the values of black and white. It has the advantage of having nicer filter results and better color mixtures as well as better interoperability with other scene-linear output. | 111 | Scene Linear Painting is painting an image in a color space that is linear and has a floating point bit depth. This does not assume anything about the values of black and white, so you can only use tools that don’t assume anything about the values of black and white. It has the advantage of having nicer filter results and better color mixtures as well as better interoperability with other scene-linear output. | ||
112 | 112 | | |||
113 | To be able to view such an image you use a view transform, also called a display conversion. Which means that if you wish to finalise your image for the web, you make a copy of the image that goes through a display conversion or view transform that then gets saved to png or jpeg or tiff. | 113 | To be able to view such an image you use a view transform, also called a display conversion. Which means that if you wish to finalize your image for the web, you make a copy of the image that goes through a display conversion or view transform that then gets saved to png or jpeg or tiff. | ||
114 | 114 | | |||
115 | Getting to actual painting | 115 | Getting to actual painting | ||
116 | -------------------------- | 116 | -------------------------- | ||
117 | 117 | | |||
118 | Now we’ve covered the theory, let us look at a workflow for painting scene linear. | 118 | Now we’ve covered the theory, let us look at a workflow for painting scene linear. | ||
119 | 119 | | |||
120 | Setting up the Canvas | 120 | Setting up the Canvas | ||
121 | ~~~~~~~~~~~~~~~~~~~~~ | 121 | ~~~~~~~~~~~~~~~~~~~~~ | ||
Show All 32 Lines | |||||
154 | 154 | | |||
155 | You can even combine this with a value based workflow by opening a new view and setting the component to luminosity. That way you can see both the grayscale as well as the lighting based version of the image next to one another. | 155 | You can even combine this with a value based workflow by opening a new view and setting the component to luminosity. That way you can see both the grayscale as well as the lighting based version of the image next to one another. | ||
156 | 156 | | |||
157 | The keen minded will notice that a lighting based workflow kind of resembles the idea of a light-pass and a color pas in 3d rendering. And indeed, it is basically the same, so you can use lighting passes from 3d renders here, just save them as EXR and import them as a layer. One of the examples where scene linear painting simplifies combining methods. | 157 | The keen minded will notice that a lighting based workflow kind of resembles the idea of a light-pass and a color pas in 3d rendering. And indeed, it is basically the same, so you can use lighting passes from 3d renders here, just save them as EXR and import them as a layer. One of the examples where scene linear painting simplifies combining methods. | ||
158 | 158 | | |||
159 | Finishing up | 159 | Finishing up | ||
160 | ~~~~~~~~~~~~ | 160 | ~~~~~~~~~~~~ | ||
161 | 161 | | |||
162 | When you are done, you will want to apply the view transform you have been using to the image (at the least, if you want to post the end result on the internet)... This is called LUT baking and not possible yet in Krita. Therefore you will have to save out your image in EXR and open it in either Blender or Natron. Then, in Blender it is enough to just use the same ocio config, select the right values and save the result as a png. | 162 | When you are done, you will want to apply the view transform you have been using to the image (at the least, if you want to post the end result on the internet)... This is called LUT baking and not possible yet in Krita. Therefore you will have to save out your image in EXR and open it in either Blender or Natron. Then, in Blender it is enough to just use the same OCIO config, select the right values and save the result as a png. | ||
163 | 163 | | |||
164 | You can even use some of Blender’s or Natron’s filters at this stage, and when working with others, you would save out in EXR so that others can use those. | 164 | You can even use some of Blender’s or Natron’s filters at this stage, and when working with others, you would save out in EXR so that others can use those. |