Maya TUTORIAL

Maya 5.x

NURBS mallinnusta

Kirjoittanut : Antti Veräjänkorva
http://www.anttiv.com
xcx@mbnet.fi


Esipuhe

No niin! Se on uusivuosi ja uudet kujeet. Niinpä päätin oikein uudenvuoden kunniaksi ottaa tutoriaaliaiheeksi tekniikan, josta en ole ennen tutoriaalia kirjoittanut eli NURBS (Non-Uniform Rational B-Spline) mallinnuksen. Kyse siis ei ole mistään avaruuden taustasäteilystä kumpuava aivan uskomattoman vaikea joku juttu. Vaan kyseessä on mallinnustekniikka muiden joukossa. NURBS:it ovat kyllä varsin outoja ainakin aluksi, mutta niiden kanssa on mahdollista saada aikaan teräviä, pyöreitä ja pehmennettyjä kulmia samaan kappaleeseen, mikä on siis tavallisen polymallinnuksen kanssa vaikeaa. Polyilla usein tehdään mallista lowpoly malli, johon sitten lopuksi isketään meshsmooth ja sormet ristissä katsotaan millainen hävitys alkaa. Polygoneilla ongelmat on usein kulmissa, jos mallinnetaan jotain teknistä (auto, vene, lentokone, hypersuperblasma-ionikivääri), mikä johtuu siis meshsmooth:sta. Ongelmaa voi ohittaa lisäämällä polyja kulmakohtiin, joita ei tahdota pyöristää tai ainakaan kovin paljoa. Tämä tapa on vain todella työläs ja usein kulmien kohdalla tulee ryppyjä, joiden korjaaminen on aina ikävää puuhaa. Tietysti ainakin 3D Studio Max:in käyttäjät voivat tässä vaiheessa alkaa ulvoa suureen ääneen, että Käytä smoothing groupseja, pönde!. Mikäs siinä! Smoothing Groupist jopa kaiken lisäksi toimivat, ainakin jossain määrin. Tosin silloinkin on todella vaikeaa yrittää saada kulmat pyöristymään eri tavoin, joku vähemmän kuin toinen ja niin poispäin. Lisäksi polyjen ongelma on tarkkuus, joka on toki kiinni myös mallintajasta. Voidaan myös käyttää Chamferia, mutta silläkin usein tavataan ongelmia kulmissa, joissa yhdistyy monia verteksejä. Lisäksi niillä on hankala määrätä millainen pyöritys mihinkin kulmaan muodostuu. Ei ihmiset! Ongelmaan ratkaisu on NURBS ja siitä puhellaan tässä tutoriaalissa.

Eli tarkoitus on tässä tutoriaalissa antaa persusohjeita ja osviittaa siihen, kuinka NURBS:eja käytetään. Kerron sen mallintamalla pienen veneen ja selittämällä jokaisen vaiheen, kuten kaikissa tutoriaaleissa yleensä on tapana. En siis yritä saada aikaan mitään uskomattoman upeaa mallia vaan yrittää esimerkin avulla kertoa NURBS:ien käytöstä. Eli aloitetaan siis...



1. Viiva on kaiken perusta ja pinta on kanssa kiva juttu

Kun mallinnellaan NURBS:lla on ruutu usein täynnä jos jonkin moista viivaa ilman mitään sen kummempaa pintaa. Näillä viivoilla on toki suuri merkitys, mutta niiden tekeminen oikean muotoisiksi saattaa aluksi olla todella vaikeaa. Kuten kaikki varmasti tietävät niin mallin muoto perustuu näihin viivoihin ja niiden mukaan laskettavasta pinnasta. Tärkeää tässä on se, että pinnan voi tehdä eri tavoilla. Yleisimmät tavat ovat Extrude, Loft, Birail ja Planar. Lisäksi on toki Revolve, jolla saadaan aikaan pyörähdyskappaleita eli niitä iänikuisia viinilaseja ja kukkapurkkeja. Käydään ensin läpi noiden pinnoitustapojen käyttöä aloittaen helpoimmasta eli Planar.

Planar on yksinkertainen pinnoitustapa, jolla tasaiselle suljetulle curve:lle (viiva tai oikeastaan käyrä) voidaan pinnoittaa aivan tasainen pinta. Eli curve:n verteksit pitää olla jossain suunassa (X,Y tai Z) samalla kohtaa, jotta Planar toimisi. Toivoakseni kuva selventää.

Kuva 1.1

Eli kuvassa 1.1 on aivan mielivaltainen käyrä, jonka kaikki verteksit ovat Y-akselilla samassa kohtaa. Viiva on siis Y-suunnassa tasainen. Tällaisen ns. tasaisen viivan voi pinnoittaa Planar työkalulla, joka siis tekee tasaisen pinnan käyrän muodostamalle muodolle kuvan 1.2 mukaisesti.

Kuva 1.2

Planar työkalu löytyy valikosta Surfaces->Planar. Modeling valinnan ollessa valittuna Status Line:sta.

Seuraavaksi Loft, joka siis muodostaa pinnan vähintään kahden tai usemman käyrän mukaan pinnoittamalla pinnan niiden välin. Eli kuvassa 1.3 on kaksi käyrää alempi on ympyrä ja ylempi on nelisakarainen tähti. Molemmissa käyrissä saman verran isoparameja, joka ei ole välttämätöntä mutta erittäin suotavaa, jos se vain on mahdollista. Aivan umikkot voivat ihmetellä mikä on isoparam, mutta ei huolta se selviää vielä tässä tutoriaalissa jokaiselle.

Kuva 1.3

Loft operaatio näiden kahden käyrän mukaan tekee seuraavanlaisen mallin.

Kuva 1.4

