Author Topic: GGX - best way to recreate it for all metals, problems translating to Corona  (Read 78830 times)

2014-08-02, 22:23:42
Reply #45

daniel.reutersward

  • Active Users
  • **
  • Posts: 310
    • View Profile
Ok, I like doing things my way so here is a really CRAZY way of making a glossy material that has "various glossy values at the same time". Remember, I am doing this purely for fun. :)

Here is my process of thoughts: real metal has some given "characteristic" of surface because of micro-bumps on it. Why not recreate this as close to reality as possible by adding micro-bump map? But adding micro-noise as a bump map caused a lot of noise that didn't want to go away and really crazy things when it's size was very small (below 0,0001) so I simplified this by using micro-noise in glossiness slot. I don't like using layered materials with different glossiness because.... well... it is just few mixed layers with different glossinesses....

Why would this work?

Procedural noise, by using "threshold" parameters is capable of producing:
-uniform noise
-noise with larger or smaller "flat" areas
-noise with larger or smaller "slope" areas
And it has two colour parameters that will serve as minimum and maximum allowed glossiness.

My extremely quick tests are in the attachments. As you can see a proper setup will produce sharp+glossy reflections + all the other possible glossinesses between them. I hope it is understandable. :)

It is also vital to disable texture filtering or things get bad.

Maybe it would be possible to create such texmap for Corona that would be capable of producing infinitely small noise? :)

Interesting! I´m kind of slow haha.. so if I understand correctly you only used a noise bitmap in the refl. gloss slot? :)

2014-08-02, 22:33:10
Reply #46

maru

  • Corona Team
  • Active Users
  • ****
  • Posts: 12754
  • Marcin
    • View Profile
Interesting! I´m kind of slow haha.. so if I understand correctly you only used a noise bitmap in the refl. gloss slot? :)
Hah, I'm not good at explaining stuff. :) I used procedural noise.
Marcin Miodek | chaos-corona.com
3D Support Team Lead - Corona | contact us

2014-08-02, 22:43:42
Reply #47

daniel.reutersward

  • Active Users
  • **
  • Posts: 310
    • View Profile
Interesting! I´m kind of slow haha.. so if I understand correctly you only used a noise bitmap in the refl. gloss slot? :)
Hah, I'm not good at explaining stuff. :) I used procedural noise.

Hehe alright! I will try playing around with procedural noise in the refl. glossiness slot and see what I can come up with :)

2014-08-03, 00:32:01
Reply #48

Juraj

  • Active Users
  • **
  • Posts: 4761
    • View Profile
    • studio website
Sort of like this, not :- ) ?


It's from Thea render, hope nobody mind posting this here (I've never used Thea, not even once, it's fairly nice engine and team behind imho.
I quite like their material system from a look of it, seems like a compromise between the regular spec/gloss and more complex Maxwell system.
Esp. that is has 'roughness' and now 'micro-roughness' too.
Please follow my new Instagram for latest projects, tips&tricks, short video tutorials and free models
Behance  Probably best updated portfolio of my work
lysfaere.com Please check the new stuff!

2014-08-03, 10:18:39
Reply #49

romullus

  • Global Moderator
  • Active Users
  • ****
  • Posts: 8843
  • Let's move this topic, shall we?
    • View Profile
    • My Models
Wouldn't it be the same as falloff map in glossiness?
I'm not Corona Team member. Everything i say, is my personal opinion only.
My Models | My Videos | My Pictures

2014-08-03, 10:27:36
Reply #50

maru

  • Corona Team
  • Active Users
  • ****
  • Posts: 12754
  • Marcin
    • View Profile
Wouldn't it be the same as falloff map in glossiness?
Yes. It looks so.

At about 14:20 he is enabling another layer of reflections, so it's just a mix of 2 glossiness values. Definitely not what we want to achieve. :)
Marcin Miodek | chaos-corona.com
3D Support Team Lead - Corona | contact us

2014-08-03, 10:39:08
Reply #51

daniel.reutersward

  • Active Users
  • **
  • Posts: 310
    • View Profile
Interesting video Juraj!

So if I´m thinking clearly, by using micro noise and falloff curves together this could be achieved?

Must try! :)

2014-08-04, 21:40:01
Reply #52

thebeals

  • Users
  • *
  • Posts: 1
    • View Profile
I am also a big fan of having some sort of ggx or microfacet shading model. imho these are key elements needed when creating photo-realistic materials. I've seen far too many architectural renderings where the floors/walls are reflecting overhead lights and they don't have this implemented-which is a dead give away it's cg. This implementation would also put Corona ahead of the curve in more areas :)

