OCEAN shader with Unity Shader Graph!

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
[Music] hello and welcome back to politics this is the introduction time stamp will be on the screen to skip straight to the tutorial but first just going to briefly cover kind of where it is will be learning so aside from the fact of everything that you're looking at right now it's just a kind of a most simplified version of the ocean shader that I made with amplify shader editor and I could have introduced the the seafoam stuff but I just decided not to it's pretty easy to implement if you want to watch that tutorial and then just kind of apply it to this but yeah I just wanted to cover a few things so obviously we have like a different color setup to what it was we were using with amplifies this is just like a basic for an L type thing spoiler alert I guess we have the edge foam we have some pretty sort of primitive depths we have again like some some some primitive wave strengths and you know speed and tiling and all that and much like with this the the amplified tutorial I did this is all using world space UVs so you know if you kind of just keep duplicating out your ocean planes it's it's all kind of nice and tiled you know so it kind of it's all basically pre projected so you know you'll never get any tiling so that's all pretty cool yeah I don't think there's anything really left to cover in terms of what this will do so let's just go ahead and get right into the tutorial okay so as usual let's just go ahead and create ourselves a new shader and then we'll just create a material from that and while we're here we might as well just assign this material to all of our ocean planes so now we're starting from the very beginning so let's just open up the shader and it's kind of get started I'll begin firstly with the color just because it is pretty simple so I'm just going to get down to color nodes and I will convert these to properties and obviously give them a name and then all we're gonna do is create a for now and we're going to just loop these two together as you may have seen from my previous tutorial on this but I think this one's slightly more simplified so we'll just get a look and the fernell will act as our alpha and then the a and the B slots are basically going to be our two colors so in case you're unfamiliar with elope basically I believe at least a will be you know the white color and B will be the black again we're using this as the mask so what is why it will be this unless it's the other way around but either way the the theory is kind of the same so for now I'll just hope that straight into the albedo and we'll just give this a quick little look at so we have a color and then let's pick the same color but maybe make it a bit darker let's just get rid of that so you can see it kind of has a slight kind of fall off so at the moment the the darker color is kind of going around the outside or as the light is on the inside and maybe you'd want that the other way around you know it's up to you so now as we look down into the water it's kind of darker and as we look out it gets a bit lighter so yeah that will do for now we are going to kind of introduce some other things but yeah that's kind of it for that see how move on to the normal map next and if you've seen my previous tutorial on this then this is pretty much the same thing the only difference is we're going to be introducing the world space you V's so let's get ourselves a texture sample 2d or sample texture 2d if you say in the right order if I let's just maximize this because I do get complaints about it being too small so I could maximize it and then just work like that and then no it will not be pretty cool so texture 2d so we'll call this one normals get that down here and I will zoom in or not know that I mean so yeah ordinarily you know you kind of just hook this straight into your normals after setting the type to normal of course but we don't want to use regular UVs we are going to be using will space UV so we'll get down a not a world no time thinking of amplify get down a position node with the space set to world and what we want to do is we want to split this out because basically we want a projection from the the X and the Z and to kind of see if this makes sense the X and the Z here is the the red and the blue so red is X blue is Z or Zed I have to stop saying Z sorry Zed that it's dead I'm not American I promise and you can see even here that it creates this little you know like this is the axis basically so this like plane here so this is the plane that we want to create our projection from so it's the X and the Zed otherwise no one in here is R&G because X Y Z is oh I did it again X Y Z is RGB so yeah we'll do that split and then all you want to do is combine and it's just do this so we want to combine the red into red because it's the X and the Z into green which might be a little bit confusing but basically we only want a two channel output and so we put the X and the Z or the R and the B into the first two outputs so it's best not to look at this as like an RGB a type singamalai one two three four and we only want two so that's that's what we'll do and that's pretty much it for now in fact we won't actually put that right in there because we'll get ourselves an actual vector one so that we can tile this by you know a number of our choosing so yeah we'll convert that to a property and yeah so we'll just put the oh no not the rgba we just want the R&G and we'll multiply that by our vector one which will be our normal tile and that's what we're going to use for our e UV s at least for now we're going to make some slight adjustments later when it comes to the the panning but for now this will be fine so let's just give this a save and then Chuck in our normal map okay so that's on that and you can see sort of as I adjust the scale and kind of like it scales it up from the center of the world because these are world space you v's and this is kind of how you avoid any tiling so or rather the seams that you would get so if I were to just get out this other plane and if I were even just like to snap this to there you can see that there's there's there's no seams and it's it doesn't matter kind of what values we have for this I think you know at the moment I'm using like you know 0.71 so you know that's pretty handy because ordinarily if you were just using UVs even on a tileable texture but you wanted to have like a tile amount of 0.71 you'd still get tiling when it entered sort of new geometry but no not with this not with the world space UV so pretty pretty cool so yeah there's a couple things that we want to do here first of all I do want to just introduce a normal strength node because this particular normal map is just like a grayscale conversion and it's a bit strong so there should be a normal scale or normal strength there we go normal strength so we'll just hook that into there and then we'll just create ourselves a new vector one which will turn into a property and we just call this you know if normal strength we give this a default value of one although I'll probably use a lot lower in fact you know I'm gonna give it a default value 0.3 because you know I live life on the edge also while we're here for the normal tile you kind of do want the other default of that to be at least one just because if it's zero then what happens is if you kind of use this shader again to create a material and someone puts in a normal map it will have a default tiling of zero and so nothing will appear and it'll look broken and there they'll they'll kind of just complain and then you'll say did you you know Yatta Yatta Yatta so save yourself the headache and just kind of put it there as a default value so yeah we have that and that's okay so let's go and get ourselves a vector one against it's just going to be the smoothness so ya convert that to a property and I'll put a default of maybe 0.8 or so and stick that into smoothness okay so that's already looking a bit better yes so now obviously we need to get this moving and we need to kind of have it panning the other way so we definitely know that we're going to have two of these normal maps and we're going to need another normal strength but we can use the same normal strength property that we use here so we only need to adjust this once and it won't change both and before we do that let's just get ourselves a normal blend I don't know why I said before we do that because I'd already finished doing that so yeah doesn't make any sense so let's stick that in to normal so at the moment this will just blend our two normal maps but one will be using world space and the other one at the moment is not using world space they will both be using world space so let's just give ourselves a little bit more space here but we probably want to keep these guys over here so we want to get a tiling an offset node but we definitely don't want to be using the the tiling parameter of this because you know we we set our own UVs with our own tile amount here so so we don't want to go and you know create a conflict or even just you know use something else because we've already created this for ourselves so yeah we don't make any use of the tiling amount itself we do want to use the UVs only because we kind of essentially we need the offset because we need to animate the offset and the only way to do that that I'm aware of at least is through this node so we will have to feed our existing you v's through this UV but it's not like it will do anything new it will basically just use the UVs that we've set so we're just saying like our UVs are the UVs to use so you know ignore everything else so we can even just put that into there just for now just so we have the offset node to work with so we need to do some panning so we're going to need a time node for that because things are going to animate along a time and we're going to multiply this by a vector2 and this will be our direction basically so we can specify you know which way the water will move and so I'll just I'll say minus one for now on the X and I'll leave the Y alone for now I might change this later but if you're not sure what this means I'll I'll just do a little preview in a second and then we're going to introduce a divide note and we're going to get down a vector one and I'm gonna put in a number like 20 here which I'll explain in a second because ordinarily you may just kind of use another multiply and you would create another vector one which would control the actual speed of the panning but the reason that I have this divided note in here and this is this not property here so just like a private vector one is because the numbers that we get on the material side are kind of like that crazy I've mentioned this before my other tutorials but this is a good way to kind of solve that so we've get another vector one and this one will be a property so convert that to a property and this one will be our normal speed or you can call it pan speed or whatever it is so that basically completes that and so this is going to be our offset this is our pan our we're going to multiply a vector two with time and so we're specifying an X direction and then we're just kind of slowing down or well slowing down we are making this numerical value for our controller like the speed controller slightly larger because we are dividing the original result by 20 so this divided and the vector one completely optional but hopefully you'll see what I mean in a second so let's just hook that in and we'll give this normal speed much or will be good we'll give it default point one and let's just see what this looks like okay so point one is obviously way too slow so let's just give it one so you can see it moving a bit here but you may have noticed that you know already it kind of looks like there's sort of this glistening water thing happening and that's because we are actually using two normal maps because we have already blended this normal map with the other one the only thing that's happening here is one of these normal maps isn't moving and the other one is but we we want them both to move so yeah that's pretty cool and yeah as I same before so if I keep that at the speed of one and you can see how much it moves if I just forget about this divided by 20 and instead I just go straight for the multiply let me show you what happens so there you can see obviously our water is moving way too fast which means we need to bring this number down maybe it's still too fast maybe something like 0.3 0.4 oh sorry point 0 3 or 4 or 5 and so these these numbers are pretty small and annoying so that's why I kind of prefer to do that divide so I'll just put that back in there I get that speed back up to one and I just resaved that okay so let's just maximize this because we're kind of gonna do pretty much the same thing just we're gonna mess with the UVs of the second normal map and we're also going to mess with the direction in which it pans so and now let's just go ahead and we'll even kind of copy copy all of this just because it'll make a bit easier but let's put this combined into our movies and we'll just stick this into the UV of our second moment so yeah at the moment we're kind of saying that it will use the same tile amount and the same speed and the same direction so we want to for sure change the tiling amount so now this is already being multiplied but basically we're going to just multiply it again so let's multiply it by 2 which basically means that this one will be twice as large as the previous one which is also kind of handy because it takes care of the speed as well because if it's larger than its gonna be moving faster I think I'll slow I always forget so anyway that is gonna be our new speed which is the exact same property as the previous one we're just multiplying it before it gets in and then for the direction we wanted to go in the opposite way so we'll put that a 1 because the other one was going minus 1 so let's just say that out okay there we go so now our normal map is it's kind of glistening around a lot more but I think I will introduce I think just a little bit on the Y so for this one let's say like if this is a minus 0.3 or something then this one here will be 0.3 something like that it you don't have to do the exact opposite you can kind of you know have different values it doesn't really matter okay so something like that maybe maybe our speed is a little much I am also going to just change this to a slider and I'll change the default because it's clearly only 0.5 so there's that so you have from now you probably want to just like mess with the the tiling amounts and the speeds just to kind of make sure that it's doing well because obviously if you make larger waters and you probably want it to move a little bit quicker and you obviously play around with the strengths my particular normal map does not work quite well at high strength values because it is just a black and white conversion but yeah that's it for the normals so let's just move on to the actual the waves and if you've watched my previous tutorial and I mean the previous one that are made with amplified shader editor then you kind of already know where this is going a bit so I'm going to just get down a simple noise and I'm going to make a vector - I'm gonna make this a property for now but this is just a temporary thing so if I I don't even need to rename it because essentially this will be the amount that I stretch this texture by which will make sense in a bit hopefully so I'll multiply this with what will be our UVs and again we want to be using world space and since we've already created that down here there's no need to kind of make it again so I'll just borrow that world space with this I probably do want to do the other way around I've never actually tried it that way around it probably still works to be fair but you know let's to be taking sorry so yeah now I will get another multiply and we'll create a vector one which will be our actual sort of tiling about basically similar to what we had happening here before we introduced all of the panning although again we are going to introduce panning but yeah essentially it's a lot of the same stuff fact that probably could kind of skip through it but I want I want so knowing it's carry on back the one and convert this one to a property and so this one will be our actual wave tile so let's put that into the multiplied and then for now we can just put that straight into the UVs things are going to look a bit weird also we don't have any default value set let's just go with one on one for now and we'll also create a vector one property I know you can just click up here to create these but I just I kind of prefer to do it this way I don't know why and we'll just put that into there and so this one will actually be our wave scale it's kind of worth keeping this as a property although entirely up to you and so for now let's kind of just get this stuff and we'll just we'll just test this out by throwing it into the emission maybe yeah so this is basically just a preview it we're not actually going to keep it there so let's just save this and I guess I forgot to give it a default scale but basically so we can kind of see what's happening here of it we don't need this too much right now I want to create basically a map where I'm gonna stretch it and scale it kind of to my liking because it will be the actual like the wave like the way the water will move so you kind of want you know something something pretty stretched but not like super super stretched that makes any sense and then yeah just kind of mess with the scale as well just to kind of see see what works what doesn't you you don't want anything like too too small but at the same time we don't want something too too big either so the idea here is kind of like what white will be the waves being up and what is down will be you know the waves one is down know what is darker will be the ways being quite black I'm completely confusing myself hopefully you know what I mean so yeah we don't we do want that to be that way maybe maybe even something like that we can we can we can try that out and so what I'm going to do is basically just remember these in fact let's just round that one off so point zero two and point five because I will never need this number again so I'm going to just create a vector two to replace the property that we made in so I know it's point zero two point five on the Y so let's replace that and then just get rid of this vector 2 that we just made so now if I hit save nothing will change except for we'll just gain some nice real estate over here on our material neat yeah okay so moving on that do the panning and again it's kind of just the same thing that we had happening here so we are going to be using with Italian offset and then we're going to having you know like the panning and the the direction so a lot of this stuff again you can kind of just copy so we definitely want telling an offset we want the time we do want that and yeah we might as well just take everything except for that property there so let's just take this and we can probably make that a bit smaller so let's put this into here because this is our UVs and because that's all UVs we no longer have our original set up going into the UVs of the noise because we can put it through this tiling an offset node because we need access to this offset so yeah we already have the panning going on here I do want this to just be on it's either gonna be minus one or more and I think because I have obviously made this before we'll keep this as is but then we do want a vector one which will convert to a property and this will actually control the speed of our waves so let's go at the property then let's just give that a save and see what it looks like although again I think I forgot to give that a default value so I'll just I'll do that now but I won't bother receiving it so hours I need to hook it off from the emission so wave speed we we need a lot faster oh I think we're going in the wrong direction actually so it's moving down so let's find our vector two and we'll change that to zero and we'll put one on the Y and let's see if that helps okay yeah it's pretty cool and from here if you did want to go the other way then you just - the speed so that's pretty pretty handy so yeah I'll keep it as that for now and yeah we don't want this to go into the emission but we want this to basically be what controls the the position of our votes and it's worth mentioning I don't think I mentioned it at the star actually there's no tessellation here I don't think shader graph supports tessellation yet so we're only left with the for gondol oh there's no shaded wireframe interesting okay so if we just see the wireframe here it is just going to be like the standard I think they're like a 5 by 5 or something of the actual quad so yeah there's not a lot of geometry here and that's fine if you wanted I think to use shader graph with you know some nice kind of high detail waves then you probably have to import your own mesh with you know with a lot sort of denser triangles but anyway where was I oh yeah ok so there's two things we can do with this I do want to introduce it a bit with the color so I've taken it out of the emission for now but what I'm going to do is so I have a loop here which is the original color that we had but for now I'm just going to get down a multiply node and I'm going to multiply this so multiplying our color or what was our you know final albedo with the the noise that we've made and then that will be our common now I can't seem to click right today maybe I am too zoomed down yeah so let's give this save and I think I want to introduce a clamp but let's just see what it looks like okay yeah so the whites coming through and the dogs are coming through my main issue is the darks a too dark so I want to expand this window just yet because let me show you what you can do you can introduce it a clamp in here and let's put that in there and then the clamp will go into the multiply instead of just straight through the noise basically this is you know it's like it will clamp things to arrange at the moment it's zero two one zero being black one being white and the black for me is too too dark so just pop that up to say 0.3 and then we'll see what that looks like okay so yeah that's changed it a bit yeah that'll do for now so let's expand this out minimize that guy so that's for the color and now we just need something else which will actually put plug into the position and the way that we do this in shadowgraph it's it's kind of similar to to the way that we do it in amplify like we still make use of a vector3 and we're really only controlling the the y-value of that vector 3 the only difference is for this one we do actually need to use a world position node which is just called position but we do want to set the the space of it to object and I if I'll show you I'll show you what happens if we don't so let's just put it on world for now so we need to split this out because again we really only want to make use of the the Y and the way that we kind of do this is I mean obviously if we were to just put down a vector 3 we have lots of inputs here and it was a bit of a trial and error like I was just trying to kind of just use one of these well at first I wasn't even trying to use the position node but the key is always in the vector 3 but the way that shadowgraph handles this is you would split your world position node out and you feed this into a vector 3 but it's it's it's only the Y channel that we actually want to do anything with so we're going to feed the red into X and the blue into Zed and these are basically just like almost null values but not quite because this is what I mean where the space being set the world you see things are going to go a bit wonky but let me show you well let me just complete this whole thing basically we only really need to introduce a multiply and a vector 1 which will convert into a property and we just call this you know like wave strength and we'll multiply our noise that we've made by this property and this is what's being fed into the y channel of our vector 3 and so let me just put this straight into position for now and then let me minimize this because you'll see you'll see a lots gonna go wrong so let's just save this and that's pretty weird right that's uh yeah it's pretty weird so this is why we want this to be object space so just set that to object and hit save no we are everything is hunky-dory then the only thing is we haven't actually put any wave strength so we can just increase that amount here or set a default value and if you ever kind of have any issues where you increase the other wave strength but you still get those weird kind of like that you know that strange artifact that we had where we were looking at this in world space for some reason I don't know why but if you set the material to transparent and then back to opaque for some reason it just it works fine although as it happens we do actually want this to be transparent and we'll cover that when we start doing the edge film so yeah we might as well now actually just set it to transparent and we'll just save that out so yeah there's our waves again it's pretty kind of primitive but there's really there's not too much else that I can do at the moment with shadow graph so that will kind of just have to do speed is maybe maybe a bit too much but let's move on to the actual kind of edge film and I absolutely give full credit to AE Tut's for this or they eat to know I don't know the guy that does the tutorial that I will link in the description because when I found out that shadow graph actually included a surface depth node I was pretty excited because that meant that I could actually continue with the water but for the life of me I could not work out how to use it but ie thoughts is clearly smarter than I am so yeah a lot of what I'm about to show you was basically copied from his I forget what it's called it's like the intersection material thing but yeah basically we are only interested in like a portion of that for our actual each phone but anyway enough talking is just it's gonna make it so we will start with the elusive seen depth node which is this this is the one that I just I could not work out how to do so again props to AE Tut's I will put a link to his video in the description because as far as my where at least I think he's at least he's the first that I've seen that's actually worked it worked this out I haven't seen anyone else do it so yeah we're gonna multiply our seen depth with a camera node and we're going to use the farplane and i don't know how he worked any of this out it's pretty pretty cool yeah and then from here what we're going to do is subtract this with a screen position but not after we've done some stuff to it so let's get ourselves a screen position I think we set this to roll and or we're going to split this out similar to how we did the split before so yeah split because we only want to make use of the alpha so alpha is going to get subtracted so alpha subtracted so now this one will be our well we'll make a vector one and it's going to be the essentially it's this one is actually the the depth but for our purposes we'll call it phone distance and we'll set a default of 0.3 or something and so that goes into our subtract that we made earlier so yeah it's all pretty cool and now from here we do want to one - similar to the kind of how how we built this in the amplified shader editor tutorial we did you know have to include that one - to kind of flip the black on the white you know flip the black and the white I mean not on the white anyway so we're going to multiply that and this one will be the actual other strengths so we're going to control kind of how far out the the distance will go although it is based on the depths of an object in the water so don't think of it as like spreading across the water but rather like spreading down the water but you know it gives a nice illusion anyway so and this one will be the actual strength of it so it doesn't matter how in or out we can just control the actual strength of it so convert the property renames this one will actually be foam strength and I'll give this a default of one and I think at least we're going to need to clamp this but I can't quite remember let me just bring this up here for a second because this is being fed into our emission we could kind of incorporate it into the albedo but it's kind of just easier to put it into a mission so yeah I only move this up there so it was just easier to kind of see so yeah I think we might need a clamp but let's just give this a save and see how it looks yeah so we definitely need a clamp so I'll just put this in here actually create a clamp minimize that let's throw that into the emission and then we'll just bring this guy down here and we'll clamp off this pretty cool so there's the distance or the what would be I guess the the depth and then the strength which you know so it's kind of regardless of the depth so yeah keep it alive for now and I'll keep the window here just in this small mode for now because I want to show you basically how you can turn this into a sea phone and so just as an example we're going to multiply before the clamp so multiply and we'll just get a color I won't make this a property yeah because I'll just I'll just change it to let's say a red and I'll feed that in and there you can see it's red and if I were to change this to you know pink or blue or whatever and then save it out it would it would also change that so if you can change the color then you can basically turn it into a texture so we'll get rid of the color and instead we will replace that with a texture 2d so let's get ourselves a sample texture 2d and then we will actually want the texture 2d asset I will convert this to a property rename that so this will be the actual foam texture and I might as well just put that up there actually and we can just hook this straight into the multiply that we had in fact this is a while we'll be using just a black and white texture so I only need the the red Channel for that so let me just save this and then assign the texture yeah so now it's been replaced with the texture obviously we need to kind of change the tiling so easy enough we just get down a tiling an offset node put that into the UVs and then we'll just create another vector one and then we'll convert this to a property and this will be our actual tiling amount for these edge foam stuff and it helps if you put it into tiling not into the UVs so let me just correct that that'll do so yeah we have a default of 1 but obviously you can make this whatever you want and also you know if you wanted to kind of running a bit our space here if you wanted this texture to pan much like all of the others then I mean it's the exact same thing that we've already done you know you introduce the tiling an offset with time multiplied by a vector divided by a vector you know it's it's the exact same stuff that we have there so you you could even if you wanted to just copy that yeah okay so we kind of we're coming close to the end here let's just sort out this foam strength and distance of stuff because you yeah okay so we are very nearly done we just need to introduce the actual depths I think unless I'm forgetting something which yeah is always likely yeah so we're already using scene Depp's here to generate our edge foam for the water so we might as well kind of reuse what we can from here to control the actual depths of the objects that enter the water so let's just start by getting a subtract node which will basically be in place of like I think this subtract node because we have here the screen position that goes into a split and then we subtract it by a property here which we're controlling for the phone but we don't want to use the same property so instead of feeding into this subtract we'll just grab this split and we will put that into the subtract that we have up here and then we'll create a new vector one and this one will just be called depth because I was saying before about how technically this foam distance was the depth but we're just kind of using it to kind of give that illusion of the actual distance of the foam so yeah now this one is is is actually depth so it's you know correctly named at least so we can put that into there and then rather than like copying other stuff what we can actually just do is again just kind of subtract and we can put the the first subtract into the the be salt slot off the second and we can just grab the multiply from the seam depths here so that will go up into there so this is you know it's kind of it's using the exact same things - all the stuff that we don't need because this was sort of strictly for the foam so it's pretty you know pretty optimal and then we'll just use our friend the clamp again and now this it looks messy as all hell but so this will eventually in fact well not eventually it will right now we need to kind of attach it onto our albedo so we're going to do that with a loop and you know like I was mentioning before about with the fernell where you have like the white and the black and then you have your mask to define what is white on what is black that's what we're gonna use the the depth for because basically what is sort of in the water and intersecting where there will be white and then everything else will be black and so we want to be able to kind of control what that is because we want things that aren't in the water to just have the you know the same color and the same effect as the water itself so what that really means is basically we grab our current albedo which is you know everything that we have at the moment and we stick that into the the B slot because if it's if it's represented as black and you know not intersecting the water then we just want it to look like the the same water that we have right now and if it is intersecting this is where on my other tutorial we introduced the refraction and we kind of controlled everything with a grab pass I haven't quite worked out how to do that in shadowgraph yet I I know it's possible I just I'm lazy so sorry about that so instead what we're going to do is we're going to just use a color node and we'll convert this to a property and we could just call this depth color so you know the least we can do is kind of control the color of items that go into the water so let's throw that into the albedo and let's hit save on this and make sure I haven't done anything too too weird there we go seems to kind of work although our doubts is at a zero so we probably want to bring that up a bit but we can basically we can control the color of what enters the water and so I kind of prefer to go with like a darker color of the water itself lighter also kind of works depending on you know what it is what is you going for and then yeah obviously we can control the actual depths amount kind of you know as sort of illustrated here we can kind of you know see things further and so like I was saying with my amplified shader tutorial we wouldn't have to worry about like recoloring something if it entered the water we could actually just kind of take this piece as is even if it was you know a completely different color like if we just create a new material here and I just call this red so if I were to put this on this sphere you know basically our depth doesn't care what color or what texture or anything is on our actual intersecting materials it will just render the depths as it pleases whereas in the amplified version that wasn't the case it would actually you could see the redness through the water and it would you know we'd also have the nice refraction going on so yeah currently that is a no-go for shader graph but as I say I'm pretty sure it is possible it's also worth mentioning I think at least I think I'm using the HD render pipeline but I'm not doing anything here specific to that so it should work just fine in fact I think like the only complicated thing here really is the edge film stuff and I got that from AE Tut's again full credit to that guy and I think he's using the lightweight and I'm using HD so there's your answer it's it it works in both but yeah I think I think that's it I don't think I'm forgetting anything else but you know I might be yeah let me know if I've forgotten anything but otherwise thank you very much for watching I know it's been a long time coming lots of people keep asking me to update the original shader graph water tutorial and this is kind of it there's still lots of stuff we kind of add on and maybe is shader graph progresses I can keep kind of coming back to this and iterating on it but yeah for now finito I will see you in the next one [Music]
Info
Channel: PolyToots
Views: 131,932
Rating: undefined out of 5
Keywords: unity, game dev, uv, game art, shaders, tutorial, shadergraph, shader, graph, water, ocean, depth, foam, shoreline, waves, intersect, edge, animated, panning, LWRP, HDRP
Id: FbTAbOnhRcI
Channel Id: undefined
Length: 39min 35sec (2375 seconds)
Published: Mon May 13 2019
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.