Ja sitten Extrude. Tämä työkalu on varmasti tuttu, jos on mallinnellut polyilla ja tämä toimiikin halutessa aivan samalla tavalla, mutta tässä esittelen tavan miten sitä yleensä NURBS:ien kanssa käytetään. Tämä tapa antaa Extrude työkalulle myös enemmän käyttö kohteita. Eli työkalu toimii siten, että sille tehdään käyrä, jolla määritellään kappaleen profiili eli muoto. Tätä viivaa kutsutaan Profile Curve:ksi. Lisäksi tarvitaan viiva, jota pitkin profiilimuotoa ikään kuin toistetaan. Eli seuraavassa kuvassa profiili käyrä ja polku käyrä (Path Curve).

Kuva 1.5

Eli tuo kantikas käyrä on profiili ja aaltoviiva polku. Extruden tulos on seuraava.

Kuva 1.6

Kuva 1.5 on ihan eri kulmasta otettu kuin kuva 1.6, mutta Extruden idea varmasti selviää.

Lopuksi se vaikein ja pelätyin Birail. Birail toimii siten, että sille annettaan profiilikäyrä(t) ja kiskokäyrät (rail curve). Kisko on hiukan ontuva suomennos, mutta selvennetään asiaa kuvalla.

Kuva 1.7

Todella mystisen näköinen viiva muodostelma, mutta kelpaa tarkoituksiinsa. Eli valkoinen ja vihreä viiva ovat profiilikäyriä aivan kuten extrudessa ja siniset viivat ovat niitä ns. kiskokäyriä. Eli profiili määrää pinnan muodot ja railkäyrät määräävät reitin kummaltakin puolen joita pitkin pinta muodostuu noudatellen profiilien muotoa. Kuvassa 1.8 on birail:in tulos.

Kuva 1.8

Nyt olemme pikaisesti käyneet läpi nuo tärkeimmät pinnanmuodostus tavat. Ennen kuin siirrymme varsinaisesti mallintamaan sitä venettä käydään läpi vielä muutama tärkeä asia.

NURBS mallinnukseen kuuluu erittäin oleellisena osana pintojen yhdistäminen ja niiden uudestaan rakentaminen (rebuild). Uudestaan rakentaminen ei tarkoita pinnan uudelleen mallintamista vaan se lasketaan uudestaan halutuilla arvoilla, jolloin pintaan saadaan haluttu määrä isoparmeja. Tämä on todella tärkeää kun yhdistetään pintoja. Yhdistettävissä pinnoissa on todella suositeltavaa olla saman verran isoparameja, jottei pintojen yhdistymisessä tulisi ikäviä ryppyjä tai muita mahdollisia ongelmia. Mallintajalle pintojen yhdistäminen ja uudelleen rakentaminen on vain parin napin painallus, joten sitä ei kannata kauhistella. Käydäänpä nyt läpi pienen esimerkin kera mitä tuo tuossa oikein tarkoitti.

Eli kuvassa 1.9 on kappale jossa on kaksi erillistä pintaa.

Kuva 1.9

Näemme selvästi miten pintojen väli näkyy ikävästi. Tällainen ei toki ole suotavaa joten tehdään asialle jotain. Ensin tulee varmistua siitä, että pinnoissa on saman verran isoparameja, koska pinnat yhdistyvät niistä. Tässä tapauksessa meitä kiinnostaa vaakasuuntaisten isoparamien määrä. Eli valitaan toinen pinnoista ja klikataan ylävalikosta Edit NUBRS->Rebuild Surfaces kohtaa. Katsotaan nyt mitä se Rebuild oikeastaan tekee. Kuvassa 1.10 on pinta ennen uudelleen rakennusta ja 1.11 jälkeen.

Kuva 1.10

Ja sitten jälkeen Rebuild:in.

Kuva 1.11

Eli pinnan muoto pysyi samana, mutta isoparamien määrä muuttui. Tämä on loistavaa, koska voimme Rebuild:ta, myös tuon toisen pinnan ja antaa sille saman määrä isoparameja ja yhdistää pinnat ilman ongelmia. Ongelmia tulee helposti jos yhdistyvien pintojen isoparamien määrät eroavat. Eli rebuild:aa toinenkin pinta samoilla asetuksilla ja saamme kaksi pintaa joiden isoparamien määrät ovat samat.

Kuva 1.12

Nyt voimme helposti yhdistää pinnat valitsemalla ne molemmat ja painamalla valintaa Edit NURBS->Attach Surfaces.

Kuva 1.13

Huomaamme miten pintojen välissä ollut terävä kulma on nyt poissa ja tilalla on sulavampi liitos. Liitosta voisi huomattavasti parantaa rebuild:malla pinnat ennen yhdistämistä pienemmillä isoparam arvoilla. Lopuksi vielä koko pinnan voisi rebuild:ta ja tässä olisi tulos.

Kuva 1.14

Kuvassa 1.14 on jo täysin sulava pinta ilman mitään näkyvää liitosta ja pinnan muoto on edelleen täysin sama.

Tässä siis liittämisestä ja uudelleen rakentamisesta. Käydään vielä yksi asia läpi ennen aloitusta eli trim.

Trim on tapa jolla NURBS pintoihin tehdään reikiä. Siihen operaatioon vaaditaan pinnalla oleva käyrä, joka määrää reiän muodon. Käyrää ei kuitenkaan tarvitse itse yrittää piirtää mukailemaan pintaa vaan homma tehdään projektoimalla käyrä pinnalle. Eli tehdään halutunlainen käyrä, joka siis määrää reiän muodon ja asetetaan se pinnan ”eteen”.

Kuva 1.15

Nyt valitse molemmat kappaleet pinta ja käyrä. Klikkaa aktiiviseksi se ruutu, jossa käyrä on pinnan edessä. Projektointi lasketaan katselukulman mukaan, joten aktivoidaan etukamera jotta käyrä projektoituisi oikeaan kohtaan pinnassa. Itse projektointi tapahtuu klikkaamalla kohtaa Edit NURBS->Project Curve On Surface.

