plazma - amatör bilgisayar kültürü

Maya'da Kertenkele Yapımı

Özgür 'Lord Henry Wotton II' Yıldırım

3d Programlarında en çok hoşuma giden şey şu, istediğiniz anda istediğiniz herşeyi yapabiliyorsunuz, ama herşeyi... Bazen bir vidanjör, bazense bir şezlong. Sadece hayal etmek yeterli... Bu size de ilginç geliyorsa, birlikte kertenkele yapmaya hazırız demektir.

Şekil 1.

Bildiğimiz kertenkeleler. O sinsi ve içten pazarlıklı görünümlerinin aksine aslında kelebek gibi bir kalpleri vardır.

Modelleyeceğimiz cismi önce analiz etmemiz gerekiyor tabii ki. Şekli nasıl? Üç boyutta nasıl ifade edilebilir, şekli hangi temel basit şekillere benziyor, vesaire, vesaire. Bu ön hazırlık ne kadar detaylı ve programlı olursa 3d programı karşısındaki işimiz o kadar kısa ve kesin olur elbette. Dolayısıyla önce fotograftan cismin şekline basitçe bakalım.

Şekil 2.

Görüldüğü gibi Kertenkelemiz aslında çok basit bir şekilde ortaya çıkarılabilecek bir geometriye sahip. En azından kabaca bunu söylemek mümkün. Gelin yavaş yavaş bu geometriyi oluşturmaya çalışalım.

Şekil 3.

3D programlarıyla objeleri farklı metodlarda modelleyebiliriz. Bu metodlardan biri olarak ben "primitive" bir objeyi temel alarak onu tıpkı bir heykeltraş gibi işleyerek modelimi oluşturmaya çalışıcam. Yukarıdaki şekilde maya'da çok kısa bir zaman içinde kertenkeleye dönüşecek olan standart bir küp görülüyor.

Şekil 4.

Daha sonra mayanın arayüzünde sağ tarafta kalan "input" değerlerinden subdivisions width değerini 2 olarak belirleyip kübe biraz daha "geometri" kazandırdım, ortadan bölünmüş oldu.

Şekil 5.

Bu arada hatırlatmak istediğim ufak bir husus var. Maya'da objeler genel olarak 2 mod' da bulunur. Obje modu ve komponent modu. Obje modunda objeyi bir bütün olarak seçip işlem yaparız, komponent yani bileşen modunda objenin geometrisini değiştirmekte kullanacağımız bileşenleri seçeriz. Vertexler, face' ler komponent mod' da seçilebilir. Yukarıdaki şekilde komponent moduna geçip kübün sağ tarafında kalan face' leri sildim, enine scale ettim ve içi boş yarım bir dikdörtgenler prizmasını elde ettim. Bunu yapmamdaki amaç kertenkeleme başlarken en iyi başlangıç objemi oluşturabilmek. Objenin yarısını sildim çünkü onu komut yardımıyla oluşturup bir tarafta yaptığım değişiklerin diğer tarafa da uygulanmasını sağlayabileceğim, mirroring de denir buna.

Şekil 6.

Mirroring için bir çok yöntem mevcut. Bazı yöntemler direkt "mirroring" yapıyor, hiç bizi uraştırmıyor, fakat ben bu örnekte "hardcore" gideceğim, işin zor ve uzun yolu.

Yukarıdaki foto dan gördüğümüz gibi edit menüsünden duplicate komutunun sağındaki ufak kutucuğa yani options' ların olduğu alana geliyoruz.

Şekil 7.

Şimdi özellikleri ayarlayalım. Scale x değeri -1. Çünkü sildiğimiz face' leri oluşturacağız. Geometry type instance. Çünkü orjinal geometride yaptığım değişikliklerin kopyalanmış geometride de uygulanmasını yani "instance" olmasını istiyorum.

Şekil 8.

Evet şimdi objemizin eksik kısmını tamamladıktan sonra en çok kullanacağımız komuta geldi sıra. "Extruding face". Yani varolan bir face' den yeni face' ler oluşturma. Böylece kertenkelemizin eksik kısımlarını yeni geometriler oluşturarak tamamlayacağız. Şekilde kübün vertexlerinden tutarak başlangıç objeme biraz daha şekil verdim. Kertenkelemin ana gövdesinin başlangıcı olacağı için böyle bir şekille başlamak uygun. Daha sonra şekilde gördüğünüz face' i seçip onu extrude ederek ana gövdeyi oluşturmaya başlayacağız.

Şekil 9.

