The BEST way to combine MULTIPLE normal maps in Blender!

  Рет қаралды 14,797

PBR Painter

PBR Painter

3 жыл бұрын

UPDATE: So after making this video, I realised that it's easier to do the vector rotation after the normal map nodes. Then you don't need to convert to and from vector space, and the only change you need to make is to input the Normal output from a texture coordinate node into the dot product and cross products.
And most importantly, you can just control the strength of each map independently, which basically acts like the "Fac".
Here's the node setup:
imgur.com/gallery/e1V67as
ANOTHER UPDATE: It turns out if you rotate the model using the setup in the video or in the link above, you get weird artefacts in the material. This was fixed a long time ago in the addon but I forgot to update here.
The way to fix this is to use the Normal output from a Geometry node instead of the Normal output from the Texture Coordinates node. Simple!
You can check out the demo for PBR Painter 2.0 here:
• Video
And the tutorial series here:
• (OUTDATED) PBR Painter...
You can get PBR Painter at Blender Market:
blendermarket.com/products/pb...

Пікірлер: 47
@pbrpainter1091
@pbrpainter1091 3 жыл бұрын
UPDATE: So after making this video, I realised that it's easier to do the vector rotation after the normal map nodes. Then you don't need to convert to and from vector space, and the only change you need to make is to input the Normal output from a texture coordinate node into the dot product and cross products. And most importantly, you can just control the strength of each map independently, which basically acts like the "Fac". Here's the node setup: imgur.com/gallery/e1V67as
@JPOBonkers
@JPOBonkers 3 жыл бұрын
Thank you for working this out, I had to switch the inputs of the cross product, now it works perfectly for me.
@pbrpainter1091
@pbrpainter1091 3 жыл бұрын
That's interesting, thanks for sharing. I'll double check and see if the setup I've shared needs to be updated.
@ValentinNadolu
@ValentinNadolu 3 жыл бұрын
Works like a charm but you might need to swap the cross product inputs depending on your tangent space normal map format (DX vs OpenGL).
@floxay
@floxay 3 жыл бұрын
But this way it is no longer possible to just stack it like at 18:31 since it takes RGB but outputs 'Normal', anyways thanks for the video! =)
@RenoSydney
@RenoSydney 2 жыл бұрын
Thanks for sharing! HOWEVER, THIS METHOD MIGHT HAVE A SEVERE LIMITATION. It appears you cannot rotate your model if you use this node method. I had an animation where my model rotates a full 360 degrees. Looks great at 0 and 360, but halfway in between the material with the combined normals goes black. I think this has something to do with the texture coordinate math.
@andycrystal
@andycrystal Жыл бұрын
Blender needs to include this as an easy option to be honest. Makes sense for Normal Maps.
@DominikWysocki-ml2he
@DominikWysocki-ml2he 10 ай бұрын
I agree with you. As much as I appreciate Blender- jesus christ! it's so unnecessarily complicated. I go cross-eyed whenever I tackle their nodes. Literally about 3 months into using Blender (being a profesional artist) and I still have to watch tutorials in doing the most basic textures. Maya and 3Dmax, it's so easy to combine simple bump maps. They provide for you slots where you can just upload the file and boom! it works. With Blender, you have to link this to this to this to that...I swear sometimes I wonder if I ever will actually be able to comprehend these crazy nodes system. Not that I'm low IQ or anything, but it's just nonsensical to me, and I stand in AWE! of how people just go and start linking nodes with ease.
@Domzdream
@Domzdream 2 ай бұрын
I couldn’t agree more. The nodes system is so frigging hard to understand. All that linking makes my head spin.
@petermoller4610
@petermoller4610 3 жыл бұрын
You did what has been impossible in blender.. till now.. using multiple normal maps. It is extremely useful when working with models derived from a game engine.
@WasyaSsss
@WasyaSsss Жыл бұрын
Oh my god dude you just saved my life. This setup works like a charm
@viktorb2688
@viktorb2688 Жыл бұрын
Awww man, you're the best!!! I love you! :D You just saved my ass. I was looking for exactly this method. I wanted to combine 4 shaders, (including the corresponding normal maps) While controlling the factor of the combined normal maps, by an image mask. Basically adding some hand painted mask to the normal maps of a house wall so it looks like the plaster is falling off in spots. I was struggling with combining normal maps, as I got weird glossy and weirdly colored results. As my method was very wrong, by just mixing normals with a simple mix RGB node and that did not work with multiple normals. This method works fantastically. I added the 4 normal maps and added the math (multiply) node after the "arccosine" math node and than I can control it with manually, or plugging into that multiply node any grayscale image.
@antohardns
@antohardns Жыл бұрын
Thank you! Great helper for my work!
@Forteskun
@Forteskun 2 жыл бұрын
I actually don't quite understand the maths yet, but it clearly works, and very nicely I have to say. Great tutorial, thanks!
@ahuriG
@ahuriG 3 жыл бұрын
super interesting thank you!
@Domzdream
@Domzdream 2 ай бұрын
I’m a Blender user, coming from 3dsmax and Maya. It just destroys me how it’s so damn complicated to link up two BASIC normal maps with all that crazy complicated linking going on. It took you 22 minutes to make 2 simple bump maps. It should b no less than a single minute to make this. Blender should have 2 or (multiple) slots where you c an stick your texture map, and have a pulley which determines how soft or strong it should be, one dominating the other. Blender is so unnecessarily (still) so complicated. It’s a free software, so that’s the one saving grace.
@kadirsugar7894
@kadirsugar7894 3 жыл бұрын
Thank you so much
@MrBrigadierArchived
@MrBrigadierArchived Жыл бұрын
The really cool stuff we almost always need, but the variant in the video I see more practiceful as when we do convert with Normal Map node first it may break the final output if you use more than 2 or 3 reuse. A blender's behavior is not always predictable.
@archiestutorials8716
@archiestutorials8716 3 жыл бұрын
Thanks!
@darkobakula5190
@darkobakula5190 Жыл бұрын
Easiest way I know to combine normal maps is the old Photoshop / Crazybump technique that doesnt require and vector space transformations and is possible with Blender versions 2.6+ ( maybe even earlier) using a simple node setup. The results are quite good and very minimal compare to this (correct) version. The advantage is, its much easier to layer materials on top of one another.
@DominikWysocki-ml2he
@DominikWysocki-ml2he 10 ай бұрын
I always take screenshots of the end result formulas when looking at the Nodes and how they're linked up. I see the effectiveness of the nodes system, but geeez...it's just so damn complicated. I really struggle in comprehending this insane system.
@Aquarius-CZ
@Aquarius-CZ 3 жыл бұрын
Thank you, this is amazing! How did you come up with it? :)
@pbrpainter1091
@pbrpainter1091 3 жыл бұрын
No problem, happy to share the method for others to use. In terms of coming up with it: Basically, I needed a mathematically accurate but not overly complicated node setup for PBR Painter, so I pulled out the ol' pen and paper and worked something out! The vector rotate node is super handy as it does a lot of the hard work, in terms of the maths.
@_MaZTeR_
@_MaZTeR_ 3 жыл бұрын
What about if you have multiple mask maps, which require multiple normal maps to those masked parts, some of which need to be on top of each other like in this video?
@just8Anka
@just8Anka 2 жыл бұрын
Doesn't seem to work with normal maps, using different uv sets :(
@DianaGee
@DianaGee 3 жыл бұрын
I'm actually really interested in knowing how to do a factor with the vector method, also is it possible to go over the value of 1 factor with it?
@pbrpainter1091
@pbrpainter1091 3 жыл бұрын
Okay, so the easiest way to do this is to add a math node between the arccosine output and the angle input of the vector rotate node, then switch the operation to multiply. The multiplier is then acting on the angle between the two normal map vectors. So, if you multiply by 0, you just get the first map with no change. If you multiply by 1, you get the same as the setup I've shown here. You can go over 1, but the effects aren't really intuitive. That is, it won't just keep making the second map stronger and stronger. Basically what will happen is that it will get a bit stronger initially, then eventually will flip to inverted, then will go back to zero again. This is because it's essentially rotating greater than 360 degrees. One other thing to point out: when you are adding this math node to control the factor, the order of the normal maps actually matters. The math node will always be controlling the strength of the map on the bottom in the setup I have here. Hope that makes sense!
@DianaGee
@DianaGee 3 жыл бұрын
@@pbrpainter1091 I made a simple shader to recreate the shaders in a game, and there are detail maps that go above one (not above something like 1.5ish so it wont break) so the factor is pretty helpful
@pbrpainter1091
@pbrpainter1091 3 жыл бұрын
@@DianaGee That's great. There's actually also another way to do it, which is to do everything after running the color maps through a normal map node. If you do it this way, you can take out all of the conversions to and from vector space, i.e. You run the outputs of the normal map nodes directly into the cross product, dot product and vector rotate nodes, then run the final output directly into the normal input on the shader. The only difference with this is that you need to add a geometry node and run the normal output into the cross product and dot product nodes, instead of using a (0, 0, 1) vector. You also can't use the maximum node when doing it this way, but that's usually not needed. If that's too hard to follow I might share a screenshot!
@F4BON3
@F4BON3 3 жыл бұрын
This looks like the proper way to do it, i totally understand the concept and this tutorial is awesome...but seems like there is no Vector Rotate Node in Blender 2.92 :(
@pbrpainter1091
@pbrpainter1091 3 жыл бұрын
Hi, do you mean 2.82? It is definitely in 2.92 and it was released in 2.83.
@F4BON3
@F4BON3 3 жыл бұрын
@@pbrpainter1091 oh wow, I am pritty sure I pressed F3 and searched for it and it didn't come up...once I saw your message i went ahead and did it again and its there 🙄🙄 thank you so much for this awesome tutorial
@pbrpainter1091
@pbrpainter1091 3 жыл бұрын
@@F4BON3 No problem!
@F4BON3
@F4BON3 3 жыл бұрын
Does anyone know how to properly convert RGB to non-color?, I have a normal map which was generated by Blender, for example bevel node and a normal map generated from a BnW image. They are not Normal map images that I can just change to non-color within the same node...Big thank you in advance
@Pachupp85
@Pachupp85 2 жыл бұрын
Gamma correct it. Gamma node or math node, Power, 2.2 or 1/2.2 in other way.
@Ad-im1ne
@Ad-im1ne 2 жыл бұрын
Oh yeah. This is definitely all getting grouped into a custom node.
@pbrpainter1091
@pbrpainter1091 2 жыл бұрын
Great! Just checkout the comments as there are a couple of improvements that can be made to what's in the video.
@MaheerKibria
@MaheerKibria Жыл бұрын
I am appalled that this is still not a node added by default in blender.
@lishanh
@lishanh Жыл бұрын
(brain dead mode on )
@waltage
@waltage 3 жыл бұрын
WHERE IS Fac in your variant??????????
@pbrpainter1091
@pbrpainter1091 3 жыл бұрын
You can add a math node between the arccos math node and the vector rotate node, and switch to multiply. The multiplier then controls the strength of the second map, from zero (just the first map) to 1 (what's shown in the video).
@waltage
@waltage 3 жыл бұрын
@@pbrpainter1091 Thank you. what do you think about controls the strength of first map?
@pbrpainter1091
@pbrpainter1091 3 жыл бұрын
@@waltage I actually don't have a straightforward answer for that. However, since making this video I came up with a better version of this method. Turns out it's easier to do the vector rotation after the normal map nodes. Then you don't need to convert to and from vector space, and the only change you need to make is to input the Normal output from a texture coordinate node into the dot product and cross products. And most importantly, you can just control the strength of each map independently, which basically acts like the "Fac". Here's the node setup: imgur.com/gallery/e1V67as
Retopology Workflow and Normal Maps | Blender 2.91 Tutorial
9:45
Normal maps in Blender
11:17
Jamie Dunbar
Рет қаралды 9 М.
How Many Balloons Does It Take To Fly?
00:18
MrBeast
Рет қаралды 106 МЛН
LOVE LETTER - POPPY PLAYTIME CHAPTER 3 | GH'S ANIMATION
00:15
HAPPY BIRTHDAY @mozabrick 🎉 #cat #funny
00:36
SOFIADELMONSTRO
Рет қаралды 13 МЛН
Did you believe it was real? #tiktok
00:25
Анастасия Тарасова
Рет қаралды 55 МЛН
The RIGHT way to cut holes in surfaces in Blender
10:52
Josh Gambrell
Рет қаралды 1,2 МЛН
The secret of Normal maps in Blender 3 and 3D softwares
11:13
Pierrick Picaut
Рет қаралды 28 М.
Change Your Understanding of Topology In Six Minutes
6:58
DECODED
Рет қаралды 922 М.
ID Maps in PBR Painter
7:17
PBR Painter
Рет қаралды 865
3 Hours vs. 3 Years of Blender
17:44
Isto Inc.
Рет қаралды 4,2 МЛН
Shader Fundamentals - Normal Mapping
10:13
Dan Moran
Рет қаралды 164 М.
Workflow for Creating Normal Map Decals in Blender
13:48
CG Cookie
Рет қаралды 124 М.
Blender how to Reduce Poly Count and Bake Textures
8:06
Markom3D
Рет қаралды 347 М.
Bake Textures From One UV Map to Another UV Map (Blender Tutorial)
8:55
How Many Balloons Does It Take To Fly?
00:18
MrBeast
Рет қаралды 106 МЛН