Author Topic: dubcats secret little hideout  (Read 85900 times)

2019-01-31, 02:45:12
Reply #375

dubcat

  • Active Users
  • **
  • Posts: 452
  • ฅ^•ﻌ•^ฅ meow
    • View Profile
There is a really strange behavior I cannot explain. After further testing, it looks like it's the 1/IOR part that not working here. On the render result at least as the material preview and the rendered material do not follow the same behavior.

Weird stuff.

This is how it is supposed to look like when you use my setup



And this is how a normal Corona material looks like without the IOR combo. A reflection pass that only a mother can love.



Looks like the exposure inconsistency is related to the gamma 2.2 part in the IOR mask generation.

From the screenshots it looks like you didn't plug the highpassed linear roughness map into the mask slot ? Hard to tell since the screenshot is clipped off.


This material is a perfect example on why we should use cross specular maps as IOR maps https://quixel.com/assets/tbxkajlk

edit:
I overlooked the first response, sorry!

How do you have such knowledge of the technical aspects of lighting and shading?

It all began with Half Life 1 and Sims 1. The first thing I noticed when making textures for these games, was that I could have a static camera and move a light around (at the same distance). Then I could blend multiple photos together with "Lighten", this blending mode will only lighten dark pixels (shadows) and make an "albedo". Back then I didn't know what an albedo was, but it was good enough to import into Wally and make a .wad. I used to hang my cloths up, take a picture and then use the transform tool to turn them into the Sims 1 skin format, good times.

Half Life 2, Doom 3 and Oblivion opened my eyes when it comes to normal map and parallaxing effect. fStrorm still does volume displacement, and it's
 fuc***g awesome. https://fstormrender.ru/manual/displacement. Ever wondered why fStorm users can use displacement on every single plant in their interior, and why the displacement only take like 400mb instead of 200 gazillion terabytes ? This is why.

When Quixel began posting beta versions of roughness, I understood that the next step was to get my hands on some polarizing filter. You can get good quality sheets from https://www.polarization.com/polarshop. I still use sheets from these guys, even though I have to pay almost double the prize in tax, only to import it.

Since then I've been doing SSS, IOR and albedo tests on my own.
When it comes to SSS. Shorter wavelengths (blue) gets scattered more easily than red light. This is why skin looks red when you shine a light thought it, not because of the red blood. Scatter color in render engines should only be monochrome or blue to be physical correct.

