What is 3D Model?

advertisement
3D Modeling Essentials
Introduction To 3D Modeling
George Atanasov
Telerik Corporation
www.telerik.com
What is 3D Modeling?
 3D Modeling process
 Representing any 3 dimensional surface
 Automatic or Manual
2
What is 3D Model?
 The product is called
3D model
 3D model can be:
 Rendered to 2D image
 Printed to realistic object with 3D printer
 Used in 3D games with real-time rendering
3
Splines & NURBS
 Vector design is better for industrial
goals
 Hands of the Craftsman vs. CPU Lathe
4
Polygon Mesh Objects
 Polyhedral
object
 Best for games and physical
simulations
5
Polygon Mesh Objects
 Polygon
mesh sub-object level
 Vertex
 Edge
 Face
 Polygon
6
Mesh vs. Spline
 Why Mesh is better for game development?
 More calculations == less FPS
 Nowadays GPUs are designed to perform faster
with VBOs (Vertex Buffer Objects)
 Mesh objects can be easily represented in VBO
 The absolute accuracy of the objects is not basic
goal in the Games
 In game developing the basic goal is to create
the best possible representation of an object
with the least possible resources
7
The 3D Scene
 Three dimensional coordinate
system
 Represents uniquely all the points in it by three
parameters – values for each axis
 Contain sub-coordinate systems
 Each object has his own
local coordinate system
8
High Poly Modeling
Explaining High-Poly Design
High Poly Modeling
 We can understand the idea of high-poly
modeling just by its name
 The more triangles
in the mesh, the more
detailed the object is
 Final renders are appropriate
for
 Commercials
 Magazines
 3D Movies
10
Low Poly Modeling
Explaining Low-Poly Design
Low Poly Meshes
 Low poly mesh is a mesh which has small
amount of polygons
 Commonly used in real-time applications
 In theory polygons can have infinite number of
sides, but in 3D graphics they are broken down
into triangles
12
Why Low Poly?
 Why we need to create low-poly
models when
there is so many smooth modifiers?
 In general the more triangles
in a mesh the
more
 detailed the object is
 computationally intensive it is to display
 To decrease render time it is better to use low
poly models
13
The Polygon Budget
 A combination of game engine and the
computer being used defines the polygon
budget
 It is equal to the number of polygons which
can appear in a scene and still be rendered
with acceptable frame rate
 It varies
depending on the
 speed of the render engine
 the amount of polygons
 The speed of the hardware
14
Low Poly As a Relative Term
 There is no defined threshold for a mesh to be
low poly
 This term is relative and its definition depends
on other factors:
 The time in when the meshes were designed
and for what
 The detail required in the final mesh
 The shape and properties of the object
15
Low Poly – Future vs. Past
 Super Mario
2 – 1996
 In 1996 rendering an objects created by 240
polygons was a huge success
 All the environment is created by textured
extremely low polygon objects
 Crysis
2 – 2011
 At 2011 rendering objects created by 24 000
polygons is not a big deal
 The environment is created by averagely
resolute objects
16
Appearance
 Low poly objects do not always
have to look
bad
 You can “lie”
the viewer that the object has
better resolution with techniques such as
 Normal mapping
 Bump mapping
 Etc.
17
Smoothing
Smoothing techniques
Smoothing
 There are many methods to create a smooth
objects
 Normal smoothing
 Mesh smoothing
 Etc.
 It is important to understand how to use each
one of them
 You have to pick the best for your goals
19
Normal Smoothing
 Normal smoothing affects only the way that
the light is reflected by the objects surface
 That is better for games, because the triangle
count stays the same
 Ends of the object
remain edgy
 Performs better on
dark colors
20
Mesh Smoothing
 Mesh smoothing affects directly
the geometry
of the object
 Can be used many times on the same objects
 Iteration value
 With each iteration
increase, the resolution of
the object increases by square
21
Lights
Understanding Lightning in 3D
Why We Need Lightning?
 Modeling the 3D object is just a little part
of
the whole design process
 The light makes the object to look as 3D object
23
How the Light Works?
 For full realistic
light simulation you would
need a “NASA” computer
 The lighting
in 3D graphics is not exact
representation of the real light
 In most 3D engines the light appearance is
decayed to separate effects independent of each
other
24
Abstract Types Of Lights
 The light is composed by several
abstract
components
 Diffuse, Ambient, Specular, Emissive,
Reflection, Refraction
 Each light component can have its own color
 It is important to understand how to deal with