Önceki araştırmalarımızda görmüştük ki, iki ayak arasını oluşturmak için başlangıç objemizi iki kere extrude etmemiz gerekir. Dolayısıyla hemen extrude işlemlerimize başlayalım.

Şekil 10.

Unutmadan!!! Keep faces together özelliğini şekilde olduğu gibi aktif hale getirelim ki çoklu face extrude' lerinde tüm face' ler birlikte "davransın." Diğer türlü hepsi ayrı ayrı extrude edilmiş olur, bu bizim istediğimiz şey değil!

Şekil 11.

Evet iki kere extrude edip vertexleri çekiştirerek daha önce çizimini yaptığımız objede belirttiğimiz gibi geometriyi şekillendirdim. Bu metod, yani "face' i extrude et ve daha sonra vertexleri çekiştirerek istenen şekli oluştur" metodu bu kertenkeleyi oluşturmada ANA metod olacak, hem çok basit, ama aynı ölçüde işimizi görecek bir metod. Profesyonel "modeller"' lar tabii ki bu işi çok "kapsamlı" bir şekilde yaparlar, gelişmiş tool' lar kullanırlar, farklı durumlarda detaylı komutları ve araçları vardır, biz daha yumurtada civciviz. O yüzden basit ama "durumu kurtarıcı" şeyler yapmak durumundayız. Zamanla işi öğrene öğrene bizde uzman abilerimiz gibi olabiliriz. Bu tutorial' ın bir amacı da bu, sabretmeyi ve azmetmeyi bilmek.

Geometri çizimimizde bacaklar ve kollar arasında üç "blok" geometri vardı ve bunları oluşturduk, şimdi kolların oluşacağı gövde geometrisine geldi sıra.

Hemen inceleyelim:

Şekil 12.

Gördüğünüz gibi içinden kolu çıkaracağımız geometriyi oluşturabilmek için 2 kere daha extrude etmek gerekecek.

Şekil 13.

Evet iki kere extrude ettim ama vertexlere dokunmadım geometriyi değiştirmedim. O yüzden geometri aynı kalacak şekilde uzadı. Şimdi sıra geldi boynu ve kafayı oluşturacak geometrilerimize..

Çizimimizde bu öğeler için 2 blok geometri gerekiyor. yani iki kere daha extrude edip vertex çekiştireceğiz.

Şekil 14.

Evet 2 kere extrude ettikten sonra şekildeki gibi vertexleri yeniden konumlandırarak istediğim geometriyi elde ettim.

Arka bacak içinde 2 extrude uyguladıktan sonra, kuyruk geometrisi için çizimimde de "kabaca" belirttiğim gibi 5 extrude' e ihtiyacım var.

Hemen extude ede ede oluşturalım.

Şekil 15.

Bu arada extrude tool' u nasıl kullandığım belki hiç bilmeyen arkadaşlar tarafından merak edilebilir, tıpkı diğer programlarda olduğu gibi extrude komutunu uyguladıktan sonra W tuşuna basıp default olarak global moddaki move tool "tutamac" ından yani "gizmo"sundan tutarak önce belirli bir bölgeye kadar extrude edilmiş face' i taşıyorum, burada dikkat edeceğiniz nokta extrude edilmiş geometri mirroring de referans alınan çizgiyi yani orijin çizgisini geçmemeli, ki karşı tarafa doğru şekilde yansısın. Ondan sonra komponent moddan vertex moduna geçiyorum. Sonra vertexlerle oynayarak objeyi yeniden şekillendiriyorum. Vertex tweaking. Modelling is just vertex tweaking, that's all. Demiş üstad. O jilet gibi modelleri böyle mi yaparlar bilinmez (Bilmek için google' a modelling tutorial yazın yahu! :) ) ama bizim yaptığımız şimdilik sadece bu. Biraz 3d programlarıyla haşır neşir olmuş kişiler hemen bu extrude işlemlerini yapar. Kesinlike çok basit işlemler bunlar. "Halkın anlayacağı" türden.

Çok mu basit geldi, o zaman bir tool daha kullanalım, split poly tool.

Şekil 16.

Bu tool ile ne mi yapacağız, cizimimize yakından bir daha bakalım.

Şekil 17.

