• Non ci sono risultati.

3D models:

N/A
N/A
Protected

Academic year: 2021

Condividi "3D models: "

Copied!
18
0
0

Testo completo

(1)

3D models: how to obtain them

Like any asset, they can be bought / offsourced

3D models:

how are they produced

Manual digital modeling

Digital modeller job

2D concepts / Sketches 2D concept

artist

3D modeller

3D low poly mesh

(2)

3D models:

how are they produced

Digital modeling techniques:

Direct low poly

e.g. using Wings3D

Subdivision surfaces

e.g. using Blender

Digital sculpting

e.g. using with Z-brush

Mesh authoring / editing:

a few applications

3D Studio Max (autodesk) , Maya(autodesk) , Cinema4D (maxon) Lightweight 3D (NewTek), Modo(The Foundry) , …

general, powerful, complete

Blender

also, but open-source and freeware (like: Gimp VS. Adobe Photoshop for 2D images)

MeshLab

open-source, big collection of geometry processing algorithms

AutoCAD (autodesk), SolidWorks(SolidThinking)

for CAD

ZBrush(pixologic), + Sculptris, Mudbox(autodesk)

virtual sculpting metaphore,

Wings3D

a toy; open-source, small, specialized in low-poly editing, subdivision surfaces (Doo-Sabin schema)

Rhinoceros

(3)

Direct low poly (demo)

Note: Often during creation, the meshes are polygonalinstead of triangleones. But is simple to decompose any polygon of n>3 edges to (n-2) triangles.

(either during creation, before exporting the asset, or in the game engine, at import time)

Direct low poly (demo)

1 2 3 4 5 6 7 8

9 10 11 12 13 14 17 18

19 20

21 22

23 24

25 26 27 28 29 30 31

(4)

Direct low poly (demo)

1 2 3 4 5 6 7 8

9 10 11 12 13 14 17 18

19 20

21 22

23 24

25 26 27 28 29 30 31

Digital modeling techniques for 3D models

Subdivision surfaces

Progressive refinement of the mesh from low res hi res

Excellent for smooth, organic and “clean” objects

(5)

Subdivision surfaces

WIdely used way to surface modelling

1: create one control mesh

low res

by hand

2: invoke an automatic refinement step

faces and vertices are added

a smoother, higher version of the mesh is created

3: maybe: reshape the result

4: goto 2, until result is ok

Many different mathematical schemes for step 2

With different properties

Subdivision surfaces

Example: butterfly scheme

(for tri-meshes)

It’s a 14 schema

(in one subdivision step, 1 triangle is split into 4 triangles) (and one vertex is added for each edge)

coordinates / attributes of new vertices are computed from the old

in some scheme (not this one), even coords / attributes of old vertices are redefined to new positions / values

Subdivision step

(6)

POS( ) = (POS( ) + POS( ))

+ (POS( ) + POS( ))

+ (POS( ) + POS( ) + POS( ) + POS( ))

Subdivision surfaces

Example: butterfly scheme

168 8

16 162

162

16-1

16-1 16-1

16-1

168 162 16-1

Subdivision surfaces

At each subdivision step

(x,y,z) of new inserted vertices

a function of the neighbors

(x,y,z) of old vertices

Keep old position

( “interpolative” schemes) or

a function of the neighbors (“approximative” schemes)

(7)

Example: with

Catmull-Clark scheme

level 0

(“control mesh”) level 1

level 2 level 3

lvl

(“limit surface”)

Subdivision surfaces

Control mesh

final mesh

(8)

Subdivision surfaces

Even iteratively:

1- Model the “control mesh”

(manual editing)

2- Subdivision

(a step)

3- Editing!

(manual editing)

4- Go to 2

(until wanted result is reached at the wanted resolution)

DEMO!

A lot of schemes…

Catmull-Clark

Doo-Sabin

Loop

sqrt(3)

Butterfly

Mid-edge

….

recent increase in popularity

(GPU friendliness)

(9)

Differences between subdivision schemes

interpolative VS approximative

only triangles, or only quads, or any polygon

complexity increase

(for one subdivision step)

limit surface properties:

existence , smoothness

existence of closed form (exact, or approximated)

Digital modeling techniques for 3D models

Techniques:

Direct low poly

e.g. wings3D

Subdivision surfaces

e.g. with blender

Digital sculpting

e.g. with Z-brush

DEMO

(10)

Digital Sculpting

chisel

3D models:

how are they produced

Manual digital modeling

Digital modeller job

2D concept artist

3D modeller

3D low poly

(11)

3D models:

how are they produced

Through 3D scanning

Technologies for obtaining 3D digital models

from real objects

3D scanning (e.g. laser scanning)

3D models:

how are they produced

3D scanning

A.k.a. automatic 3D model acquisition

Lot of different technologies

Laser scanners

Time of flight

Structured light (kinect)

Different characteristics

Results quality

Noise / resolution

Automatism

Invasiveness

Markers? Powder?

Real time? (kinect)

Price

Max object dimension

(full body scanner?)

(12)

3D models:

how are they produced

Through 3D scanning

Reale model Sculptor

(real)

Hi res model 3D scanning

3D models:

how are they produced

(scanned) hi res model (artistic)

manually edited PERFECT for games!