Maybe it doesn't even have to be a new material or customized phenomenon, but maybe set up in a similar way that Mental Ray is doing it's MILA layering library/Iray MDL materials. I don't want to seem like I am praising any other renderer here, since we all know just how amazing Corona is, but imho Mental Ray is really impressing me with how it is now handling the material process now and is ahead of the curve in this area.. for once. With the mila/mdl approach, I can combine tons of different reflection/glossy lobes and do not have to double the rays needed each time I add a new layer like I do with most other renderers, and it all fits into one easy to use phenomonon that doesn't need tons of blend nodes to hook everything up. If I wanted to, I could even have a bunch of glossy lobes layered over an SSS material all within one phenomenon and not incur massive render time penalties. This also makes sharing materials much easier :) (Obviously there are tons of other issues with MR atm though)

...All this to say is if we are thinking of implementing a ggx/microfacet shader, it would be amazing if it was customizeable and not locked into a set material phenomenon where we have to choose between a Corona Mtl or a ggxCorona Mtl... But I don't even know it's possible since there are so many specifics to a ggx material that are required to keep it physically plausible.

To sum all this up.. Layering library methodology is awesome, lightweight and incredibly powerful. Tons of different separate materials scattered everywhere is not so fun.

Lots of respect, and amazing work, as always Keymaster... Looking forward to seeing what you do next!



2014-08-05, 10:36:12
Reply #53

Javadevil

  • Active Users
  • **
  • Posts: 399
    • View Profile
Wouldn't it be the same as falloff map in glossiness?
Yes. It looks so.

At about 14:20 he is enabling another layer of reflections, so it's just a mix of 2 glossiness values. Definitely not what we want to achieve. :)

I kind of agree, its nice to have it all in one shader with out layering materials.
I think the blue wall in the video would only be one layer,  it wouldn't be layered,
its only a coat of paint not varnished or clear coat.


But I do like Thea's implementation, not that I use micro roughness much.

So looking at this GFX shader it could be used for more than just metal materials ?

2014-08-05, 12:13:27
Reply #54

Juraj

  • Active Users
  • **
  • Posts: 4761
    • View Profile
    • studio website
So looking at this GFX shader it could be used for more than just metal materials ?
[/quote]

No, it applies to broad range materials. Metals simply exhibit the multi-lobe specular easier due to their high specular reflectivity.
All the white papers demonstrate using paints, woods, and fabrics too.
Please follow my new Instagram for latest projects, tips&tricks, short video tutorials and free models
Behance  Probably best updated portfolio of my work
lysfaere.com Please check the new stuff!

2014-08-05, 13:56:19
Reply #55

Javadevil

  • Active Users
  • **
  • Posts: 399
    • View Profile
So looking at this GFX shader it could be used for more than just metal materials ?

No, it applies to broad range materials. Metals simply exhibit the multi-lobe specular easier due to their high specular reflectivity.
All the white papers demonstrate using paints, woods, and fabrics too.
[/quote]

Thanks
I'll look into those papers.


2014-08-05, 15:25:53
Reply #56

Juraj

  • Active Users
  • **
  • Posts: 4761
    • View Profile
    • studio website
I am afraid you won't find much info on those materials exactly (or how to re-create them), they simply try to 'fitting them' from MERL data to their BRDF of choice (GGX/SGD/etc..).

But in case you have Maya/Vray3 combo you can buy SGD plug from Sergey Shliaev and try those 100 MERL presets :- )
Please follow my new Instagram for latest projects, tips&tricks, short video tutorials and free models
Behance  Probably best updated portfolio of my work
lysfaere.com Please check the new stuff!

2014-08-05, 16:56:05
Reply #57

maru

  • Corona Team
  • Active Users
  • ****
  • Posts: 12754
  • Marcin
    • View Profile
Wouldn't it be the same as falloff map in glossiness?
Yes. It looks so.

At about 14:20 he is enabling another layer of reflections, so it's just a mix of 2 glossiness values. Definitely not what we want to achieve. :)
I think the blue wall in the video would only be one layer,  it wouldn't be layered,
its only a coat of paint not varnished or clear coat.
I don't know what you mean by one layer. The objects is rendered on one layer and the material may be one layer, but he is clearly setting up another layer of reflection glossiness. You get two layers: one that is more "shiny" and one that is more "blurry". This is not what happens in real life. You would need A LOT (or preferably infinite amount) of layers with different glossiness levels.

Here is my visualization of what happens. Sorry if what I write and show does not make any sense, I'm having a killer headache. :>
Marcin Miodek | chaos-corona.com
3D Support Team Lead - Corona | contact us

2014-08-05, 21:57:51
Reply #58

nehale

  • Active Users
  • **
  • Posts: 283
    • View Profile
C4D R16 just implemented GGX and multi layer reflections: http://maxonexchange.de/pr/Cinema_4D_R16/Cinema_4D_R16_PS_Reflectance.jpg
I had a girlfriend once.....her name was Vray

2014-08-05, 22:21:01
Reply #59

daniel.reutersward

  • Active Users
  • **
  • Posts: 310
    • View Profile
I looked at C4Ds new GGX and multi-layer reflections, looks nice. Would be really nice to have something like that with Corona and 3Ds Max!