39
UNIVERZA V MARIBORU FAKULTETA ZA ELEKTROTEHNIKO, RAČUNALNIŠTVO IN INFORMATIKO Ana Ambrož TEKSTURIRANJE NIZKOMNOGOKOTNIŠKIH MODELOV V BODYPAINT 3D Diplomsko delo Maribor, avgust 2018

TEKSTURIRANJE NIZKOMNOGOKOTNIŠKIH MODELOV V BODYPAINT … · BodyPaint 3D podpira tako veliko število standardnih grafičnih tablic kot tudi pritisk, nagib in smer pisala grafičnih

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

  • UNIVERZA V MARIBORU

    FAKULTETA ZA ELEKTROTEHNIKO,

    RAČUNALNIŠTVO IN INFORMATIKO

    Ana Ambrož

    TEKSTURIRANJE NIZKOMNOGOKOTNIŠKIH MODELOV V BODYPAINT 3D

    Diplomsko delo

    Maribor, avgust 2018

  • TEKSTURIRANJE NIZKOMNOGOKOTNIŠKIH MODELOV V

    BODYPAINT 3D

    Diplomsko delo

    Študentka: Ana Ambrož

    Študijski program: Univerzitetni študijski program

    Medijske komunikacije

    Smer: Vizualna komunikacija

    Mentorica: izr. prof. dr. Krista Rizman Žalik

  • I

    Teksturiranje nizkomnogokotniških modelov v BodyPaint 3D

    Ključne besede: BodyPaint 3D, teksture, 3D modeliranje

    UDK: 004.925(043.2)

    Povzetek

    Danes je zelo pomembno, da znamo učinkovito teksturirati 3D modele. Čeprav smo pogosto

    omejeni s številom mnogokotnikov, pa želimo 3D modele kakovostnega videza in z

    navideznimi detajli. Doseganje tega ni preprosto in zahteva smisel za umetniško

    oblikovanje. BodyPaint 3D omogoča teksturiranje modelov s pomočjo projekcijskega

    slikanja .

    Cilj diplomske naloge je ustvariti čimbolj kakovostne teksture, ki bodo nizkomnogokotniškim

    3D modelom dodale navidezne podrobnosti, ki so sicer zmodelirani samo na

    visokomnogokotniških modelih. Želimo dokazati, da se zgolj s teksturo na

    nizkomnogokotniškem modelu da ustvariti učinek visokomnogokotniškega modela.

  • II

    Texturing of low polygon models in BodyPaint 3D

    Key words: BodyPaint 3D, textures, 3D modeling

    UDK: 004.925(043.2)

    Abstract

    Nowadays, it is very important to know how to effectively texture 3D models. Although we

    are often limited with the number of polygons, we want 3D models to look high quality and

    have details. That process is not simple and requires artistic ability.

    BodyPaint 3D allows texturing with projection painting.

    The objective of the diploma is to create high quality textures that will make low polygon

    3D models appear as though they have the modeled details of the high polygon 3D models.

    We want to prove that texture can make even a low polygon model appear high polygon.

  • III

    KAZALO VSEBINE

    1. UVOD .............................................................................................................................. 1

    2. MODELIRANJE IN LOD .................................................................................................... 2

    3. TEKSTURE ....................................................................................................................... 4

    4. BODYPAINT 3D ............................................................................................................... 7

    4.1 Orodja ..................................................................................................................... 7

    4.2 Projekcijsko slikanje .............................................................................................. 10

    5. USTVARJANJE SCEN ...................................................................................................... 14

    5.1 Nizkomnogokotniška scena .................................................................................. 15

    5.2 Visokomnogokotniška scena ................................................................................. 19

    6. PRIMERJAVA SCEN IN NJUNE UPORABE ...................................................................... 23

    7. SKLEP ............................................................................................................................ 29

    8. VIRI IN LITERATURA ...................................................................................................... 30

  • IV

    KAZALO SLIK

    SLIKA 2.1 KOCKA Z OZNAČENIMI VOZLIŠČI, ROBOVI IN TRIKOTNIKI ..................................... 2

    SLIKA 2.2 PRIMER ŠTIRIH STOPENJ LOD [5] ........................................................................... 3

    SLIKA 3.1 PRIMER IZBIR ZA TEKSTURE V PROGRAMU CINEMA 4D ....................................... 4

    SLIKA 3.2 PRIMER »NORMAL MAP« TEKSTURE [8] ............................................................... 5

    SLIKA 3.3 SPLETNA STRAN ZA GENERIRANJE TEKSTUR [10] .................................................. 6

    SLIKA 4.1 ORODJE »PAINT SETUP WIZARD« .......................................................................... 7

    SLIKA 4.2 ORODJE ZA 3D SLIKANJE ........................................................................................ 8

    SLIKA 4.3 ORODJA ZA SLIKANJE IN ATRIBUTI ČOPIČA ........................................................... 9

    SLIKA 4.4 NASTAVITVE SLOJEV V BP 3D (LEVO) IN PS (DESNO) ........................................... 10

    SLIKA 4.5 OBRNJENA NORMALA, ORODJE »ALIGN NORMALS« (1) TER UPODOBITEV (2) .. 11

    SLIKA 4.6 KORAKI USTVARJANJA UV MAPE ......................................................................... 12

    SLIKA 4.7 ORODJA ZA PROJEKCIJSKO SLIKANJE ................................................................... 13

    SLIKA 4.8 PRIMERJAVA »3D PAINTING« (1) IN »PROJECTION PAINTING« (2) .................... 13

    SLIKA 5.1 NASTAVITVE UPODABLJANJA MODELOV IN SCEN .............................................. 14

    SLIKA 5.2 N-KOTNIK (1) IN NEPRAVILNO ODVITA TEKSTURA TAKŠNE POVRŠINE (2) ......... 15

    SLIKA 5.3 KONČNI MODEL HLODA S TEKSTURO .................................................................. 16

    SLIKA 5.4 PRIMERJAVA OBEH RAZLIČIC PRAPROTI .............................................................. 16

    SLIKA 5.5 VISOKO- IN NIZKOMNOGOKOTNIŠKI KAMEN S TEKSTURO ................................. 17

    SLIKA 5.6 SMREKA S TEKSTURO IN VEJE .............................................................................. 18

    SLIKA 5.7 SCENA S TRAVNIKOM IN HRIBČKOM, NASTAVITVE »CONSTANT SHADING« ..... 19

    SLIKA 5.8 MODEL BREZ TEKSTURE IN UPODOBLJEN S TEKSTURO. ..................................... 20

    SLIKA 5.9 VISOKOMNOGOKOTNIŠKI HLOD S TEKSTURO ..................................................... 21

    SLIKA 5.10 PRIKAZ TRAVE V VISOKOMNOGOKOTNIŠKI SCENI ............................................ 22

    SLIKA 5.11 LISTNATO DREVO IN UPODOBITEV .................................................................... 22

    SLIKA 6.1 KONČNA NIZKOMNOGOKOTNIŠKA SCENA .......................................................... 24

    SLIKA 6.2 KONČNA VISOKOMNOGOKOTNIŠKA SCENA ........................................................ 25

    SLIKA 6.3 ŠAHOVNICA OB SKRITJU OZADJA TEKSTURE ....................................................... 26

    SLIKA 6.4 OOBLETS (LEVO) IN LEAGUE OF LEGENDS (DESNO). [3][12] ............................... 27

  • V

    SLIKA 6.5 THE LAST BASTION, 2016. [9] .............................................................................. 28

    SLIKA 6.6 DEVIL MAY CRY 5 (2019) S HIPERREALISTIČNIMI, SKENIRANIMI MODELI [2] ..... 28

  • VI

    SEZNAM UPORABLJENIH KRATIC

    2D dvodimenzionalno

    3D trodimenzionalno

    4D štiridimenzionalno

    LOD raven podrobnosti (angl. level of detail)

    CPE centralna procesna enota oz. procesor (angl. CPU)

    GPE grafična procesna enota (angl. GPU)

    BP 3D BodyPaint 3D

    PS Photoshop

  • 1

    1. UVOD

    Dandanes je na trgu vedno več manj zmogljivih prenosnih naprav kot so tablični računalniki

    in pametni telefoni, za katere pa se neprestano razvijajo aplikacije in igre s 3D modeli. Za

    hitro delovanje teh naprav in nemoteno delovanje iger in aplikacij smo zelo omejeni s

    številom mnogokotnikov 3D modelov, kljub temu pa želimo, da naši 3D modeli izgledajo

    kvalitetno in lepo. Zato je vedno bolj pomembno, da znamo ustvariti in teksturirati

    kakovostne nizkomnogokotniške 3D modele. Za oblikovanje takšnih tekstur potrebujemo

    znanje s področja 3D modeliranja, teksturiranja in pa nekaj umetniške žilice.

    Namen diplomskega dela je ustvariti čimbolj kakovostne teksture, ki bodo

    nizkomnogokotniškim 3D modelom dodale navidezne detajle, ki pa sicer niso zmodelirani

    in so prisotni samo na visokomnogokotniški modelih. Pokazati želimo, da lahko

    nizkomnogokotniški 3D model izgleda natančno oblikovan in detajliran s primerno

    teksturo. Naš namen je tudi pokazati uporabo BodyPaint 3D prostoročnega risanja

    neposredno na 3D model v prostoru.

    Najprej bomo predstavili 3D modeliranje in nivoje podrobnosti modelov, nato bomo opisali

    teksture in njihove lastnosti, si ogledali orodja v programu BodyPaint 3D ter pokazali

    postopek odvijanja modelov in slikanja tekstur na modele. Opisali bomo tudi postopek

    ustvarjanja dveh scen; nizkomnogokotniške in visokomnogokotniške, ter primerjali obe

    sceni in njuno uporabo v praksi.

    Predpostavljamo, da bo modeliranje nizkomnogokotniških modelov zahtevalo bistveno

    manj časa kot modeliranje visokomnogokotniških modelov, ampak bo samo teksturiranje

    trajalo dlje pri nizkomnogokotniških modelih kot pri visokomnogokotniških modelih.

    Predpostavljamo tudi, da se bo potrdila ugotovitev, da se nizkomnogokotniški modeli

    uporabljajo večinoma v video igrah, visokomnogokotniški modeli pa v animiranih filmih.

  • 2

    2. MODELIRANJE IN LOD

    3D modeliranje (trodimenzionalno modeliranje) je postopek računalniškega ustvarjanja

    površin in objektov, tako živih kot neživih, v treh dimenzijah s pomočjo računalniških

    programov. Nastale 3D modele lahko tudi upodabljamo in jih tako prikažemo v

    dvodimenzionalni obliki. [1]

    Slika 2.1 Kocka z označenimi vozlišči, robovi in trikotniki

    3D geometrijo sestavljajo vozlišča, robovi, trikotniki in mnogokotniki (slika 2.1). Vsakega

    izmed teh elementov lahko manipuliramo za ustvarjanje površine 3D modela. Vozlišča

    sestavljajo osnovno strukturo 3D objektov in so posamezne točke, ki vsebujejo informacije

    o poziciji v 3D prostoru. Robovi so povezave med dvema vozliščema. Trikotniki definirajo

    obliko vseh 3D modelov in nastanejo, ko imajo tri vozlišča med seboj povezane robove.

    Mnogokotnik ali poligon pravimo površinam med štirimi vozlišči ali robovi. Če ima

    mnogokotnik več kot štiri robove, mu pravimo n-kotnik. Mnogokotniki so sestavljeni iz

    trikotnikov. [4]

  • 3

    Ko ustvarjamo 3D modele, jih ustvarjamo iz trikotnikov ali mnogokotnikov. Modele lahko

    ustvarjamo tudi iz kombinacije trikotnikov in mnogokotnikov, vendar so v programih za 3D

    modeliranje mnogokotniki vedno razdeljeni na trikotnike, četudi jih med modeliranjem ne

    vidimo vedno. Natančneje je, če kompleksnost 3D modelov merimo v trikotnikih kot v

    mnogokotnikih. [4]

    LOD (angl. Level of Detail) določa raven podrobnosti 3D modela. LOD različica 3D modela

    je model, ki ima manjše število mnogokotnikov in je manj kompleksna kot originalen model.

    Dandanes se uporablja v skoraj vsaki video igri. Pogosto ima LOD model tudi manjšo

    teksturo in enostavnejši senčilnik (angl. shader)1. LOD model po navadi ustvarimo iz

    visokomnogokotniškega modela. Pri ustvarjanju LOD modela moramo biti pozorni, da kljub

    zmanjševanju števila mnogokotnikov ohranimo zunanjo obliko 3D modela in silhueta

    modela ostane čimbolj podobna prvotni (slika 2.2). [4]

    Slika 2.2 Primer štirih stopenj LOD [5]

    LOD so v video igrah pomembni za zagotavljanje optimalnega števila sličic za sekundo.

    Objekti dlje od igralca oziroma kamere imajo manjše število mnogokotnikov. Bližje kot smo

    objektu, več bo imel mnogokotnikov. Modeli z oddaljenostjo oziroma približevanjem vidno

    preskočijo v kakovosti. Kakovosten LOD ima gladek in čim manj opazen prehod med modeli.

    [4]

    1 Senčilnik je skupek navodil za GPE, ki programu pove, kako naj upodablja površine modela. Vsebuje podatke o vseh teksturah, ki smo jih dodali 3D objektu in mu daje končni videz materiala. [4]

  • 4

    3. TEKSTURE

    Teksture ali teksturne mape so dvodimenzionalne slike, ki so projicirane na modele ali ovite

    okoli 3D modelov. [4]

    Namen tekstur je, da 3D objektu določimo osnovno barvo, površino ali teksturo in vizualno

    prikažemo dodatne podrobnosti, ki niso modelirane z mnogokotniki. Teksture lahko

    izrežemo iz fotografij, jih ročno naslikamo na teksturno mapo ali neposredno na 3D model,

    lahko pa tehnike tudi kombiniramo. [4]

    Slika 3.1 Primer izbir za teksture v programu Cinema 4D

    Teksturam lahko dodajamo in spreminjamo lastnosti. Lastnosti se med programi za 3D

    modeliranje in animacijo razlikujejo (slika 3.1), najpogostejši tipi lastnosti tekstur pa se

    pogostokrat ponavljajo in so si med programi podobni. Cinema 4D ima naslednje izbire.

  • 5

    Izbira »color« določa osnovno barvo, ki jo določimo 3D modelu. »Diffuse map« modelu

    definira osnovno barvno površino in podrobnosti. Dobra osnovna tekstura je osvetljena

    samo z ambientno osvetlitvijo, kot da je iz vseh strani enakomerno osvetljena. Po pravem

    tudi nima senc in osvetlitve. [4]

    Izbira »bump« (grbina) omogoča nastavitev teksture z izboklinami (angl. bump map), ki je

    črno-bela slika, ki 3D programu pove, kateri deli teksture so osvetljeni in kateri zasenčeni.

    Teksturiranje z izboklinami je v veliki večini zamenjala naprednejša tehnika prikazovanja

    podrobnosti na modelih, teksture z normalami. [4]

    Izbira »normal« omogoča nastavitve RGB teksture z normalami, ki objektu daje izgled

    navideznih podrobnosti s pomočjo barvnih kanalov, ki vsebujejo podatke o smereh normal

    v 3D prostoru. Teksture z normalami lahko ustvarimo iz črno-belih tekstur z izboklinami ali

    pa jih generiramo iz 3D modelov (slika 3.2). [4]

    Slika 3.2 Primer »normal map« teksture [8]

    Za prikazovanje svetlečih površin uporabljamo izbiro »reflectance«, ki s pomočjo črno-bele

    slike modelu določi odsevnost. Beli deli teksture bodo odsevni, črni pa ne. [4]

    Izbira »alpha« omogoči alfa preslikavo teksture, ki je prav tako črno-bela tekstura, ki pa

    kontrolira prosojnost površine. Črne slikovne točke definirajo prosojne dele površine, bele

    pa vidne. Alfa preslikava se najpogosteje uporablja za teksturiranje listja, oblačil, stekla,

    delcev ipd. [4]

  • 6

    Teksture so lahko ponavljajoče (angl. tiles), unikatne (angl. unique) ali kombinacija obeh.

    [4]

    Teksture lahko ustvarimo s pomočjo različnih spletnih strani ali računalniških programov,

    ki iz osnovne teksture ustvarijo vse različne lastnosti tekstur. Omogočajo tudi, da sami

    urejamo parametre ustvarjenih tekstur preden jih izvozimo (slika 3.3).

    Slika 3.3 Spletna stran za generiranje tekstur [10]

    Od posameznega stila modeliranja in teksturiranja ter namena uporabe modela je tudi

    odvisno, katere lastnosti bomo teksturam dodali. Pri teksturiranju nizkomnogokotniških

    modelov je pogosto dovolj, če modelu dodamo ali narišemo samo osnovno teksturo in ji

    dodamo alfa teksturo za prosojnost.

    Pri 3D modelih abstraktnega stika ali fantazijskih tem, ki so zelo pogoste pri mobilnih

    aplikacijah, animacijah in video igrah, tekstur v številnih primerih ne moremo najti in vzeti

    iz realnega življenja. Takšne teksture si moramo biti pripravljeni znati predstavljani in

    ustvariti sami. To največkrat storimo s prostoročnim risanjem tekstur ali pa s pomočjo foto-

    manipulacije.

  • 7

    4. BODYPAINT 3D

    MAXON BodyPaint 3D je orodje znotraj programa Cinema 4D, ki se uporablja za ustvarjanje

    kakovostnih tekstur 3D modelov. Omogoča nam, da hitro in učinkovito slikamo podrobne

    teksture na UV2 mapo ali pa neposredno na 3D objekte. [6]

    BodyPaint 3D podpira tako veliko število standardnih grafičnih tablic kot tudi pritisk, nagib

    in smer pisala grafičnih tablic. Do BodyPaint 3D dostopamo tako, da našo postavitev

    spremenimo v pogled za 3D slikanje (BP - 3D Paint) ali v postavitev za UV urejanje (BP - UV

    Edit). [7] Ko smo v orodju BodyPaint, se naša postavitev spremeni in na voljo so nam

    različna orodja.

    4.1 Orodja

    Najpomembnejše za začetek teksturiranja je orodje »Paint Setup Wizard«, saj nam omogoči

    ustvarjanje UV mape modela, da lahko pričnemo nanjo slikati našo teksturo (slika 4.1).

    Slika 4.1 Orodje »Paint Setup Wizard«

    Če želimo našemu liku ali objektu dodati teksturo, moramo izbrani 3D model prvo odviti

    (angl. unwrap) s čim manj šivi in prelomi. Ročno odvijanje 3D modelov je lahko zelo

    zahteven in dolgotrajen proces, ki pogosto pokaže dosti napak na našem 3D modelu. Proces

    ni enostaven in se ga je treba dobro naučiti. Orodje »Paint Setup Wizard« nam to delo

    olajša, saj nam izbrani 3D model samodejno odvije, kar se da uspešno.

    2 Če ima določen objekt UV koordinate, je vsakemu mnogokotniku objekta določen UV mnogokotnik. UV mnogokotniki imajo svoje lastne koordinate na bitni sliki in skupaj tvorijo UV mrežo. [7]

  • 8

    Orodja za UV preslikavo nam pomagajo odviti 3D modele in jih pretvoriti v ploščate

    teksture, kar nam omogoča, da v orodju BodyPaint slikamo naravnost na to teksturo, ki se

    nato ovije nazaj na naš model. [13]

    Slika 4.2 Orodje za 3D slikanje

    Ko odvijemo model so nam na voljo tudi orodja za 3D slikanje. Ob kliku na »3D Painting

    Mode« lahko izberemo orodja na desni, ki so namenjena različnim načinom 3D slikanja

    (slika 4.2).

    Na levi strani pogleda imamo podobna orodja kot jih navadno najdemo v programih za

    digitalno risanje ali urejanje slik (čopič, radirka, napis, kapalka, čarobna palica za selekcijo

    itd.). To so orodja za slikanje tekstur (slika 4.3).

    Najpogosteje se za slikanje tekstur uporablja orodje čopič (angl. brush) in radirka (angl.

    eraser). Ob kliku na čopič se odprejo atributi orodja, ki vsebujejo številne nastavitve za

    čopič. Čopiču lahko spreminjamo velikost (angl. size), pritisk (angl. pressure), trdoto (angl.

    hardness), razmik (angl. spacing), stisnjenost oblike čopiča (angl. squeeze) in rotacijo čopiča

    glede na rotacijo tabličnega pisala (angl. rotation). Ob kliku na sliko trenutnega čopiča se

    nam odpre seznam raznovrstnih čopičev, med katerimi lahko izbiramo. Na voljo je velika

    izbira pogosto uporabnih čopičev za slikanje tekstur kot so umazanije, trava, packe, šivi in

    podobne podrobnosti, ki jih morda potrebujemo na naši teksturi. Radirka ima enake izbire

    kot čopič (slika 4.3).

  • 9

    Slika 4.3 Orodja za slikanje in atributi čopiča

    Ko izberemo naš objekt in želimo pričeti slikati nanj, imamo na voljo podobne nastavitve za

    izbiro ozadja teksture in dodajanja novih slojev (angl. layer) kot pri drugih programih za

    slikanje (npr. Adobe Photoshop)(slika 4.4). Izbiramo med številnimi načini mešanja (angl.

    blend modes), ki omogočajo določitev končne barve teksture. Izbrani način bo imel vpliv

    na vse plasti pod njim. Posameznim slojem lahko tudi spreminjamo moč izbranega učinka

    med 0% in 100% (slika 4.4).[7]

  • 10

    Slika 4.4 Nastavitve slojev v BP 3D (levo) in PS (desno)

    4.2 Projekcijsko slikanje

    Projekcijsko slikanje v orodju BodyPaint neposredno za 3D modele nam omogoča, da v

    realnem času vidimo in preizkusimo, kako se tekstura prilagaja našemu objektu, kako se

    različne teksturne mape odzivajo na svetlobne vire in kako se transparentne in bleščeče

    teksture odzivajo na okolje. Prihranimo čas, ki bi ga sicer porabili za odvijanje tekstur in

    prehajanjem med programi. [6]

  • 11

    Dobro je, da ob koncu modeliranja preverimo, ali so normale3 na ploskvah našega modela

    poravnane. Da lahko normale ploskev vidimo, moramo pod nastavitvami pogleda obkljukati

    polje normale mnogokotnikov – »Polygon Normals«. Če opazimo, da ima model nepravilno

    usmerjene normale jih poravnamo tako, da označimo vse ploskve modela in izberemo

    izbiro poravnavanje normale – »Align Normals« (slika 4.5).

    Slika 4.5 Obrnjena normala, orodje »Align Normals« (1) ter upodobitev (2)

    S tem se prepričamo, da bodo naše ploskve korektno usmerjene in ne bo prišlo do

    problemov ali napačnega senčenja in osvetlitve modelov in naše teksture. Izognemo se tudi

    problemov pri projekcijskem slikanju na morebitne površine z obrnjenimi normalami.

    Ko model dokončamo in ga izberemo, orodja za projekcijsko slikanje še ne moremo takoj

    uporabiti. Da lahko pričnemo z uporabo orodja, moramo izbranemu 3D modelu ali delu 3D

    modela ustvariti UV mapo z orodjem »Paint Setup Wizard« (slika 4.1). Ob kliku nanj se nam

    odpre pogovorno okno z nastavitvami (slika 4.6).

    3 Normala je navidezni vektor, ki je usmerjen iz središča ploskve in pove katera stran ploskve je sprednja in katera zadnja. Cinema 4D ne zna vedno ločiti zunanje in notranje strani ploskve in lahko napačno usmeri normale ploskev. Problem pogosto nastane pri kroglah, ki imajo samo eno površino z zunanjo in notranjo stranjo. To lahko povzroči nepravilno projekcijo tekstur in glajenje robov (slika 4.5). [7][11]

  • 12

    Slika 4.6 Koraki ustvarjanja UV mape

    Okno s prvim korakom je namenjeno izbiri modela ali delu modela, ki ga želimo odviti in

    nanj slikati. Modele, ki jih ne želimo vključiti, odkljukamo. Drugi korak vsebuje nastavitve

    za odvijanje 3D modelov. Za naše namene nastavitev ni potrebno spreminjati. Pri tretjem

    koraku izberemo velikost ustvarjene teksture in lastnosti, ki jih želimo dodati kot

    posamezne kanale. Za slikanje tekstur je zadostovala izbira barve in alfa mape za

    prosojnost. Standardne velikosti tekstur so 512x512, 1024x1024 in 2048x2048 pikslov. Pri

    vseh objektih (razen nizkomnogokotniškega travnika, ki smo mu določili maksimalno

    velikost 4096x4096) smo določili maksimalno velikost 2048x2048, saj jo lahko še vedno

    zmanjšamo, če je to potrebno.

    Ko je model odvit imamo dva zavihka za pogled, »View« in »Texture«. Prvi zavihek pokaže

    3D pogled modela, drugi pa samo UV mapo. S klikom na »3D Painting Mode« lahko

    pričnemo slikati na modele.

    Pri izbiri načina 3D slikanje – »3D Painting Mode« (Slika 4.2) lahko slikamo na modele,

    vendar gre za slikanje na UV mapo modela, ki upošteva šive teksture in pri šivih ne omogoča

    slikanja preko robov, saj se čopič premika po UV mapi in ne po površini modela (slika 4.8).

    S klikom na gumb »Projection Painting« omogočimo projekcijsko slikanje neposredno na

    model kot ga vidimo v 3D okolju (slika 4.7).

  • 13

    Slika 4.7 Orodja za projekcijsko slikanje

    Slikanje je neprekinjeno in se nanaša na teksturo neposredno iz našega pogleda. Pozorni

    moramo biti na naš pogled, predvsem pri izbočenih ali dvignjenih površinah, saj slikamo iz

    našega pogleda v prostoru. Ko se obračamo po sceni lahko vidimo, da smo ponekod izpustili

    dele scene, ki zaradi usmerjenosti pogleda niso bili vidni (slika 4.8).

    Slika 4.8 Primerjava »3D Painting« (1) in »Projection Painting« (2)

    Med spreminjanjem modela in orientiranjem po sceni ima naš 3D model slabšo kakovost

    teksture, da ne preobremeni CPE. S klikom na gumb »UV Polygons« lahko vidimo, kako naš

    model dejansko izgleda v sceni in kakšna bo tekstura, ko bo model upodobljen (slika 5.3).

  • 14

    5. USTVARJANJE SCEN

    Za izdelavo scen smo potrebovali dostop do programov Cinema 4D in BodyPaint 3D, kar

    nam je omogočila licence za akademske namene 2017/2018, do katere imamo dostop

    študenti Fakultete za elektrotehniko, računalništvo in informatiko. Pri ustvarjanju tekstur

    nizkomnogokotniških modelov smo potrebovali tudi grafično tablico (Wacom Intuos Pro),

    saj smo teksture slikali prostoročno.

    Pred začetkom izdelave 3D modelov smo izdelali osnovne koncepte posameznih objektov,

    ki so v scenah. Preiskali smo različne modele v video igrah in fotografije na spletu ter izdelali

    lasten koncept za sceno, ki smo jo kasneje pričeli modelirati in teksturirati. Izbrali smo

    sceno, ki prikazuje delček narave. Obe sceni vsebujeta del zemlje, ki je na vrhu prekrit s

    travo, spodaj pa vidimo zemljo. Obe sceni vsebujeta tudi eno iglasto drevo iz realnega sveta

    in eno bolj abstraktno listnato drevo, travo, podrt hlod, kamenje ter praproti. To sceno smo

    izbrali zato, ker je nekako univerzalna (narava) in se zelo pogosto uporablja v vseh vrstah

    medijev (animirani filmi, mobilne igre, računalniške igre, aplikacije, visokokakovostne

    upodobljene slike).

    Za konsistentnost pri času upodabljanja smo uporabljali pri vseh 3D modelih in obeh

    združenih scenah enako osvetlitev (samo nebo »Physical Sky«) in nastavitve upodabljanja,

    in sicer naslednje (slika 5.1).

    Slika 5.1 Nastavitve upodabljanja modelov in scen

  • 15

    5.1 Nizkomnogokotniška scena

    Pri nizkomnogokotniški sceni smo začeli z modeliranjem hloda. Izbrali smo si osnovno

    obliko cilinder in iz nje oblikovali osnovni hlod. Izbrani cilinder je imel osem rotacijskih

    segmentov (angl. rotation segments) in pet višinskih segmentov (angl. height segments). Ti

    parametri so zadostovali za nizkomnogokotniški model, ki ima prepoznavno obliko kljub

    majhnemu številu mnogokotnikov.

    Hlod smo nato pretvorili v obliko za urejanje, ga oblikovali v željeno obliko in mu dodali eno

    vejo. Pred odvijanjem hloda smo vse mnogokotnike modela spremenili v trikotnike ali

    štirikotnike, da smo se izognili problemu pri odvijanju modelov. Če so na našem modelu n-

    kotniške ploskve, BodyPaint 3D ne prepozna oblike ploskve in je ne zna odviti (slika 5.2).

    Slika 5.2 N-kotnik (1) in nepravilno odvita tekstura takšne površine (2)

    Model smo odvili in nanj začeli slikati teksturo. Končni model hloda je imel 121

    mnogokotnikov (slika 5.3). Modeliranje je trajalo 30 minut, slikanje teksture pa okoli 3 ure.

  • 16

    Slika 5.3 Končni model hloda s teksturo

    Nizkomnogokotniški praprot smo oblikovali tako, da smo na iz ploskve oblikovani obliki iz

    osmih mnogokotnikov, ročno naslikali teksturo praproti s pomočjo barvnega kanala in alfa

    kanala za prosojnost (slika 5.4). Modeliranje je trajalo 10 minut, teksturiranje pa 4 ure.

    Slika 5.4 Primerjava obeh različic praproti

    Travo smo naredili na enak način s štirimi ploskvami. Teksture smo risali 2 uri (slika 6.1).

  • 17

    Kamen smo oblikovali iz pet-kotnega cilindra z dvema višinskima segmentoma. Model je bil

    oblikovan iz 17-ih mnogokotnikov. Modeliranje je trajalo 2 minuti, teksturo pa smo risali

    20 minut (slika 5.5).

    Slika 5.5 Visoko- in nizkomnogokotniški kamen s teksturo

    Iglastega drevesa smo se lotili tako, da smo iz pet-kotnega cilindra oblikovali steblo, veje z

    iglicami pa smo narisali pa ploskev iz šestih mnogokotnikov. Ustvarjeno ročno naslikano

    vejo smo nato klonirali in ji ustvarili 5 kopij, ki smo jih v krogu razvrstili okoli debla. To smo

    ponovili petkrat vzdolž debla drevesa, vendar smo vsako skupino vej nekoliko spremenili v

    velikosti, usmerjenosti in razporeditvi. Risanje teksture drevesa in vej je trajalo najdlje časa,

    in sicer 4 ure, modeliranje pa le okoli 20 minut. To drevo nam je pri teksturiranju vzelo

    največ časa v primerjavi z vsemi ostalimi teksturami, saj smo morali na en model narisati

    veliko število vej in posameznih iglic, še več časa pa je vzelo risanje alfa mape, saj je bilo

    potrebno podobno kot pri praproti obrisati vsako posamezno iglico. Skupaj je imela scena

    139 mnogokotnikov (slika 5.6).

    Listnato drevo smo naredili na enak način kot hlod, vendar je samo modeliranje drevesa

    trajalo zaradi zavite oblike okoli eno uro časa (slika 6.1). Teksturo krošnje na krogli smo

    risali okoli dve uri, debla pa eno uro. Kroglo smo nato pomnožili in ustvarili še ostali dve

    krogli krošnje. Drevo je imelo na koncu 408 mnogokotnikov.

  • 18

    Slika 5.6 Smreka s teksturo in veje

    Travnik, ki je osnova scene za ostale modele, je na koncu vzel največ časa. Veliko časa smo

    porabili za ustvarjanje alfa kanala za travo, ki visi preko roba in ki visi iz hribčka. Zemljo smo

    modelirali 10 minut, teksturirali pa okoli 30 minut. Ustvarjen model zemlje smo nato

    podvojili in obrnili za 180°, da smo dobili hribček zemlje. Za teksturiranje trave smo porabili

    4 ure, ustvarjena pa je bila iz osnovne oblike diska in nismo imeli dela z modeliranjem. V

    sceni je bilo na koncu 412 mnogokotnikov travnika s hribčkom (slika 5.7). Po travniku smo

    nato razporedili še posamezne trave, ki smo jih prej omenili in jih uporabili namesto

    posameznih travic.

  • 19

    Slika 5.7 Scena s travnikom in hribčkom, nastavitve »Constant Shading«

    5.2 Visokomnogokotniška scena

    Pri ustvarjanju visokomnogokotniške scene smo za začetek preučili fotografije dreves, listja,

    vejevja, trav in kamenja, da smo si lažje predstavljali, kako bo naša scena izgledala. Preučili

    smo tudi 3D modele video iger in animacij z visokomnogokotniškimi modeli.

    Začeli smo z modeliranjem visokomnogokotniške scene, saj je za ustvarjanje

    nizkomnogokotniške scene lažje ustvariti prvo visokomnogokotniški, bolj realistični, 3D

    model in imeti tako neposredno referenco za izgled nizkomnogokotniškega 3D modela.

    Modeliranje iglastega drevesa smo se lotili v treh delih. Modeliranje smo ločili na deblo,

    veje in vejice z iglicami.

    Deblo smo ustvarili z oblikovanjem krivulje osnovne oblike debla (angl. spline) ter z

    generatorjem »Sweep Object« ustvarili enostavno deblo. Za obliko debla smo potrebovali

  • 20

    tudi n-kotnik, v našem primeru deset-kotnik. Število kotov izbranega n-kotnika določa

    število stranic, ki jih bo imelo naše deblo. Izbrali smo jih deset, saj je pri desetih segmentih

    deblo izgledalo že gladko in na prvi pogled ni bilo opaznih ostrih robov. Generatorju smo

    parameter »End Scale« določili na 9%, kar je deblo na koncu krivulje zožilo na 9% osnovne

    velikosti.

    Deblo smo podvojili in mu spremenili obliko krivulje ter iz njega oblikovali osnovno vejo, na

    katero smo dodali manjše vejice na enak način. Ko smo zaključili z oblikovanjem veje, smo

    jo z orodjem »Array Object« pomnožili na štiri dodatne kopije, to ponovili petkrat vzdolž

    debla in jih razporedili po deblu. Vejam smo dodali lase z orodjem »Hair Tool« in lasem

    dodali teksturo iglaste veje. Tako deblu kot vejam in iglicam smo dodali tudi preslikavo z

    normalami in izboklinami za čimbolj kakovosten izgled teksture. Končni model je imel

    12501 mnogokotnikov. Drevo smo modelirali približno eno uro. Teksturo smo naredili v

    nekaj minutah, saj smo samo izbrali že obstoječo teksturo in jo prilagodili velikosti ploskve

    lasa oz. debla in vej. Enako velja pri ostalih visokomnogokotniških modelih (slika 5.8).

    Slika 5.8 Model brez teksture in upodobljen s teksturo.

  • 21

    Praprot smo oblikovali iz ploščate mreže iz 100 mnogokotnikov, na katero smo dodali

    teksturo fotografije praproti (slika 5.4). Ploskev smo oblikovali okoli 15 minut.

    Visokomnogokotniški hlod smo zmodelirali tako, da smo uporabili orodja za kiparjenje

    (angl. sculpt). Nizkomnogokotniškemu modelu hloda smo povečali število mnogokotnikov

    štirikrat in ga pričeli oblikovati s pomočjo orodij za kiparjenje. Model je imel na koncu 30080

    mnogokotnikov (slika 5.2.2) in modeliranje je trajalo okoli eno uro.

    Slika 5.9 Visokomnogokotniški hlod s teksturo

    Model visokomnogokotniškega kamna smo oblikovali na podoben način, le da smo mu

    število mnogokotnikov povečali iz 17 na 400 z generatorjem »Subdivision Surface«, ga z

    orodjem »Brush« površinsko preoblikovali in mu dodali teksturo kamna (slika 5.5).

    Modeliranje je trajalo okoli 15 minut.

    Travnik in zemljo smo oblikovali iz diska, razdeljenega na zgornjo in spodnjo plast, ki sta

    skupaj imeli 2699 mnogokotnikov. Dodali smo tudi hribček, ki je imel 1710 mnogokotnikov.

    Zgornji površini smo dodali osnovno teksturo trave ter ji dodali lase z orodjem »Hair Tool«.

    V sceno smo dodali 20719 las na ploskvi trave in še dodatnih 20180 las na hribčku. Lasje so

    imeli po 8 segmentov in dolgi med 27 in 29 centimetri. Za željeno obliko trave smo lase še

    z orodjem »Brush« še počesali. Oblikovanje in česanje las je trajalo okoli pol ure (slika 5.10).

  • 22

    Slika 5.10 Prikaz trave v visokomnogokotniški sceni

    Visokomnogokotniško listnato drevo smo prav tako kot deblo oblikovali s kiparjenjem, da

    smo dobili željeno zavito obliko. Krošnjo smo oblikovali iz treh krogel tipa »Hexahedron«

    ter jih z orodjem »Brush« preoblikovali v nepravilno obliko. Posameznim kroglam smo

    dodali 20000 las s teksturo zelenega lista. Lase smo prav tako kot pri travi ročno počesali

    navzgor, da smo dosegli videz bolj abstraktnega drevesa. Drevo je imelo 14912

    mnogokotnikov pri deblu in 1152 pri krošnji (slika 5.11). Modeliranje nam je vzelo 2 uri,

    teksturiranje pa 20 minut.

    Slika 5.11 Listnato drevo in upodobitev

  • 23

    6. PRIMERJAVA SCEN IN NJUNE UPORABE

    Skupaj smo za modeliranje nizkomnogokotniške scene porabili 80 minut in za teksturiranje

    21 ur (slika 6.1). Za visokomnogokotniško sceno smo porabili 5 ur za modeliranje in 1 uro

    za teksturiranje (slika 6.2).

    Obe sceni smo upodabljali le z virom svetlobe nebo – »physical sky« in enakimi

    nastavitvami. Nizkomnogokotniško sceno smo upodabljali 20 sekund,

    visokomnogokotniško pa 8 minut in 37 sekund.

    Kljub naprednejšim nastavitvam upodabljanja nizkomnogokotniška scena izgleda bistveno

    lepša preden jo upodobimo v pogledu »Constant Shading«. Nizkomnogokotniški modeli

    najbolj pridejo do izraza, če izstopa samo njihova narisana tekstura in njihova osnovna

    oblika ni zasenčena.

    Visokomnogokotniška scena pride najbolj do izraza, ko dodamo teksturam preslikave z

    normalami – »normal map«, alfa preslikave, preslikave z izboklinami – »bump map«,

    preslikave s premikanjem – »displacement map« in odbojnost – »reflectance«, če le imamo

    na razpolago vse te izbire.

  • 24

    Slika 6.1 Končna nizkomnogokotniška scena

  • 25

    Slika 6.2 Končna visokomnogokotniška scena

    Veliko časa bi prihranili, če bi pri ustvarjanju teksture UV mape modela lahko določili

    prosojno ozadje. Če ozadje teksture skrijemo, je na mestu brez teksture šahovnica. Če

    želimo prosojno ozadje, moramo na alfa kanal ali na masko prosojne dele teksture narisati

    ročno. To lahko pri teksturah z veliko podrobnosti vzame veliko časa, tudi nekaj ur (slika

    6.3).

  • 26

    Slika 6.3 Šahovnica ob skritju ozadja teksture

    Pri modeliranju iglastega drevesa smo morali veje drevesa na novo zmodelirati in število

    las in segmentov posameznega lasa zmanjšati na 1, saj je upodabljanje scene pri treh ali več

    segmentih las vzelo enostavno preveč časa.

    Program je pogosto deloval zelo počasi, ker za upodabljanje Cinema 4D uporablja procesor

    (CPE) in ne grafičnega procesorja (GPE). Kljub temu, da smo uporabljali priporočeno

    konfiguracijo računalnika (Intel 64-bit CPU, 8 GB RAM) je večkrat prišlo do težav pri delu s

    Cinemo 4D. Program se je zapiral in zaradi velikih zahtev po procesiranju v CPE in hitrem

    pomnilniku pogosto povzročal počasno delovanje računalnika in programa. Morda bi bilo

    upodabljanje boljše v programih, ki za upodabljanje uporabljajo GPE (3ds Max, odprtokodni

    Blender, itd.).

    Veliko časa pri modeliranju in teksturiranju visokomnogokotniških 3D modelov bi lahko

    prihranili z vtičnikom Forester za Cinema 3D razvijalca 3DQUAKERS, ki postopkovno

    omogoča hitro izdelavo različnih vrst dreves, rastlin, kamnov in terena.

  • 27

    Nizkomnogokotniški 3D modeli z ročno naslikanimi teksturami se pogosto pojavljajo v

    mobilnih igrah in aplikacijah. Mobilni telefoni in tablični računalniki imajo vedno boljše

    specifikacije in večje sposobnosti, vendar morajo razvijalci upoštevati gladko delovanje na

    vseh napravah. Razvijalci pogosto izberejo takšen način 3D modeliranja in teksturiranja, saj

    kljub majhnemu številu mnogokotnikov igre in aplikacije izgledajo vizualno privlačno in

    omogočajo gladko, nemoteno delovanje na čim večjem številu naprav in posledično

    doseganje čim večjega števila uporabnikov.

    Nizkomnogokotniški modeli se zadnje čase uporabljajo tudi zaradi stila. Ta stil je postal

    popularen tako v mobilnih igrah (npr. Subway Surfers) kot tudi v animacijah in računalniških

    igrah zaradi svojega privlačnega stila, ki je pogosto minimalistično teksturiran (npr.

    Ooblets)(slika 6.4) ali podoben stilu risanih filmov. V zadnjih nekaj letih je veliko video iger

    s takšnim stilom postalo zelo popularnih (npr. League of Legends, Fortnite, itd.)(slika6.4) in

    veliko razvijalcev sledi trendom in posledično popularizira stil.

    Slika 6.4 Ooblets (levo) in League of Legends (desno). [3][12]

    Visokomnogokotniški 3D modeli z natančnimi teksturami so najpogosteje uporabljeni v 3D

    animiranih kratkih filmih (Slika 6.5), filmih podjetij Pixar in Dreamworks ipd.

  • 28

    Slika 6.5 The Last Bastion, 2016. [9]

    Na začetku naprave niso bile dovolj zmogljive, da bi prenesle gladko delovanje video iger in

    aplikacij z zelo natančnimi in zahtevnimi modeli, danes pa temu ni več tako. Veliko več

    razvijalcev strmi k visokomnogokotniškem hiperrealizmu in moderne konzole kot so Sony

    PlayStation 4 in Microsoft Xbox One jim to omogočajo. Modeli so zelo natančni, teksture

    oseb, oblačil in predmetov so ponekod celo skenirane iz resničnega življenja za kar se da

    realistični videz (slika 6.6).

    Slika 6.6 Devil May Cry 5 (2019) s hiperrealističnimi, skeniranimi modeli [2]

  • 29

    7. SKLEP

    V diplomskem delu smo preučili izdelavo in uporabo iste scene z nizkomnogokotniškimi in

    visokomnogokotniškimi modeli. Ugotovili smo, da nam je kljub veliko daljšem času izdelave

    bolj všeč nizkomnogokotniška scena.

    Potrdimo lahko predpostavko, da smo pri modeliraju nizkomnogokotniških modelov

    porabili bistveno manj časa in da smo za teksturiranje nizkomnogokotniških modelov

    uporabili dlje časa kot pri visokomnogokotniški sceni. Modeliranje nizkomnogokotniških

    scen je bilo hitro in enostavno, visokomnogokotniške scene pa so vzele dlje časa. Pri

    visokomnogokotniških modelih smo vse teksture imeli na razpolago na spletu, zato smo jih

    samo izbrali.

    Delno lahko potrdimo tudi predpostavko, da se nizkomnogokotniški modeli uporabljajo

    večinoma v igrah, visokomnogokotniški pa v animiranih filmih in sicer zato, ker se že danes

    in se bodo tudi v prihodnosti v video igrah vedno več uporabljali visokomnogokotniški

    modeli.

    Za ustvarjanje nizkomnogokotniških modelov in tekstur je orodje BodyPaint 3D zelo

    učinkovito, saj smo z njim zlahka dosegli zastavljeni cilj ustvarjanja privlačnih tekstur.

    Ugotovili smo, da bi predvsem za hitrejše upodabljanje visokomnogokotniških modelov bilo

    bolje uporabljati druge programe kot so Autodesk 3ds Max ali odprtokodni program

    Blender, ki za upodabljanje scen in animacij uporabljajo grafični procesor.

  • 30

    8. VIRI IN LITERATURA

    [1] 3D modeling, 2018. Dostopno na: https://en.wikipedia.org/wiki/3D_modeling

    [13. 7. 2018].

    [2] Araujo, Y. E3 2018: Announcing Devil May Cry 5, coming to Xbox One, PS4 and PC in

    Spring 2019, 2018. Dostopno na:

    http://www.capcom-unity.com/dubindoh/blog/2018/06/10/e3-2018-announcing-

    devil-may-cry-5-coming-to-xbox-one-ps4-and-pc-in-spring-2019 [17. 8. 2018]

    [3] Brown, M. Pokémon meets Animal Crossing in Ooblets for Xbox One, 2017.

    Dostopno na: https://www.windowscentral.com/ooblets-preview [20. 8. 2018]

    [4] Gahan, A. 3ds Max Modeling for Games: Insider’s Guide to Game Character, Vehicle,

    and Environment Modeling Volume 1, Second Edition, Volume1. USA: Focal Press,

    2011.

    [5] Marcus, R. Level-of-Detail Independent Voxel-Based Surface Approximations.

    Dostopno na: http://robbinmarcus.blogspot.com/p/thesis.html [13. 7. 2018].

    [6] MAXON, a Nemetschek Company. BodyPaint 3D, 2018.

    Dostopno na: https://www.maxon.net/en/products/bodypaint-3d/features/

    [7. 8. 2018].

    [7] MAXON Computer GmbH. Cinema 4D / BodyPaint 3D Program Documentation.

    Dostopno na: https://help.maxon.net/ [7. 8. 2018].

    [8] Normal Mapping, 2018.

    Dostopno na: https://en.wikipedia.org/wiki/Normal_mapping [19. 7. 2018].

    [9] Overwatch: The Last Bastion, 2016. Dostopno na: https://playoverwatch.com/en-

    us/media/bastion-animated-short [17. 8. 2018]

    [10] Petry, C. NormalMap Online, 2016. Dostopno na:

    http://cpetry.github.io/NormalMap-Online/ [11. 8. 2018]

    [11] Pluralsight Creative. CG101: What are normals?, 2014.

    Dostopno na: https://www.youtube.com/watch?v=L3oCQEwtMLI [10. 8. 2018].

    https://en.wikipedia.org/wiki/3D_modelinghttp://www.capcom-unity.com/dubindoh/blog/2018/06/10/e3-2018-announcing-devil-may-cry-5-coming-to-xbox-one-ps4-and-pc-in-spring-2019http://www.capcom-unity.com/dubindoh/blog/2018/06/10/e3-2018-announcing-devil-may-cry-5-coming-to-xbox-one-ps4-and-pc-in-spring-2019https://www.windowscentral.com/ooblets-previewhttp://robbinmarcus.blogspot.com/p/thesis.htmlhttps://www.maxon.net/en/products/bodypaint-3d/features/https://help.maxon.net/#1000https://en.wikipedia.org/wiki/Normal_mappinghttps://playoverwatch.com/en-us/media/bastion-animated-shorthttps://playoverwatch.com/en-us/media/bastion-animated-shorthttp://cpetry.github.io/NormalMap-Online/https://www.youtube.com/watch?v=L3oCQEwtMLI

  • 31

    [12] Riot Aeion. SRU Beta comes to a close, 2015. Dostopno na:

    https://na.leagueoflegends.com/en/news/game-updates/features/sru-beta-

    comes-close [20. 8. 2018]

    [13] Stacy, L. What is BodyPaint 3D, 2017.

    Dostopno na: http://blog.maxon.co.uk/what-is-bodypaint-3d [17. 7. 2018].

    https://na.leagueoflegends.com/en/news/game-updates/features/sru-beta-comes-closehttps://na.leagueoflegends.com/en/news/game-updates/features/sru-beta-comes-closehttp://blog.maxon.co.uk/what-is-bodypaint-3d