Kuva 1.16

Kuten näemme käyrä asettui (projektoitui) kauniisti mukailemaan pintaa. Tämä antaa mahdollisuuden leikata ko. kohdan pois, jolloin siihen muodostuu arvatenkin reikä. Tehdään se seuraavaksi.

Valitaan pinta ja klikataan kohtaa Edit NURBS->Trim Tool. Nyt pinta muuttuu seuraavankaltaiseksi.

Kuva 1.17

Nyt näemme helposti mitkä osat ovat poistettavissa. Tarkoituksena tässä on merkitä ne osat jotka halutaan jäävän (tai poistuvan jos niin haluaa työkalun asetuksista asettaa). Eli klikataan hiirellä kaikki niitä alueita jotka halutaan jäävän. Klikattuasi jotain aluetta tulee klikkaamaasi kohtaan keltainen täplä, joka on merkki siitä, että tämä alue on valittu.

Kuva 1.18

Painamalla Enter Maya yrittää suorittaa Trim toiminnon ja onnistuessaan siinä on meillä pinta jossa on haluamme muotoinen reikä.

Kuva 1.19

VOILA! Eikä tarvitse murehtia kuinka meshsmooth repii peliverkkarit tuon reiän kohdalla :).

Aivan! Olin aivan unohtaa erään erittäin tärkeän kohdan. Sori vaan, mutta ei vieläkään päästä mallintamaan sitä paattia. Meidän tulee ennen sitä käydä läpi fillet eli reunan pehmennys voisi olla kiva suomennos. No kohta selviää paremmin mikä on fillet.

En nyt tässä kerro eri fillet muodoista vaan tyydymme käyttämään yhtä fillet muotoa nimeltään Freeform Fillet. Eli tehdään tuohon kappaleeseen uusi osa.

Kuva 1.20

Eli tein tuohon tuollaisen törön, joka vaan lähtee pinnasta ulos muodostaen liitoskohtaansa erittäin terävän kulman. Ei kiva. Tässä vaiheessa on siis fillet paikallaan. Aivan ensimmäisen pienennän tuota töröä hiukan ja otan sitä aavistuksen ulospäin.

Kuva 1.21

Tämän jälkeen valitaan törön pinnan puoleinen isoparm, joka kiertää törön reunaa ja valitaan myös pinnan reiän trim edge.

Kuva 1.22

Nyt vain klikataan kohtaa Edit NURBS->Surface Fillet->Freeform Fillet ja ihailkaa NURBS:ien taikaa :).

Kuva 1.23

Kas siinä. Nyt törön liitos ei ole terävä vaan pehmeä ja kaunis. Ah, mik työkalu tuo onkaan. Tuo Fillet.

Ja nyt se vene!

2. Esimerkki : Vene

Kuten varmasti huomasitte en tuossa aikaisemmin käynyt kovinkaan tyhjentävästi läpi miten oikeastaan tein nuo esimerkit tai millaisia asetuksia käytin. Syy siihen on se, että tahdoin pitää asiat vain aivan pintatasolla, jotta kaikki enneminkin ymmärtäisivät mistä on kyse, kuin sen miten mitäkin työkalua loppujenlopuksi käytetään. Nyt perehdymme tässä vene esimerkissä tarkemmin siihen mallintamiseen.

Kuten siis jo aikaisemmin mainitsin käyrät määräävät mallin muodon. Eli aloitamme homman piirtelemällä käyriä. Aivan ensimmäisenä tahdon mallintaa paatin keskellä kulkevan puupalkin. Teemme kyseisen palkin Extrude työkalun avulla, mutta ensin niitä käyriä.

Piirrämme käyrän CV Curve työkalulla eli klikkaa Create->CV Curve Tool->Options Box

Kuva 2.1

Nyt avautuu asetusikkuna, josta voidaan tietysti säätää käyrän asetuksia. Tämä asetusikkuna on tärkeä, koska täältä voidaan määrätä käyrän aste. Mitä pienempi asteluku käyrällä on sitä jyrkempiä kulmia käyrällä on mahdollista tehdä. Eli määrää asteeksi 1 niin käyrä ei pehmennä kulmia lainkaan. Oletusarvo on 3 ja se onkin hyvä perusasetus.

Kuva 2.2

Asetusikkunassa paina nappia Reset Tool, joka asettaa työkalun sen perusasetuksille. Tämä vaihe on tarpeen muistaa tehdä joka kerta kun aloittaa uuden mallin luomista, koska vanhat asetukset jäävät muistiin. Resetoituasi CV Curve työkalun voit sulkea ikkunan.

Eli aletaan piirtää viivaa. Valitse kohta Create->CV Curve Tool ja piirrä kuvan 2.3 mukainen viiva. Kannattaa käyttää taustagridiä apuna tässä ja snap menee päälle pitämällä pohjassa nappia x.

Kuva 2.3

Eli tarkoitus on tehdä käyrä, jossa on mukavan pehmeät reunat. Saatuasi piirrettyä kuva 2.3 mukaisen käyrän pitää se vielä sulkea, koska nyt viimeinen ja ensimmäinen piste (Edit Point) eivät ole yhdessä. Tästä muodostuu turhia isoparameja extrude:ssa. Käyrän sulkeminen tapahtuu seuraavasti.

Valitse käyrä. Klikkaa kohtaa Edit Curves->Open/Close Curves. Muista myös, että Open/Close Curves työkalu kannattaa restoida. Se onnistuu siten, että klikkaa Open/Close Curves työkalun Options Box:ia ja esiin tulevasta asetusikkunasta klikataan kohtaa Edit->Reset Settings.

