So we've mentioned them lots.
And it's time to discuss normal maps.
So welcome to normal maps in this video you will understand that they are a type of bump map.
You'll gain a greater understanding of how normals actually work and also that they contain direction
information and not hide information.
And we will go over the fact that there are three main types.
So first of all hite's Map vs. normal map a height map with a value of evil or zero toll one describes
the particular surface high to any point.
And we can see that can be used to displace our model if necessary and provide some level of control
and even a basic bump mapping can make something look bumpy.
However a normal map is slightly better in the way that it controls the direction of light across a
surface.
Here we have a normal map of the same surface.
Now obviously these are too deep.
And when we work in three dimensions we can have a whole different gamut of colours.
But in this instance we can see that this zigzag repeats itself so we've got the lower half and the
upper half.
And when we look at the normal map for that particular shape that we've got in front of us imagine it
was a profile of a 3D model.
We can see that the normals are identical the first three are identical to the second three.
Now that gives us no indication of height differences between those surfaces.
So Norman so normal maps themselves they contain direction information not hide information.
I'm not going to stop repeating that.
That is important a lot of people get too confused and think that normal maps convey some sort of height
information.
They in fact do not the RG be colour channel values define the direction of a particular normal across
a surface.
An x y z components are also defined with red green and blue Have you ever noticed that the 3D gimbel
in any package that you work with always sticks to these three colours.
There's a not a coincidence that I'm pretty sure.
So let's have a look at the first one and a hop over to my iPad and just draw this out for you.
We're talk about tangent space Normal's.
Okay so let's talk about Normal's in a bit more detail.
If we make ourselves a triangle for the shape that we're all familiar with it will be made up of three
edges and three vertices.
Each one of these vertices has their own normal associated with it.
Now obviously I'm stark in that 2D space when undoing a drawing like this.
But this also applies to a 3-d space.
Now these edges that are joined this particular one here will have a normal that something like this
90 degrees to this particular edge or indeed if we imagine it's face side on that would also apply.
And this particular normal is an average of this normal and this normal here.
Now ordinarily when light comes in the shade controls somewhat how light is bounced off a particular
surface.
But in general if lights were coming in here and hitting this surface we would expect it to bounce off.
At this sort of angle it was a highly specular surface that would be what it looks like and we can take
control of that when we map an image.
Now obviously we need a face to map an image to see.
But in this case we use a 2D representation.
So let me remove those light lines.
So we still have some light coming in here.
But instead we've mapped an image to the surface to tell the surface how to react to light.
So at these three points that we have weak control how light is actually bouncing as if there was more
geometry than there actually is.
So we pretended for instance that the surface looked like this at this point that it looked like this
at that point.
And it looked like well I don't know that at that point and we can do that with a normal map then we
would see that the light would bounce off considerably different.
So at this point it would bounce back off like that here is likely to bounce off like that.
In fact that might be a bit overkill in that case.
And this point here will bounce back off like that and we can see that this gives us a great deal of
control about how light is interacting with our surface itself much more control then a simple height
map.
Now often these two things are used in conjunction with one another in order to make a model look more
realistic.
Okay so let's have a look now at tangent normal maps an example of them.
This leaves over one of the most common ones along with object space.
Normal maps as well so a cover tangent first.
So here we have a view where we can see that smooth shading makes a difference where flat shading is
you can see that on the normal map and where the cube is says hang on a minute.
Why can't we see the cube on the normal map.
And the reason for that is because the top of the cube is the same direction.
It has the same normal direction as the plane itself and therefore it has no direction change and no
colour change on the normal map.
So a normal maps appearance when creating normal maps they are affected by whether or not the meche
object has smooth shading turned on normal direction is very important otherwise the map will end up
useless and you won't be able to use it properly.
So if we take the same scene again but this time inverts the Normal's of all of the objects that we're
mapping we can see that we end up with a much bolder normal map happening.
And that is actually going to be useless for us if we're using tangent space.
Normal maps is not going to look very nice.
Now there are other normal maps.
Now I know at the beginning I said there are three types but there are four I suppose in general and
a couple of them really aren't used.
And two of them are very similar to one another.
So there are three other normal types.
We've got the camera world an object.
These are all reference points for the normal map and they all have their uses and issues as all of
these things do when we've got choice.
So using the camera at normal space that is highly restrictive.
This is the Normal's according to the camera view itself so if you've got a static camera it's going
to be possibly fine to use it in here but you cannot move the view of a scene without breaking the illusion
of detail as the lighting effect will get worse the further you deviate from that particular view point
because it's the Camrose changing how the normals react.
Using the world space.
Now this is also quite restrictive.
Not as much as the camera.
You cannot rotate deform anything made within the world normal space without breaking the lighting illusion
the moment you do that especially if you change the lighting it will break down.
So using the object normal space.
Now this is a more optimized form and is often used in games because it takes less computational power
because there is a one to one mapping to your objects so you can only use it once as it has this one
to one mapping to the object.
So you can't reuse a normal map across multiple items.
That's let's say we've got a brick work type normal map where you could use that over lots and lots
of different models.
However an object normal space.
Well it's got a one to one mapping to the object so unless the another object is either incredibly similar
or the same we cannot use it on anything else.
Now this is also called local or model space as well as object space.
Now it can generate higher quality maps as the normals are replaced not adjusted.
So with a tangential base it is a.
The normals are adjusted whereas with an object they are replaced with more Normal's so slightly better
rendering performance can result from this and it's easier to visualize because if something is facing
down it will have a completely different normal then if it's facing up now with tangent space we often
see that.
If if a Normal is 90 degrees from that particular face pointing up it will be the same colour wherever
it is on the model.
So using the tangent normal space whereas that you.
Well they are great because they are reusable Regardless subscale defamation or etc. of a model so their
great when used with animation for instance it can be difficult to avoid smoothing issues.
They do save memory and bandwidth because we are Count collating but because we count chelating they
have a slight impact on performance.
They can also be tiled and scaled etc. So that's great.
If we want to use a tiny normal map that we've made on one object much like we did with the displacement
map a moment ago where we changed the ground using a normal map that already existed in our scene.
That's a great too.
There was an enormous mazzara displacement mouth but you can see there that we can reuse these things
over and over again.
And that obviously saves us a lot of work if we can reuse something and it's not no too noticeable that
we're reusing it.
Especially when you're working on models of completely different scales.
It's unlikely that you would notice that the same texture was being used across multiple models.
So using normal maps outside a blender.
Now some external programs or engines will interpret your normal maps differently so adjustments may
be required.
That's just a word of caution when you're exporting.
Most are going to be absolutely fine.
However there will be some times where it doesn't quite work how you wanted it to.
In which case we would have to adjust the normal maps accordingly.
Okay so it's Challenge time.
I'd like you to think about which technique would you use.
So looking at the various normal mapping options which ones would you use in your scene and why now
there's a hint here you can use any of them.
So why is the important part.
Share your ideas in the discussions.
Pause video now and give that a go.
OK guys welcome back.
So which technique would I use.
There is no right or wrong here.
As with most things in blender Now I will be using tangent space for the majority of my models.
And the reason for that is I am still prototyping a want to reuse maps where ever possible cross my
model.
I don't want to have to create unique ones every time for every individual model.
Now if I had a unique item that I knew that there was absolutely no chance.
I may also use an object space.
Normal map for instance.
I suppose if I produced a lectern or something like that I may use an object space for that but everything
else.
I think I'm going to end up using tangent space for what did you come up with.
Did you share your ideas in the discussions I hope you did.
I look forward to reading them and I will see you guys in the next lecture.