(much easier to: animate, re-edit, uvmap, …)

VS

Dino, scanned by artec3d

(13)

3D models:

how are they produced

Procedural modeling

Application that creates

«meshes of castles»

parameters

Reminder:

notes on mesh resolution

cost: linear with the number of triangles

in memory (disk, CPU RAM, GPU RAM)

in time (rendering, loading, etc)

(and, linear # of vert. with # triangles)

(rule of thumb: n verts  2n tris)

reminder: adaptive resolution is possible

higher-res in some parts

lower-res in others

(14)

Rendering quality and resolution

Una piramide di Livelli di Dettaglio

p e r f o r m a n c e

q u a l i t y

LoD (Level Of Detail) pyramid

LoD 1

2K faces

LoD 2

400 face

LoD 3

160 faces

LoD 4

60 faces

(15)

LoD (Level Of Detail) pyramid

<5 m 5m ..10 m 10 .. 30 m >30 m

LoD pyramids (Level Of Detail)

Goal:

decrease the triangle budget (total triangles number)

ideal: size of triangles in screen space (in pixel): constant

for equal elements like importance / shape compexity

Task: determining the level to use (dynamically)

depending on observer distance

depending on rendering workload

ex: lagging rendering  decreasing of thresholds

(task of the rendering engine)

Task: LOD creation (asset creation)

starting from LOD-0 (higer-res)

manual, or assisted, or automatic… (see it later on)

often manual

sometimes: a LoD “-1” extra, used only in special scenes

e.g. (procedural) cut-scenes

computed from scene graph

(16)

LoD pyramids

(Level Of Detail)

LOD 0 (mesh)

GEOMETRY + ATTRIBUTES CONNECTIVITY

LOD 1 (mesh)

GEOMETRY

+ ATTRIB CO

NNECT.

LOD 2 (mesh)

G. + A. C.

~ ¼ size

For instance.:

1 K+ ¼ K+ ¼ ¼ K + ¼ ¼ ¼ K + …

= (1+ ⅓) K

Memory consumption: quite limited.

~ ¼ size

LoD pyramids (Level Of Detail)

Mesh (all LoDs)

GEOMETRY +

ATTRIBUTES C

O N NE C T I V I T Y

vertices of any LoD

LoD0

LoD1 Ex. alternative

data structure:

(17)

LoD pyramids (Level Of Detail)

Popping artefact: beware

to attenuate: variable thresholds, for example:

when current = LoD 2:

if (dist > 30m)  switch to LoD3

when current = LoD 3:

if (dist < 25m)  switch to LoD2

LoD 0 LoD 1

LoD 0 LoD 1

LoD 2 LoD 3 LoD 4

LoD 2 LoD 3 LoD 4

to decrease LoD level (go higer res):

to increase LoD level (go lower res):

0

0 dist

dist

Automatic simplification (aka “Poly-reduction”)

automatic

Simplified mesh 2K triangles Original mesh

500K triangles

parameters:

amaximum error

target number of faces

(18)

Automatic simplification (a.k.a. Poly-reduction)

Different algorithms, which can be

Adaptive, or not

adaptive: leave more triangles where needed (ex. not in flat parts)

i.e. produce a mesh with adaptive resolution!

Maximum error introduced:

can be measured and/or limited

or, no bound

Topology preserving:

can be guaranteed to be always preserved

or can be changed by the process

They work well to go from hi-res to medium-res

e.g. from 200K to 20K Triangles

Usually not well enough from low-res to lower-res

e.g.: from 1000 to 250 Triangles.

Simplified mesh != a good low-poly mesh.

Artist work required!

Mesh (pre) processing:

task useful in game industry

Poly reduction / Retopology / Simplification

e.g. LOD construction

e.g. transition from (initial) hi-res to (final) low-poly

Light baking

Light precomputation

e.g.: Ambient Occlusion

U-V map construction

parametrization / unwrapping

Texturing

creation of different types of textures

Rigging / Skinning / Animation

make the mesh animated

LATER

LATER

LATER

LATER

Riferimenti

Documenti correlati

Metro Manila and the other five metropolitan areas of the country (Metro Davao, Metro Cagayan de Oro, Metro Angeles and Metro Iloilo-Guimaras) produce 80% of the Philippines’

THE …...EST OF THE FAMILY (complete with adjectives like sweet, kind, nice, cool, smart, strong, young, ). YOU ARE MY STAR YOU ARE MY SUN I LOVE YOU MUM, YOU ARE THE ONE

 The input pairs are grouped in partitions based on the integer value returned by a function applied on the key of each input pair.  This operation can be useful to improve

Esistono alcuni verbi in italiano in cui il pronome personale “si” sta per “l’un l’altro”, i quali in inglese possono però essere utilizzati anche

Hosts in the same domain  are close to each other in the lexicographically sorted order, and thus they get close docIDs..  Compress them via gap-encoding

A fruitful relation host- parasite is established when parasite is able to interfere with host immune response: it can modulate effector cells activity and defend

This assembly system is confined in a controlled environment and consists, at the moment, of an assembly station equipped with various grippers (on the basis of the assembly tasks

CHOOSE THE WORD THAT YOU THINK DOES NOT GO WITH THE OTHER THREE AND CIRCLE