Nyt piirretään uusi käyrä käyttäen taas CV Curve:a.

Kuva 2.4

Seuraavaksi asetellaan viivat kuvan 2.5 mukaisesti. Huomaa, että viivojen paikat eivät ole ensisijaisen tärkeitä vaan niiden koko. Eli asettele viivat suurin piirtein kuvan 2.5 mukaan ja skaalaa ne vastaamaan kuvan viivoja.

Kuva 2.5

Ja sitten extrude. Valitse neliö ja sitten paatin muotoa kuvaava viiva, joka siis toimii Path Curve:na. Tämän jälkeen paina kohtaa Surfaces->Exturde->Options Box. Resetoi työkalu ja sitten aseta Result Position asetus At Path päälle. Nyt paina Extrude nappia asetusikkunan vasemmassa alakulmassa. Ja tulos on kuvan 2.6 mukainen.

Kuva 2.6

Tässä vaiheessa pitäisi taas luoda lisää käyriä määrittelemään paatin sivumuoto. Luomme sivun Loft työkalulla, joten tarvitsemme noin kolme tai neljä käyrää sivun määrittelyyn. Itse tein tässä vaiheessa kolme CV käyrää.

Kuva 2.7

Tämä ei kuitenkaan vielä aivan riitä, koska jos nyt Loft:aamme saamme vain osan paatin kyljestä pinnoitettua. No tehdään Loft silti ja murehditaan loppuosista myöhemmin. Valitse sivu käyrät aloittaen keulaa lähinnä olevasta ja jatkaen siitä perimmäiseen viivaan. Valinta järjestys on tärkeää, koska valitessa viivoja sikinsokin tulee Loft:in tekemästä pinnasta mielenkiintoisen epämääräinen kasa. Siis valittuasi viivat paina kohtaa Surface->Loft. Muista taas resetoida tämäkin työkalu.

Kuva 2.8

Kuten näemme vain osa veneen kyljestä sai itselleen surfacen. No ei se mitään! Me kolmikertaistamme sen ja ööö. Siis.

Eli perän saamme tehtyä myöhemmin. Eli silloin kun duplicate:mme toiselle puolen potskia tuon saman sivun. Keula on nyt ensimmäinen murheen aihe. Hoidamme homman siten, että teemme uuden käyrän keulaan, josta loftaamme sivun ensimmäisenä olevaan käyrään uuden pinnan. Toisaalta meillä on jo käyrä keulassa, mutta se käyrä jatkuu aivan perälle asti. Meidän tarvitsee siis vain leikata jo olemassa olevasta käyrästä pala ja Loftata.
HUOMAA! Ennen leikkaamista on tuhottava keskipuun (loftattu kantikas palkki mikä näkyy kuvassa 2.8) historia (history). Maya siis syytää kokoajan muistiin miten mallia on tehty. Eli jos siirtelet keskipalkin käyrien pisteitä muuttuu keskipalkin pinta niiden mukana. Siis jos nyt leikkaat keskipalkin viivan kahteen osaan niin eihän tuo keskipalkin pintaraukka tiedä mitä tehdä. Toisin "näytettynä" siinä käy näin.

Kuva 2.9

Historian tuhoaminen poistaa rakennusvaiheet eikä pinta enää välitä käyristä joiden mukaan se on rakennettu. Tämä on siis juuri se mitä tarvitsemme. Eli valitse keskipalkki ja yksinkertaisesti klikataan vain kohtaa Edit->Delete By Type->History. Näin! Ja takaisin viivan katkomiseen.

Eli hävitä kaikki NURBS pinnat eli perspektiivi-ikkunassa paina kohtaa Show->NURBS Surfaces ja jos rasti ei ole NURBS Surfaces kohdassa niin pinnat eivät näy. Nyt meidän on helpompi työskennellä käyrien kanssa. Paina hiiren oikean puoleista nappia veneen kesikäyrän kohdalla ja valitse Curve Point.

Kuva 2.10

Tämän jälkeen klikkaa hiirellä keulan alaosaan, jolloin siihen kohtaan ilmestyy piste.

Kuva 2.11

Nyt paina kohtaa Edit Curves->Detach Curves. Tämä toiminto jakaa käyrän Curve Point:en mukaan osiin. Muista myös restoida Detach työkalu ennen käyttöä.

Kuva 2.12

Ja näin! Nyt meillä on kaksi käyrää yhden pitkän käyrän sijasta. Ja hienoa tässä on se, että voimme loftata paatillemme keulan. Eli valitse keula käyrä ja sivun ensimmäinen käyrä. Paina Surface->Loft ja meillä on keula.

Kuva 2.13

Noniin! Keula on siinä, mutta kovin se on kaamean näköinen. No korjataanpa se. Eli nyt puhutaan pintojen yhdistämisestä ja uudelleen rakentamisesta. Tosin sanoen samaa hömppää kuin tuton alkupuolella. Eli yhdistämisessä tuli ensinnäkin huolehtia, että yhdistyvien isoparamien määrä on sama ja että ne olisivat edes jotenkin kohdakkain. No tarkastellaanpa asiaa.

Kuva 2.14

Eli kuvasta 2.14 huomaamme, että keulapalassa ja kylkipalassa on eri määrä vaakasuuntaisia isoparameja eli niitä jotka tässä tapauksessa yhdistyvät. Asia pitää siis korjata, mutta ennen kuin alamme rebuildamaan niin korjataan geometriset virheet.

Kuva 2.15

Eli piilota taas pinnat ja tarkastellaan käyriä. Kuvassa 2.15 kaikki näyttää olevan kunnossa, mutta ei kuitenkaan ole. Olen kuvassa 2.15 ympyröinyt kohdan jota tulee nyt tarkastella. Tältä etäisyydeltä virhettä ei näe, mutta kun zoomaamme.