Gördüğümüz gibi kolların üstünde geometri oluşturmamız lazımmış. Diyebilirsiniz ki illa cizimimize sağdık mı kalmamız lazım, istediğinizi yapmakta serbestsiniz, ben fotosopta kertenkele fotosunun üzerinden geçerek bu çizimi oluştururken 3d geometrinin nasıl olabileceği konusunda az çok fikir sahibi oldum, yani bu kertenkele 3d' de neyi ifade eder, edge' ler nasıl olmalı, (Gevur buna edge flow der) gibi. Dolayısıyla bu çizimime sağdık kalarak kertenkelemi oluşturuyorum, bu benim işimi 3d programının karşısında çalışırken çok rahatlatıyor, ne yapmam gerektiği belli. Ne yapacağım? Tabii ki bu geometriyi oluşturmak için ilgili face' i "split poly tool" ile keseceğim:

Şekil 18.

Evet. Kestim, <enter> a basarak tool' u sonlandırdım. Split tool ile işim bitti. Sıra geldi bu yeni oluşan geometriden kolları oluşturmaya, bunun için emektar tool' um extrude face' i elime alıyorum:

Şekil 19.

Ilk hamleyi yaptım. Çizimime göre 2 extrude' de kolu tamamlamam lazım ama 2 extrude yetmeyecek gibi. Daha fazla extrude uygulamam lazım ki smooth ve detaylı bir geometri oluşsun.

Şekil 20.

Evet. 4 kere extrude ederek vertexleri çekiştirdim ve kertenkele koluna benzeyecek şekle getirdim. Sıra geldi bacaklarıda aynı bunun gibi oluşturmaya:

Şekil 21.

Önce bacağın çıkacağı face' i kestim, sonra extrude' ler uyguladım ve vertexleri çekiştirdim. Şöyle bir şey çıktı ortaya:

Şekil 22.

Sıra geldi, elleri ve ayakları oluşturmaya. Aynı metod, Face' i split edip gerekli geometriyi oluştur, extrude et, vertexleri düzelt, extrude et, vertexleri düzelt.

Şekil 23.

4 üncü extrude' dan sonra:

Şekil 24.

Aynı şekilde ayakları ele alalım.

Şekil 25.

Hıncal Uluç çok bilmişliğiyle "Böyle ayak mı olurmuş kardeşim!" demeyin, valla kertenkele ayağı böyle.

Sonuçta en son geldiğimiz nokta şu:

Şekil 26.

Modelleme aşamamız bitti. Geçmiş olsun. Sıra geldi kopya tarafı orjinal taraf ile birleştirmeye. Resmi olarak ikisi farklı objeler şu an için. Dolayısıyla birleştirmek lazım...

Önce kopya olan kısmı komple silelim, bunun için Windows>Outliner ' i açın ve kopya olan geometriyi seçin, default olarak pCube2 dir onun ismi. Sildikten sonra ilginç bir manzara ile karşılacaksınız, kertenkelenin içindede geometri oluşmuş. Çünkü aslında biz yarım bir geometride işlem yaptık, dolayısıyla içe doğruda geometri oluştu. Tüm bu gereksiz ve hatta zararlı faceleri seçip delete tuşuyla siliyoruz.

Seç:

Şekil 27.

Sil:

Şekil 28.

şimdi okumaya devam et:

Eksik kısmı tamamlamadan önce gelin isterseniz önce texturing meselesini halledelim, buradaki avantaj şu, yarım objelerle texturing de tıpkı modellemede olduğu gibi sadece yarım kısma UV layout oluşturmak yeterli, dolayısıyla yine işin yarısından kurtulmuş olacağız. Nesneyi UV layout' uyla mirrorladığımızda UV layout' da mirror edilecek.

UV layout hazırlarken, bazısı bunu software' lerin "auto projection"' larına bırakıyor, otomatik olarak çıkan UV set' e ufak müdahaleler ile sonlandırıyorlar. Ben bu işi manuel olarak yapacağım. Genel olarak objenin basit bir geometrisi yoksa otomatik projeksiyonlamayı tercih etmem. Maneul olarak hazırlamak size çok daha fazla imkan verir. Ve çoğu zaman aslında işleri daha da kolaylaştırır. Şunu unutmayın ki UV mapping başlı başına bir uzmanlık alanı ve o tertemiz UV layoutları profesyoneller çok detaylı projeksiyonlamalarla ve "UV editing"' le çıkartıyorlar.

Projeksiyonlama için, gövdeyi ayrı, kolu ayrı ve bacağı ayrı ayrı projeksiyonlayacağım, böylece 3d bir nesnenin tüm yüzeyleri 2d bir ortama (UV) en iyi şekilde nasıl aktarılır buna uraş vermeye çalışacağız.

Önce sadece yarım gövdeyi seçin, kolun ve bacağın herhangi bir komponentinin "select" durumda olmadığına emin olun.

Seçilmiş gövde:

Şekil 29.

