PDA

View Full Version : Photorealism and expanding the dynamic range in LW???



Revanto
12-04-2017, 06:16 PM
Hiya,

I came across this interesting tutorial the other day:

https://www.youtube.com/watch?v=m9AT7H4GGrA

I totally suck when it comes to lighting but I am taking steps to try to unravel the mysteries of better rendering for myself. Anyway, since I am so uber-sucky at this sort of thing, I was wondering if anyone could tell me how I can set something like this in LW 9.6?

Either via settings, plugin or by using a cheat would be OK.

Even if it means I have to composite things in the end then that will be fine, too.

I appreciate any feedback on the matter. Oh, and my brain goes on holiday when anything gets too technical so if it could be kept to layman's terms, I would truly appreciate it.

Thanks in advance.

Cheers,
Revanto :p

djwaterman
12-05-2017, 02:00 AM
Well firstly you must use the srgb preset for your color space, that's sort of what the filmic blender setting is doing, just don't get caught up in the naming of these settings, sRGB preset in LW will give you a broad dynamic range that you can then grade down to your liking in post, Filmic allows you to choose some pre-set grading when you save the image, or you can leave it ungraded and do that yourself in post. But quite simply, you will always suck at lighting if you don't make use of the sRGB preset. The Blender video describes the process quite well, it's pretty much same same in LW, LW is very easy to light with unless you do it the old way that we did before the sRGB preset came to make it all so easy for us.

Well the second thing is that your surfaces should be reflective and energy conserving, with fresnel.

Basically the trick is simply good surfaces and the correct color space make lighting in a computer program as easy as it is in real life, just place your lights,(lights should have falloff) and that's it.