Kuva 2.16

AUTS! Väli. Ja NURBS:lla väli on harvoin kiva juttu. No onneksi Mayassa on olemassa snap, joka lukittuu viivan pisteisiin, kunhan ne on viivasta asetettu näkyviin.

Valitaan siis sivukäyrien ensimmäinen käyrä ja painetaan sen päällä hiiren oikean puoleista nappia ja valitaan Edit Point.

Kuva 2.17

Ja nyt mene keulakäyrän päälle ja paina oikean puoleista nappia ja valitse Edit Point.

Kuva 2.18

Nyt valitse sivukäyrän piste, joka on lähinnä keskikäyrää eli piste, mikä näkyy kuvassa 2.17. Ota käyttöösi Move työkalu, paina kirjainta v ja pidä se pohjassa (snap on päällä vain niin kauan kun nappia painettuna alas) ja vie piste keulakäyrän pisteen kanssa samaan paikkaan, kuten kuvassa 2.19.

Kuva 2.19

Nyt paatin keulapinta on hieman muuttunut. Eli siitä on lähtenyt yksi isoparam pois ja paha paikka joka olisi muodostunut tuohon viivojen tyhjään väliin on myös kadonnut.

Kuva 2.20

Eli kuvasta 2.20 näemme, että sivupinta pitää rebuild:ta, koska siinä on yksi isoparam vähemmän ja se ei ollut hyvä homma. Eli siis valitaan sivupinta ja klikataan kohtaa Edit NURBS->Rebuild Surfaces->Options Box.

Kuva 2.21

Eli tuossa on nyt Rebuild Surfaces asetus-ikkuna, josta meitä kiinnostaa kohdat Number of Spans U ja Number of Spans V. Olen piirtänyt ympyrän (hiukan epämääräisen sellaisen :) ) kyseisten kohtien ympärille. Ennen kuin muutat mitään muista resetoida ja sitten muuta Spans arvot arvoihin 2. Ja paina Rebuild nappia.

Kuva 2.22

Kas niin! Molemmissa palasissa on nyt sama määrä yhdistyviä isoparameja ja ne ovat vieläpä kohdakkain. Eli ei muuta kuin valitaan molemmat pinnat ja painetaan kohtaan Edit NURBS->Attach Surfaces->Options Box. Taas resetoi työkalu ja sen jälkeen ota pois päältä asetus Keep Original. Eli nyt Maya poistaa vanhat pinnat automaattisesti ja jäljelle jää vain uudet pinnat.

Kuva 2.23

Ja tuloksena on yksi kauniin sileä pinta.

Kuva 2.24

Nyt on aika tehdä paattimme toinen puoli. Tämä tehdään kopioimalla jo olemassa oleva kuva peilikuvana toiselle puolelle. Mayassa ei kuitenkaan ole mirror työkalua vaan homma tehdään duplicate työkalun arvojen kanssa kikkailemalla. Oikeastaan siinä ei ole mitään ihmeellistä asetamme vain duplicate:n asetukset niin, että kopio skaalautuu haluttuun suuntaan arvolla -1. Mikä on siis käytännössä mirror.

Eli valitaan sivupinta ja painetaan kohtaa Edit->Duplicate->Options Box.

Kuva 2.25

Kuvassa 2.25 olen taas ympyröinyt halutun kohdan ja asettanut arvon halutuksi. Huomaa, että skaalauksen suunta (joka tässä on x-askelin suuntainen) ei välttämättä ole sama sinulla. Se riippuu täysin siitä mihin asentoon olet veneen mallintanut. Todennäköisesti suunta on kuitenkin tässä tapauksessa kaikilla sama. MUISTA RESETOIDA TÄMÄKIN TYÖKALU ENNEN ASETUSTEN MUUTTAMISTA!!!

Kuva 2.25

Duplicate toimii siis siten, että veneen toinen puoli skaalautuu x-suunnassa kokonaan toiselle puolelle. Koska skaalauksen arvo on 1, vaikkakin miinus sellainen, on toinen puoli täsmälleen samanlainen vain pelikuvana. Pitää myös muistaa, että kopioidun pinnan paikka määräytyy Pivot Point mukaan, jonka tulee olla kopioitavan pinnan sisäreunassa. Pivot:ia voi siirtää valitsemalla haluttu pinta ja painamalla nappia Insert ja kun tahdot lopettaa Pivot:in siirtelyn paina uudestaan nappia Insert.

Tässä vaiheessa veneen ulkomuoto näkyy paremmin ja mahdollisia virheitä kannattaa korjata nyt. Omaveneeni oli ainakin aivan liian leveä, joten asetin Control Vertex:it päälle molemmille pinnoille painamalla oikean puoleista hiiren nappia toisen pinnan päällä ja valitsin Control Vertex. Sitten vaan sama homma toiselle pinnalle ja nyt meillä on molemmilla pinnoilla päällä CV:t, joilla voidaan muokata pintoja. Tässä vaiheessa on myös hyvä tuhota kaikista pinnoista historia. Eli paina hiiren oikeaa nappia jossain tyhjässä kohtaa sceneä siten ettei mitään ole valittuna ja valitse Select All. Sitten klikkaa kohtaa Edit->Delete By Type->History.

Kuvassa 2.26 on oma veneeni CV säätämisen jälkeen. Oikeastaan vain kavensin paattia hieman.

Kuva 2.26

Sitten on vuorossa perä. Eli kuten jo mainitsin aikaisemmin tutoriaalissa teemme perän loft työkalulla sivupintojen viimeisestä isoparam:sta toiseen. Eli paina hiiren oikeaa nappia toisen pinnan päällä ja valitse Isoparam. Sitten paina oikeaa nappia toisenkin pinnan päällä ja valitse Isoparam. Nyt valitse kuvan isoparam:it valitsemalla ensin toinen ja sitten Shift pohjassa toinen.

