The Secret to Rendering Vibrant Colors with AgX in Blender is the Raw Workflow

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
many artists have heard about how blender's agx color transform is technically better than standard srgb filmic Aces and others but in practice struggle to actually get the colors they want while using it because the default results can look a bit dull and certain colors like neon yellow are hard to produce I'm Jonathan lampel from CG cookie.com and in this video I'm going to share with you exactly why that is how agx helps you get more vibrant colors rather than less how the mysterious raw color transform might be the key that you're looking for and a few techniques for making colors pop and blender that I haven't really seen other people talking about online I'll show you the exact process that I've been using in my recent projects but you may notice that it's not a super fast setup so thanks to the power of python I was able to make everything I'm going to talk about in this video into a oneclick solution called render raw this add-on gives you Lightroom like controls and presets right in the blender interface so you can fine-tune your colors without any external apps which comes with a lot of benefits you can find it in the link below and I'll talk about it more at the end of the video first though we need to talk about why your renders with agx might be looking dull the issue that agx and all view Trend forms are trying to solve is that the colors that can be seen on your monitor are a tiny tiny fraction of the colors that can be seen in the real world you may have seen a graph like this before where the colorful blob represents the range of Hues that the human eye can see and the triangles represent the color spaces that different monitors aim to display we're missing out on quite a bit near the perimeter which is already a bummer but notice that this chart shows Hue and saturation but not brightness or Lumin which is another important property of color HDR displays are amazing and will hopefully become more prevalent in continue improving but most displays can only show a tiny fraction of the brightness range that we can experience even for the limited set of Hues that it can show when we render a color that is outside of what a normal screen can display we need to somehow map it to a color that it can display which is exactly the job of a color transform some color transforms are better than others standard srgb which is what was available during most of my time with blender blows out any bright or colorful areas and skews the Hue in bright areas towards neon yellow magenta or cyan filmic doesn't blow out but it does skew while Asus does a bit of both this is very unfortunate because it means you can't use very bright lights or saturated materials without blowing things out thus leading to renders looking less realistic a better color transform is one of the key reasons that the lighting in animated films has started to look a lot more natural which is totally separate from the rendering technology itself and takes no extra processing power I also made a whole video a while back on how to use realistic lighting values that I'd also recommend checking out if you want to learn more about that film cameras also have a limitation on how bright of a light they can capture and the way that the physical film desaturates as more light hits it gives this really Pleasant and natural looking falloff agx attempts to emulate this which is why it's called agx in the first place a reference to the silver Halli that captures the color in the chemical process so just like with the real camera the first and most important way to capture better colors is to set the right exposure notice here how I can make the yellow ball pretty saturated by lowering the exposure or I can expose for the blue ball but not both at the same time at least with this Lighting in my opinion having stronger lights and some areas slightly Overexposed or underexposed helps with the realism but that's a creative Choice that's up to you either way picking the right exposure for the color you want to emphasize is always my first step you can also get more punch out of agx by default by choosing a look like Punchy or high contrast but here we see one thing that's crucial to understanding how to get the colors you want perceived brightness and colorfulness have to be balanced on a screen you cannot have a maximum of both if you think about an RGB pixel white is when all three are on together to make it more blue you have to reduce the amount of green and red more colorfulness means less Total light is produced there are some Advanced HDR displays that can be pretty bright and colorful but at a certain point you will always run into the same issue the way you can communicate that something is both bright and colorful is with the context we can tell this light is orange not from looking at the light itself but by looking at the objects affected by it if we add in a little bit of haze it looks even better and for a few hacks for artistic effect let's also adjust the strength using Fel and if you really want you can turn down the strength only for the camera array so the environment is still getting the full amount of light bouncing around but the viewer can see just a hint of the color on the light itself you can also skew the color on purpose towards a hue that is perceptually brighter like making a red light slightly orange in the center this is just as true in painting as it is for rendering if you're already all the way up and the right on the Color Picker your only choic is for making a brighter appearing color are to adjust the saturation or the Hue those are all the ways that I know of to deal with the bright versus colorful conundrum but when it comes to the pixels on your screen you can only have one extreme or the other and once you hit one of those extremes you start to lose information in the details around it and your image starts to clip so the initial desaturated look of agx is actually an important feature and not a bug because staying away from those extremes is exactly how it's able to retain so much information which gives you more power while editing this is basically the same thing that high-end Cinema cameras do to capture as much data as possible the thing about log footage from cameras is that it's not intended to be the final result and everybody knows that you need to do some color grading for it to look good because if you don't the uncorrected log Twitter account would like to have a word with you out back agx for rendering isn't quite the same thing as log footage but a similar idea applies some post transform editing is often helpful for getting the look that you want the trick to getting vibrant colors is to manually push the colors to more extremes after agx has been applied so that the very brightest or most colorful pixels can hit the very limit of what can be displayed without clipping the rest color transforms have to apply the same functions to all types of renders so it makes sense for agx to play it on the safe side so that it can look good with the widest variety of possible renders but since it's a one- siiz fits-all solution that has no idea about the context or intent of the image you should probably be doing some tweaking on top of it that's highly specific to each individual shot when I posted a thread about this on Twitter some folks correctly stated that making edits after agx has been applied will quote unquote break the image meaning that adjustments can be destructive and can result in the colors getting blown out or skewed so it really is best to use post transform edits sparingly with caution and only as the very last step before publishing too many post transform edits can easily cause broken looking results so it's best to use a light touch and again only at the very end of your pipeline or you can go nuts and get some crazy and creative results totally up to you so how do you do this in blender well if you're going to be exporting to any other program for compositing or color correcting then you shouldn't do this in Blender at all and should skip this step it's best to save your image out as a 32bit exr which will not have any transforms applied so that it can stay linear and be used in a linear workflow this is best if for example you're exporting to resolve or nuke for compositing if you're exporting your renders to Photoshop Lightroom or a similar photo editing app for color adjustments well you might want to consider not doing that you can get better results by staying in blender using the workflow I'm about to show you because renders within blender are 32-bit all the way through the compositing chain whereas if you export to something like Photoshop or a similar photo editing software you're going to have to work in 16bit which drastically reduces how extreme your edits can be while still looking good the key to mastering rendered colors and blender is switching to the raw view transform this will initially not look great because it's just trying to display the linear image which our screens aren't capable of doing correctly like we just talked about but we can then apply agx manually over in the compositor with the convert color space node now we can make some edits before the transform and other edits after without this setup if the view transform is just set to agx then any edits made in the compositor will be applied before the transform and you won't be able to push colors to their extremes now that we have this setup though what edits can we make and where should they be placed for my personal setup I've tried to roughly emulate resolves order of operations but with some blender specific changes first are exposure and Gamma exposure needs to be adjusted here rather than the color management panel since that gets applied last and is therefore broken in this workflow the contrast looks of agx are also broken here and are mostly just simultaneous adjustments of exposure and Gamma anyway so I've replicated that control as well then there's a color boost white balance and some glare or Bloom on top of that then after the color transform is where I tweak the final values using curves add sharpening and other detail effects wrestle the Hues and saturations into place and lastly add effects like lens Distortion a vignette or film grain but now let's take a closer look at a few of these effects because some of them are really helpful for getting the colors you want for example white balance color temperature is simply adjusting the balance of blue and red in each pixel while tint is adjusting the amount of green but even though it's a simple effect it can be very useful color boost is a bit more interesting and is one that I really like to use and resolve so I replicated in blender what it does is increase the saturation in inverse proportion to how much saturation the pixel already has so instead of increasing the saturation uniformly for all pixels which would way oversaturate the already saturated areas and cause the colors to blow out color boost brings up the saturation of only the less colorful areas that way we get a more colorful result overall without any clipping reversing this effect can also be a great way to focus on a color and desaturate everything else around it now this custom saturation Noe I have here and also later on transform is pretty great because it has this perceptual control which when set to one attempts to keep the color's brightness perceptually the same if you shift the saturation using the HSV color model the value will technically remain the same but the perceived brightness can shift quite a bit so we can instead shift the saturation using the yuv or okay lab color model which fixes the issue there's a bit more math involved here but I'll leave the formula on the screen so you can copy it if you want I've left a control for how much this gets mixed in with the HSV version so if you use a perceptual method after the transform it can cause some clipping so if I want to get a maximally colorful image what I'll usually do is increase the color boost first which is pre- transform and quite safe and then I'll increase the saturation just a little bit on top of that and then adjust the perceptual control until it's not clipping anymore or just clipping ever so slightly but not enough to be noticeable now I wouldn't go this extreme on most projects but this is the most amount of colorfulness that you're going to be able to get out of any any image of course I don't want to set this up for every render because even just switching it to raw and then going over to the compositor then opening up the asset browser then dragging and dropping nodes in and then adjusting them still takes way too long for something that I want to do for every project so I made an add-on called render raw which just swaps out the default color management panel for one that includes all of these controls and uses the raw workflow under the hood it's also added to the 3D view sidebar now you can just turn it on adjust a couple sliders and be done thanks to the viewport compositor this can all be previewed real time it has all the familiar value controls you could need detail controls for sharpening texture and Clarity and curves that behave as you would expect I often like to bring down this white level to just above to where the values start to clip so that I can use the full dynamic range and have the very brightest spot of my highlights be actually white there are tons of other controls as well like the temperature color boost and saturation effects we talked about but also adjustments that you can make per Hue or per value nudging the Hue can be great for getting those tricky colors like orange just and lowering the saturation a bit in the highlights and shadows can be great for emulating an old school film look also you have access to allive blender blend modes so you can either subtly tweak or not so subtly tweak highlights midtones and shadows to your heart's content one good example of where people tend to struggle with the colors of agx is with fire because if you set fire to a realistic black body intensity then the color that you get out of agx is a lot more salmon colored than a lot of people are expecting now I'm not going to get into whether or not this is more or less L technically realistic but if you want your fire to be more orange for a project or that's what the art director wants here's how you can do it the first thing that I'll generally try is to go over to the color balance panel and take the gamma which is post transform so by doing this we are able to push to more vibrant colors we can go over and take the gamma and just make that just slightly orange and even that tiny little difference makes the fire look so much warmer now you can go really far with this if you really want to but generally I keep it nice and subtle another option is if you don't want to do that is to go to the color per value panel and take the highlights and then skew those a little bit more towards orange as well below that are camera emulation effects like lens Distortion dispersion film grain glare and vignetting I'm particularly proud of the accurate film grain method which is a bit expensive to render but it actually displaces the colors to fit within verono cells per RGB Channel which attempts to mimic how colors get captured on layers film crystals and results in a way more natural look where the grain is more obvious in the less exposed areas unlike some other apps which just uniformly layer on a noise filter and call it a day also all of these controls can be saved as custom presets so you can flip through your favorite looks or share your looks with other people you can find render Raw on the blender Market in the link below if you want to make things super easy for yourself but the main point of this video is just that you can switch to the raw color transform and then use the convert color space node in the compositor to make edits both before and after agx gets applied apped and when you work this way it becomes obvious just how much agx blows any other color transform for rendering out of the water because of how well it preserves detail and allows you as the artist to be in total control over the final result including getting bold and vibrant colors if you want so that's it for this video I hope you learned something useful and special thanks to Troy sadka the original creator of agx for answering my questions and encouraging this exploration even the film grain thing was from a paper he shared so I owe quite a bit of this to his help and I'm excited to see how the color workflow in blender and the overall 3D Community continues to evolve with his work so thanks so much for watching and I'll see you next time
Info
Channel: CG Cookie
Views: 18,952
Rating: undefined out of 5
Keywords: Blender tutorial, learn blender, CG Cookie, blender beginner
Id: hS7uaTquwWc
Channel Id: undefined
Length: 14min 26sec (866 seconds)
Published: Thu Apr 11 2024
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.