High Quality PBR Materials in Unity HDRP

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
hey guys in this video you will learn how to create pbr materials to achieve high quality graphics in unity's hd render pipeline so let's get started but first this video is sponsored by ambience vr they have created a great tool for unity called at materials et materials is the perfect tool to speed up your workflow while editing your unity scene it comes with more than thousand pbr materials on demand right into the editor just search for material you are looking for choose the resolution you need and 80 materials does everything including material map creation for your render pipeline of choice hdrp urp and built-in all the materials come from cc0 sources and can be used in commercial projects the 80 material team is made up of architects and computer engineers who have been dealing with rpgs for over four years and they constantly offer support via mail or facebook group for more information click on the link in the description all right i have open up unity and set up a very simple scene for this scene i have already prepared all the materials except for this float material which i will cover in this video for high quality materials you need high quality texture and for high quality texture you either create them by yourself using software like substance designer or you can download from internet which i'm also gonna do in this video there are a couple of websites from where you can download this texture such as texture heaven cc0 textures freepbr.com or texture.com the website i like the most is this texture heaven and that is because it provides pvr texture up to 8k resolution and they are completely free even for commercial use so for this video i'm gonna use this website so i click on browse texture and for our scene i go to floor and download this cobblestone texture i click on all maps and here you can see you can download up to 8k resolution but for this video i'm gonna use 2k and save the file and these are the texture that comes with the zip file i quickly copy that to unity next i go to material folder and right click create and create a new material i call this floor and assign this to floor object and then in the base map i choose this cobblestone texture and in the normal map i choose normal map and make sure in the import setting the normal app is set to normal map type okay and also set the tiling to 2x2 and as you can see right away our texture is looking nice but we are not getting enough detail out of this material and that is because we haven't used additional maps that comes with this zip file and these are the additional maps that we need to use in order to get additional detail in this material but the problem is in this material there is no slot available to hook those textures we only have this mass map slot and if i take my mouse over this option it says that it required a specific map in a specific channel so how do we create this complex map so to create this mass map i'm going to use photoshop so i go to my texture and right click and show in explorer so first of all search if there is any roughness or smoothness map in this texture so we have a roughness map so i right click and open with photoshop and first of all it says that it is in grayscale mode so first of all i go to image and convert this to rgb and now if i go back to unity and go to my material and here you can see that the unity uses a smoothness map not a roughness map so we need to invert this map in order to create a smoothness map to do that go to image adjustment and click on invert or press ctrl i then press ctrl a or select all image and press ctrl c to copy the texture and go into the channel and click on this button to create additional channel and it will automatically select the alpha channel then simply press ctrl v to paste the texture and why i'm doing this and that is because and here you can clearly see in the alpha channel it requires a smoothness map so that's why we have pasted our smoothness map into the alpha channel next in the green channel we need to copy our metallic map so let's go back to the texture folder and here you can see that we don't have any metallic map here so we need to create metallic map by ourselves so i can go to photoshop so to create metallic map what i generally do is i select the red channel and press ctrl l to bring up the level menu i change the gamma and also adjust the output level so that i get a darker value of this texture and that is because this material is a organic surface which generally have a low metallic value so that's why i keep my metallic value to really low which works in most of the situation next in the green channel we need to copy our ambient occlusion map so again go back to texture folder and here you can see we have our ambient occlusion map so i again open up with the photoshop and press ctrl a and ctrl c copy the texture then again go to my map and here in the green channel simply press ctrl v to paste our texture and in the blue channel we need a detailed mask map which we generally don't use so i set this to black then i click on rgb and save this file as a mask map and in the format type i choose tiff okay now our mask map is ready let's go back to unity then i select the material and assign our mask map into the mass map slot and you can immediately notice some difference in our material by the way this metallic value will not work because now this material is using the metallic map that we used in this mass map however you can control your smoothness from the smoothness slider so if you want a shiny surface you can adjust this value and you can also control your ambient occlusion from this slider so to better see the result of this additional map i temporarily remove this base map and now you can see even after removing the base map we can still see a lot of detail in our material which you can control from the sliders you can see that now we are getting some specularity on the stones which you can control from the slider and you can also adjust your amp it occlusion and also control the depth using this normal map so here you can clearly see how this additional maps plays a major role in creating a photorealistic material now here you can see we have some additional texture maps such as this displacement map which will see in a minute and we also have a roughness plus ao map which is i think used by other renderer engines such as unreal so for now we don't need it so you can delete this one and let's see how we can use this displacement map so i again jump back to unity so to use displacement map first of all go to your displacement texture and uncheck this srgb option then go to material and here you can see in displacement mode we have two option vertex and pixel so first of all i enable pixel displacement and here you can see it provides an additional slot where we can hook our displacement map so i assign my displacement map into this height map slot you can quickly see some changes in our material and now you can control the displacement from this amplitude option this displacement is not very impressive and that is because it's not an actual displacement it is called parallax displacement or fake displacement it basically displace the pixels to give an illusion of displacement again if you want to know more about displacement map i have a complete dedicated tutorial about it which you can watch from the i button or from the link in the description next i switch to wattage displacement and you can immediately notice it actually deform your geometry if i move my camera this way you can actually see you can clearly see it actually deform the geometry but it's not looking very good and that is because for this kind of displacement you need a 32-bit displacement map and also need a high polygon geometry so to actually see a displacement result i go to htrp and change my shader to lit test lation and then in displacement mode i choose translation displacement and now you can clearly see some displacement in our material now you can adjust this base value or offset to control your displacement but keep in mind this will also affect your render time because if i go to wireframe mode it actually subdivide your geometry according to the displacement map now the question comes what if a texture doesn't have these additional pbr maps and you're not able to find them on internet as well well in that situation you can create these pbr maps using materialized software which i did for this wood material now if i go to this material this is how this material initially look and this is after adding this additional map and i created this map in materialized software if you want to know how to use materialize i have a complete dedicated tutorial about that which you can also watch from i button or from the link in the description here i want to mention one more thing if you are a bit lazy or you don't want to create this additional mask map then there is a solution for that so to show that i create a new material and in the shader option i go to shader graph and choose this custom lit shader which i created to use for hdrp so basically in this shader you can directly hook any kind of texture you download from internet without creating the mass map so i quickly assign the textures so i lock it here then go to my texture folder first of all assign my base map then in the normal slot i assign norm map in the metallic we don't have any map so i'll leave it blank in the smoothness slot i assign my roughness map even though it's not a smoothness it will roughness but we will change it with one option in the aomap i assign my ambient occlusion next i go to options then i go to material and assign this material to this object first of all i change the styling to 2x2 then in normal i slightly increase the normal strength in the metallic slightly increase the metallic value and in the smoothness map since we are using roughness map so i simply check this roughness option and now our roughness map will work like a smoothness map and in the ao strength set the value to 1 and now just tweak the parameters to get the same result and now you can see that both material looking almost same so this is how it looks with unity's lit shader and this is with using my custom lid shader if you want you can download the shader from my patreon page link is given in the description and finally you can also use this 80 materials plugin which will automatically create pbr materials for you not only in htrp but also in built-in and urp so i also show you a quick demo of that i have imported this plugin now all you need to do is go to tools go to ambience arch toolkit and open up this tool this tool will automatically search all the materials available on cc0 texture and texture heaven website so i choose texture heaven and here you can choose any kind of texture at any resolution and it will automatically create a pbr material from this texture so for example i go to terrain and let's say i choose this dry ground texture so i click on 2k as you can see it has automatically created a pbr material with all the additional textures applied in proper slot now all you need to do is just drag and drop your material onto this floor and it will work just fine so you can also use this tool if you want to speed up your workflow if you find this video helpful please like and subscribe the channel and if you want more advanced tutorial then please give a visit to my patreon page and finally before i wrap up i would like to say thank all of my patreon supporter especially hannah sinconan dimitu brendan manion jb hongin slash renault fubiliu heath close stephen christie chill carrier stephen cediro dan kin and john marks so that's it for this video see in the next one peace out
Info
Channel: UGuruz
Views: 48,704
Rating: undefined out of 5
Keywords: unityguruz, uguruz, pbr materials, pbr materials unity, hdrp material unity, unity hdrp mask map, unity pbr workflow, unity material tutorial, unity roughness map, pbr texture, pbr texture unity, unity realistic materials, unity materials, normal map unity, unity height map, displacement map unity, unity graphics, unity snow tessellation, tessellation shader unity, unity heightmap texture, texture heaven blender, unity shader tutorial, hdrp shader graph, unity hdrp heightmap
Id: Zkogn7Og4Ag
Channel Id: undefined
Length: 13min 27sec (807 seconds)
Published: Mon Oct 05 2020
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.