Kuva 2.27

Eli kuvassa 2.27 on keltaisena ne isoparam:it, jotka tulee valita. Kun isoparam:it on valittu paina Surfaces->Loft.

Kuva 2.28

Tuhoa peräpinnasta saman tien sen historia. Eli jos et muista niin valitse pinta klikkaa Edit->Delete By Type->History.

3. Sisäosa ja säätämistä

Olemme siis tässä vaiheessa saaneet aikaan veneeltä näyttävän mallin. Se ei kuitenkaan riitä meille vaan tahdomme ehdottomasti väännellä siitä paremman. Ensinnäkin potskissa ei ole edes sisäosaa ja kaikkea muutakin pientä viilaamista löytyy.

Ihan ensin tarkastellaan paatin peräosaa.

Kuva 3.1

Peräosan reunat ovat kovin terävät. Ei niinku makeen näköstä. Onneksi asiaa voidaan helposti parantaa. Kyllä aivan oikein! Jumalien innoittama työkalu! Kaikkien aikojen kulmien tekijöiden vapauttaja! Fillet! ( Älkää välittäkö näistä sekoiluistani. Jäi varmaan aamupillerit ottamatta. )

Eli aivan ensimmäinen työ tehdessä fillet:iä on muodostaa sille tila johon se lasketaan. Paina hiiren oikeaa nappia toisen sivupinnan päällä ja valitse Control Vertex ja sama homma myös toiselle pinnalle.

Kuva 3.2

Siirretään CV:itä hieman keulaan päin ja pienennetään peräosan pintaa aavistuksen x-suunnassa.

Kuva 3.3

Paina hiiren oikean puoleista nappia peräosanpinnan päällä ja valitse isoparam ja aseta isoparamit päälle myös toiseen sivupintaan. Valitse kuvan 3.4 mukaiset isoparamit.

Kuva 3.4

Nyt paina kohtaa Edit NURBS->Surface Fillet->Freeform Fillet.

Kuva 3.5

Toimi samalla tavalla myös toisella puolella ja meillä on kauniisti pyöristetyt kulmat veneen peräosassa. Perspektiivi-ikkunassa saattaa filletin ja pintojen välissä näkyä rakoja, mutta ei huolta. Nuo raot eivät näy renderoidussa kuvassa, koska NURBS pintojen tarkkuus on silloin suurempi. Tulemme tähän aiheeseen vielä tutoriaalin lopussa, joten ei siitä nyt enempää.

Siirrytään tässä vaiheessa mallintamaan veneemme sisäosaa. Tämä vaihe onkin sitten yksinkertainen, kuin Linuxin konfaaminen ja tulos on juuri sellainen kuin pitääkin. Eli idea on yksinkertaisesti kopioida ulkoseinät ja pienentää ne sisäosan kokoisiksi. Mutta mitäpä tässä turhaa näppistä kuluttamaan, joten ei muuta kuin mallintamaan.

Elikkäs valitaan aluksi kaikki ulkopinnat keskipuuta lukuun ottamatta.

Kuva 3.6

Sitten tuhotaan pinnoista historia. Oikeastaan historia tarvitsee tuhota vain aiemmin tehdyistä fillet pinnoista, mutta ei haittaa vaikka historia tuhoaa muistakin pinnoista. Joten pintojen ollessa valitut klikkaa kohtaa Edit->Delete By Type->History. Tämän jälkeen kopioidaan pinnat, joten pidä ne edelleen valittuna ja paina kohtaa Edit->Duplicate. Muista resetoida duplicate työkalu, jottei mitään vanhoja asetuksia jää päälle. Tehtyäsi kopion pidä edelleen pinnat valittuna ja paina Ctrl+g, jolloin Maya loihtii valituista pinnoista groupin. Nyt Mayan pitäisi automaattisesti valita tehty group, joten voimme alkaa säätämään sitä. Aivan ensin siirretään pivot keskelle group:ia. Eli group valittuna klikkaa kohtaa Modify->Center Pivot. Ja sitten vain skaalataan scale työkalulla pinnat sisäpintojen kokoisiksi, kuten olen tehnyt kuvassa 3.7.

Kuva 3.7

Sisäosa on siis tehty, mutta laidoissa on nyt aukot. Sellainen ei käy. Nokkelimmat voisivat arvella, että loft:lla laidasta laitaan pinta saataisiin aukot peitettyä. Aivan oikein! Mutta ongelmana on silloin se, että laidoista tulee kovin terävät, joten fillet:iä tarvitaan. Ensin kuitenkin tehdään muuta ja ihan uutta juttua. Kehotan kaikkia olemaan nyt tässä seuraavassa vaiheessa erityisen tarkkoina sillä esiteltävä ominaisuus on monesti kultaakin arvokkaampi (tai no ei nyt sentään).

Eli puhutaan pinnan isoparamin kopioinnista käyräksi. Homma on yksinkertainen ja näin se käy.

Valitse sisäosan pintojen ylimmät isoparamit.

Kuva 3.8

Nyt klikkaa kohta Edit Curver->Duplicate Surface Curves. Ja voila! Meillä on isoparameja mukailevat käyrät. Tahdomme seuraavaksi tehdä luoduista käyristä groupin painamalla Ctrl+g. Sitten pivot keskelle grouppia Modify->Center Pivot.

Ja nyt skaalaa käyriä hieman isäosaa suuremmaksi ja nosta niitä aavistuksen ylös. Tämän jälkeen duplicate:aa käyrät ja skaalaa uusita käyristä hieman ulko-osaa pienemmät, mutta vanhoja käyriä suuremmaksi kuvan 3.9 mukaan.

Kuva 3.9

Ja kun meillä on kaksi käyräryhmää (group) voimme alkaa loft:aan. Eli valitaan toisiaan vastakkain olevan käyrät.