Önce "Hypershade"' i yani Maya' nın "material" editorünü açıp gövdeye ayrı bir materyal atayalım:

Şekil 30.

Default bir lambert shader işimizi görecektir:

Şekil 31.

Lambert materyalimize ad verelim, ben kertenkele dedim. Ve kertenkele' ye bir texture atayalım, bundaki amaç şu, UV layout' u hazırlarken hali hazırda texture' lu nesneyi referans olarak kullanıyoruz ki, layout ne ölçüde orjinal texture' ü "distort" edecek, hangi geometriye ne kadar texture alanı düşecek önceden görüp ona göre UV' imizi editliyoruz.

Bunun için Kertenkele material' imizin Attribute editor' ünü çift tıklayarak açıyoruz,(Nesnelerin özelliklerini gördüğümüz ctrl+a kısayollu genel bir editör) Color kanalına gelip oradaki siyah beyaz kareli tuşa basıyoruz.

Şekil 32.

Create Render Node penceresi açılması lazım, oradan checker' ı seçiyoruz. Checker Texture artistleri için klasiktir, UV mapping' de distort olacak alanları çok iyi göstermesi gibi nedenlerle genelde Checker' la UV "check" edilir.

Şekil 33.

Ve Checker' in atanmış hali:

Şekil 34.

Şekilde de gördüğümüz gibi Texture geometrinin bazı yerlerinde mevcutken bazı yerlerinde yok. Bunun nedeni şu, objeyi oluştururken primitive bir objeyle, yani standart küple başladık, her default primitive objenin hazır bir UV layout' u vardır. Bizim kübümüzünde bir zamanlar böyle bir özelliği vardı. Fakat biz geometriyi extrude ederek değiştirip kertenkele şekline sokarken aynı zamanda hali hazırdaki Küp UV layout' ununda ırzına geçtik. Maya' da her editlenmiş primitive' den sonra UV' leriniz uçar gider. (Çünkü artık o mayanin bildiği bir küp değildir!) UV'lerinizi Yeniden oluşturmak durumundasınız.

Bunun için seçili gövdemize projeksiyon uygulamamız gerekecek:

Şekil 35.

Polygon UVs menüsünden Cylindrical projection' u uyguluyoruz. Neden planar veya spherical değil? Nedeni çok basit, komplike bir geometrimiz var ancak bu geometri hangi primitif şekle daha daha çok benziyor, buna karar verip ilgili projeksiyonu uyguluyoruz, bu örnekte yarım gövde yine yarım bir silindire benziyordu.

