The Best Way of Fixing Texture Seams in 3D - Ultimate Tip

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
hey guys i'm henning from flipnormals and in today's video we will have a look at demystifying uv seams and showing you how you can fix this every single 3d artist was doing anything when modelling and texturing will have experienced uv seams at some point and they can be infuriating the issue looks often like this here we have an asset which has uvs and texture and has decent topology then we try to render this guy in this case we will select it and hit the three key and then something happens you can see that all over the place you get these weird little seams in this case we have to stylize this a little bit of making them super pink but you would probably see something similar to this in your versions as well maybe you only see it in the render maybe this more looks more like a displacement scene but regardless this is what the issue normally looks like so what is actually causing this issue fundamentally this is an issue due to this discrepancy between your texture map and the uvs at render time so let's have a look at what this means if we select our mesh and then we unsmooth it like so then we go to our uv and uv editor so as you can see now we have our model to the left and we have our uvs to the right and these fit perfectly there's basically a one-to-one fit between our textures and our uvs which means that you won't have any seams the problem is once you start to smooth this and if you hit the 3k now you can start to smooth it see that the uvs are no longer the same as our textures and this is due to something called uv smoothing use movie can be quite confusing if you don't really know what it is but once you understand the general principle behind uv smoothing becomes quite simple and we'll of course cover that in this video so this is not a maya issue or max issue or blender issue or anything like that this is more fundamental while we are using maya in this video and we'll be using a bit of mari later on you can do this exact same thing if you were to paint in photoshop and model in blender or if you're using painter with cinema 4d it really doesn't matter the fundamental issue is between your texture map and your uvs so we can control this quite easily if we go under in this case under the shape node and then if we go to smooth mesh and under our open subdiv control we have an item here called uv boundary smoothing so if we were to set this to none that means that when we are actually smoothing a model like if we select it now we'll hit the one key nothing is smooth and hit the three key the model is being smooth but the use are not being smooth and this means that if we were to set our model in this case to not smooth the uvs we would have solved the issue you can see it right now no uv issues whatsoever it's fine the problem with this however is that currently our uvs then will not be matching the final model in this case our polygons are being smooth and normal is generally being soft enough while the uvs would then be rigid and square now this might be fine in a lot of cases but a lot of cases this would not be fine imagine if you had text going around here and it's currently rigid and then you smooth it you would have issues where we wouldn't really know what your text would look like you can have issues with logos deforming for characters this is often okay because you need less specificity but if you really do need a high level of specificity this is not a good way of doing it also when you're doing your uv smoothing or uv interpolation you shouldn't really do this in a case by case basis you should find one uv smoothing algorithm which works for every single asset and currently using none is not a good option so then we have another one which is called preserve edges and corners you can see what this is doing if there is a corner like this this will be preserved as a hard edge but if there is a internal edge like this you see everything hidden here this will be nice and soft this is generally the way to do it if we were to use preserve edges and corners most of your models would be perfectly fine then we have maya catmull clark now this one is the more of the default way of doing it and this is how a lot of different software would do it like it's called my academic clark but it's really just a captain clark algorithm what this is doing is it keeps the border edges completely rigid and it softens the insides now you can see there are some issues with this between going between this and that you can see that this is a much more truer representation of what our model looks like you see the polygons are square and the topology is nice and soft well if you go to my captain clark you can see that it becomes really pinched and nasty another issue with this as well is if we were to look at something more hard surface if we just hide these guys and look at our nice little cylinder there are tons of examples we have models like this and these will be completely broken with this approach as you see here captain clark you see it collapses onto itself if we were to use none it would be fine or if we would use preserved edges and corners it would also be fine but maya kepler-clarke would be a complete disaster so the issue of uv seams really happens the more low poly your model is if your model is nice and high poly you probably wouldn't see too many of these issues because that means that when you're texturing it there isn't too much difference between your uvs and your actual texture map due to how high poly your original model is now in this case we have we have deliberately made this model a little more low poly you can see there's a lot of stretching here but that's just to illustrate the point in a real scenario we probably would have just a little bit of of an issue here we wouldn't have this much but this is good to illustrate what the main issue is so now you understand what's causing most of your ubc issues let's have a look at how to actually fix it so since the issue is caused by a difference between the texture map and the uvs we have to make sure that the texture map you're painting will be identical to the final rendered uvs and we can do this in a very simple way this actually has a really elegant and simple solution the first thing you have to do is you should first probably duplicate your model and we can call this hi and we will do what what i just call pre-smoothing your model it means that if you know that you're gonna be rendering the model with preserve edges and corners enabled then we are going to be texturing the model with preserved edges and corners enabled now there are a few ways you can do this the first one would be that you can do this directly in your texturing software like in mari where you can actually smooth your model but i don't recommend that because now you are relying on that soft first algorithm for smoothing and even though it might say preservatives and corners it may not be exactly the same algorithm and now you're going to have the same issue again where you're going to be wondering why this doesn't match this is particularly prominent if you were to use c brush for anything regarding texturing or displacement mapping where the uv smoothing zbrush is a bit all over the place it's a bit of a black box we don't really know exactly what it's doing and it sure as hell not using preserve edges and corners in zebras you most likely use an approximation of the marquette more clark but again a bit of black box and it's generally advised that you do not use the external software to interpolate your evs so then we're left with essentially one option and that option is just pretty smooth and we can do this by going to object mode shift right mouse button and then we go to smooth and now you can see that our model will be subdivided if we just hide the fish body as well like so you see this is now significantly higher now we still have the same issues as before because we haven't done anything to fix the textures there are two places we can actually change the uv smoothing the first one is under the shape node which is the second node from the left now if we go under again under smooth mesh and open subject control this is where we have the uv boundary smoothing and right now we're setting this to preserve edges and corners now this one is what this one is doing is simply controlling what happens when you hit the three key on the model essentially what happens when you are smoothing the model this is usually what would happen at render times you're essentially controlling the render time uv smoothing now the second place you can do it now is it's under the poly smooth face node which is a node we just added by going to shift right mouse button and then smooth and this controls the actual smoothing of the polygons this is not just a render time this is the actual smoothing of our uvs so now if we were to go to our uv editor and then if we were to zoom in here you can see we have the same options now so you have a boundary if you go here we now have none which means it's going to be exactly the same as before we have michael clark and then we have preserve edges and corners and this is the one we want to use so currently we now have a model which will have exactly the same uv smoothing baked into it as you will have at render time which means if you were to export this out now and paint it and bring it and bring the texture maps back this would work so let's do that now we are going to be selecting our model just make sure we have the right model file and export then we'll put it in here and we'll call this fish high what you can also do if particularly if you do in production it's a really good idea to include the use moving this is handy because if you work in a collaborate team they would know exactly what interpolation you are using as a little tip as well i highly recommend that you determine the use moving before you start a project if you don't do that you will have seams on most of your assets so we can just hit export now if we jump into a texturing software we can now load in our model and we can start painting on this now in this case we are using mari but you can feel free to use any software you like whether this is photoshop or cvers or anything so then we hit new and then we'll call this scene fix then we will select our model and then we'll the only thing we need here is release the base color so i'll just kill the other ones there's no reason to have that and i also don't want this to be a 60 bit i'll just set this to be eight bit as well and then we can just create new project now if you were to look at the ortho uv view you can now see both the um the uvs and we can see the actual model so if you're going to go to wireframe mode you can now see that this has indeed been smoothed the correct way which means that based on this we are ready to start texturing our model up and whatever we do in terms of the texturing will propagate perfectly to maya and we won't have any uv seams now what i'll do i'll simply import my texture and i'll fix a few errors and then we'll bring this back into maya so we'll just bring in our file now and then we should have our texture applied to our fish then let's go to ortho and now you can see what this looks like let's just disable wireframe as well and now what i'll do i'll just fix a few of these areas this is not on my tutorial we're not here to really do nice texturing we're just here to fix some of the issues so what i'll do i'll simply use the paint tool and then i'll just paint over some of these issues beautiful work now we fixed our textures and in in a more realistic scenario you would have painted this from scratch you wouldn't have just fixed these textures but if you do have the same issues as well this is a legit way of doing it you bring a model into mario or painter and in your preferred software you will now bring in your textures and there you will simply fix your issues then you'll export your maps out and you're good to go now we'll export out our maps now back in maya we will simply load the new texture map we'll just delete history as well real quick just to make this a bit simpler then lambert and then we'll select the map we just created now and now you can see this has now fixed the issues we were having so this means that pre-smoothing model is really the way to go when you are texturing anything whether it is a painter or mario or anywhere you really want to make sure you pre-smooth your model first now the last topic we'll talk about is edge bleeding this is where the texturing software will extend the edges of the uv map just outwards into nothingness really just so that if there is a case of uv seam issues like this this can hopefully be remedied by the edge bleeding if we were to look at the original fish now and you see that like before this fits perfectly with the edge at least if we're in non-smooth mode it fits perfectly with the edge and there really isn't too much go by here so if we were to move this just like a few pixels we would really have issues with the seams so which means that of course when we smooth the object like so we will have issues but if we were to use edge bleeding with this this would solve the issue in a large way so in photoshop now we have our original texture with the beautiful pink background and then we have the texture with actually how it was exported from zbrush and this is what it looks like here you can see that we have an extended edge going all the way around the texture now this isn't correct based on the texture map per se because it's just kind of making up what's going on there but it is really helping us avoid the uv seams so if we now were to load in the picture map which had the bleeding on it you're going to see that this extends just a few pixels around it i believe in this case 16 pixels and this now fixes the issues so in our case here now looking at it this is actually fine you see that when we smooth it now there aren't really any issues so i highly recommend that whenever you are texturing anything whether it be in painter seaworth amari that you enable full on edge bleed just set it to infinity if possible or set it to the maximum amount because this allows you to really remedy a lot of these issues it also means for instance if you are doing anything with the texture later on like let's say you are blurring the textures and using this as a utility for something else this means that you cannot blur it more and you have more to play with that's a word of warning though regarding actually bleeding the edges this works best when it comes to color maps in this case we have a fairly stylized texture map and bleeding across here probably wouldn't cause any issues but if you have something more like a utility map like a displacement map where you really need all the data in the map bleeding is not going to fix that entirely it might help you a little bit but it fundamentally is not going to fix it so to sum up why you have uv seams most likely it is caused by a difference between your texture map and your uvs where they just aren't matching up the way to fix that is before you start the texture is you first determine what uv interpolation are you gonna be using on your project if you're simply doing personal pieces that's easier if you're working in a bigger studio that's a bit harder you just have to determine that as a team and you can do that simply go into the shape node and then you can go to smooth mesh open subject control and uv boundary smoothing and change this to preserve edges and corners there's no reason not to use this this is really like in a fairly objective sense the best uv interpolation so make sure you set that for all your models at the render time then when you are ready to start texturing you shift right mouse button on your object then you go to smooth and then you can change the smoothing algorithm to be using preserve edges and corners as well now you bring your high poly model which has been pre-smoothed into your texturing software in order to texture the software there and as a last thing use edge bleeding for all your texture maps even if you think it's fine the way it is just enable it it's free to use just stay as clean as you possibly can and avoid as many of those same issues as you possibly can so i really hope this video here has been useful if you have any requests for more of these kind of videos whether they be seam issue fixes or anything new texturing modeling please let us know in the comments we love to read the comments and we take a lot of our video ideas directly from the comments here so thank you so much for watching and we'll see you next time you
Info
Channel: FlippedNormals
Views: 22,637
Rating: undefined out of 5
Keywords: 3d, tutorial, flippednormals, henning sanden, morten jaeger, art, art school, art tutorials, learning 3d, cube brush, blender guru, cgi, b3d
Id: YyQ9RMeU0s0
Channel Id: undefined
Length: 16min 37sec (997 seconds)
Published: Thu May 20 2021
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.