Kuva 3.10

Nyt paina kohtaa Surface->Loft. Kanttaa taas restoida Loft työkalu.

Kuva 3.11

Seuraavaksi tehdään sama homma peräosan laidan päälliselle. Eli valitse kuvan 3.12 mukaiset käyrät.

Kuvat 3.12

Ja loft:aa samoin kuin yllä.

Kuva 3.13

Jatka näin koko veneen laita ympäri ja tulos pitäisi olla kuvan 3.14 mukainen.

Kuva 3.14

Eli nyt meillä on pinta, mikä kiertää veneen reunaa ja on hieman irti varsinaisesta laidasta. Tämä pieni väli laidan ja juuri luodun pinnan välissä on fillet:iä varten, joten tehdäänpä se seuraavaksi.

Fillet tyyppi on tälläkin kertaa freeform fillet, joka pitää jostain syystä tehdä kahden pinnan välisiin isoparameihin. Tästä syystä loft:simme laidan päällimmäisen pinnan jo äsken. Anyway, FILLET!

Elikkäs tuota joo. Valitaan äsken tekemistämme pinnoista mikä tahansa, vaikka oikean laidan pinta ja siitä sisimmäinen isoparam kuvan 3.15 mukaan.

Kuva 3.15

Ja sitten arvatenkin valitaan vastakkaisen pinnan (eli tässä tapauksessa oikean puoleisen laidan sisäpinta) vastakkainen isoparam, kuten kuvassa 3.16.

Kuva 3.16

Ja nyt klikataan kohtaa Edit NURBS->Surface Fillet->Freeform Fillet.

Kuva 3.17

Idea on siis mennä jokainen laidan kohta läpi, jossa on väli ja tehdä fillet pinta siihen väliin. Fillet tehdään jokaisen kohdan kanssa aivan samoin, kuin äsken.

Kuvassa 3.18 on paattini fillet:ien jälkeen.

Kuva 3.18

Ja näin! Veneen reunat ovat nyt todella tyylikkäät eivätkä ne ole terävät mikä on aina tärkeä asia. Huomioitavan arvoista toki on, että äsken tehdyt fillet pinnat kaipaisivat yhdistelemistä lähellä oleviin pintoihin, mutta pintojen yhdistäminen on jo käytä läpi, joten ei siitä enää tässä.

Käydään nyt tosi äkäiseen läpi yksi paikka, jonka olisi voinut käydä aiemminkin, mutta parempi myöhään, kuin ei milloinkaan. Kohta on siis keskipuun päät. Keskipuun päissä on reikä, jota ei toki oikeasti ole. Eli valitaan keskipuu ja kuvan 3.19 osoittama isoparam.

Kuva 3.19

Kaikkein helpoin tapa pinnoittaa tuo on käyttää Planar:ia. Eli klikkaa kohtaa Surfaces->Planar. Ja muistutetaan nyt vielä kerran. MUISTA RESETOIDA TYÖKALUT ENNEN KÄYTTÖÄ!!!

Kuva 3.20

Ja Planar:lla saimme aikaan suoran levyn, joka peittää ikävän reiän. Kiva se homma hoidossa, mutta uusi ongelma tuli. Eli nyt puun pää on kuin lasersäteellä katkaistu eli se on aivan terävä. Arvatkaapa mikä siinä auttaa. Kyllä jälleen kerran fillet. Eli tehdään fillet:lle tila.

Kuva 3.21

Ja sitten valitaan isoparamit, kuten kuvassa 3.22. Huomaa, että planar pinnan reunakäyrä ei ole isoparam vaan trim edge. Trim edge:n saa valittua painamalla halutun pinnan päällä oikeaa hiiren nappia ja klikkaamalla kohtaa Trim edge.

Kuva 3.22

Ja sitten vain freeform fillet ja voila!

Kuva 3.23

No niin! Nyt meillä on siis katselua kestävä veneen runko valmis. Vielä puuttuu jotain pientä kuten penkit ja ne onkin hyvää treeniä, koska siinä tulee käytyä läpi eräs tärkeimmistä osa-alueista NURBS-mallinnuksessa eli trim.

Trim on siis tapa jolla pinnasta leikataan osa tai osia pois. Toimiakseen trim haluaa pintaan projektoidun käyrän, jonka mukaan leikkaus tehdään. Käyrää ei ole pakko piirtää ja sitten projektoida se pinnalle Project curve on surface toiminolla vaan viivan voi tehdä toisillakin tavoilla. Tässä esimerkissä käydään läpi toiminto nimeltä Intersect Surfaces eli suomennettuna toisiaan leikkaavat pinnat. Ja juuri sitä oikeastaan onkin kyse. Käydään tekniikkaa aivan kohta läpi, mutta ensin halutaan penkki jota sitten viipaloidaan.

Aloitetaan aivan tavallisesta NURBS Cube muodosta. Tee laatikosta kuvan 3.24 mukainen eli veneen penkin kokoinen, mutta leveydeltään laatikko saa mennä veneen reunojen yli tai pitää mennä reunojen yli.

Kuva 3.24

Ensimmäinen ongelma on, että penkin kaikki seinät ovat erillisiä kappaleita. Ne on aivan ensin yhdistettävä. Eli valitaan ensin päällimmäinen pinta ja toinen sivupinta.

Kuva 3.25

Klikkaa nyt kohtaa Edit NURBS->Attach Surfaces. Taas muistetaan restoida työkalu ennen käyttöjä ja ottakaa rasti pois kohdasta Keep originals.

