This is exactly what I’m saying @Roy_Wierer.Seda145
This is totally fine and I definitely recommend using existing wheels if you can instead of reinventing it.
(Small warning before reading this: I don’t mean to offend anyone here. So please read it with something positive in mind.)
However, the OP and the issue described in this thread make me think that there’s a lack of fundamental knowledge, so I advise them to learn the basics.
I’m not talking about “learning the basics of writing a full rendering engine” or even “write your own custom shader model”, but the basics of what a sampler is, what kinda values a normal map encodes, what a grayscale mask texture is, some basic HLSL functions (lerp, min/max, add/subtract/power/multiply/…). I’m not talking about using this knowledge to build extremely complex material graphs, but only the basics. The material graphs in this thread are basic (besides the one extreme boot example that stands for itself).
Everyone who creates materials should know the few fundamental basics that seem to lack in the beginning of the thread.
To the thread opener: This is not an offense or anything like that. Everybody needs to start somewhere and it’s good to ask questions. Some questions might seem dumb after a few years of experience, but that’s just part of the learning experience. In fact, just a few minutes ago I found a very dumb question of myself I asked years ago.
To @alberto: You claimed a few very solid things and it might be good to add a few points (or ask questions) about those claims:
you can’t use a material value like roughtness (sic) as 0 or 1 if lumen!!
Why not? I don’t see a reason why that would be a problem? I did that all the time without any issues, and in the end a texture also just provides a value.
And never use roughtness (sic), specular, whatever as a number, for example you can desaturate the base color and use it as roughtness (sic).
You can, but you don’t need to. It depends on what you want. In most cases you get better results, but in some cases having a static value is fine (notice the “fully rough” checkbox in the material settings? It’s there for a reason). And it’s very likely not the issue of the OP.
Your problem is for sure the material, is just not enough…
Why not? A very basic material doesn’t need much to look “good”. Depending on the art style it can be very simple. Just claiming that a material needs many nodes doesn’t solve anything, and the pure number of nodes doesn’t make a material better.
May I suggest to you something? Use good shaders […]
In my opinion it is not a good idea to just suggest a “working out of the box” solution for all cases. The OP asked a very specific question about their setup and what’s wrong with it, and this is not a good answer to that question. It’s like “why does my car not work?” - “Just order a taxi”.
Furthermore, if your claims are true and I should really never build my own materials from scratch or use simple values for material inputs I’m doing my job wrong for over three years and learned only bad habits the last 10 years. So please, tell me if I’m wasting my time.
In general…
Well in physically based materials, It doesn’t exist any material like “metal 1/roughness 0”
In this case, we are talking about realistic materials
For sure everyone knows that the skin (color, reflection, imperfections etc…) is not the same in the whole body:
is just impossible to do this using just values… and is not what I say… is what the PBR manual says…
It happens exactly the same with whatever except in a few cases (as a perfect mirror)…
And I respect… but I explained the problem, the solution and I did a suggestion. So don’t tell me that.
It happened the same for me too, 3d world and videogames are changing fast haha
And this is my last reply, read the manual, sure is a matter of few hours for you!
It doesn’t exist any material like “metal 1/roughness 0”
I didn’t recognize you were talking about 0 and 1 specifically. Sure, you are right.
In this case, we are talking about realistic materials
Probably, but we weren’t even talking about materials themselves, but a specific shading problem that can occur with realistic and unrealistic materials. No matter how realistic your values are, if you have “wrong” values, that’s an issue. And normals that face into the mesh are very likely “wrong” values, same with negative roughness values and a metallic of 500.
is just impossible to do this using just values…
Nobody claimed that. But you claimed that in no cases should I ever just use plain values for anything. Well, then I need a pure black texture for metallic input for a pure dielectric material? Then I even need pure black SSS textures for materials that have no (measurable) subsurface component? Does this even make sense? (Spoiler: It does, but it’s not worth it, especially considering that real-time graphics is never 100% accurate.)
I explained the problem, the solution
What’s the problem? The fully rough material? That wouldn’t cause the shading issue the OP showed. I saw no word of a solution that actually helped the OP in your answer, sorry. Most of your suggestions are good and wise, but not a solution for the mentioned problem. Take your fancy downloaded material of a true master genius and give it a completely wrong texture and it still won’t look good.
3d world and videogames are changing fast
Sure they are. That’s why I’m constantly learning everything I can. Implicitly telling me that it’s not worth learning is not motivating at all.
The PBR guide you linked is good, but it’s “really old” for my measurements. Surely there are still things in it that are new to me, but not the general knowledge of PBR. Again, I studied rendering and shading for the past 10 years or so and I know what’s hard and what’s not (for example, I studied skin materials, but I know that it’s a waste of time building one from scratch).
And this is my last reply
In the end, I’ll be forced to leave this discussion without learning anything new - besides that I should stop trying to help people at all. Sorry for disturbing your circles. Hopefully the OP will get their problem solved soon.
@sirjofri, sorry I didn’t explain very well… I made a couple of videos for you
I hope this answer the doubts you have, and of course, you learn something new
Value params vs Texture:
Why it doesn’t work? Well because you always get the same result (range 0-1), you are losing all the detail…
Thanks for the extra effort, but this is pretty much common knowledge and also very obvious. A single value is a single value, but that’s also not the point of the discussion (I agreed with you about that a few posts earlier).
Anyways, thanks for the extra effort.
Ok now
The problem is not unreal:
Lerp, multiply, add, roughness, opacity whatever
Is in unreal, Photoshop, unity, lightwave, maxon, Babylon, 3Ds Max and all of them
Is a waste of time to make materials, unless is your job
No one use it, people use master materials, 85% of studios uses substance
When I create a material I use mixer and blender using smart materials and udim
![image](https://d3kjluh73b9h9o.cloudfront.net/original/4X/0/b/5/0b58b625e9bf153644df2ce9c3535665e4b7eb6c.gif)
If you know about materials it doesn’t matter the software so… read the book
You don’t learn because You don’t want to do
sorry, missed this. what book?
This is the f*** general knowledge
And From the light to your eyes
Hi @dalikdik , have you been able to solve you problem in the end? Checking the normal map?
i didnt read all the responses here but it looks like it drifted away from what I believe is very clear and obvious problem: the normal map is bizarre. Thats why it appears normal from one angle but not others.
So don’t mess with any of the microsurface/reflectivity properties until you get the normal map fixed.
Why and how did the normal map get that way? That is a question of how it was produced. That may be involving some other software so it may be best to ask at dedicated forums for that software, or a 3d artist centric forum like polycount.