Hello, this is Kwangwook Tak
This unit consists of understanding modelling job groups
3D modelling and texturing, three parts
First, we'll learn about modeller who are people that do 3D modelling
Understanding modelling job groups
Modellers look at the modelling sheet that the original artist made
and turn the designed character or architecture into 3D objects
to make it possible for it to be used in engines
So modellers have two jobs
You'll learn it later as well
3D modelling data consists of mesh which is the structure
and material that expresses the texture
and modeller creates both of these
So they make the mesh
and make the texture
Making the mesh is what's usually called modelling
and materials differ for each tools
so rather than making material
making texture that will be in the material
that is, texturing is the role of modelling
There are character modeller and background modeller in modellers
The modelling data used in engines differ in their use of information
according to characters and backgrounds
So even within an engine, it is also divided into two meshes of
skeleton mesh and static mesh and managed
Due to this difference, modellers and divided into two job groups
of character modelling and background modelling
Also, it would differ from content style,
but the various resource data that the project requires
are all created by them
Base color, metallic, roughness, and normal map
and such textures with data
are created and delivered to the engine
by modellers
That means, modellers have a lot of tools to use
When making mesh which is a resource used in the content
they use 3ds Max by Autodesk, Maya, and Blender
to make real time mesh data
and to create normal map image
they make high polygon
And to make this high polygon
they use the tool Zbrush by Maxon
And to do the texturing a bit more conveniently
they use Substance Painter by Adobe
and they are working with images
which makes it obvious that they also use Photoshop
Like this, using a lot of different tools
is a characteristic of this modelling jobs
There is a job group called level designer among background modeller
Level designers create level
that is, space
Their main role is to create the flow of movement of the user
and the atmosphere according to the movement
And since they work with wide spaces
they have to maintain the quality
while also making sure that the user can enjoy the content
by taking care of optimization
This means that the cooperation of the planning team and programming team is important
Level designers often are in the spot that have to
communicate with the director and the programmer
and as the result of that
when the number and type of resource that they need to make changes
the workload of the background modelling team is also changed
and that has to be distributed
So usually the leader of the background modelling team
or an experienced person takes this role
But recently, there have been contents that show
only backgrounds like VR, AR, and XR
and small scale developers emerged
which altered the production process, team construction and roles
making newbie level designers
also needed
Then, we'll learn the concepts needed
in the modelling process, that is,
what modellers focus on when modelling
3D modelling
First, let's learn about 3D modelling data structure
3D literally means an object existing
in a 3 dimensional space
To express the object in that space
there are two elements needed
First is mesh, the data the expresses structure
and second, material
the data that expresses the texture
Mesh and material
are the most important elements of 3D object expression
And to make a game
collision data is also added
When only thinking about graphics
mesh and material will be the only two elements
Let's take a look
Mesh was structure
It consists of point, line, and plane
Point is called vertex
and the line that connects a vertex and another
is called edge
And the shape that these lines, edges create
is called face
or a polygon
And the mass that is created with these faces
is called mesh
It is called mesh because it looks like a mesh net
This mesh only is the information about a structure
It cannot be seen actually
So texture is needed to be seen
What the surface color is, how it shines
if it's rough or soft needs to be shown
The information about these is material
So material is calculations
The numbers in materials or texture images
and such information are combined
to finally create a texture
Majority of 3D graphics create an object with
mesh and material
We will learn about mesh in this 3D modelling part
Modellers, put simply
create structures using vertex
edge, face, and polygon
There are largely two ways of modelling
that are polygon modelling and nurbs modelling
Polygon modelling
uses vertex, edge, and polygon to create a structure
It is the method of making a structure using
flat faces and flat polygons
On the other hand, nurbs modelling is a vector method of
photoshop and illustrator
Unlike polygon modelling that simply connects
vertex and vertex to create an edge
it uses Bézier curve between vertexes
and calculates the curve
to create curved surface
Usually engines like Unreal Engine, Unity
and others create spaces with a set of polygons
so when making a 3D resource
they mostly use polygon modelling
Polygon modelling uses rectangular polygons
to do modelling
Extrude which makes polygons
Inset that adds polygon inside of a polygon
Cut that divides edge or polygon
Chamfer that carves corners
These are functions that edit vertex, edge, face
to create a structure
Since it the method of connecting flat polygons to create a structure
a lot of faces are needed
to create detailed structure like natural curved lines or unevenness
According to the number of the polygons used
if it's small, it is classified as low polygon
and if it's big, it is classified as high polygon
These two types have pros and cons
First, low polygon modelling made with the minimum number of polygons
have less polygons
so has advantage in real time content that has to do a lot of calculation in real time
On the other hand, high polygon modelling does not have a limit in the number of polygons
So it can have a more detailed depiction
Curved surface and lines look more natural
Wrinkles on clothes, or rough and bumpy
surfaces' expressions
are possible with all the details
But since the number of polygons increase
for real time engines that have to calculate information every moment for every level
it is hard to calculate all these polygons quickly
So these high polygon data
are usually used in movies, animations, bird's eye view of architectures, or product rendering
and such non-real time content where
the rendering time does not matter greatly
Before, in real time content, there were standards in low and high
polygon that this many polygons is low or high
But now with the technological development of hardware and engines
the number of polygons used in real time content increased
making such standards pretty much meaningless
Now, it is more focused on the character of the project
when limiting the number of polygons used in modelling
So modellers need to make the structure
with the best quality within
the limited number of polygons
In engines, content needs to run smoothely
so low polygon production is the obvious choice
But to create a higher quality content
high polygon's detail is needed
So real time engine puts high polygon data
on low polygon to heighten the quality
which is a function called normal map
so that it can do the calculation smoothly in real time
while also showing a high quality graphic
So to use this function
high polygon data must be made in the modelling process
That means, low polygon and high polygon are both needed
But there are differences in the production process of low and high polygon
Modelling is done with tools like 3ds Max
Maya, and Blender
but since low polygon needs fewer vertex
it can be mouse controlled
But if there are more polygons
it will be hard to select each vertex, edge, or face
to control and create
So in high polygon modelling
there are two production methods
One is hard surface modelling
and the other is sculpting
modelling method
Hard surface modelling
uses subdivide function of programs like 3ds Max, Maya, and Blender
and smooth algorithm
With the calculation formula of subdivide and smooth algorithm
neat curved lines and edges can be expressed
It is usually used in machines, arms, or armors in SF genres
and other artifact modelling
But this hard surface modelling
needs a good understanding of smooth algorithm
and it takes a lot of time since
all edges need to be modeled by hand
Sculpting modelling method is what emerged as the alternative of that
Sculpting modelling is the method of
naturally sculpting like using real clay
or drawing with real brushes
It is the method of sculpting, unlike 3ds Max
so it can create resource that is very intuitive
in expressing realistic texture
and since it is intuitive, the result can be produced within a shorter period of time
It is also a characteristic of this method that it uses tablets that can
sense decompression since it uses brushes to express texture
So it is usually used in creating modelling data for
human body, alien creature, or other natural lives
Now we’ll see what elements must be considered important for
character modelling and background modelling
Let’s see character modelling first
Characters move
They have movements like walking, running, jumping
and can make facial expressions
With these movements, since vertexes change places
the shape and size of polygons change
We call the net shape of polygons wire frame
According to the wire frame’s structure
these movements can look natural
or awkward
Especially for characters, they have muscles that contract and relax
So it is important to take care of the polygon structure of the muscle movement
So character modellers need to study about
muscles and bones, that is
anatomy and human body
The most important thing is
forming a wire frame
that creates the most natural movement
Now let’s take a look into background modelling
3D space are composed of many objects and polygon structures
so background modelling uses the method of modularization
to create the best quality within the limited production environment
You can think of modularization as parts
They are like each one blocks of Lego
Engines have the tendency to calculate less for objects that are
duplicated, that is, instanced, compared to independent objects
So to minimize what needs calculation
it will be better for real time content to duplicate and instance as much objects
as possible
Here, background modellers
try to minimize the number of parts, polygons
and at the same time also the number of materials
when creating the modelling data
to build a level
And background modelling also needs to take human scale into consideration
Human scale means using the human body as a measurement
to get an approximation of the scale of a space
Especially in virtual spaces
there are instances when this human scale is ignored
For example let’s say we make a brick wall
In real life, bricks’ size are standardized
So we just need to use the standardized bricks
and build the wall
But in the virtual world, there is no such standard
So if the work is done without any standard
the bricks can become too big or too small
making the space a very awkward one
So this human scale method
using humans as a standard to measure sizes
is very important in background modelling
Usually when doing background modelling
the character that becomes the standard is first determined in size
and then the design takes place comparing it to the character
Of course, if a character is already made
then one can use that one for comparison
But if there isn’t a character to use
then we need to establish an agreement in
how big a person is going to be in this game
Based on that agreement, the modelling takes place
That way, the overall scale
like the bricks have a sense of
consistency
Texturing
Now that we’ve done the modelling we need texture
Now we’ll learn about texturing
Texturing is a part of material
in 3D modelling
I mentioned that material is calculations
More accurately, it is the plate that contains
the value that came out of the calculations in the material
Material is a tool that
uses many information contained in the material
like numbers, textures, and other data
to output values
through calculations
onto textures
Modellers usually make textures and put them into material
and to make that texture
one must know some concepts needed for the
expression of textures in 3D spaces
So let’s take a look
UV is a necessary information to put 2D texture
in 3D modelling
UV coordinate is like a coordinate with each face and polygon
from a 3D object spreaded out
It is connecting 3D space’s coordinate to that in a 2D surface’s coordinate
so that a texture applied in the 2D plane
and the colors are applied
on the corresponding 3D coordinate
so that it shows up on the 3D model
For example, like shown on the picture, you spread out a cube
onto a 2D plane
And applying texture on this 2D space
Saying that we have red on the left
that will be this part in the 3D space
Through the process of this part becoming red
the model's side will become red
That's the process
Here, the 2D plane's coordinates have
U coordinate horizontally, and V coordinate vertically
making the name UV coordinate
Like this, the process of spreading the 3D space's coordinate onto a UV coordinate
is called UV unwrap
The reason why we do this UV unwrap
is because we are used to drawing on flat surfaces
and also because in engine programs it is easier to
manage flat image data
And these flat image data on UV coordinates are
called texture or map
Using this texture and UV coordinates
high quality texture can be expressed in real time content
and not only common textures that we know
but also unique textures that
do not exist in real life can also be expressed
So UV unwrap becomes a necessary process
in modelling data for real time content
If UV coordinates are ready
now we need to make the right texture on the coordinates
We must have an understanding of materials
and how the calculations are done in order to
express these texture on 3D space or 3D data
Majority of 3D rendering programs including Unreal Engine
use the method of PBR
to express texture
To understand material, you must know about
PBR system first
PBR system stands for
Physically Based Rendering
Light hits an object and is reflected from its surface
which then enters our eyes so that we see it
This is the process that human eye or cameras
see an object or color
Computers calculate the path of the light
being reflected from an object's surface using physical formula
and shows the result using material
Since it replicates how light enters our eyes in real life
PBR system method is good for
realistic depiction
On the other hand, it takes quite long
to replicate such process
so it has been being used in
non-real time content like movies and product rendering
But with hardware and engine developing
and PBR system as well
now it is an expression system
used in real time content as well
And with base color, metallic, and roughness
it can express almost every texture very simply
so creative environment development is possible
Hence making it very widely used
PBR system is a rendering method used in most modern
computer graphic tools
So no matter real time content or not
it's just that the options are a little different for each type
PBR system is used in most graphic tools
And the structure of texture expression are mostly similar
The result of calculations for texture expression using information like
texture, image, color, and numbers
are delivered to cameras
Here, the formula using informations
is called shader
And the result value of shader
is put in the bowl, material
which is again calculated with the many conditions in the 3D space
I said that the bowl here was material
So this material is, as shown in the diagram
consisting of information, shader that calculates these informations
and material that contains the results
of the shader
Using PBR system to express graphics
are usually similar to this form
but Blender, 3ds Max, Maya, Undreal, Unity
and such tools all have different ways of expressing PBR
Which is obvious since each tools have different program structure
Since the rendering, that is, how it screens it
differs for each programs
not only the shader calculation formula
but also the types and names of shaders are all different for each programs
So you can't copy only the material between programs
and take it to another tool
so you need to take only the texture and information used in shader
to remake material in the new tool
Of course, even with the same texture and same numbers
each tools show different textures
so each tools need detailed settings
Then let's take a look into PBR rendering expression elements
There are base color, metallic, and roughness in PBR rendering expression elements
Base color is the color that has its own texture
Red, blue, green, yellow
These general colors are them
Digital color use red, green, and blue
to mix and express other colors
The color is how much of each red, green, and blue are mixed in
SO each colors are called R channel, G channel, B channel
and called RGB channel all together
And these channels are shown from 0 to 255, that is, in 256 integers
so 0, 0% means there's non, and 255, 100% means there is
And 0 is black
and 255 is white
The middle of about 125 would be grey
So each channel is in black and white
Again, color is made of channels that are in black and white
which are R channel, G channel, B channel
that is, RGB channel
Usually digital color is expressed by numbers from 0 to 255
but Unreal switches this 0 to 255
to numbers from 0 to 1
So the grey in the middle will be something like 0.5
It might be a little confusing, but in engines, for convenience in calculations
this is understandable
Next is metallic
It is determined based on whether the material is metal or not
0 means not metallic, black
and 255 means metallic, white
Then we have roughness
It expresses the surface's smoothness and roughness
0 means the surface ins't rough, but smooth,
and in black
255 means the surface is rough
and in white
Like this, the information in numbers
are put in each pixels to match the UV coordinates
to show these textures
Base color uses all RGB channels
so makes a colorful image
But metallic and roughness
have only numbers from 0 to 255
so they create images in black and white
Putting color to UV coordinates
are done in Photoshop and Substance Painter
It sounded a bit complicated
but it's just drawing with the UV coordinate as the sketch
When working with Photoshop
each elements of PBR, that is, for base color, metallic, and smoothness
are all separately made
while on Substance Painter
the texture is made with all elements of PBR applied
and each elements are extracted
Since Substance Painter let's you see the final result while working
and it's in an intuitive way of painting right onto the 3D modelling data
these days, usually Substance Painter is used
and Photoshop is used for
editing the final extracted file or making resource needed in
Substance Painter
Then let's talk about image files that contain color information
I mentioned that digital image use three colors, RGB to express colors
Another channel is added here
A, alpha channel is added
This channel signifies transparency
0 is black
Black means that you can't see it
there for transparent
And 255, 1 in Unreal
means showing 100%
that is, opaque
Like this, digital color consists of four channels
The monitor screen that you're seeing
or web browser, app images on your phone
We'll now learn about these, which are a file, texture, an image format
Sometimes, this transparency information might not be needed
Since each channel means increased content
so if the channel isn't needed, you can omit it
So image files are divided into those that have alpha channel
and those that don't
png files that we often use
have all four channels of R, G, B, A
It is a file format with both color and transparency
Other than png, in the modelling industry
a format called Targa is also widely used
Targa format also uses R, G, B, A to express images
meaning that it can express transparency
On the other hand, we also use jpg file very often
It is an image format with small size and high quality
This jpg format does not have transparency information
which means that there is no alpha channel
It only has three channels that express color, R, G, and B
which is why it takes up smaller storage space
So when you're working on a document
and you download an image from the internet
You might have experienced when you downloaded it because you thought
it didn't have a background but there it a white background
Those images will mostly be jpg format images
that don't have alpha channel
So to download a transparent image
you need to look for png files instead of jpg files
You can use these image files made of channels
to make a merged map
Merged map
Each channels were images made of black and white
When expressing color
you use all three channels of R, G, B
For example, metallic or roughness
don't need all three channels
It only needs one
But for image files, jpg has the least
which still uses three channels
So it uses three channels
to express one channel
when making colors
which is very inefficient
So for example, if you put data of metallic on R channel
and roughness on G channel
and something else on B channel
each element don't need separate files
but one image file can be used
to manage all information
Then the size of the file also decreases
This method of texture is called merged map or merged texture
This merge map is very useful in Unreal Engine
Unreal Engine's material is in visual scripting method
What that is is
Usually when making a code
we think of writing from top down
We read sentences and read the flow of data
and we also need to know the grammar the edit it
Making these complex things intuitive
is visual scripting
Visual scripting is connecting boxes called nodes
that contain data or calculations with lines
so that data information can move
as a visual coding method
Unreal's material expresses texture using
this visual scripting method
For example, for the base color of this material
we connect texture node
and to metallic, we connect the information value or
texture of metallic
We can also change or edit the
information and switch them to other ones
which is arithmetic construction
If you make this arithmetic construction
it can create a very complicated node
but it will be much more free in expression
without writing codes
Since Unreal's material aims for flexible construction
it has a function that let's one separate
each channels of an image
So a merged map file construction is possible
We talked about the format in which base color, metallic
roughness, which are PBR elements and texture information
There are various elements
used to express other additional details
and now we'll learn about normal map
which is used the most as it produces the most effect with a low cost
Normal map is a concept of showing a flat polygon as if it is curved
We were making shapes with polygon modelling
In polygon modelling
polygons between vertex and another need to be flat planes
So to create a curve surface
a lot of flat polygons are needed
If there are many polygons, there needs more calculations
so it becomes inefficient
So to create a curve look on a flat surface
without adding faces
the concept of normal map
was created
Usually normal is used to calculate light
Each face has perpendicular directivity
We call that directivity normal
In Korean it is 법선
So we also commonly call it normal 법선
With this normal as the standard
if the surface is going to be
shown as bright or dark
is determined based on if the light is
shone diagonally, vertically
or from the back
So bright and dark expression is made
Shadows are created
Here, developers think
how we should make use of this idea of
how we see bright and dark parts
as protruding or sunken
The solution that they came up with is
Each faces have perpendicular normal values
and if these normals are forced to be tilted
the light will fall vertically
but since the normal is tilted
the calculation will take the light as being shone from the side
which means that it has become possible to control the faces' angles
Developing this
if each pixel for UV coordinates'
normal direction value is recorded
bringing back this value from the texture in the material
each of the normal direction is taken into the calculation
like this pixel recieves light
while this one doesn't
and make it look like there is curvature
This is the normal map method
that we use a lot
So if this normal map method is used well
like you see in the pictures
this data made of countless faces
can be made in low polygon
so that it is still low polygon but
looks like high polygon with a lot of detail
So to create a normal
a low polygon which will be the engine resource
and a high polygon data with detailed face information
are necessary
On the low polygon's normal map texture
high polygon's data's
normal information is recorded
and this is called baking
This is possible in 3Ds Max, Maya, and Blender
but these days, it is usually done in Substance Painter
To recap the process of making a normal map
First, on Max, Maya, or Blender
create low polygon and high polygon data
You can also make high polygon data on Zbrush
And low polygon will have a UV spread out
Taking these two data to Substance Painter
Bake the high polygon normal information
on the low polygon normal map texture
If you bake on Substance Painter you can automatically see it
But on other tools, you'll have to manually
apply them to check it
Baking might not be done perfectly in just one time
so you will have to adjust the settings little by little
and do the process multiple times to find the optimal result
Once this final extracted normal map texture is
applied on engine material
and combined with the low polygon
a detailed surface using fewer polygon is complete
This final modelling and texturing are
saved as files so that it can be moved to engines
Mesh is saved as FBX
FBX is a widely used 3D format
Not only modelling data
but vertex information or animations
and other information needed for content production can be stored
so it is the most used 3D format
used in the real time content production industry
And the image applied on materials
and textures are extracted as png,
Targa, or jpg format
If it is a project using PBR elements and normal map information
it will make more than three types of image files
One FBX file, three texture files
A total of four files will be one set
These mesh and texture are imported in engines
and material is made again
This material is applied on the mesh
and combined to create the final model
and that concludes the modelling work of a modeller
Wrapping up what we've learned in this lecture
let me finish today's lecture
Thank you
Understanding modelling job group: what is a modeller? Turning a designed character or architecture into a 3D object that an be used in engines Divided into character modelling and background modelling
3D modelling Types of 3D modelling Low poly: Modelling made of minimum number of polygons
High poly: modelling without limitation in the number of polygons
Character modelling & background modelling Modularization: better to duplicate and instance as much object of a level as possible Human scale: measuring a space with human body as the standard
Must have a size of standard and design while comparing with that
Texturing What is UV? The necessary information to apply 2D texture on 3D modelling
PBR system(Physically Based Rendering) Majority of textures can be simply expressed with base color, metallic, and roughness
Digital image use R(Red), G(Green), B(Blue), A(Alpha) channels
What is merged map? A texture that can manage various information in one image file by containing data information in each channels
What is normal map? Expressing flat polygons as if they are curved Normal is a system made to express detailed shapes with fewer polygons
The End