Eli nyt sivu ja päällimmäinen pinta ovat samaa pintaa. Valitaan siis tämä yhdistetty pinta (jos ei jo valittu) ja valitaan Shift pohjassa penkin alin pinta ja yhdistä pinnat samoin kuin aikaisempikin. Nyt valitaan yhdistetty pinta ja vielä yhdistämätön sivupinta ja yhdistetään ne. MUTTA! PAM! KHOSS! ERROR! Homma alkaa pissiä mitä todennäköisemmin juuri tässä kohtaa. Katsokaa kuvaa 3.26, jossa on esimerkki siitä kuinka teillä varmasti käy.

Kuva 3.26

Nyt pinta yhdistyi, mutta ei kovin kivasti. Eli ylimmäinen pinta yhdistyi sivupinnan alareunaan ja sellainen ei ole kovin "viileetä". Onneksi asian voi helposti korjata valitsemalla yhdistetty pinta. Paina pinnan päällä oikeaa hiiren nappia ja siirry pinnan asetuksiin (Attribute Editor). Attribute Editor:ssa valitse attachSurface työvaihe jossa on suurin numero eli viimeisin attachSurface toiminto. AttachSurface työvaiheessa pääset vielä muuttelemaan tätä työvaihetta ja meidän tulee kääntää pinta. Se onnistuu helposti klikkaamalla rasti pois ruudusta Reverse 1.

Kuva 3.27

Ja nyt penkki ei enää bugaa. Aivan lopuksi valitaan penkin sivupäissä olevat pienet tasot ja tuhotaan ne painamalla vain delete. Muista myös tuhota penkin historia.

Seuraavaksi siirretään penkki oikealle paikalleen.

Kuva 3.28

Ja kopioidaan haluttu määrä penkkejä lisää. Itse tein vain toisen penkin.

Kuva 3.29

Nyt ongelma on varsin selvä. Penkit ovat aivan liian pitkät ja tämä on tarkoituksellista, koska nyt päästään käyttämään sitä Trim työkalua. Sitä ennen kuitenkin tarvitaan ne käyrät. Eli valitaan toinen penkki ja toinen sivu pinta.

Kuva 3.30

Nyt luodaan käyrät pintoihin toistensa leikkaavien pintojen mukaan. Eli tässä tapauksessa penkki ja valittu sivu. Eli klikkaa nyt kohtaa Edit NURBS->Intersect Surfaces. Tästä ei oikeastaan mitään kovin näkyvää tapahdu, mutta ei pitäisikään näkyvä osa tuleekin vastaan vasta seuraavassa vaiheessa. Nyt meillä on siis tarvittava käyrä penkissä jonka mukaan se voidaan leikata. Muista, että käyrän pitää tietysti aina kiertää koko kappaleen ympäri tai tehdä suljettu kehä tai trim ei toimi. Tällä kertaa meillä on koko kappaleen ympäri kiertävä käyrä, joten trim onnistuu kyllä. Eli valitaan penkki ja klikataan kohtaa Edit NURBS->Trim Tool. Tästä seuraa hyvin mielenkiintoisia asioita perspektiivi ruudussa.

Kuva 3.31

Jos sinulle ei käy näin, kuin kuvassa 3.31 on jokin väärin. Eli tuollainen oudon näköinen rautalankamalli pitäisi tulla näkyviin. Tuosta oudosta rautalanka mallista valitaan ne osat jotka jäävät jäljelle trim:in jälkeen. Eri osat määräytyvät kappaleessa olevien käyrien mukaan ja ne näkyvät trim moodissa paksumpana viivana mallissa (olen kuvassa 3.31 ympyröinyt tuollaisen kohdan). Me tahdomme säästää penkistä sen puolen kumpi menee veneen sisäosan läpi. Eli klikkaa hiirellä penkin pidempää osaa, jolloin klikkaamaasi kohtaan ilmestyy keltainen täplä osoittamaan, että alue on valittu.

Kuva 3.32

Kun alue on valittu voit painaa enter ja Maya suorittaa trim:in.

Kuva 3.33

Näin huomaamme kuvastaa 3.33, että penkin toinen puoli on leikkaantunut. Vielä olisi toinen puoli jäljellä. No homma toimii ihan samoin. Eli valitaan penkki ja sivupinta.

Kuva 3.34

Ja taas tarvitaan penkkiin käyrä eli klikkaa kohtaa Edit NURBS->Intersect Surfaces. Ja sitten vain klikataan Edit NURBS->Trim Tool ja valitaan penkistä se alue, joka jää veneen sisälle.

Kuva 3.35

Ja toinen penkki toimii tietysti aivan samalla tavalla.

Kuva 3.36

En enää mene pidemmälle mallinnuksessa, mutta käydään läpi eräs renderoinnin kannalta oleellinen asia. Eli Render NURBS Tessellation.

Tessellation on NURBS pintojen tarkkuus. Ja renderoidessa pintojen tarkkuus on paljon suurempi kuin mallintaessa. Tästä syystä fillet:ien välissä voi näkyä rakoja, mutta renderoidessa niitä ei tule, koska tessellation on korkeampi. Tätä tessellation arvoa tai arvoja voidaan myös muuttaa. Ja sen teemme seuraavaksi.

Eli valitse Status Line:n alasvetovalikosta kohta Rendering. Ja klikkaa kohtaa Render->Set NURBS Tessellation->Options Box. Kuva 3.37 mukainen ikkuna aukeaa.

Kuva 3.37

Eli olen ympyröinyt akuutit kohdat. Eli Apply Tesselation kohdassa valitse kohta All Surfaces eli nämä asetukset vaikuttavat kaikkiin pintoihin. Ja sitten olen ympyröinyt itse tarkkuuskohdan. Eli aseta Curvature Tolerance Highest Quality arvoon ja U- ja V Division Factor arvot täysille eli viiteen. Nyt paina nappia Set ja Maya asettaa nämä asetukset pinnoille, kun niitä renderoidaan.



Hauskoja hetkiä NURBS:ien parissa.