dominikmateasik Posted February 11, 2016 Share Posted February 11, 2016 (edited) Hi guys i tried many approaches already but none of them is satisfactory enough, so i thought i would ask you how you go about this important--all of this using linear workflow ,32bit exr, and not using white beyond 180 RGB Your average interior scene-shooting against a window/windows, trying to lit up your scene with natural light as much as possible (HDRI,VraySky,Sun), pushing the camera in a way to receive the most amount of light possible,now getting highlight burns, and then getting rid of them using tonemapping still in 3d(vray frame buffer highlight burn option etc) or doing it in post(Photoshop-camera raw/masking, After Effects-hdr highlight compression/masking, Magic bullet-shoulder/crush/..., ArionFX-reinhard)--now you have your highlights tonemapped but the problem appears -- it took out lots of your other whites as well,making the picture(whites) all greyish without depth and detail(reinhardish washed out look) and now you have to find a way to raise those lost whites to be more white(less grey) again - how do you achieve the best results,whats your workflow usually,what have you find to be the most efficient solution for you,and what programs do you use for it (PS-curves or "whites" in camera raw,AF-curves or --is there sth like whites in PS camera raw(?),MagicBullet,Arion,VFB+) I know that masking the highligths might be the "best" solution by changing only the burnt areas but lot of times its hard to isolate them since there might be already other objects involved and its quite time inefficient when having to tonemapp multiple images, this is why i created this thread in Vray section as the most efficient way would be doing it still in 3d using frame buffer or plugins like VFB+ or some other way Thanks for taking the time and sorry for the long explanation Edited February 11, 2016 by dominikmateasik Link to comment Share on other sites More sharing options...
Chris MacDonald Posted February 11, 2016 Share Posted February 11, 2016 I can't help but feel you're overthinking an issue. The problem with not using whites beyond 180RGB is that you're stifling your dynamic range, but that's another issue entirely. I just use curves. Job done. Link to comment Share on other sites More sharing options...
dominikmateasik Posted February 11, 2016 Author Share Posted February 11, 2016 I might be overthinking it,that one is true. About 180RGB,well it seems thats a "rule" for getting closer to physically correct shading but of course there is no rule...kind of I always welcome any knowledge on the dynamic range you mentioned so go on if interested- i for sure am. Curves might seem as the most straightforward approach so far,doable still in 3d, thanks for the advice,appreciated. Link to comment Share on other sites More sharing options...
John Dollus Posted February 11, 2016 Share Posted February 11, 2016 well it seems thats a "rule" for getting closer to physically correct shading but of course there is no rule...kind of. nope. no rule at all when it comes to vray other than trying to stay away from pure black or pure white. There's so much going on behind the curtain with cutting corners and importance sampling, that it doesn't pay to be legalistic about such things. In the old days when GI was all based on pure math and ideal diffuse conditions, an RGB value of 180 approximated 70% reflectance surfaces. In lighting design, ceilings are generally 80 percent, walls at 60 and floors at 20 so that 70 percent probably came about from averaging the generally accepted rules of thumb from architecture. These are just pretty pictures so curves, levels and exposure adjustments are usually a far better use of your time. Link to comment Share on other sites More sharing options...
Chris MacDonald Posted February 11, 2016 Share Posted February 11, 2016 Agreed with John, there's a current trend to shy well away from white, but this seems to me to stem from the days when making something pure white, and then adding reflection (or other stuff) would break the rules of physics/thermodynamics by allowing an object to emit more light than it receives. This is all taken care of within render engines these days - just avoid pure white, and pure black as john said, but this is only precautionary and likely wouldn't cause you any issues at all. Link to comment Share on other sites More sharing options...
Francisco Penaloza Posted February 12, 2016 Share Posted February 12, 2016 I agree with Chris and John well said. Also you need to consider that Reinhard is doing what it supposed to, it is not a perfect solution, but so far is one of the solutions that help us to deal to get a color mapping that kind of Match what our eyes sees. Think about it, If your scene was a real photography, the photographer will try to eliminate all those over bright areas some way some how, covering windows, using shades, or using fill lights to neutralize the over all illumination , He also he would take several exposures that later on he will combine in Photoshop, doing exactly what you re doing, masking, adjusting, curving etc etc. The only color mapping I feel give us control of what we would like to is Cinematic color mapping, but this it was created as script for NUKE or Fusion. But even with that you need to render full float and adjust as need it. Link to comment Share on other sites More sharing options...
dominikmateasik Posted February 12, 2016 Author Share Posted February 12, 2016 Thanks Chris,John and Francisco. I was curious whats your opinion/ideal workflow and i have to say i agree with you, especially with the no pure whites or blacks or the point of a photographer doing the same thing- yes very true, basically i was and will be doing it the way all of you described and thanks for your opinions. Yep NUKE seems to have the most control over the subtleties i have seen so far with Cinematic, i might try that one as well,see what it does or doesnt. Link to comment Share on other sites More sharing options...
dominikmateasik Posted February 12, 2016 Author Share Posted February 12, 2016 To make use of having you in this thread already,what is your go-to approach, have you found some subtle differencies inbetween the softwares or different takes on this subject? Do you usually use PS or is it sth else, would be nice to see your choices and reasons behind that. Link to comment Share on other sites More sharing options...
Francisco Penaloza Posted February 12, 2016 Share Posted February 12, 2016 If you are asking me, where I work we try to keep it within Photoshop, rendering out Reinhard but not pushing too much, about 0.5 or so, then using camera RAW in photoshop to do a first pass while still in 32 bits, I just pull down over bright a little and extreme black. making it more even. Then transform to 16 bits and do the rest there. Needless to say I never like it how Photoshop manage 32 bits images. When you open it in camera RAW they just look awful. Since I discovered the cinematic color mapping and if I have the option, I will go to Fusion first and try to get the image there. Sometimes for limitation or my lack of know how in Fusion, I take the first stab there then output a 16 bits image and finish it in Photoshop. If it is animation I go to Fusion first then output a DNxHD and finish in Premiere or After Effects. The few times that I worked for some video project, video cameras output is pretty flat actually, with 16 bits depth or more depending. So now when I setup my scene in Max I try to match that output, flat looking image, but with enough range to accentuate brights and dark later in post. Link to comment Share on other sites More sharing options...
dominikmateasik Posted February 15, 2016 Author Share Posted February 15, 2016 Thank you francisco for your insight,i have tried Nuke instead of fusion and found it really amazing especially with the controls in filmic tonemapping,lots of flexibility and Nuke is pretty subtle in selecting the parts you need to be editing automatically, the only downside is the price and need of another software in pipeline. Magicbullet Looks or Photolooks seems the most promising atm, its shoulder and curves capability seems so naturall and flexible at the same time, zeroing in the right areas to boost the whites (or anything else) automatically. From my understanding the development for Photolooks (in PS) ends so that leaves me with Looks in AF or get familiar in saving as 16bit and going to PS with it with tonemapped highligts. What about the rest of you guys, whats your weapon of choice? Link to comment Share on other sites More sharing options...
Chris MacDonald Posted February 15, 2016 Share Posted February 15, 2016 Photoshop can do anything (to still images) that any of the aforementioned software can do. Link to comment Share on other sites More sharing options...
Nic H Posted February 15, 2016 Share Posted February 15, 2016 what is the cinematic colour mapping in fusion? iv not seen it before and cant find anything about it Link to comment Share on other sites More sharing options...
dominikmateasik Posted February 15, 2016 Author Share Posted February 15, 2016 Its actually called filmic tonemapping-plugin created for Nuke by Simon Lundberg, there should be a counterpart for Fusion as well. Link to comment Share on other sites More sharing options...
Francisco Penaloza Posted February 15, 2016 Share Posted February 15, 2016 Yes Dominik is correct, my memory failed when I was typing my answer. Some one actually transferred that tone mapping from Nuke to fusion as a macro. You have to download that macro and it will work just like regular node. As I type this I am looking for were I did download the first time but I can't find it. I'll see if I can grab it from Fusion and post it here. Link to comment Share on other sites More sharing options...
Francisco Penaloza Posted February 15, 2016 Share Posted February 15, 2016 Here goes: This is the original translation to FUSION only. Filmic tonemap operator is based on John Hable's work for Unchartered 2: http://filmicgames.com/archives/75 Copyright 2013 Martin Geupel Thanks goes to Simon Lundberg for the respective Nuke Gizmo! Feel free to re-use, adapt, distribute and change tool to suit your needs, but please don't sell it. { Tools = ordered() { FilmicTonemapping1 = MacroOperator { CtrlWZoom = false, NameSet = true, Inputs = ordered() { Comments = Input { Value = "Filmic tonemap operator is based on John Hable's work for Unchartered 2: http://filmicgames.com/archives/75\r\n\r\nCopyright 2013 Martin Geupel\r\nThanks goes to Simon Lundberg for the respective Nuke Gizmo!\r\nFeel free to re-use, adapt, distribute and change tool to suit your needs, but please don't sell it.", }, MainInput1 = InstanceInput { SourceOp = "FilmicTonemapping", Source = "Image1", }, Input1 = InstanceInput { SourceOp = "FilmicTonemapping", Source = "NumberIn1", }, Input2 = InstanceInput { SourceOp = "FilmicTonemapping", Source = "NumberIn2", }, Input3 = InstanceInput { SourceOp = "FilmicTonemapping", Source = "NumberIn3", }, Input4 = InstanceInput { SourceOp = "FilmicTonemapping", Source = "NumberIn4", }, Input5 = InstanceInput { SourceOp = "FilmicTonemapping", Source = "NumberIn5", }, Input6 = InstanceInput { SourceOp = "FilmicTonemapping", Source = "NumberIn6", }, Input7 = InstanceInput { SourceOp = "FilmicTonemapping", Source = "NumberIn7", MaxScale = 20, }, }, Outputs = { MainOutput1 = InstanceOutput { SourceOp = "FilmicTonemapping", Source = "Output", }, }, ViewInfo = GroupInfo { Pos = { 819, 217, }, }, Tools = ordered() { FilmicTonemapping = Custom { CtrlWZoom = false, CtrlWShown = false, NameSet = true, Inputs = { NumberIn1 = Input { Value = 0.22, }, NumberIn2 = Input { Value = 0.3, }, NumberIn3 = Input { Value = 0.1, }, NumberIn4 = Input { Value = 0.2, }, NumberIn5 = Input { Value = 0.01, }, NumberIn6 = Input { Value = 0.3, }, NumberIn7 = Input { Value = 11.2, }, LUTIn1 = Input { SourceOp = "FilmicTonemappingLUTIn1", Source = "Value", }, LUTIn2 = Input { SourceOp = "FilmicTonemappingLUTIn2", Source = "Value", }, LUTIn3 = Input { SourceOp = "FilmicTonemappingLUTIn3", Source = "Value", }, LUTIn4 = Input { SourceOp = "FilmicTonemappingLUTIn4", Source = "Value", }, Setup1 = Input { Value = "n5/n6", }, Setup2 = Input { Value = "n4*n6", }, Setup3 = Input { Value = "n4*n5", }, Setup4 = Input { Value = "n3*n2", }, Intermediate1 = Input { Value = "( ( (n7*(n2*n7+s4)+s3) / (n7*(n1*n7+n2)+s2) ) - s1) ", }, RedExpression = Input { Value = "( ( (r1*(n2*r1+s4)+s3) / (r1*(n1*r1+n2)+s2) ) - s1) *i1", }, GreenExpression = Input { Value = "( ( (g1*(n2*g1+s4)+s3) / (g1*(n1*g1+n2)+s2) ) - s1) *i1", }, BlueExpression = Input { Value = "( ( (b1*(n2*b1+s4)+s3) / (b1*(n1*b1+n2)+s2) ) - s1) *i1", }, NumberControls = Input { Value = 1, }, NameforNumber1 = Input { Value = "Shoulder Str.", }, NameforNumber2 = Input { Value = "Linear Str.", }, NameforNumber3 = Input { Value = "Linear Angle", }, NameforNumber4 = Input { Value = "Toe Str.", }, NameforNumber5 = Input { Value = "Toe Num.", }, NameforNumber6 = Input { Value = "Toe Denum.", }, NameforNumber7 = Input { Value = "White Point", }, ShowNumber8 = Input { Value = 0, }, ShowPoint1 = Input { Value = 0, }, ShowPoint2 = Input { Value = 0, }, ShowPoint3 = Input { Value = 0, }, ShowPoint4 = Input { Value = 0, }, ShowLUT1 = Input { Value = 0, }, ShowLUT2 = Input { Value = 0, }, ShowLUT3 = Input { Value = 0, }, ShowLUT4 = Input { Value = 0, }, Comments = Input { Value = "Filmic tonemap operator is based on John Hable's work for Unchartered 2: http://filmicgames.com/archives/75\r\n\r\nCopyright 2013 Martin Geupel\r\nThanks goes to Simon Lundberg for the respective Nuke Gizmo!\r\nFeel free to re-use, adapt, distribute and change tool to suit your needs, but please don't sell it.", }, }, ViewInfo = OperatorInfo { Pos = { 0, 10.15, }, }, }, FilmicTonemappingLUTIn1 = LUTBezier { KeyColorSplines = { [0] = { [0] = { 0, RH = { 0.333333333333333, 0.333333333333333, }, Flags = { Linear = true, }, }, [1] = { 1, LH = { 0.666666666666667, 0.666666666666667, }, Flags = { Linear = true, }, }, }, }, SplineColor = { Red = 204, Green = 0, Blue = 0, }, CtrlWShown = false, }, FilmicTonemappingLUTIn2 = LUTBezier { KeyColorSplines = { [0] = { [0] = { 0, RH = { 0.333333333333333, 0.333333333333333, }, Flags = { Linear = true, }, }, [1] = { 1, LH = { 0.666666666666667, 0.666666666666667, }, Flags = { Linear = true, }, }, }, }, SplineColor = { Red = 0, Green = 204, Blue = 0, }, CtrlWShown = false, }, FilmicTonemappingLUTIn3 = LUTBezier { KeyColorSplines = { [0] = { [0] = { 0, RH = { 0.333333333333333, 0.333333333333333, }, Flags = { Linear = true, }, }, [1] = { 1, LH = { 0.666666666666667, 0.666666666666667, }, Flags = { Linear = true, }, }, }, }, SplineColor = { Red = 0, Green = 0, Blue = 204, }, CtrlWShown = false, }, FilmicTonemappingLUTIn4 = LUTBezier { KeyColorSplines = { [0] = { [0] = { 0, RH = { 0.333333333333333, 0.333333333333333, }, Flags = { Linear = true, }, }, [1] = { 1, LH = { 0.666666666666667, 0.666666666666667, }, Flags = { Linear = true, }, }, }, }, SplineColor = { Red = 204, Green = 204, Blue = 204, }, CtrlWShown = false, }, }, }, FilmicTonemappingLUTIn1 = LUTBezier { KeyColorSplines = { [0] = { [0] = { 0, RH = { 0.333333333333333, 0.333333333333333, }, Flags = { Linear = true, }, }, [1] = { 1, LH = { 0.666666666666667, 0.666666666666667, }, Flags = { Linear = true, }, }, }, }, SplineColor = { Red = 204, Green = 0, Blue = 0, }, CtrlWShown = false, }, FilmicTonemappingLUTIn2 = LUTBezier { KeyColorSplines = { [0] = { [0] = { 0, RH = { 0.333333333333333, 0.333333333333333, }, Flags = { Linear = true, }, }, [1] = { 1, LH = { 0.666666666666667, 0.666666666666667, }, Flags = { Linear = true, }, }, }, }, SplineColor = { Red = 0, Green = 204, Blue = 0, }, CtrlWShown = false, }, FilmicTonemappingLUTIn3 = LUTBezier { KeyColorSplines = { [0] = { [0] = { 0, RH = { 0.333333333333333, 0.333333333333333, }, Flags = { Linear = true, }, }, [1] = { 1, LH = { 0.666666666666667, 0.666666666666667, }, Flags = { Linear = true, }, }, }, }, SplineColor = { Red = 0, Green = 0, Blue = 204, }, CtrlWShown = false, }, FilmicTonemappingLUTIn4 = LUTBezier { KeyColorSplines = { [0] = { [0] = { 0, RH = { 0.333333333333333, 0.333333333333333, }, Flags = { Linear = true, }, }, [1] = { 1, LH = { 0.666666666666667, 0.666666666666667, }, Flags = { Linear = true, }, }, }, }, SplineColor = { Red = 204, Green = 204, Blue = 204, }, CtrlWShown = false, }, }, } Link to comment Share on other sites More sharing options...
dominikmateasik Posted February 15, 2016 Author Share Posted February 15, 2016 Nice one thanks, and Fusion is free so anybody can use it, havent tried it yet but expecting the same as Nuke,very fine tonemapping capabilities (and i guess much more), the node based system is much more likeable than the layered ones IMO too. But the truth stays, easiest go-to approach for most users is still gonna be the photoshop as Chris mentioned-it can do anything (with little bit of tweaking), maybe not the most automated one though(?) Link to comment Share on other sites More sharing options...
Nic H Posted February 15, 2016 Share Posted February 15, 2016 thanks for that. its a bit of a pain to use and very sensitive. prefer the other fusion colour tools to this Link to comment Share on other sites More sharing options...
RyderSK Posted February 16, 2016 Share Posted February 16, 2016 (edited) Filmic mapping doesn't protect from flatness in highlights (it's after all, still highlight compression curve), but to retain better saturation (esp. of blacks) and overall contrast (by keeping small toe on curve in blacks part). It's far superior to Reinhard, but doesn't do miracles. How good something looks still depends on artist's lighting skill. And post-production. With the original controls, it's almost unusable, as mentioned by NIC (too many). VFB+ has simplified the control to pure highlight compression and rich blacks. It's perfectly acceptable to use higher albedo for material than its real-world counter-part, I also do it, because it creates artistically easier way to light interior. If it suites me, I use 220, no big deal. But if you go higher than 180 +/-, let's keep this value (it's arbitrary, could be 150, or anything else), you loose a lot of local contrast, there will be more lightbounce than happens in reality and it makes sampling harder for any raytracer. Renderer will still compute physically correct result for its given input (energy preserving), but it simply won't mimmick our reality, because such material doesn't exist in first place. Physically correct, and physically plausible have still different meaning here. These values were not made up from average luminance/reflection values, but measured directly on materials. You can do so by yourself on MERL database using any common BRDF explorer. But I agree with above guys about over-thinking. It really is about good lighting and good post-production as long as the scene isn't setup completely abysmally. Requires good eye rather than magical plugin (Arion or whatever, I use nothing personally, pure good old curves). Edited February 16, 2016 by RyderSK Link to comment Share on other sites More sharing options...
dominikmateasik Posted February 17, 2016 Author Share Posted February 17, 2016 somehow my previous comment got lost so again: hey juro,thanks for spilling some knowledge and your approach its nice to see getting out of "boundaries" is a normal thing to do,at the end the final picture is the king. overthinking has become an annoying issue of mine lately,that i must admit. and yes i gotto agree there sipmly isnt magical plugin to solve the issues i was more curious about the workflows of you guys with possible outcome of finding the most efficiently-sufficient way to tackle this. and so i did and im really glad to see that not overcomplicating this and sticking to basics like photoshop which is as good as any other softwares, is the usual way, its for me the best outcome there could be btw, regarding whites, i stumbled upon your project Wythe Lane Townhouses-the interior shots especially the one with the blue leathered couch, i was curious how you managed to create such a (almost) homogenic white across the walls ,upping the rgb in 3d(like mentioned above), very smart use of fill lights(to make the spread of light very even) or was it a postwork(using curves or maybe masking them to separate it from the other objects and then manipulating), the contrast is very nice there and as a whole really fine project. thanks again for stopping by and sharing, always a pleasure Link to comment Share on other sites More sharing options...
beestee Posted February 19, 2016 Share Posted February 19, 2016 Go out and take some RAW photos with a DSLR or P+S with the capabilities, and view their output. This is the look that I target with my renderer output, then save to exr format. This is for instances where I really want control over the tones of the final output. For a lot of work, I have simply been using the controls built into the corona framebuffer to rescue quick renderings, saves a lot of troubleshooting for occasions when I don't need perfect results. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now