Hi folks, sorry for long time delay, was busy with lot of things.
This time is about Lighting and Shaders.
[vv]83641521[/vv]
Still work in progress, but this time environment is pretty close to the end phase. I will tweak some things,and add or replace some meshes, but main part for environment is done.
Basically mostly changes were about shaders. I spend quite a lot of time building them, understanding, researching.
Currently overall ambient color is driven by cubemaps, all objects sharing same logic, all paramiters shared between different meshes. Core sort of Physically correct, or at least plausible. Sort of BRDF concept simmilar to MR and Maxwell materials ( more close, due having second coating layer). I can control how much reflections contribute to surfaces on face angle and on grazing angle, adding of reflection reduces diffuse, etc. But basic controls for materials are really minimalistic and most of things to objects may be added through vertex color rather creating one more material instance.. Fast to iterate, can produce probably any possible effect ( in some reasonable extends)
Lighting I had on first video was not really I was happy about, but current shaders approach makes changing of lighting pretty simple process. This more about tweaking cubemap, rather re-baking lighting.
Parental shaders made of multiple instanced utilities, so every change in one shader affects another ( not in run time - I wish I could))
What is next -A lot, but this time most probably I will update thread more often. I want to build Station and Vehicle, I think I have now pretty clear idea what this should be about, I spend few month in attempts to find what do I like and what will work well with the space and most important not a clich
Beautiful! Would love to see some detailed breakdowns. Only thing I can say ( and its a bit nit picky) is it would be cool to have some ice chunks flowing with the water. Maybe something shader wise to achieve that. Looks amazing!
Stevenson - As about ice bits, I think the same, problem was to make them believable enough. I had pretty nice motion with mesh particles, but had problem with them being opaque and as result no soft fade on death. Was trying to move them down by age, but my knowledge of particles in UDK is about one week, so I had to hide them. Will try to resolve it in future. Might try to do them with displacement.
This is definatley one of the most stunning and incredible things I've ever seen in UDK!
Holy mother of god...dat photorealism!
I'am just speechless...will be watching this!
That shader :O I can't really say anything. I didn't thought that this still can be pushed out from UE3. Looks like UE4 is almost pointless now Very nice job!:thumbup:
Thanks folks!
Obscura I think with UE 4 it could be simpler. Localized reflections instead of global one, no boring cubemaps baking, simpler to control layering system in shaders.. Maybe one day we will have access to it)) So far I had to crack it in complicated way))
Set Spec and Roughness values = 1 if use SRO (Specular, Roughness, Other) (Sample in MI folder)
Fresnel controls for metals face=1. 90 = 1 - (sample in MI folder)
Experiment with mixing base layer and coat layer.
For instance blurry base layer and light, more sharp coat layer for plastics.
Semi reflective and gloss main layer, and only on grazing angles coating with max blur for Velvet like effects, etc.
Where should I put or what should I do with the material functions? Because its saying "missing material function" Strangely they are all on the material function list, but they aren't working. I copied them to the engine's material function package too, but still nothing.
Shader updated, should work from now. Had old function and cube was broken((
And one more note - If you want to change cubemap, go to the F_Cube mat function and change it there. Try to keep values for Sky texture and Cube texture the same. For instance if your sky texture brightness is 2.0, do the same for cube components.
Obscura
All functions are available in anty_2.0 group in functions menu. You don't need to copy them anywhere. So in case of some updates to shader ( there will be for sure updates) you can replace only one pack, while keeping your instances in own folder. And feel free to post your tests here. Will be good to know about possible problems or some cool ideas.
Man, thats extremely awesome! I am now checking out all the material functions you made and am trying to understand them better.
Its pretty amazing to see peoples progress with these things since physical based shading is more and more becoming something everybody wants to have (or at least should want ) and I think the result clearly show why.
Also your work helps and inspires because I, for myself, am working with UE4 in the office and the material stuff you can do there is so awesome, that since I really got also into the tech details behind it, I am looking and trying for a way to achieve similar things in UDK at home. I just dont wanna miss this anymore^^
However, out of interest I would like to ask about some more details regarding your setup:
-On what is your fresnel term based? Is it Schlick?
-I didnt see geometric attenuation....was I just too blind or is there none?^^
-Why did you use Phong? Blinn is way more physically accurate and not that much more expensive.
-Did you consider to add energy conservation??
-Did you consider upgrading the diffuse term as well? I know NdotL is the standard (UE4 uses this for default as well, but you can switch), but there is a lot you could try out that looks more accurate/fancy^^ (points at Oren-Nayar )
-I know baking dozens of cubemaps is a bit clumsy and stressful to manage, but I would parameterize the input as well and bake out more localized cubemaps, at least for portfolio purpose (hooray UE4 reflection Environment^^)
you'll get a lot of unwanted lighting in shadow areas through IBL if its not localized (geometric attenuation can help with this as well) and there is no IBL-Lightmap mixing in UE3
But anyway...really cool stuff you did, and the map looks mindblowing real!
I was just curious to know, so thats why all the questions^^
Big respect for this awesome and inspiring work!
PS: Iam just playing around atm and will see how Blinn behaves with your model (putting in the nodes right now^^). It means just minor changes but should add something.
Hi Daedalus51.
As mentioned before shader is work n progress and there might and will be some changes. This is not totally PBR, this is artistic interpretation of it.
This shader newer really pretend to be physically correct, it physically accurate in some extends, but in my artistic driven way. I'm not a tech artist, I just build a system which does things I need. Making game art is always about some compromises ))) Especially if you a monkey tech wise)) And at the end of the day - this are about final image, rather how correctly it was made or works. I'v seen a lot of things made right, with pretty average visuals. ( for instance call of duty has really advanced physically accurate lighting model, but does it helps against BF3-4?)
As i said before, shader is really simple. Current fresnel is normal dot camera - default unreal fresnel. It affected by normalmaps, if you use any.
As about attenuation do you have some image reference of effect you looking for?
It is not maybe the best approach, but quite simple.
In some extends it conservative. In extends of using cube map on emissive for ambient lighting)) but as far you add reflection which multiplied on fresnel, same but inverted fresnel multiplied on custom lighting diffuse. As far I add reflections they replace on same manner emissive cube texture. So it newer really acts with reflections as Add.
Why phong? Why not? And it simple to do)) I can't transfer smart formulas to nodes, so I used one which I can understand)) I have nice link to list of lighting models, and will try ( as actually I guess was saying as well) to use other model. Not sure about blinn. It doesn't looks universal enough for me. But will see.
As about having localized cubes, this is bit too complicated to do it by one person, and idea behind the scene to use same shader and shading across all content, and due hack nature of cube blurring I can use only one cubemap in shader network. It was pretty painful moment whey I found this, but as I said - game art is about compromises
P.S. and there will be updates to shader. Currently I change fresnel multiplier value for spec scale from 10 to 5 - so currently lowest fresnel power will be power of 5.
Thanks for the clarification.
I totally understand your point and am on your side as well!
Sorry if my post was misleading. I read your descriptions to the shader and knew that it was not fully PBR, but I was also just curious to know what you have planned and why you made certain decisions.
I think that you are totally right with saying that in the end...tech is just a way to support the things you wanna do and its not in every case needed to push to the latest^^
And anyway...as I mentioned in my last post, I think what you made is so stunning that we dont have to argue the fact of what you can achieve artistically with the tech that is enough for it (and without going into crazy BRDF implementations^^)
What I noticed while implementing Blinn to your model is, that specular reflection seems to be not working at all (for point and spot lights).
Did you see that as well?
I took a ground plane, made a basic material with low roughness and high spec and placed point and spot light close to the surface.
I was only able to see the lights radius, but no specular reflection at all.
So that makes the Blinn calculation obsolete anyway, but it would be cool to know your experience on this.
Cheers,
-Daed-
PS: I am also not too techy....just started with looking into these things a couple of months ago because as a lighting artist, I wanted to understand whats happening during these light-matter interactions. And as for transferring smart formulas into nodes for example...making Blinn with nodes is not that complicated (in fact its only like 5 additional nodes or so) and there are plenty of resources about stuff like that on polycount and other sites.
your shader combined with 3d scans and 8k texture makes the UDK render totally match with the realness what our eyes senses when we look arround. Absolutly Amazing!
it´s lacking options about transparency,emissiv...but that´s ok. maybe one day will come a update. bye.
Replies
This time is about Lighting and Shaders.
[vv]83641521[/vv]
Still work in progress, but this time environment is pretty close to the end phase. I will tweak some things,and add or replace some meshes, but main part for environment is done.
Basically mostly changes were about shaders. I spend quite a lot of time building them, understanding, researching.
Currently overall ambient color is driven by cubemaps, all objects sharing same logic, all paramiters shared between different meshes. Core sort of Physically correct, or at least plausible. Sort of BRDF concept simmilar to MR and Maxwell materials ( more close, due having second coating layer). I can control how much reflections contribute to surfaces on face angle and on grazing angle, adding of reflection reduces diffuse, etc. But basic controls for materials are really minimalistic and most of things to objects may be added through vertex color rather creating one more material instance.. Fast to iterate, can produce probably any possible effect ( in some reasonable extends)
Lighting I had on first video was not really I was happy about, but current shaders approach makes changing of lighting pretty simple process. This more about tweaking cubemap, rather re-baking lighting.
Parental shaders made of multiple instanced utilities, so every change in one shader affects another ( not in run time - I wish I could))
What is next -A lot, but this time most probably I will update thread more often. I want to build Station and Vehicle, I think I have now pretty clear idea what this should be about, I spend few month in attempts to find what do I like and what will work well with the space and most important not a clich
Awesome, I wish we'll have thing kind of stuff in RPGs one day...
Holy mother of god...dat photorealism!
I'am just speechless...will be watching this!
[vv]83762182[/vv]
You can download UDK package here CLICK
O man! This is insane!
Thanks for sharing!
Lucas
Obscura I think with UE 4 it could be simpler. Localized reflections instead of global one, no boring cubemaps baking, simpler to control layering system in shaders.. Maybe one day we will have access to it)) So far I had to crack it in complicated way))
it's possible share your shaders file? same as your bird.upk file?
my gawd.:eek:
[ame="http://www.youtube.com/watch?v=-N4f4sR_QpY"]Impossible![/ame] You lie.
https://www.dropbox.com/s/d54zakjjw94j38m/anty_ShaderPack.upk
https://www.dropbox.com/s/u3sjyrmnu7qha5g/anty_ShaderReferenceMap.udk
And some simple manual -
For instance blurry base layer and light, more sharp coat layer for plastics.
Semi reflective and gloss main layer, and only on grazing angles coating with max blur for Velvet like effects, etc.
one suggest: plz put these files in your first post.
And one more note - If you want to change cubemap, go to the F_Cube mat function and change it there. Try to keep values for Sky texture and Cube texture the same. For instance if your sky texture brightness is 2.0, do the same for cube components.
Obscura
All functions are available in anty_2.0 group in functions menu. You don't need to copy them anywhere. So in case of some updates to shader ( there will be for sure updates) you can replace only one pack, while keeping your instances in own folder. And feel free to post your tests here. Will be good to know about possible problems or some cool ideas.
Its pretty amazing to see peoples progress with these things since physical based shading is more and more becoming something everybody wants to have (or at least should want ) and I think the result clearly show why.
Also your work helps and inspires because I, for myself, am working with UE4 in the office and the material stuff you can do there is so awesome, that since I really got also into the tech details behind it, I am looking and trying for a way to achieve similar things in UDK at home. I just dont wanna miss this anymore^^
However, out of interest I would like to ask about some more details regarding your setup:
-On what is your fresnel term based? Is it Schlick?
-I didnt see geometric attenuation....was I just too blind or is there none?^^
-Why did you use Phong? Blinn is way more physically accurate and not that much more expensive.
-Did you consider to add energy conservation??
-Did you consider upgrading the diffuse term as well? I know NdotL is the standard (UE4 uses this for default as well, but you can switch), but there is a lot you could try out that looks more accurate/fancy^^ (points at Oren-Nayar )
-I know baking dozens of cubemaps is a bit clumsy and stressful to manage, but I would parameterize the input as well and bake out more localized cubemaps, at least for portfolio purpose (hooray UE4 reflection Environment^^)
you'll get a lot of unwanted lighting in shadow areas through IBL if its not localized (geometric attenuation can help with this as well) and there is no IBL-Lightmap mixing in UE3
But anyway...really cool stuff you did, and the map looks mindblowing real!
I was just curious to know, so thats why all the questions^^
Big respect for this awesome and inspiring work!
PS: Iam just playing around atm and will see how Blinn behaves with your model (putting in the nodes right now^^). It means just minor changes but should add something.
As mentioned before shader is work n progress and there might and will be some changes. This is not totally PBR, this is artistic interpretation of it.
This shader newer really pretend to be physically correct, it physically accurate in some extends, but in my artistic driven way. I'm not a tech artist, I just build a system which does things I need. Making game art is always about some compromises ))) Especially if you a monkey tech wise)) And at the end of the day - this are about final image, rather how correctly it was made or works. I'v seen a lot of things made right, with pretty average visuals. ( for instance call of duty has really advanced physically accurate lighting model, but does it helps against BF3-4?)
As i said before, shader is really simple. Current fresnel is normal dot camera - default unreal fresnel. It affected by normalmaps, if you use any.
As about attenuation do you have some image reference of effect you looking for?
It is not maybe the best approach, but quite simple.
In some extends it conservative. In extends of using cube map on emissive for ambient lighting)) but as far you add reflection which multiplied on fresnel, same but inverted fresnel multiplied on custom lighting diffuse. As far I add reflections they replace on same manner emissive cube texture. So it newer really acts with reflections as Add.
Why phong? Why not? And it simple to do)) I can't transfer smart formulas to nodes, so I used one which I can understand)) I have nice link to list of lighting models, and will try ( as actually I guess was saying as well) to use other model. Not sure about blinn. It doesn't looks universal enough for me. But will see.
As about having localized cubes, this is bit too complicated to do it by one person, and idea behind the scene to use same shader and shading across all content, and due hack nature of cube blurring I can use only one cubemap in shader network. It was pretty painful moment whey I found this, but as I said - game art is about compromises
P.S. and there will be updates to shader. Currently I change fresnel multiplier value for spec scale from 10 to 5 - so currently lowest fresnel power will be power of 5.
Thanks for the clarification.
I totally understand your point and am on your side as well!
Sorry if my post was misleading. I read your descriptions to the shader and knew that it was not fully PBR, but I was also just curious to know what you have planned and why you made certain decisions.
I think that you are totally right with saying that in the end...tech is just a way to support the things you wanna do and its not in every case needed to push to the latest^^
And anyway...as I mentioned in my last post, I think what you made is so stunning that we dont have to argue the fact of what you can achieve artistically with the tech that is enough for it (and without going into crazy BRDF implementations^^)
What I noticed while implementing Blinn to your model is, that specular reflection seems to be not working at all (for point and spot lights).
Did you see that as well?
I took a ground plane, made a basic material with low roughness and high spec and placed point and spot light close to the surface.
I was only able to see the lights radius, but no specular reflection at all.
So that makes the Blinn calculation obsolete anyway, but it would be cool to know your experience on this.
Cheers,
-Daed-
PS: I am also not too techy....just started with looking into these things a couple of months ago because as a lighting artist, I wanted to understand whats happening during these light-matter interactions. And as for transferring smart formulas into nodes for example...making Blinn with nodes is not that complicated (in fact its only like 5 additional nodes or so) and there are plenty of resources about stuff like that on polycount and other sites.
https://mega.nz/folder/xcZTSSBC#p09QCQsoKf0dK-Ow--gJvA/folder/9EphFZzL
your shader combined with 3d scans and 8k texture makes the UDK render totally match with the realness
what our eyes senses when we look arround.
Absolutly Amazing!
it´s lacking options about transparency,emissiv...but that´s ok. maybe one day will come a update.
bye.