yukarıdaki resimdede gördüğümüz gibi projeksiyonladığımızda texture' ümüz yine istediğimiz gibi gözükmedi. Nedeni projeksiyonun konumu ve açısının yanlış olmasında. Projeksiyonu uyguladıktan sonra bunu değiştireceğiz. Bunun için projektörün manipulator tool' unu kullanarak (projeksiyonu uyguladığınızda default olarak seçilir, deselect ederseniz klavyenizdeki T tuşuyla manipulator tool' a geri dönün. Ya da benim gibi bu işi ekranın sağındaki alanda bulunan "Channel Box" isimli bölgede ilgili özellikleri sayıyla girerek en uygun açıyı ve konumu bulun.

Şekil 36.

Yukaridaki resimde sağda seçili olan değerlere dikkat! büyük ihtimal yakın değerleri bulacaksınız.

Sıra geldi kollara. Kolları klasik olarak üst kısım ve alt kısım olarak iki ayrı projektorle projeksiyonluyorum. Üst kısmı yanlar dahil seçiyorum:

Şekil 37.

Ve cylindrical projection uyguluyorum. Silindirik çünkü yanları da aldığım için bunu tercih ettim.

Alt kısmı seçiyorum ve bu kez Planar! projeksiyon uyguluyorum, çünkü geometri oldukça flat.

Şekil 38.

Şekilde de görüldüğü gibi kollardaki kareler vucuda göre daha küçük, bunun anlamı şu. Kollarda vucuda göre daha fazla texture alanı içerecek, yani çözünürlükten nasibini en fazla bu alan alacak. bunu istiyor muyum, şu an hayır, kare boyutunu vucuttakilerle aynı hale getirmek için projeksiyondaki "projection height and width" değerleriyle oynuyorum.

Şekil 39.

Kare büyüklükleri birbirine benzemeye başladı. Bu iyi.

Aynı şekilde bacağıda üst ve alt olmak üzere projeksiyonluyorum:

Şekil 40.

Ve projeksiyonlama ile işim bitiyor. Şimdi Windows> texture editor' e gelip biraz UV editing yapma zamanı geldi!

Şekil 41.

Şimdi texture editörü açtığınızda karmakarışık bir sahneyle karşılaşabilirsiniz, UV' ler birbirine geçmiş olabilir. Bunun nedeni, her projeksiyon uygulandığında, projection edilen geometrinin UV'si UV layout' un merkezinde oluştulur. Dolayısıyla tüm UV' lerimiz merkezde şu an. Bunları kolayca birbirinden ayıracağız şimdi. Texture editördeki Select menüsünden "Select Shell" komutunu aklınızda tutun. Ve editörün üzerinde sağ mouse tuşuna basılı tutarak çıkacak olan "Marking menu" den UV' yi seçin, daha sonra editörün üzerindeki herhangi bir UV' yi seçin, sadece bir tanesini, sonra select' ten select shell komutunu uygulayın, ta ta ta tamm! Sadece bir tane UV seçerek projeksiyon edilmiş tüm ilgili UV' leri seçmiş olduk, böyleyece tüm UV setleri birbinden ayırın, alttaki şekildeki gibi:

Şekil 42.

Sıra geldi distort olan yerleri fix' lemeye. Bunun için ilk önce "overlapping UV"' leri buluyoruz. Evrensel bir kural olarak aklınızda bulunsun, UV'ler hiç bir zaman üst üste gelmemeli! Amacın doğasına aykırı zaten, geometriyi 2 boyutlu bir zemine açmak, dolayısıyla tüm UV noktalarını texture editörde rahatlıkla görüp anlayabilmeliyiz.

Overlapping UV' leri hemen daha projeksiyon uygularken kollarda oluşacağını tahmin etmiştim, koldaki checker' da da zira aynı belirtiler mevcut idi, çünkü oradaki checker fazlasıyla strech olmuştu.

UV' leri fixlemeye başladım:

Şekil 43.

Yukarıdaki şekilde de gördüğünüz gibi ilk UV' imi editlereditlemez checker' da dramatik bir değişiklik oldu, kareler düzeldi, texture rahatladı. Diğer editlenmemiş UV' lerdeki checker tam anlamıyla sıçıyor. Zaten bu noktaları texture editörde goremiyoruz çünkü başka UV' lerle üstüste durumda. Bunun nedeni şu, bu kola aslında iki projeksiyon az, daha detaya inmek istiyor. Ama biz hemencecik projeksiyon işini halletmek istediğimizden bu duruma katlanmak zorundayız, yani texture editörden UV' leri çekiştireceğiz.

Şekil 44.

Yukarıdaki şekilde gördüğünüz gibi UV' leri tek tek editleyerek açıyorum, Şekilde gösterdiğim bölgedeki gibi blurry alanlara dikkat. UV' leri çekiştirerek checker karelerini netleştirmeye çalışıyoruz.

Bacaklara geçiyoruz:

Şekil 45.

Govdeye kafayla beraber projeksiyon uygulamıştık ama ben kafayı gövdenin UV set' inden extract etmek istiyorum, basitçe kafa alanını seçip yeni bir Planar projeksiyon uyguluyorum:

Şekil 46.

Checker karelerinin büyüklüğünü ayarlıyorum:

Şekil 47.

Checker' imizin genel görüntüsü:

Şekil 48.

Layout' umuzun genel görüntüsü:

Şekil 49.

Şimdi kertenkelemizin diğer yarısını tamamlayabiliriz. Bunun için yine objeyi duplicate ediyoruz ancak! farklı parametreler ile:

Şekil 50.

Bu kez instance değil sadece copy dedim. Birleşmiş hali şöyle:

Şekil 51.

Fakat bu iki taraf hala ayrı iki obje. Combine etmemiz lazım ki tek bir geometriye dönüşsünler:

Şekil 52.

Fakat bir problemimiz daha var, bunlar tek bir obje oldu ancak "component" seviyesinde değil. Objeyinin ortasında kalan o kesişen vertexleri seçiyoruz, kontrol etmek içinde display> heads up display> poly count' u aktif hale getiriyoruz:

Şekil 53.

Ve seçtiğimiz vertexleri merge etmek için merge vertices komutunun option bolumune gidiyoruz:

Şekil 54.

Opsiyonlarda distance değerini 0.01 yapiyoruz. Anlamı şu, uzaklığı 0.01 ve altı olan vertex' leri merge et, diğerlerini bırak. Bizim çakışan vertexlerin uzaklıklari teorik olarak 0 olduğu için merge olacak:

Şekil 55.

Bu arada, kertenkelemiz gayet low poly, yani hakkaten fazla LOW POLY. Çünkü çok basit bir geometri oluşturduk ve detayı fazla yok. Normalde low poly modellemede pek rastlanmasa da bu objeye bi smooth poly uygulamak istiyorum ki, alışık olduğumuz low poly nesnelere benzesin (!)

Şekil 56.

Smooth' dan sonra:

Şekil 57.

Birde polygonları triangulate ettimiydik:

Şekil 58.

Bu arada UV' lere son kez ayarlamak istiyorum. Bir fikrim var. Kertenkelemizi gayet basit bir şekilde modellediğimizden dolayı kafa ve yüz detaylarını modellememiştik. Bunun yerine buraya bir fotoğraf koymak istiyorum. Evet! onun fotoğrafını!

Bush' un tabii ki :) Bush' tan hoşlanmama trendine uygunda olmuş olur böylece.

Bunun için kafa UV' lerini scale ederek texture' dan fazla yer kapmasını sağlıyorum. Ve tüm UV layout' u texture editördeki 0-1 Aralığına yerleştiriyorum. Normalde maya ile çalışırken UV range fazla önem teşkil etmeyebilir, çünkü UV range' i istediğiniz gibi belirlersiniz, ancak başka programlara export import yaparken, UV range' i 0-1 aralığında tutmakta fayda var.

Şekil 59.

UV layout' umu texturing için almak istiyorum, dolayısıyla snapshot alıyorum:

Şekil 60.

Normalde texture artistler Photoshop kullanır. Endüstri standardı. Ama ben bu işi de büyük ölçüde mayanın içinde halletmek istiyorum. Dolayısıyla Maya' nın Paint FX isimli müthiş özelliğini kullanacağım.

Önce UV layout' u texture olarak kullanacağım. Dolayısıyla aldığım snapshot' u kertenkelemin color kanalına texture olarak atayacağım, önce tabii ki Checker' dan kurtulmam lazım, color kanalında sağ tıklayıp break connection diyorum:

Şekil 61.

Color kanalının yanindaki siyahlı beyazlı ufak karelere tekrar basarak create render node penceresini açıp bu kez "file" diyorum :

Şekil 62.

Snapshot' umun yerini gösteriyorum ve:

Şekil 63.

Daha sonra maya UI layout' umu Paint FX - Perspective şeklinde ayarlıyorum. Bunun sebebi, paint FX' te boyamamı yaparken perspective penceresinde direkt olarak yaptıklarımı görebileyim. Bunun için mesela windows>saved layouts' a gidin ve persp / Outliner' i seçin. Sonra outliner penceresinden Panels>Panel> Paint Effects' i seçin, default olarak Pers - Paint FX preset' inin olmaması şaşırtıcı gerçekten. Isterseniz bu UI' yi save edebilirsiniz. Ben daha önceden kaydetmiştim, ehehehe.

Daha sonra Hypershade' i açıp snapshot' umuzu PaintFX penceresine sürüklüyoruz, ki texture' müzü paint fx' te editleyebilelim. Sürükle bırak Maya'da çok onemli işlevleri olan bir husustur.

Şekil 64.

Hemen yukarıdaki Brush menüsünden get brush diyelim ve açılan visor penceresinden brush' imizi seçelim. Benim kişisel favorim snakebrown, isteyen snakegreen' i kullanabilir:

Şekil 65.

Canvas menüsünden auto save' i aktif hale getiriyoruz ki yaptiklarımız anında texture' a kaydolsun ve perspektif penceresinde texture refresh olsun:

Şekil 66.

Eğer boyarken hata yaparsanız standart undo bir işe yaramaz, onun yerine canvas menusundeki canvas undo' yu kullanacaksınız, dikkat edin undo history' si sadece tek hamleyi kapsar. (Bu özelliğinden de nefret ederim)

Şekil 67.

Texture' lü hali:

Şekil 68.

Bush' un yüz fotoğrafının texture' e uygulanması için hiç uraşmayıp direkt fotosop' u açtım ve ekledim:

Şekil 69.

Onden bi gorunus:

Şekil 70.

Yüz kısmında texture' u biraz daha iyi göstermek için yüzdeki vertexleri biraz çekiştirip yüze uygun bir geometri oluşturmaya çalıştım:

Şekil 71.

Gelelim animasyona:

Şekil 72.

Skeleton> Joint tool' umuzu alalım elimize ve animasyon için gerekli joint (Bone) ları oluşturalım:

Şekil 73.

Karekterimizin iskeletini oluşturmaya "Hips" ten yani kalçadan başlıyorum. Sizde Kertenkelemizin kalçasına doğru Joint Tool' u yavaşça tıklatın.

Şekil 74.

Kalçadan kafaya doğru seri olarak jointleri oluşturmaya başlıyorum. Kalça joint' i hariç altı hamlede işi sonlandırıyorum.

Şekil 75.

Kol joint'lerine geçiyorum:

Şekil 76.

Kolu bitiriyorum:

Şekil 77.

Bacaklara geçiyorum:

Şekil 78.

Bacağın bitmiş hali:

Şekil 79.

Sıra geldi kuyruğa, kuyrukta soft bir deformasyon istediğimden fazla sayıda joint kullanacağım.

Işte kuyruğumuz:

Şekil 80.

Sıra geldi joint'leri geometrimizle hizalamaya. Sadece üstten görünüşte jointlerimizi oluşturduğumuzdan 3d perspektifte jointleri tekrar hizlamamız gerekecek çünkü tüm joint'ler 3d grid' in üzerinde oluşturuldu şu an:

Şekil 81.

Joint'lerin başlangıç noktalarından taşıyarak geometrimde uygun yerlere taşıyorum:

Şekil 82.

Hemen ardından TÜM JOINTLERI RENAME ediyorum. İsimlendirme çok önemli, daha sonra bu konuda başınız ağrıyabilir. Dolayısıyla önceden tüm jointlerinizi isimlendirin:

Şekil 83.

Hips joint' imiz bizim root jointimiz. Diğer tüm jointler anatomik olarak neyin karşılığı ise öyle isimlendirin, kollar bacaklar, ayaklar vesaire.

Daha sonra oluşturduğumuz tüm joint'leri root joint' e parent'liyoruz, yani Outliner' da orta mouse tuşuyla jointleri seçip root jointimizin üzerine taşıyoruz:

Şekil 84.

Kolların birleşeceği joint anatomi de "collar bone" olarak geçer, Türkçe' de klavikula deniyormuş, isimlendirin ve kolu bu joint' e parent' leyin.

Şekil 85.

Daha sonra kolu ve bacağı mirror' layacağız. Opsiyonları aşağıdaki şekildeki gibi ayarlayın;

Şekil 86.

Genel görünüş şu şekilde:

Şekil 87.

Daha sonra tüm joint' leri seçip Modify menüsünden freeze transform diyoruz. Çünkü Joint' lerin ilk rotation değerlerinin 0 olması gerekmekte. Aksi halde kertenkele geometrimiz ile joint'leri "ilişkilendirirken" (Binding) sorunlar yaşarız.

Şekil 88.

Sonra bu kez objemizi seçerek "Delete history" diyoruz. Bu da objemizi "freeze" etmek için. Yani tüm creation geçmişini siliyoruz. Bunları yapmaktaki nedenimiz sahnemizi temizlemek, diğer programlara import export' ta sorun çıkmasını da engellemek.

Şekil 89.

Şimdi sıra geldi iskeletimize objemizi "giydirmeye". Yani maya' nın deyimi ile binding yapacağız, hemen Skin menüsüne gidip Bind Skin> Smooth Bind diyoruz:

Şekil 90.

Ve iskeletimizin deformasyonunu jointleri rotate ederek test ediyoruz;

Şekil 91.

Skin> Go to bind pose, komutu ile başlangıç pozumuza geri dönebiliriz;

Şekil 92.

Şimdi sıra geldi Inverse Kinematics' lerimizi oluşturmaya.

Şekil 93.

Inverse Kinematics'ler yada kısaca IK' ler kol ve bacakları animate etmede bize büyük kolaylıklar sağlayan bir metod.

Şekil 94.

Sol bacaktan başladık, sol bacağa tıklayıp, daha sonra ayağa tıkladığınızda IK otomatik olarak uygulanır. Yukarıdaki şekilde görüldüğü gibi IK' imiz hazır.

Fakat IK' imizin özelliklerinde bir değişiklik yapmamız lazım, çünkü IK' imiz "Sticky" değil, yani sabit değil. Bunu değiştirmek için IK' imizin attribute editörünü açıyoruz ve Sticky haline getiriyoruz:

Şekil 95.

Diğer bacağa ve kollara da aynı metodla IK' lerimizi ekliyoruz.

Şimdi de 'Rigging' denilen, animasyonumuzu daha rahat yapmak için oluşturacağımız kontrol objelerimize sıra geldi. Ilk once root joint' için bir volume sphere oluşturuyorum. Root joint' i bu sphere temsil edecek artık:

Şekil 96.

Root Joint' imi Volume sphere' ima Parent' liyorum:

Şekil 97.

Kollara ve bacaklar için volume Cube uyguluyorum, fakat bu kez sadece IK' leri parent'liyorum;

Şekil 98.

Şimdi animasyon yapmaya hazırız... Çok kısa bir animasyon yapalım, konuyu fazla uzatmayalım. 24 frame' lik bir "Walk-cycle", yürüme animasyonu yapacağız. 5 adet key imiz var:

1 inci frame : Poz 1 6 ıncı frame : Poz 2 12 inci frame : Poz 3 18 inci frame : Poz 4 24 uncu frame : Poz 5 (Poz 1' in kopyası.)

1 inci frame de 1. poz için kertenkelereyi rigging nesnelerimizi kullanarak şu şekle getirmeye çalışın:

Şekil 99.

6 ıncı frame ' de ikinci poz için:

Şekil 100.

12 inci frame' de üçüncü poz:

Şekil 101.

18 inci frame' de dördüncü poz:

Şekil 102.

24' üncü frame'de animasyonu Loop' a sokabilmek için ilk frame' in kopyası:

Şekil 103.

Evet animasyonumuzda bitti. Yanımdaki arkadaşa gösterdim "Olduğu kadar abi sktir et." dedi. Buradan anlıyoruz ki animasyon bi boka benzememiş, ehueh.

Şimdi yaptığımız animasyonu "rig" den joint' lere aktaralım ki kertenkelemizi başka programlara export ederken sorun çıkmasın.

Bunun için önce Volume Sphere 'deki animasyon data' sını root jointimize aktaralım. Çok basit, önce "unparent" ediyoruz ikisini, daha sonra Volume Sphere' i seçip Edit> Copy Keys diyoruz,

Şekil 104.

sonra root joint' imizi seçip Edit> Paste Keys diyoruz.

Şekil 105.

Burada animasyonun "Offset" inde hafif kaymalar olabilir, o yüzden Window> animation editors> Graph editor' de Root joint' imizin curve'lerini hafifçe yukarı yada aşağı kaydırarak orjinal yerine getiriyoruz:

Şekil 106.

Kollara ve bacaklara IK uygulamış olduğumuzdan onların animasyon datalarını Jointlere aktarmada "Bake simulation" komutunu kullanacağız. Tüm kol ve bacak JOINT' lerini seçip Keys> Bake Simulation diyoruz:

Değerler aşağıdaki gibi:

Şekil 107.

Ohh bee. Sonunda bitti. Export edebiliriz. Gelin şimdi bunu Milkshape formatına dönüştürelim ki bu animasyonu demolarımızda kullanmamız kolay olsun.

Önce maya sahne dosyamızın temiz olduğundan emin olalım. Sahnemizde Kertenkele geometrimiz ve Jointlerimiz var, başkada bir şey yok, olması da gerekmiyor:

Şekil 108.

Save as, diyoruz, maya binary ya da ascii farketmez.

Şekil 109.

Şimdi ise internet'ten bulduğum gayet sağlam bir tool' u tanıtmak istiyorum. Google' dan maya2ms3d yazarak bulabileceğiniz bu ufak tool, direkt maya sahne dosyasını ms3d' ye çeviriyor. Muhteşem bir şey.

Readme dosyasından ayrıntılarını okuyabilirsiniz,

Aşağıda convert yaparken ki hali var:

Şekil 110.

Kısaca

maya2ms3d -o dosyaadi.ms3d mayafileadi.ma

diyerek bitirdim. Bazi durumlarda ilk başlangıç frame' i ve son frame' i yazmakta gerekebiliyor. Diğer ayarları es geçebilirsiniz.

Sıra geldi milkshape' e. Export ederken UVlayout' umuzu da export ediyoruz tabii ki. Fakat texture' ümüzü Milkshape' de bir daha atamamız gerekiyor:

Şekil 111.

Şekil 112.

Gördüğünüz gibi çok kısa bir süre içerisinde kertenkelemizi modelledik texture' ledik ve animasyonunu yapıp ms3d formatında çıkardık.

Okuyun araştırın bu aşamaların ayrıntılarını öğrenin siz daha da güzellerini yapın. Ayrıca bu tutorial' la birlikte kertenkelenin ms3d dosyasını ve Quicktime' da animasyon loop' unu da koydum, (Ed: BonusDisk'te bulabilirsiniz) onlara da bir göz atarsınız.

İşte böyle. Haydi hoşçakalın.

plazma - 2008