Download the DP lights (http://dpont.pagesperso-orange.fr/plugins/lights/Additional_Lights.html), I prefer them myself.

But really, get those two things right and you can follow any other tutorial. Or just put a light in your scene and move it around, that's all there is to it if you think about it.

Reflective subjects need some sort of environment to show up in the reflections, that's either a HDR image world or a 3D environment.

RPSchmidt
12-05-2017, 07:48 AM
Is the sRGB colorspace an option for LW 9.6?

At work I am still using LW 9.3.1 (getting these guys to upgrade has been a grueling uphill battle) but at home I use LW 2015; at home I use sRGB, but I haven't discovered the option for setting the color management in LW 9.3 to sRGB.

From information on lighting and tutorials, I've seen it mentioned that LW has used a linear colorspace for a long time, but I thought that color management wasn't in until LW 10?

If that isn't true, I would love to know how to set my work version of LW to an sRGB colorspace!

RebelHill
12-05-2017, 09:34 AM
There is no colourspace option previous to V10. You'll need to do it all manually. For any images/textures you bring in, use the processing tab on the image editor and apply the FP gamma filter set to 0.454545. Then, on the processing tab of the effects panel add the same FP gamma set to 2.2.

RPSchmidt
12-05-2017, 10:49 AM
There is no colourspace option previous to V10. You'll need to do it all manually. For any images/textures you bring in, use the processing tab on the image editor and apply the FP gamma filter set to 0.454545. Then, on the processing tab of the effects panel add the same FP gamma set to 2.2.

Thanks! I thought it was something like that, because I could never find a way to change the colorspace at work.

Thanks also for the filter settings... hopefully I won't need them soon because we are supposed to be getting our upgrade!

jwiede
12-05-2017, 05:51 PM
Thanks! I thought it was something like that, because I could never find a way to change the colorspace at work.

Thanks also for the filter settings... hopefully I won't need them soon because we are supposed to be getting our upgrade!

Well, it's best to understand what's occurring "under the covers" w.r.t. gamma correction, instead of just relying on software to keep everything sane (because when you most need it, it will fail to do so).

Revanto
12-05-2017, 08:17 PM
Thanks, guys, so much for this info. I am eagerly awaiting to upgrade my version of LW but want to save my money until the new version comes out (Yeah, I realise that I may have a long wait ahead of me).

Info like what you've given is gold to me.

Thanks again.

Much appreciations to all,
Revanto :p

Asticles
12-07-2017, 12:57 PM
Just tested the video part that talks about the color exposure on modo and LW.

LW

https://vimeo.com/246326184
https://vimeo.com/246326184

Regards

Asticles
12-07-2017, 01:00 PM
And modo


https://vimeo.com/246324149

https://vimeo.com/246324149

Video link seems not to work well.

Regards

Rayek
12-07-2017, 03:24 PM
Just tested the video part that talks about the color exposure on modo and LW.

LW

https://vimeo.com/246326184
https://vimeo.com/246326184

Regards

I did my own testing just now with the same scene - no matter what I try in the render settings, it renders in SRGB space - not scene referred, but display referred. How do we render this correctly in Lightwave? What settings are required? How do we light linearly in Layout?

Rayek
12-07-2017, 03:48 PM
Ah, solved. As in Blender, the colours cannot be pure. Then it renders correctly.

Revanto
12-07-2017, 07:26 PM
Adjusting the gamma for images seems simple enough but how do you figure out adjusting the pure colours from LW itself (IE diffuse colour)?

I found this and I think it can can others like me with LW9+...

https://www.lightwave3d.com/assets/plugins/entry/sg_cctools/

I think the picker plugin may help with what I just asked BUT, out of curiosity, how would one adjust the gamma of a selected diffuse colour (not an image) without nodes or a plugin?

Sorry if this sounds like a dumb question.

Revanto :p

Amerelium
12-08-2017, 03:56 AM
This might be a silly question, but:

Why do I want / need to mess with the colour spacing.

I texture surfaces, light them and let radiosity do the rest - with the help of secondary lighting if needed.

Got any good examples for me?

gerry_g
12-08-2017, 06:24 AM
radiosity will look different in linear as opposed to non linear space, non linear will be yellow cast overly hot and blown out with crushed blacks, but it's your choice

Amerelium
12-08-2017, 07:50 AM
all textures have default settings 'default' in LW11 - but is default linear or non-linear?

gerry_g
12-08-2017, 08:21 AM
default means nothing as in nothing has been applied per the old pre LW11 workspace, only when you choose a preset from the drop down menu such as sRGB do you have a true profile, sRGB looks flatter tonally but gives better detail in the blacks I usually drop the bounces to one if it is an open air scene to gain a little contrast, but the whole point is that you should follow the workflow all the way through and output in Radiance format or any of the HDR settings that can be opened by your image editor and balance the image there rather than trying to do it all in the render

RebelHill
12-08-2017, 09:46 AM
Why do I want / need to mess with the colour spacing.

The real answer is pretty long and involved, but the cut and thrust is this...

The renderer does all its calculations of lighting, shading, etc in linear space (basically, all values of things are just added up in a nice plain linear fashion). As such, when the renderer samples a surface colour/texture/whatever, it expects that the colour value assigned is also in a linear representation, if its not, then the renderer is "given the wrong number" to work with. The result, visually, is that the contrast in your final image is actually wrong (its one of tha major factors when a render looks good but somehow "CG-y").

In LW10+, you dont really have to do much at all, just go to the CS tab in the options, choose the sRGB preset, and forget about it.

m.d.
12-08-2017, 12:11 PM
This might be a silly question, but:

Why do I want / need to mess with the colour spacing.

I texture surfaces, light them and let radiosity do the rest - with the help of secondary lighting if needed.

Got any good examples for me?

in sRGB space (gamma 2.2) middle grey is 50% white....this gamma is very similar to our vision.
However when translated to linear (absolute measurable) it equals about 20%.

If the math is done wrong...i.e. non linear space...or sRGB, then you get 20%+20%=100%
Where in linear it would correctly equal 40%

All the renders happen in linear space....CS just will allow the render to apply the right conversion to the image, and at the same time will provide proper monitor gamma so it looks right to your eyes.

check out

www.linearworkflow.com
edit...link is pretty old. Lots of dead links

heres a good image showing a common issue in regards to light falloff
138755

with non linear, you will be fighting with lights to achieve realism

Rayek
12-08-2017, 12:58 PM
Another good example of M.D's explanation is that in Gamma2.2 sRGB space the blended calculated values between two colours add up to too dark values:

http://i67.tinypic.com/14sjyn5.jpg

So in short, you want to avoid doing any lighting in a display referred colour space.

m.d.
12-08-2017, 02:55 PM
Another good example of M.D's explanation is that in Gamma2.2 sRGB space the blended calculated values between two colours add up to too dark values:

http://i67.tinypic.com/14sjyn5.jpg

So in short, you want to avoid doing any lighting in a display referred colour space.

Good one...I had seen some of these examples mostly from photoshop, as you can easily break the workflow there.

gerardstrada
12-17-2017, 09:49 PM
Hiya,

I came across this interesting tutorial the other day:

https://www.youtube.com/watch?v=m9AT7H4GGrA

I totally suck when it comes to lighting but I am taking steps to try to unravel the mysteries of better rendering for myself. Anyway, since I am so uber-sucky at this sort of thing, I was wondering if anyone could tell me how I can set something like this in LW 9.6?

Either via settings, plugin or by using a cheat would be OK.

Even if it means I have to composite things in the end then that will be fine, too.

I appreciate any feedback on the matter. Oh, and my brain goes on holiday when anything gets too technical so if it could be kept to layman's terms, I would truly appreciate it.

Thanks in advance.

Cheers,


There are several ways to do that in v9.6 and up to last version. But before that, let's clarify some things that may derive from the video:

First off, video is not showing a scene-referred image. That's a (partially correct) linear workflow, plus tonemapping. Of course your renders will look better, because you are adding a kind of primary color rendering layer that you didn't have when outputting directly to monitor with a sRGB curve.

Second, they are not really expanding dynamic range. What they are doing is compressing a lot more range (around 16.3 EVs) within the boundaries of your monitor's range (around 8 EVs). Kind of a tonemapper does. In fact they are using a LUT concatenation for achieving this that's really clipping the output values of the unbounded render engine. So you are compressing a lot of more range than a simple curve correction in that small scale for display, and clipping might be Ok for display only, but it's not convenient for final output.

Third, what they call "hue preservation" is a topic kind of... controversial. what you are preserving with the proposed method is the hue of the reflected material but not the hue of the original color reflected on such material. Both things are possible depending on the setup. So "hue preservation" is really in dependency on which kind of hues you want to preserve. The curious thing is that in reality, the perception of hue preservation degree is in dependency on the color wavelength and another approach is needed for emulating this.

Finally, it's not that other color tools and color blend modes there are useless, it's just that they are useful at another stage and context in color processing.

Back on how to do it in LightWave, what you are seeing is a generic setup simulating a filmic tonemapping operator (TMO), specifically Uncharted 2 by John Hable is able to produce same results. I shared this TMO here:

http://forums.newtek.com/showthread.php?71751-Extra-Buffer-nodes&p=1473757&viewfull=1#post1473757

In latest LW versions the setup looks like this:


https://s7.postimg.org/iwqh9d4mj/filmic_TMOlv.png

The node setup should work in v9.6 as well. Since it's nested in a Compound node, I'm attaching a non-nested version at the end of this post. In v9.6 you need to add a SG_CCNode (from linear space to sRGB space) for display compensation. The setup would look like this:


https://s7.postimg.org/bgr7nnwdn/filmic_TMOpv.png

The "Base Contrast look" can be achieved by using the original default settings and diminishing the Toe Numerator from 0.01 to 0.003. This modification is already added in the attached node setups.

You can dynamically adjust every aspect of the curve with such TMO and of course, its application is slower than a LUT.


https://s7.postimg.org/5ftiqlp6z/s_RGB-_TRC.jpg

https://s7.postimg.org/qcpqvaad7/FTMO.jpg

For just some few parameters to adjust (but not so much accuracy in the highlights) one can try this other TMO I shared also here:

http://forums.newtek.com/showthread.php?71751-Extra-Buffer-nodes&p=1390043&viewfull=1#post1390043

with these settings: WhitePoint: 1.1 / GlobalContrast: -0.3 / BlackPoint: -0.015


https://s7.postimg.org/4qaqea6nv/filmic_TMOs.png

Just in case, I've shared other non-nested TMO node setups in that thread.


The way this is solved in Blender is somehow similar to color concatenations in some film workflows, in this case using first a kind of shaper (it's exactly the same look modification transformation in ACES but with sRGB primaries) and then a generic positive film emulation. I showed a similar setup back in 2007-2008 with SG_CCTools as well:


http://imagic.ddgenvivo.tv/forums/SGCCTools/1.jpg

http://imagic.ddgenvivo.tv/forums/SGCCTools/filmlook2.jpg

More info in this thread:
http://forums.cgsociety.org/showthread.php?p=5065837#post5065837

but for that one I used real color profile conversions. Notice that back in those days, ICC clipped values. Nowadays I use a yet unreleased version which works in unbounded floating point mode.

Current limitation using OCIO implementation for this is the clipping due to the usage of a LUT curve instead of a parametric curve. Guess this will be solved soon. So if you want to do it in that way in LW but without the clipping, better use a parametric or hybrid solution.

The simplest way to easily approximate the first part is by using an exposure adjustment and a gamma correction. I like to use SG_CCNode for gamma correction but you can use a Pow node as well (splitting RGB channels), or DP Curve filter with a Gamma Function, or a Wrap node, or other third party gamma corrector nodes. But if you want an accurate curve without clipping, we can model the curve and apply it with DP Curve filter and extrapolate "logarithmical-ish" the values beyond any arbitrary threshold. In this case I'm extrapolating values from above 1.0:


https://s7.postimg.org/ar8fbftaz/log.png

https://s7.postimg.org/gtg21d4q3/LE-unclipped_DPCurve.jpg

After this, you can use SG_CCTools profile conversion for the base contrast look:


https://s7.postimg.org/6w518c7ez/LE_BC-_CCTools.jpg

Notice that with SG_CCTools you can additionally proof colors to your monitor profile instead of generic sRGB profile.



Gerardo

gerardstrada
12-17-2017, 09:51 PM
The node setup look like this:


https://s7.postimg.org/nxxvagouz/fbasic.png

Or use the attached False Color profile to check exposed areas:


https://s7.postimg.org/vqoj2h54r/falsecolor.png

https://s7.postimg.org/vcn72vdbf/FCin_V.jpg

When you switch to latest LW version, you can use also a LUT for this part as a display table, either for the base filmic contrast look:


https://s7.postimg.org/svbfvmgkb/LE_BC-_LUT.jpg

or the false color look:


https://s7.postimg.org/vcn72vdbf/FCin_V.jpg

Notice that in VIPER, the Filmic False Color LUT looks like this:


https://s7.postimg.org/421vv004r/FCin_VIPER.jpg

which makes me think VIPER displays 1Dx3 LUTs instead of 3D LUTs. Just in case I'm attaching ICC profiles that display in both ways, plus Base Contrast profile (FilmicBasic.icc) and also the LUT tables.

If you'd ask me, ideally, LW should have an output emulation module tied to VPR, VIPER and Surface Previews. If Nodal, better!

There's also another way to a have an unclipped concatenation baked in a single curve with DP Curve filter. Btw, I'm attaching the TMOs, Node setups, ICC profiles and LUTs (for sRGB use just your system sRGB profile).


As for the "gamma correction", notice that any image pre-linearization performed in v9.6 Graph Editor over 8-bpc images may produce "posterizations" in the dark areas of your images no matter if the filter works in floating point or not. So yes, you can use SG_CCTools in Graph Editor (DP Node Image Filter), or in Surface Node Editor and also as a post correction also in DP Node Image Filter. For images, use sRGB curve, but for picked colors, the correct way to go is with 2.2 gamma linearization (not sRGB). For picked colors, the easiest way for linearizations is still a picker instead, like SG_CCPicker.


Merry Christmas!



Gerardo

Revanto
12-17-2017, 10:41 PM
Gerardo,

Nearly everything you said went over my head but that's just my fault for being a technical idiot.

But despite this, you have posted some wonderful and useful information and I am sure that someone will definitely benefit from this. I am grateful for your contribution to this subject.

Thank you very much.

Cheers,
Revanto :p

gerardstrada
12-17-2017, 11:18 PM
Don't worry, one don't need to understand the technical part to use a TMO. Hopefully the explanation might be useful for you eventually when you get more familiarized with the topic or already for someone else. But you might still want to try the TMO by going to Effects=>Processing=>Add Image Filter=>DP Node Image Filter (http://dpont.pagesperso-orange.fr/plugins/nodes/DP_Filter.html) and load the FilmicTMO-v96.nodes I just share. If you have already solved the linear light part, the filmic TMO will give you the final "look" you are looking for.



Gerardo

Sensei
12-18-2017, 01:26 AM
Applying 2.2 gamma is equivalent to:
red = pow( red, 1.0 / 2.2 )
green = pow( green, 1.0 / 2.2 )
blue = pow( blue, 1.0 / 2.2 )

So take Color, extract each component (Tools > Vector Scalar, or Tools > Color Scalar), each of them plug to Math > Scalar > Pow (power), enter "1.0 / 2.2" (it's 0.454545(45) as 2nd parameter),
then output to Make Color.

Amerelium
12-23-2017, 05:16 AM
hmm, if the sRBG profile setting is so much better - certainly makes things look different, I need to change all my lights - why is it not the default?

I can see that the result will be more realistic, but my scene needs a lot of work to make it look balanced again

gar26lw
12-23-2017, 06:07 AM
hmm, if the sRBG profile setting is so much better - certainly makes things look different, I need to change all my lights - why is it not the default?

I can see that the result will be more realistic, but my scene needs a lot of work to make it look balanced again

well, are you using lw pre linear colour space ?

if you adjust to get a linear colour space then you will have to adjust lights afterwards.

i would recommend switching to lw 2015 with free 2018 upgrade.

if you are stuck in pre linear col space lightwave, i would use fprime and g2. there is some info on here for linear workflow with g2. i think by gerardstrada. he is THE man, as attested by his comments previously in this thread.
btw @gerard, i hope newtek is administering a free and mandatory upgrade to 2018 for you.

if this is covered elsewhere here, ignore this post. i’ve not read the entire thread.

RebelHill
12-23-2017, 07:51 AM
why is it not the default?

Principally a legacy thing. before V10 LW functioned as if using the current linear preset (which is the same as assuming YOU are handling all values correctly in linear, as previously described in this thread). Thus, loading of pre-10 scenes would all look wrong if they defaulted over the sRGB, so the default was mainly just a backwards similar thing.

But for sure, do get over to proper colour space working, and make the necesary changes, etc... or better yet, get into 2018, where things are even cooler still.

Amerelium
12-23-2017, 09:31 AM
Well, I've never messed with this, just left everything at default. I've set up the scene, hundreds of models all with they own textures, more than 50 lights, and balanced everything so it looks right.

One thing setting the default to sRGB does I don't like - it messes up my hypervoxels. I have a lot of clouds, at various distances, and after switching, they are no longer affected by distance fog. If I cannot figure that one out I have to stick to the default mode.

(LW11 by the way)


well, are you using lw pre linear colour space ?

if you adjust to get a linear colour space then you will have to adjust lights afterwards.

i would recommend switching to lw 2015 with free 2018 upgrade.

if you are stuck in pre linear col space lightwave, i would use fprime and g2. there is some info on here for linear workflow with g2. i think by gerardstrada. he is THE man, as attested by his comments previously in this thread.
btw @gerard, i hope newtek is administering a free and mandatory upgrade to 2018 for you.

if this is covered elsewhere here, ignore this post. i’ve not read the entire thread.

Amerelium
12-23-2017, 11:47 AM
hmm, well, seems it doesn't always work for the best - becomes too washed out in my current project. Nice to know it is something to mess around with though...

gerardstrada
12-26-2017, 04:02 AM
Difficult to say without knowing more about your scene but maybe fog is not noticeable due to the lack of contrast in clouds. Just in case, for increasing contrast in Hypervoxels, you might want to try a gradient in luminosity channel, increase shadows strength or/and lower the value of ambient color.

https://s9.postimg.org/5qq8wkr9r/cloud.jpg

Changes have been added sequentially in the above samples.



Gerardo

Revanto
12-26-2017, 04:13 AM
Principally a legacy thing. before V10 LW functioned as if using the current linear preset (which is the same as assuming YOU are handling all values correctly in linear, as previously described in this thread). Thus, loading of pre-10 scenes would all look wrong if they defaulted over the sRGB, so the default was mainly just a backwards similar thing.

Let's not assume that all 3d renderings are are intended for realism. The 3d artist may want to do a cartoony rendering or aim for 2d printing of their works. That would means that post colour correction would need to be done for whatever format that's intended. But this is just me being petty about a single point... :rolleyes:

Revanto

Amerelium
12-29-2017, 04:26 AM
Difficult to say without knowing more about your scene but maybe fog is not noticeable due to the lack of contrast in clouds. Just in case, for increasing contrast in Hypervoxels, you might want to try a gradient in luminosity channel, increase shadows strength or/and lower the value of ambient color.

https://s9.postimg.org/5qq8wkr9r/cloud.jpg

Changes have been added sequentially in the above samples.



Gerardo


Kinda strange actually - the fog effect is noticable stronger with the sRGB default; it's just ignored by the hypervoxels. Now, I can change each cloud's properties for a still, but it doesn't work as I'm doing moving the camera for 2000 frames among them.
Granted, I'm using LW11s native distance fog - maybe this will work better in v2018.

gerardstrada
01-02-2018, 04:04 AM
Amerelium, in case you are using Sprites instead of Volumes, perhaps density or opacity settings are too high (about more than 100%). Guess you might want to try also volumetric primitives in v2018.

Revanto, with the new LW version it might be better to assume a "common" color flow (which implies also to assume most common viewing environment) instead of just keep CS settings without making assumptions as up to now. Think this would be more convenient for most of users with new LW version because no matter how accurate and correct internal algorithms may be, physically based rendering can not be really achieved without proper color flow. So in order to approximate a decent physically plausible result out of the box, some generic assumptions will need to be taken by the package. As long as these settings can be changed and customized by the user later, results can be further improved. This implies also that at some point in time, LW CS system (and users) will need to mess with other color aspects other than just tone curve reproductions.

Proper color flow and PBR can be also more convenient for cartoonish rendering:


https://s17.postimg.org/bqoeeww1b/comparisons.jpg
(at least it wouldn't hurt).

As for printing, by considering that 3D LUTs supported by LightWave (and by any other LUT-based CM system for that matter) are not able to handle CMYK color data anyway, people working for print media are not really able to preview in CMYK with CS panel solely. In such case the SG_CCTools can be added to the pipe. Where we can preview differences between RGB:


https://s17.postimg.org/xd3ew4hsv/rgbprev.jpg

and CMYK printing:


https://s17.postimg.org/gqlumief3/cmykprev.jpg

and with more advanced setups even how it would look like on paper:


https://s17.postimg.org/y3w51ek0v/paperprev.jpg

Some introduction to the topic in this thread:

http://forums.newtek.com/showthread.php?127209-CYMK-Ouch&p=1243952&viewfull=1#post1243952

People using custom color flows, need to supplement/complement native CS tools with additional third-party solutions or CM systems and in such cases they don't really care what the default preset is because they are going to change it anyway.



Gerardo

gar26lw
01-02-2018, 04:24 AM
gerardo, are you switching to lw2018 and if so, do the cc tools still work?

pixym
01-02-2018, 02:20 PM
This can help ?
https://www.youtube.com/watch?v=ehztMYhEN8I

Revanto
01-02-2018, 05:35 PM
Yeah, I did finally upgrade to LW2018 so I will be able to work with a better colour system. Still, since I am more of a modeler by nature, I still have a long way to go when it comes to the subject of lights, cameras and colours. I was born with vision impairments so my sense of colours, etc... is not the same as most peoples'.

Thanks for the info, Gerardo.

Cheers,
Revanto :p

gerardstrada
01-03-2018, 12:57 PM
Hello Revanto, person who opened the CMYK thread has also a vision impairment. Respects to people like you and her! Really encouraging!!

Pixym, videos about the subject are always appreciated. Just consider the sRGB preset in that video has picked and lights colors set up as linear. The correct settings for those parameters is 2.2 gamma, but since CS panel has not the option, the most near setting would be sRGB instead.

Gar26lw, not right now. I'll switch eventually, some things look great! I think PBR is the step into the right direction, but it needs to concentrate now into providing enough flexibility within that framework. Nice thing about LightWave is precisely its flexibility, but right now there's a lot third-party tools and functionality lost. For example, you asked in another thread how to get this type of specular result:


https://s10.postimg.org/6oy51cl1l/remodelspec.jpg

The setup is as simple as this one:


https://s10.postimg.org/r92yzvit5/dpcurve.png

We can get it by remodeling a Phong specular shading (DP LightGroup) with DP Curve function. With new "Principled" material we can get also a similar result:


https://s10.postimg.org/ehostg1c9/PBSDF.jpg

But let's say we want to go a bit further and reach more realism by simulating better chrome specular, which has a reddish peak in the top of the highlights curve (like shown in the Disney paper the Principled shader is based on).


https://s10.postimg.org/5b6i5q8u1/chromeref.jpg

In v2015.3 we just add a gradient and colorize the specular shading:


https://s10.postimg.org/uh7gcp7l5/filteredgrad.jpg

If we want to simulate an alloy with let's say steel (which have also uneven specular color response) we can get something like this with the same method:


https://s10.postimg.org/gnj3nrpbd/alloycol.jpg

Principled shader offers us something like this:


https://s10.postimg.org/klayqogvd/metcolor_PBSDF.jpg

In v2015 we are able to tweak parameters before and after shaders due to their outputs work with scalar, color and vector tools, but very few tools work with material outputs. So I think we still need some options (parameters or independent tools) in order to tweak materials further. Guess that colorizing the diffuse or specular results (an operation that doesn't break PBR rules) might be possible with a tool similar to Flatten Material, which converts a material result into color output. Then we could modify that with common LW nodes and use another tool to convert back to material again. This could be useful also for some 2.5D tasks (so common in VFX) that need to mess with shading properties separately. Other interesting parameter would be a function input to model a more accurate custom fresnel curve instead of using the generic Schlick's approximation from Disney paper. Sound like features requests to me :)

The Principled material paper shared by Disney was the first (basic) attempt so its implementation was (and "should") be subject of improvements to provide more flexibility within PBR boundaries. In Blender for example, the Principled shader has a Base color (which affects diffuse and specular) but you have also an independent Metallic color, which can be different than non-metallic materials. Additionally, we could have independent color entries for specular and sheen color so the mixing of each material version could be performed within the Principled shader.

As for the SG_CCTools, as far as I can see the old available version of Picker and Filter still works, but not the Node. A lot of other third-party tools doesn't work yet neither. Hope they provide the proper SDK access to third-party developers so that we can keep the same functionality we have in previous versions.



Gerardo

Revanto
01-03-2018, 06:32 PM
Hello Revanto, person who opened the CMYK thread has also a vision impairment. Respects to people like you and her! Really encouraging!!

Nah, it's not really a big deal. I was born that way and have learned to deal with it. It just means that my renders might look a little different. Slightly off, maybe.

Again, thanks for your help.

Cheers,
Revanto :p

Digital Hermit
01-21-2018, 11:21 AM
Ok, I am glad I did a search and found this. As you can tell, I have an aversion to making "new threads" especially ones already covered.

So after watching the video and going through the responses, is there a ToE "Theory of Everything" setting, relating to Lightwave 2018? I mean that is the calibrated goal, photorealism, the Holy Grail of 3D, correct? Everything else, derived from that standard, would be an artistic esthetic.

gerardstrada
01-24-2018, 06:16 PM
is there a ToE "Theory of Everything" setting, relating to Lightwave 2018? I mean that is the calibrated goal, photorealism, the Holy Grail of 3D, correct? Everything else, derived from that standard, would be an artistic esthetic.
short answer: If you are referring punctually to color management aspect, there's no magic buttons, but your best bet for photorealism perception in LW2018 is the sRGB preset.

Long answer: if you are referring to a color management setting in LW2018 with native CS system, not, there's no way to strictly reach physically based results for "everything" with that. And there are several other tools sold as "PBR" which are not really PBR due precisely to the same reason. And not referring to the fact that LW doesn't render in spectral data since you can get very very close to results calculated with spectral values by properly managing color in RGB model; and you can get also incorrect physically based results by calculating render in spectral values but without proper color management. Limitation with native LW CS system (and any other similar solution for that matter) is that it does not cover all the necessary aspects to specify color. And there's no way of constructing a proper color flow without it. That's why I said previously (http://forums.newtek.com/showthread.php?155269-Photorealism-and-expanding-the-dynamic-range-in-LW&p=1530642&viewfull=1#post1530642) that LW CS system (and users) will need to "mess" with other color aspects other than just curve reproductions, eventually.



Gerardo

lardbros
10-26-2018, 05:15 AM
A shame, I can't seem to see you images on here Gerardo! Are they forum inserts or are they loading from a 3rd party site?

gerardstrada
10-29-2018, 07:30 PM
A shame, I can't seem to see you images on here Gerardo! Are they forum inserts or are they loading from a 3rd party site?
Sorry Tim, all my images have gone due to the server has changed its domain from .org to .cc. Re-posting the 2 original posts with images:



Hiya,

I came across this interesting tutorial the other day:

https://www.youtube.com/watch?v=m9AT7H4GGrA

I totally suck when it comes to lighting but I am taking steps to try to unravel the mysteries of better rendering for myself. Anyway, since I am so uber-sucky at this sort of thing, I was wondering if anyone could tell me how I can set something like this in LW 9.6?

Either via settings, plugin or by using a cheat would be OK.

Even if it means I have to composite things in the end then that will be fine, too.

I appreciate any feedback on the matter. Oh, and my brain goes on holiday when anything gets too technical so if it could be kept to layman's terms, I would truly appreciate it.

Thanks in advance.
There are several ways to do that in v9.6 and up to last version. But before that, let's clarify some things that may derive from the video:

First off, video is not showing a scene-referred image. That's a (partially correct) linear workflow, plus tonemapping. Of course your renders will look better, because you are adding a kind of primary color rendering layer that you didn't have when outputting directly to monitor with a sRGB curve.

Second, they are not really expanding dynamic range. What they are doing is compressing a lot more range (around 16.3 EVs) within the boundaries of your monitor's range (around 8 EVs). Kind of a tonemapper does. In fact they are using a LUT concatenation for achieving this that's really clipping the output values of the unbounded render engine. So you are compressing a lot of more range than a simple curve correction in that small scale for display, and clipping might be Ok for display only, but it's not convenient for final output.

Third, what they call "hue preservation" is a topic kind of... controversial. what you are preserving with the proposed method is the hue of the reflected material but not the hue of the original color reflected on such material. Both things are possible depending on the setup. So "hue preservation" is really in dependency on which kind of hues you want to preserve. The curious thing is that in reality, the perception of hue preservation degree is in dependency on the color wavelength and another approach is needed for emulating this.

Finally, it's not that other color tools and color blend modes there are useless, it's just that they are useful at another stage and context in color processing.

Back on how to do it in LightWave, what you are seeing is a generic setup simulating a filmic tonemapping operator (TMO), specifically Uncharted 2 by John Hable is able to produce same results. I shared this TMO here:

http://forums.newtek.com/showthread....=1#post1473757

In latest LW versions the setup looks like this:


https://i.postimg.cc/0j5RzVDB/filmic-TMOlv.png

The node setup should work in v9.6 as well. Since it's nested in a Compound node, I'm attaching a non-nested version at the end of this post. In v9.6 you need to add a SG_CCNode (from linear space to sRGB space) for display compensation. The setup would look like this:


https://i.postimg.cc/6QxP7HNf/filmic-TMOpv.png

The "Base Contrast look" can be achieved by using the original default settings and diminishing the Toe Numerator from 0.01 to 0.003. This modification is already added in the attached node setups.

You can dynamically adjust every aspect of the curve with such TMO and of course, its application is slower than a LUT.


https://i.postimg.cc/0Q8Hnbj6/sRGB-TRC.jpg

https://i.postimg.cc/T1s7T09m/FTMO.jpg

For just some few parameters to adjust (but not so much accuracy in the highlights) one can try this other TMO I shared also here:

http://forums.newtek.com/showthread....=1#post1390043

with these settings: WhitePoint: 1.1 / GlobalContrast: -0.3 / BlackPoint: -0.015


https://i.postimg.cc/7Z0sygTG/filmic-TMOs.png
Just in case, I've shared other non-nested TMO node setups in that thread.


The way this is solved in Blender is somehow similar to color concatenations in some film workflows. In this case using first a kind of shaper (it's exactly the same look modification transformation in ACES but with sRGB primaries) and then a generic positive film emulation. I showed a similar setup back in 2007-2008 with SG_CCTools as well:


https://i.postimg.cc/RZZXsxhS/1a.jpg

https://i.postimg.cc/VNb9pf88/filmlook2.jpg


More info in this thread:
http://forums.cgsociety.org/showthre...37#post5065837

but for that one I used real color profile conversions. Notice that back in those days, ICC clipped values. Nowadays I use a yet unreleased version which works in unbounded floating point mode.

Current limitation using OCIO implementation for this, is the clipping due to the usage of a LUT curve instead of a parametric curve. Guess this will be solved soon. So if you want to do it in that way in LW but without the clipping, better use a parametric or hybrid solution.

The simplest way to easily approximate the first part is by using an exposure adjustment and a gamma correction. I like to use SG_CCNode for gamma correction but you can use a Pow node as well (splitting RGB channels), or DP Curve filter with a Gamma Function, or a Wrap node, or other third party gamma corrector nodes. But if you want an accurate curve without clipping, we can model the curve and apply it with DP Curve filter and extrapolate "logarithmical-ish" the values beyond any arbitrary threshold. In this case I'm extrapolating values from above 1.0:


https://i.postimg.cc/LXbBPX1F/log.png

https://i.postimg.cc/YqgZpc5C/LE-unclipped-DPCurve.jpg

After this, you can use SG_CCTools profile conversion for the base contrast look:


https://i.postimg.cc/fLpqN55d/LE-BC-CCTools.jpg

Notice that with SG_CCTools you can additionally proof colors to your monitor profile instead of generic sRGB profile.



Gerardo

gerardstrada
10-29-2018, 08:56 PM
A shame, I can't seem to see you images on here Gerardo! Are they forum inserts or are they loading from a 3rd party site?
continue...

The node setup look like this:


https://i.postimg.cc/rwqk3FDk/fbasic.png

Or use the attached False Color profile to check exposed areas:


https://i.postimg.cc/hvVkZHgv/falsecolor.png

https://i.postimg.cc/rmBjbsFC/FCinV.jpg

When you switch to latest LW version, you can use also a LUT for this part as a display table, either for the base filmic contrast look:


https://i.postimg.cc/kXdwv2H7/LE-BC-LUT.jpg

or the false color look:


https://i.postimg.cc/rmBjbsFC/FCinV.jpg

Notice that in VIPER, the Filmic False Color LUT looks like this:


https://i.postimg.cc/1zTrnX6h/FCin-VIPER.jpg

which makes me think VIPER displays 1Dx3 LUTs instead of 3D LUTs. Just in case I'm attaching ICC profiles that display in both ways, plus Base Contrast profile (FilmicBasic.icc) and also the LUT tables.

If you'd ask me, ideally, LW should have an output emulation module tied to VPR, VIPER and Surface Previews. If Nodal, better!

There's also another way to a have an unclipped concatenation baked in a single curve with DP Curve filter. Btw, I'm attaching the TMOs, Node setups, ICC profiles and LUTs (for sRGB use just your system sRGB profile).


As for the "gamma correction", notice that any image pre-linearization performed in v9.6 Graph Editor over 8-bpc images may produce "posterizations" in the dark areas of your images no matter if the filter works in floating point or not. So yes, you can use SG_CCTools in Graph Editor (DP Node Image Filter), or in Surface Node Editor and also as a post correction also in DP Node Image Filter. For images, use sRGB curve, but for picked colors, the correct way to go is with 2.2 gamma linearization (not sRGB). For picked colors, the easiest way for linearizations is still a picker instead, like SG_CCPicker.


Merry Christmas!



Gerardo

Notice you need DP Filter Node Editors for all this.



Gerardo

grafxstudio
11-04-2018, 12:38 PM
I just read over this article but can't find DP Filter Node Editor since Denis is not updating for 2018. Is there another node I can use?

erikals
11-04-2018, 01:15 PM
as far as i know, no, not yet...

lardbros
11-11-2018, 10:16 AM
Thanks very much Gerardo, appreciate the time and effort in reposting all the images! Always enjoy reading your approaches to colour processing.