How to Make a Realistic Earth in Blender in 20 mins

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
the first tip for creating a realistic earth in blender is to use a low res uv sphere not high res because later we're going to use adaptive subdivision and all that extra geometry will mess it up now the good taxpayers of america funded a space expedition called nasa and then they let anyone in the whole world take advantage of their image textures so thanks guys i'll include a link below where you can download all the textures you need for this in various resolutions the one i'm going to start with is the color map i provided it in up to 43k but unless you're doing up close shots you really don't need it it'll just increase your render times and memory 10k should be enough plug that into the base color input shade smooth subsurf modifier let's also switch to the cycles render engine gpu render view mode let's add a sun lamp increase the energy to 10 and set the background color to space while we're here let's also increase the size of the world which is currently only 2 by 2 meters now normally i would recommend using real world measurements but in this case that would break blender so instead we're going to use a fraction of that and set it to 1274.2 meters which is one ten thousandth of the real world size but at least it will look more realistic when we're using depth of field now we can no longer see this in really any view quite well and that is because the view distance is set to end at 1000 meters so let's increase that to 10 and then the clipping start let's set that to 10. and now we can see the whole world the next issue you might notice is uniform roughness so the ocean is supposed to be shiny and the land is supposed to be rough but currently it's using a uniform value so the next texture i'm going to use is a land ocean map i'm going to get the 16k version set this to non-color data because we're not using any color information and plug this into the roughness input now this is working but it's working in the invert it's making the land shiny and it's making the ocean rough now we could use an invert node but i want to tweak the values anyway so let's instead just use a map range node so first to invert it i'm just going to set this uh to the two range from the opposite of what it is which is one two zero that's now inverted and now this here becomes the maximum roughness for our ocean and then this one value is the roughness of our land so the next thing we need is bump so i'm going to add in another image texture and this is going to be a tougher graphical map of the earth and i'm going to use a 21k map because in that case the extra resolution does help and i'm gonna again make sure this is set to non-colored data because we're not using any color information and while we could plug it into a bump input and just kind of do a like a fakery i find it actually helps if you use real geometry to push it so i'm going to use a displacement node instead plug this into the height input then plug that into the material output which would give us this now this is still a fakery until we change the material settings underneath surface displacement from bump only to displacement and bump now it's physically changing the world but because we changed the scale of our earth but we didn't apply it you can see that here these scale measurements are set to 600 so i'm going to hit ctrl a and apply the scale now the other thing that we want is we want it to subdivide what is closest to the camera because we don't want like uniform subdivision over everything because it would just be unnecessary but i don't have that option selected until i go to the render settings and change it to experimental then i can click adaptive subdiv okay and it is working but our scale is a little low so let's increase the scale to five and now you can see we've got real mountains appearing on our mesh and so that it doesn't also shrink the earth i'm gonna set the mid level to zero we'll come back to the material in a second but first let's rename this sphere surface then let's duplicate it right click to cancel its movement and rename the duplicate atmo for atmosphere then a brand new material delete the principled shader and very very simply we're just going to replace it with a volume scatter plugged into the volume output and we can't see anything because it's currently the exact same size of the world underneath it so hit n to bring up the properties and let's just change this let's just add a 10 to it so basically make it yeah an extra 10 meters in circumference i try to get the real world size of the actual atmosphere and it's just too hard to tell because it's like varying ranges of visibility doesn't really matter anyway that works and i'm just going to change the color of this to a light blue and then the density to something really low by .05 and that looks pretty good but one problem that i really only notice now the third time that i'm making this tutorial um is that the ocean looks blue like really really super blue and maybe it shouldn't now if we look at the base surface turning off the atmosphere you can see that the ocean is already blue but really water doesn't have a color the water is reflecting the atmosphere so there's no reason that this part should be blue because we're coloring it naturally according to the atmosphere which is using volume so this should be correct without needing any fake blue going into the base color underneath it so going back to our surface here where we've got our color that's going straight into the base color input what i want to do is add in a hue saturation value node and change my saturation to zero now obviously that has desaturated everything so what i want to do instead is to make sure that the land is kept colorized but the ocean is desaturated so for that i can use this value that i've got from my land ocean map into my factor input so that it is now using that as a mask to basically say only the ocean should be desaturated everything else should be colored and now when i look at this with the atmosphere as well it looks a lot more natural the ocean is being colored just like everything else is by the atmosphere that is already there and if you did want a little more blue to the ocean you could just increase that saturation value there a little bit now let's set up a shot for rendering i'm from australia and as much as i would love to have australia be the one that i render for this tutorial it doesn't really have any interesting mountains we don't we just don't have that interesting landscape here in australia in my opinion it's nice and flat but it doesn't make for a very interesting render but if we use the country that most of you watching this tutorial are probably from america it has some very interesting uh rivers mountains on it it's just a very picturesque country in my opinion there's a few other places that you could maybe go to but i think this uh happens to look quite nice so i'm going to position my view right here i'm going to add a new camera and i'm going to hit ctrl alt number pad 0 and if you see nothing which you should just remember that you need to adjust your view clipping settings just like you did for the view over here so set your clip start to 10 and your end to 10 000 meters and if you just want to fly around if you hit shift tilde key then you can use this uh basically like a video game just scroll up because we're working on such massive scales here until you're actually able to move like a real uh a real camera player but basically it gives you the controls like from like unreal engine and other first person shooters and things nice let's give this a render and see how it looks and while it's rendering did you guys know that there's an add-on in blender that lets you download models textures and hdr's directly into your scene it's called the polygon add-on and it connects live to our website of 5000 assets that can be downloaded and imported with one click of a button you can even try with a hundred free assets in three steps first click the link in the description to download the add-on two sign in to a free polygon account and then three type in free to access a hundred free models textures and hdrs that you can use in blender right now all right so this was 56 seconds on my computer which is a camino grando rm workstation with a 3090 and we could improve that a lot with a couple of things so the first thing is the default noise threshold for blender is a little too high i generally find like .02 for final renders or 0.05 for previewing works well and also because we are using adaptive subdivision it is subdividing our mesh probably more than it needs to so our max subdivisions there i'm going to change that from 12 to 6 which means the most will ever subdivide the mesh is six times really close to the camera so let's give this another render now and let's see the difference so from 56 seconds to 14 seconds now if i flip back and forth between them you can see that we are getting less detail and that's because we dropped the amount of subdivisions but it's not too bad you can still see that there's shadow across the mesh it's still working quite well but it is much much lighter to render so we've got the ground we've got the atmosphere the one thing we're missing is clouds so i'm going to duplicate our surface object right click to clear its position and then i'm going to call this clouds give it a brand new material and then change the shader from principled to subsurface scattering now currently we can't see it because it's occupying the exact same size so i'm just going to make this a little bit bigger let's go seven eight so some of our mountains are higher than our clouds but that's also kind of natural to the real world so that should work okay now obviously the earth is not surrounded by a completely opaque blanket of cloud so we need another image texture again coming courtesy of nasa it's the earth cloud texture it's available in up to 43k but i think 8k should work fine we're not using any color information though so make sure the color space is set to non-color data and what i want to do is not drive this into the color input because then it would just have black areas which we don't want instead we want to make it drive a mix shader between the subsurface shader and a transparent shader so if i put this into the bottom and then take the output of my color and put that into the factor input you can see it's doing something but it's doing the wrong thing and that's because these shaders are the wrong way around so put the subsurface into the bottom and now this is working correctly if you don't like the particular cloud placement and i do actually find that the uh where the clouds are actually makes a big difference to the render sometimes you can just like completely cover land with clouds and it's just like annoying to look at so you want to try and find like a sort of a sparsely populated area with just a little bit of cloud just so that it looks realistic but not so much that you can't actually see the land underneath it so i'm just rotating on the z axis until i find something that looks pleasant that looks okay to me one thing it is missing is shadow on those clouds themselves and we can get that using some bump or some displacement so we're going to use the exact same adaptive subdivision for the clouds so i'm going to add in a displacement node take the output of that put that into the height input and then the displacement into the material output and then go to your material settings just like before and say displacement and bump and because we've got adaptive subdivision already checked it should be ready to go now one thing you might know looking around here there seems to be sort of like a red tinge and if you were to increase the scale of your subsurf scattering you'll see it even more and the reason for that is that your radius value here in your subsurf scattering node it's got three values r g and b and those are the amounts of scattering it'll do per channel and this is basically configured by default for skin because that's the most common use for subsurf but in our case we want it to just be white so i'm just going to drag down and then say one for all awesome now the scale of this value here you can see if i set that to one we get really hard almost like this is like a diffuse shader basically but if i set this to 2 you can see that i will get a little bit of bleed in from the light if i set it too high to like a 10 and you'll lose a lot of the shadow it'll be so like milky that you won't really get any of that definition so it's just a matter of finding a nice middle ground i think a value of three works quite well in this case so this is how we're looking now but we should always be comparing to a reference photo and i've got a collection of reference photos in a zip file which you can download in the description you can also get them from the nasa website but the nasa website does not make it easy to download things on mass so i actually hired an assistant to scrape it all but anyways flicking through these photos you can notice a couple of things the most obvious is that the edge of the world does not just cut off like ours does here it of course blends thanks to this atmosphere so our current atmosphere is a volume it is a volumetric shader but it is still appearing as quite salt and i've tried various methods to try to get the volumetric shader to actually imitate that using a gradient texture everything else it doesn't really make a difference the best method and by far the cheapest and easiest way to do it is to just use the compositor so go to your render layer settings and then down here we're looking to turn on shadow that won't make any sense now but it will once we render and i'll show you the pass and then also underneath film i want you to enable transparent and that will again make sense once we render it and we go to the compositor render is complete jump to the compositor click use nodes then let's just control shift click until we see that shadow pass it probably won't make sense that we've got a shadow pass until we blur it so shift a filter blur drop it in set it to fast gaussian relative y and let's go like 1.5 percent okay so you can see that that edge there on the horizon is now blurred the rest of it we're not actually paying any attention to because what i'm going to do now is use an alpha over node and then compile the original render directly on top of it flip it around and now you can see that edge has a softness to it we don't want it to look white though so i'm going to add in a color ramp node let's just view just that by itself so that's making it pure white let's make this a deep blue and then i'm going to add another one right after it and just try to get that imitated light blue color that you see in the reference photos as it it's very light blue towards the horizon and then it goes to a deep blue as it goes outside now that i've got that let's have a look that's a little too scion looking it's a little bluer a bit more desaturated and i'll just drag this back a little bit as well i drag these over to the midway point and now i can see i've got that nice horizon i might just drop this to one percent and there we go quick and easy atmospheric fall off whilst we're comparing to reference something else you can notice looking at reference photos is that wherever there is the sunlight reflecting off of the ocean or a river you get a little bit of glare and that would look really nice coming off this little lake river thing actually i don't know what part of america that is but this nice lake river thing would look good with some glare coming off it so in your render layer settings underneath glossy we're going to enable a glossy direct pass render again go to the compositing tab and you can see that the glossy direct pass is just the gloss isolated on its own black layer so if i was to connect that to a glare node leave it at streaks but set the number to 16 then dial back the fade so it's really really subtle turn up the mix to one so we're only seeing the glare and then let's set the threshold to about a point two no point five i want a little bit coming off some of the surrounding rivers but not too much put a little bit of color into it then we're going to combine it with a typical mix node set to add and then just dial back the factor amount to be really really small like so this is the final node setup here's the before and here's the after before after subtle but it makes a big difference so just about the only thing that could improve our earth right now is if on the dark side of our earth we had night lights wherever there's cities it's not in pitch black of course because people are turning on appliances and street lights and things so we want to be able to see that over here and as it just so happens and one of the convenient textures that nasa has given us is that a night light map so i'm going to load that in i find 21k to be the sweet spot as always we're going to make sure it's set to non-colored data and then i want to plug this into the emission strength of our principled shader let me just make a little bit of room here as well because it's going to be a little bit complicated otherwise let's move this across okay and we won't see any emission on here yet until we've got something going into our emission color so for that i'm going to use a black body color temperature so that's just using like the kelvin like you know incandescent bulbs and things and then i'll just set that to 3500 which is a sort of a nice mid-range warm kind of level and you can see that it is working right in the dark areas you can see the lights but you can also see it in the bright areas right in broad daylight we've got these towns that are just lighting up the strength of the sun which makes no sense at all so what we want to do is we want to tell blender wherever the sun is pointing we want that side of the mesh to not use that part of the texture which is quite technical but it's actually only a few nodes the first node is a texture coordinate node and then i'm going to take this eyedropper tool and i'm going to take the texture coordinates of the sun object then i'm going to feed that into a normal node and take the object coordinates of that so the object coordinates of the sun feeding into a normal node so that this is the the surface normals of our earth here so it's saying like this side of our earth normals the surface align that with the rotation of the sun then i want to take the dot value there and i want to merge it with this grayscale texture going into the emission strength so for that i'm just going to use a math node and then set this to multiply and drag that into the bottom input and you might find when you do that that suddenly something has gone wrong for one there's no lights going on in the back in the dark areas but also the bright areas is just like solid black and the reason for that is that the only way that this will work using the texture coordinate of the sun there is if the sun object shares the same origin point of the earth itself which means if it is outside of the earth it will not work it needs to be inside so alt g assuming that your earth the origin point is right at the center of the scene which it would be if that's where you added the uv sphere this should now work there we go so we've now got our lights and actually if we set the strength of our sun to zero you can see that it is working it is only lighting up one side of the earth however it is the wrong side of the earth so right between here and here i need to add in a map range node then if i was to drag this from max into this negative range you can see that it has now effectively flipped it's inverted it and it's now working correctly but actually if i want it to be even better right here rather than just inverting it you can see that where it's like transitioning from the light into the the night area it transitions a little earlier you can imagine that if it was like twilight people haven't really turned on their lights yet so there should be sort of a black band where the lights haven't been turned on yet so for that i can actually just turn this from min range back a little bit a little bit further you don't want to go too far if it gets too far then it flips it around back the other way so i want to make sure that this is uh that the max range is always lower than the from range but you can see that now that i've done that the closer i bring this to the zero range the closer it's going to bring it to that that um the transition point of the sun so if i want that to be more of a band i'll just like set that darker and darker further and further back like that and then this is sort of what you can imagine as like a gradient from when it goes from lights being turned off to lights being turned on and then basically this max value down here that becomes the strength so if i wanted this to be like you know five times brighter then i would set that to one people often say that uh it's implausible for you to actually be able to see the sunlight uh hitting the side of the earth and seeing the night lights and that is very true like the night lights from a city on earth will be nowhere near the strength value of the sun but it is more artistic i is quite fun to see like the other half of the earth like twinkling in lights so i like to crank it a little higher than it should plausibly be here's our final render coming in at 41 seconds on a 30 90. if you wanted to drop that even further you could of course increase the noise threshold drop the max subdivisions down to like three or four and use the lowest resolution textures where possible and you can see i can get that down to 13 seconds so here's the final animation [Music] [Music] and that donut at the end there is a teaser for the baker's dozen nft project which is going live october 3rd and that is to raise money for blender starting october 3rd one donut will be released as an auctioned nft every day for 13 days and then all the funds will be donated to blender to help improve this software that we love if you enjoyed this video please click like and subscribe if you want to see more videos like it
Info
Channel: Blender Guru
Views: 96,290
Rating: undefined out of 5
Keywords: tutorial, andrew price, blender guru, blender tutorial, earth, realistic earth, earth 3d, 3d, blender earth tutorial, blender earth, earth blender, planet in blender, how to make earth in blender
Id: 0YZzHn0iz8U
Channel Id: undefined
Length: 22min 59sec (1379 seconds)
Published: Thu Aug 25 2022
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.