each type of them
 And it is more than important to understand
how the real light affects the objects
25
Ambient Light
 When sun ray
hits an object it reflects from it
 The ambient light is the emission of all light
sources
 The result is averagely brightening whole
object
 3D object with only ambient light channel
applied to it looks 2D
26
Diffuse Light
 Diffuse light
represents a directional light
casted by a light source
 It can be explained
as a light from light bulb
placed on specific location in the space
 A diffuse light of red color, coming from the left
of a black object defining its 3D shape
27
Diffuse light
 For more realistic
result we can apply both
diffuse and ambient light channels
 The diffuse light
represents a light from a light
bulb and flashes the front side of the object
 The ambient light brightens the entire object
28
Specular Light
 The specular light
channel represents the
brightest area of the object (the highlight area)
 The position and the amount of specular
highlight is depends on
 The viewers position
 The angle between the viewer and the source
29
Emissive Light
 Emissive light
works a little different than the
previously explained before types of lights
 It is responsible
for the object material ability
to absorb or reflect light
 Below is the result
of object emitting green
light with red light source applied
30
Reflections
 The use of reflections helps to create more
realistic objects
 Remember... You would not see the reflection
effect if you don’t have another objects to
reflect
 Reflection looks better on round objects
 Do not overdo with the
reflection effect
 Reflection mapping saves
time
31
Refractions
 The refraction property defines how much
light goes through the object
 In simple language it controls
the opacity of
the object
 Refraction color #000000 == full opacity
 Refraction color #FFFFFF == full transparency
32
Textures
Texturing Essentials
Textures?
 Textures are just simple raster pictures
 JPEG
 PNG
 TGA
 GIF
 TIFF
 Widely used in 3D game modeling
34
Why To Use Them?
 If you are developing a car racing
game you do
not need to model all the details on the
buildings behind
 By texturing
your object you can add a lot of
details on the model without adding any more
resolution to it
 For example you
can use a texture of window
instead of modeling it
35
Texturing Methods
 There are several ways
to texturize an object
 Which one is better depends on the object
which is going to be texturized
 In game developing process the basic
texturing methods are
 UVW Mapping
 Tiling
 UVW Unwrapping
36
What is Tiled Texture
 Tiling
is another trick which saves a lot of
resources
 To understand it, imagine that you have to
represent the facade of a huge building by
texturing
 The idiotic way is to draw a huge texture with a
lot and the same windows in it
 The right way is to draw a texture with only one
window on it and multiply it
37
Texture Optimization Tricks
 Creating
details with textures instead of
polygons saves render time
 Do not flood your 3D scene with huge amount
of textures
 Do not use bigger textures than you need
 Manage balance between quality and size
 When it is possible use texture modulation
38
Texture Modulation
 Useful for level editing (creating environment)
 You want to model brown roof tile and the
same ones, but in different colors
 Use white (or bright) roof tile texture and
modulate it with the color of its object
 You can create many different looking models
with the use of one and the same resource
39
Use Transparency
 OK… We have to create a metal fence
 But how many polygons
we need?
 First way is to create it as a polygon mesh
 100 000 polygons for 1 meter wide fence ?!?
 The trick to do that is to use a texture of metal
fence with transparency at the empty spaces
 2 polygons and the result looks the same
40
UV(W) Mapping
 Projects a texture map to 3D object
 Assigns pixels of the image on the polygons
 Allows
you to texturize more complex shapes
41
Unwarp UVW
 A very useful technique for texturing game
characters and other complex objects
42
Tools & Software
What Software To Use
Define Your Goals
 Your goals are ?
 Making super cool 3D game models
 Making very detailed models for commercials,
magazine covers, movies, etc.
 Making 3D models for an industrial goals
 Level editing for games
 You are learning
44
Comers & Games
 Appropriate software
 3D Studio Max, Maya
 Blender, Google SkatchUp
 Cinema 4D
 Inappropriate software
 SolidWorks
 AutoCAD, ArchiCAD
45
Industrial
 Appropriate software
 SolidWorks
 AutoCAD, Civil 3D
 ArchiCAD
 Inappropriate software
 3Ds Max, Maya
46
Level Editing
 Appropriate software
 Civil 3D
 3Ds Max
 Blender
 Inappropriate
 SolidWorks, AutoCAD, ArchiCAD
 3Ds Max
 Blender
47
3D Modeling Essentials
Questions?
Download