You already know my view on glossiness/ior integration. Again, download https://quixel.com/assets/tbxkajlk and have a look at the glossiness map. This is not possible with normal maps.
« Last Edit: 2019-01-31, 03:56:43 by dubcat »
             ___
    _] [__|OO|
   (____|___|     https://www.twitch.tv/dubca7 / https://soundcloud.com/dubca7 / https://dubcatshideout.com  ( ͡° ͜ʖ ͡°)

2019-01-31, 10:26:33
Reply #376

jpjapers

  • Active Users
  • **
  • Posts: 1120
    • View Profile
Fstorm has so many useful features like that and I wish they were higher on the agenda for corona.

2019-01-31, 15:42:13
Reply #377

Fluss

  • Active Users
  • **
  • Posts: 408
    • View Profile
From the screenshots it looks like you didn't plug the highpassed linear roughness map into the mask slot ? Hard to tell since the screenshot is clipped off.

It was plugged in, that's a gamma issue for sure, I'll prepare you an explanation of what's going on.

FStrorm still does volume displacement, and it's fuc***g awesome. https://fstormrender.ru/manual/displacement. Ever wondered why fStorm users can use displacement on every single plant in their interior, and why the displacement only take like 400mb instead of 200 gazillion terabytes ? This is why.

Yep, Fstorm displacement is great (the only drawback is that it does not handle procedurals)! we discussed that in this thread: https://corona-renderer.com/forum/index.php?topic=22625.0

2019-02-02, 10:20:48
Reply #378

noldo

  • Users
  • *
  • Posts: 1
    • View Profile
Hi Dubcat!
I am an octane render user, but this post is very interesting!!!
I think your "Specular To Ior v.2" LUT is a bit broken (sorry for my english)
If i convert a sRGB 59 grayscale image (1.5 IOR), the lut give me a value of 167.
I think the correct value is 170 (1/IOR = 1/1.5 = 0.6666666666 => 0.666666666x255=170).
Seems your LUT multiply the value x 250 instead of 255.
Thanks for your work!

P.s. Maybe my fault, wrong monitor color profile?

P.p.s. After some more investigation, i found a way to convert specular to IOR map in octane, but i think corona treat the IOR map the same way (a grayscale value that represent 1/IOR value)
I connected in nuke an expressioni to the specular map with the following formula "1/((r+2*sqrt(r)+1)/(1-r))", then connect the output to a writer image.

P.p.p.s. Your LUT is correct, my fault, i don't understand why 167 instead 170... Bah!
« Last Edit: 2019-02-02, 13:31:19 by noldo »

2019-02-03, 04:42:46
Reply #379

dubcat

  • Active Users
  • **
  • Posts: 452
  • ฅ^•ﻌ•^ฅ meow
    • View Profile
Fstorm has so many useful features like that and I wish they were higher on the agenda for corona.

For sure!

It was plugged in, that's a gamma issue for sure, I'll prepare you an explanation of what's going on.

Me and Fluss will be having some direct messaging. Just letting you guys know, so you don't think I'm an asshole that ignore all his posts :P

P.p.p.s. Your LUT is correct, my fault, i don't understand why 167 instead 170... Bah!

Hehe, I feel you! 3dsmax slate and linear/srgb is a real pain in the ass. Software that compile LUTs are also a pain in the ass, there is no standard.
I will be supporting Corona/Vray/fStorm/Octane/Renderman and Blender 2.8 on my site in the end. (Corona is always first priority)
I have high hopes for Blender 2.8, finally I can click on that damn default cube with my left mouse button and delete it. Can't wait to code my procedural mask generator!
             ___
    _] [__|OO|
   (____|___|     https://www.twitch.tv/dubca7 / https://soundcloud.com/dubca7 / https://dubcatshideout.com  ( ͡° ͜ʖ ͡°)

2019-02-04, 21:00:25
Reply #380

jpjapers

  • Active Users
  • **
  • Posts: 1120
    • View Profile
I remember you did a thread on virtual colour checkers.
How would that work with ACES Emulation?
Would you apply aces settings and your LUT and then use the output in lightroom to calibrate?
Colour management is all very new to me but its infinitely fascinating to get into the process of making sure my work output is accurate.

2019-02-08, 04:08:15
Reply #381

dubcat

  • Active Users
  • **
  • Posts: 452
  • ฅ^•ﻌ•^ฅ meow
    • View Profile
I remember you did a thread on virtual colour checkers.
How would that work with ACES Emulation?
Would you apply aces settings and your LUT and then use the output in lightroom to calibrate?
Colour management is all very new to me but its infinitely fascinating to get into the process of making sure my work output is accurate.

Hey!

I would capture a color checker passport at your current light intensity. Generate a camera profile. If your profile has a contrast curve, open it in 3DLUTCreator and remove it. This should give you a calibrated color and linear camera profile.
When you have a calibrated profile. The only thing you should care about is linear values. When it comes to real world albedos, we talk in linear %. If I tell you the brightest common paint is 94%, you should be able to input that value into "Value" in Corona Picker. But that is not how Corona Picker is working right now. So you have to convert 94% to sRGB. If you are thinking, why the hell do we have to gamma correct a linear value only to get a linear value, ask the Corona devs, it blows my mind every day. 94% is 97.2% sRGB, so this is the max real world scanned common paint value.

Another problem we have with the current Corona Picker is that the darkest common paint is "Jet Black" and it's 14,14,16 sRGB. Try to input these values into Corona Picker. You end up with 0,0,24 sRGB. This is a common problem when we try to sample real world values for products, the sRGB values might jump 10 sRGB. I'm using Vrays color map to fix this, because it let me adjust values separately with float values.


-----------------------------------------------------------------------------------------------------------------------
edit:

I haven't had much time to complete the last few guides on my site. But I want to share paint values with you guys as soon as possible, so I have remove all the unfinished stuff from the site.
I've only had time to add the 2019 Color Chart paints to the page, but have about 1 gazillion paints ready.
If you have a paint value, and are wondering how it would look with LRV and - IOR. Just post the values here, and I'll add them to the page when I get time.

https://dubcatshideout.com/
« Last Edit: 2019-02-08, 05:47:14 by dubcat »
             ___
    _] [__|OO|
   (____|___|     https://www.twitch.tv/dubca7 / https://soundcloud.com/dubca7 / https://dubcatshideout.com  ( ͡° ͜ʖ ͡°)

2019-02-08, 09:51:50
Reply #382

IsmaeL

  • Active Users
  • **
  • Posts: 44
    • View Profile
The site looks amazing, specially the Home Page XD
I have one concern tough, what is with the minimum Black value. Corona Color Picker tells me it's 0. From what I was taught you should never use 0 as Black. Am I wrong or did I miss the point??

As for colors, I have a bunch of RAL and NSC colors I use for my clientes. They are all in the furnishing business, so for industrial purposes RAL and NSC is used a lot.

Reading about the color checker reminds me, I have to shoot images of marble textures. I am a bit scared since I'm not sure I'm doing this right.
So I have a full-frame camera with 36 MP, unfortunately that is the max I could get. Would have loved to have a medium size CMOS, but that is to expensive.
Everything is set up, have a color passport, 5 mm lense and remote control for the camera.

What would you suggest I do with the images I get from this. Do I need a camera profile? or will the RAW files be enough to work with?
Would love to here some input form you. Thanks
Falling in love with Corona

2019-02-08, 10:48:12
Reply #383

romullus

  • Global Moderator
  • Active Users
  • ****
  • Posts: 5590
  • Let's move this topic, shall we?
    • View Profile
    • My Models
Another problem we have with the current Corona Picker is that the darkest common paint is "Jet Black" and it's 14,14,16 sRGB. Try to input these values into Corona Picker. You end up with 0,0,24 sRGB. This is a common problem when we try to sample real world values for products, the sRGB values might jump 10 sRGB. I'm using Vrays color map to fix this, because it let me adjust values separately with float values.

But you can do that with CoronaColor texmap too, why use Vray's map?
I'm not Corona Team member. Everything i say, is my personal opinion only.

2019-02-08, 20:05:47
Reply #384

Nate101

  • Active Users
  • **
  • Posts: 26
    • View Profile
Nothing to add to discussion but wanted to say thanks to dubcat for creating the site and for all the incredible information in this thread.  90% goes over my head but fascinating read nonetheless.

PS, dubcat I tried to PM you but said message blocked?

2019-02-09, 08:34:47
Reply #385

James Vella

  • Active Users
  • **
  • Posts: 89
    • View Profile
Another problem we have with the current Corona Picker is that the darkest common paint is "Jet Black" and it's 14,14,16 sRGB. Try to input these values into Corona Picker. You end up with 0,0,24 sRGB. This is a common problem when we try to sample real world values for products, the sRGB values might jump 10 sRGB.

Why not just use the hex color code if you want to match the paint in the corona color picker? Still a workaround but none the less it gives accurate results correct?


2019-02-09, 08:56:01
Reply #386

jpjapers

  • Active Users
  • **
  • Posts: 1120
    • View Profile
Another problem we have with the current Corona Picker is that the darkest common paint is "Jet Black" and it's 14,14,16 sRGB. Try to input these values into Corona Picker. You end up with 0,0,24 sRGB. This is a common problem when we try to sample real world values for products, the sRGB values might jump 10 sRGB.

Why not just use the hex color code if you want to match the paint in the corona color picker? Still a workaround but none the less it gives accurate results correct?

I think the issue here is you dont know the hex code until you convert your paint colour and LRV properly if my understanding is correct?

Also FYI Dubcat when i picker jet black from the site I get 14,14,14 not 14,14,16

2019-02-09, 09:38:33
Reply #387

James Vella

  • Active Users
  • **
  • Posts: 89
    • View Profile
you can just download the paint swatch, open it in photoshop and it gives you the hex code. You can then plug this into corona color map. If your scene is already calibrated it will come out 1:1

2019-02-09, 09:56:19
Reply #388

jpjapers

  • Active Users
  • **
  • Posts: 1120
    • View Profile
you can just download the paint swatch, open it in photoshop and it gives you the hex code. You can then plug this into corona color map. If your scene is already calibrated it will come out 1:1

Ah see this is the issue. The paint swatches online already have simulated LRV alot of the time. Dubcat did a post about it https://corona-renderer.com/forum/index.php?topic=13398.msg124782#msg124782

2019-02-09, 10:13:09
Reply #389

romullus

  • Global Moderator
  • Active Users
  • ****
  • Posts: 5590
  • Let's move this topic, shall we?
    • View Profile
    • My Models
@jpjapers, me and James Vella are pointing to dubcat's statement that Corona picker does not let to pick very low sRGB values without rounding them to nearest RGB values. This issue can be overcome with Corona Color node either through solid HDR colour, or through HEX colour. What you're talking about, is completely different thing.
I'm not Corona Team member. Everything i say, is my personal opinion only.