KTÜ Bilgisayar Mühendisliği - Karadeniz Teknik Üniversitesi

Transkript

KTÜ Bilgisayar Mühendisliği - Karadeniz Teknik Üniversitesi
Karadeniz Teknik Üniversitesi
Mühendislik Fakültesi
Bilgisayar Mühendisliği Bölümü
Maya’da İnsan Yüzünün Modellenmesi
Ve Animasyonu
Bitirme Tezi
Mehmet Sercan İÇAÇAN
Trabzon 2007
Karadeniz Teknik Üniversitesi
Mühendislik Fakültesi
Bilgisayar Mühendisliği Bölümü
Maya’da İnsan Yüzünün Modellenmesi
Ve Animasyonu
Bitirme Tezi
Mehmet Sercan İÇAÇAN
Tezin Bölüme Verildiği Tarih : 01.06.2007
Tezin Savunma Tarihi
: 25.06.2007
Tez Danışmanı
Jüri Üyesi
Jüri Üyesi
Jüri Üyesi
: Öğr.Gör. Ömer ÇAKIR
: Prof.Dr. Vasıf V. NABİYEV
: Yrd.Doç.Dr. Hüseyin PEHLİVAN
: Yrd.Doç.Dr. Tuğrul ÇAVDAR
Bölüm Başkanı
: Prof.Dr. Rıfat YAZICI
Trabzon 2007
ÖNSÖZ
“Maya’da İnsan Yüzünün Modellenmesi ve Animasyonu” konulu bu çalışma,
Karadeniz Teknik Üniversitesi, Bilgisayar Mühendisliği Bölümü’nde “Bitirme Tezi” olarak
hazırlanmıştır.
Bitirme tez danışmanlığımı üstlenerek bu zevkli konu üzerinde çalışmamı sağlayan,
yardımını ve her türlü desteğini esirgemeyen saygıdeğer hocam Öğr. Gör. Ömer ÇAKIR’a,
çalışmalarım esnasında bana yardımcı olan diğer hocalarıma ve arkadaşlarıma teşekkür
ederim.
Mehmet Sercan İÇAÇAN
İÇİNDEKİLER
İçindekiler……………………………………………………………………………………………………………………………………………1
Resim Dizini…………………………………………………………………………………………………………………………………………3
Formüller Dizini………………………………………………………………………………………………………………………………4
Özet………………………………………………………………………………………………………………………………………………………………5
1.Genel Bilgiler………………………………………………………………………………………………………………………………6
1.1 Bilgisayar Grafiklerinin Temelleri……………………………………………………………6
1.1.1 Bilgisayar Grafiklerinin Kullanım Alanları…………………………6
1.1.2 Transformasyon Matrisleri………………………………………………………………………7
1.2 Üç Boyutlu Nesne Tanımlama Yöntemleri……………………………………………………7
1.2.1 Poligon Nesneler………………………………………………………………………………………………8
1.2.2 Eğriler ve Yüzeyler………………………………………………………………………………………8
1.2.2.1 Bézier Eğrileri……………………………………………………………………………………9
1.2.2.2 Bézier Yüzeyler…………………………………………………………………………………10
1.2.2.3 B-Spline Eğrileri……………………………………………………………………………10
1.2.2.4 NURBS Eğrileri……………………………………………………………………………………12
1.2.2.4 B-Spline Yüzeyleri…………………………………………………………………………13
2. Maya……………………………………………………………………………………………………………………………………………………15
2.1 Maya Nedir…………………………………………………………………………………………………………………………15
2.2 Maya’nın Temelleri……………………………………………………………………………………………………15
2.2.1 Maya’nın Ara yüzü…………………………………………………………………………………………16
2.2.1.1 Status Line……………………………………………………………………………………………16
2.2.1.2 QWERTY Araçları…………………………………………………………………………………17
2.2.1.2 Layouts………………………………………………………………………………………………………17
2.2.1.3 Hotbox…………………………………………………………………………………………………………17
2.2.1.4 Kanal Kutusu (The Channel Box)…………………………………………18
2.2.1.5 Özellik Editörü (The Attribute Editor)……………………18
2.2.2 Koordinat Düzlemleri…………………………………………………………………………………19
2.2.2.1 XYZ Koordinat Düzlemi…………………………………………………………………19
2.2.2.2 UV Koordinat Düzlemi……………………………………………………………………19
2.2.3 Görünümler……………………………………………………………………………………………………………19
2.2.3.1 Perspektif Görünüm.………………………………………………………………………19
2.2.3.2 Orthographic Görünüm……………………………………………………………………19
2.2.4 Kameralar………………………………………………………………………………………………………………19
2.2.4.1 Görüntü Düzlemi…………………………………………………………………………………20
2.2.5 Bağımlılık Grafiği………………………………………………………………………………………20
2.2.5.1 Düğümler……………………………………………………………………………………………………20
2.2.5.2 Eksenler.…………………………………………………………………………………………………20
2.2.5.3 Hiyerarşi…………………………………………………………………………………………………21
2.2.6 MEL………………………………………………………………………………………………………………………………21
2.3 Maya’da Modelleme………………………………………………………………………………………………………22
2.3.1 Maya’da NURBS Eğriler………………………………………………………………………………22
2.3.2 Maya’da NURBS yüzeyler……………………………………………………………………………22
2.3.3 Maya’da Poligonlar………………………………………………………………………………………23
2.4 Maya’da Deformasyonlar…………………………………………………………………………………………23
2.4.1 Lattice……………………………………………………………………………………………………………………23
2.4.2 Sculpt Nesneleri……………………………………………………………………………………………24
2.4.3 Cluster Nesneleri…………………………………………………………………………………………24
2.5 Maya’da Animasyon………………………………………………………………………………………………………24
2.5.1 Keyframe Animasyon………………………………………………………………………………………24
2.5.2 Path Animasyon…………………………………………………………………………………………………25
2.5.3 Reactive Animasyon………………………………………………………………………………………25
2.5.4 Dinamik Animasyon…………………………………………………………………………………………26
2.5.5 Motion Capture…………………………………………………………………………………………………28
2.6 Maya’da Organik Modelleme Teknikleri……………………………………………………28
2.6.1 Kılavuz Resimler Yardımıyla Modelleme……………………………………28
2.6.2 Yontma Tekniği…………………………………………………………………………………………………28
2.6.3 NURBS Modelleme………………………………………………………………………………………………28
2.6.4 3D Tarayıcı ile Modelleme……………………………………………………………………29
3. Yapılan Çalışma - Maya’da İnsan Yüzü Modellemesi………………………………30
3.1 Model Fotoğraflarının Çekilmesi ve Düzenlenmesi………………………31
3.2 İnsan Kafası Anatomisi…………………………………………………………………………………………32
3.3 Kas Gruplarının Boyanması…………………………………………………………………………………33
3.4 Resimlerin Maya’ya Aktarılması……………………………………………………………………33
3.5 Kas Gruplarının Eğrilerle Belirtilmesi………………………………………………35
3.6 NURBS Yüzeylerin Oluşturulması……………………………………………………………………37
3.7 NURBS Yüzeylerin Düzeltilmesi………………………………………………………………………38
3.8 Kulak Modellemesi………………………………………………………………………………………………………39
3.9 Göz Modellemesi……………………………………………………………………………………………………………39
3.10 Texture Yapımı……………………………………………………………………………………………………………39
3.10.1 Projection Kamera………………………………………………………………………………………40
3.10.2 Photoshop’ta Texture Map Yapımı…………………………………………………40
3.10.3 Texture’ın Modele Kaplanması…………………………………………………………41
4. Sonuçlar ve Öneriler…………………………………………………………………………………………………………42
5. Kaynaklar………………………………………………………………………………………………………………………………………43
RESİMLER DİZİNİ
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
Resim
1 2 3 4 5 6 7 8 9 10 –
11 –
12 –
13 14 –
15 –
16 –
17 –
18 –
19 –
20 –
21 –
22 –
23 –
24 –
25 –
26 –
27 –
28 –
29 –
30 –
31 –
32 –
33 –
34 –
35 –
36 –
37 –
38 –
39 –
40 –
41 –
42 –
43 –
44 –
45 –
46 –
47 –
48 –
49 –
50 –
51 –
52 –
53 –
Poligonsal Nesneler…………………………………………………………………………………………8
Kübik Bezier Eğrisi………………………………………………………………………………………10
Bezier Yüzeyi………………………………………………………………………………………………………10
B-Spline Eğrisi ve Kontrol Poligonu……………………………………………11
Bezier Eğrisine Eşdeğer Bir B-Spline Eğrisi………………………11
B-Spline Yüzeyi ve Kontrol Neti………………………………………………………14
Maya Amblemi…………………………………………………………………………………………………………15
Günümüz Sinemasından Örnek Maya Kullanımları……………………15
Maya Ara Yüzü………………………………………………………………………………………………………16
Status Line……………………………………………………………………………………………………………16
QWERTY Tools…………………………………………………………………………………………………………17
Layouts………………………………………………………………………………………………………………………17
Hotbox…………………………………………………………………………………………………………………………17
Channel Box……………………………………………………………………………………………………………18
Attribute Editor………………………………………………………………………………………………18
XYZ Koordinat Düzlemi…………………………………………………………………………………19
UV Koordinat Düzlemi……………………………………………………………………………………19
Görüntü Düzlemi…………………………………………………………………………………………………20
Bağımlılık Grafiği…………………………………………………………………………………………20
Eksenlerin Kullanımına Örnek………………………………………………………………20
Hiyerarşi Grafiği……………………………………………………………………………………………21
NURBS Eğrisi Bileşenleri…………………………………………………………………………22
NURBS Yüzey……………………………………………………………………………………………………………22
NURBS Yüzey Bileşenleri……………………………………………………………………………22
Poligonal Yüzey…………………………………………………………………………………………………23
Lattice Deformasyon Aracı………………………………………………………………………23
Sculpt Deformasyon Aracı…………………………………………………………………………24
Cluster Deformasyon Aracı………………………………………………………………………24
Keyframe Animasyon…………………………………………………………………………………………25
Path Animasyon……………………………………………………………………………………………………25
Tepkisel Animasyon…………………………………………………………………………………………26
Katı Cisim Simülasyonu………………………………………………………………………………27
Parçacık Bileşenleri……………………………………………………………………………………27
Yumuşak Cisim………………………………………………………………………………………………………27
Kılavuz Resimli Modelleme………………………………………………………………………28
Yontma Tekniği……………………………………………………………………………………………………28
NURBS Tekniği………………………………………………………………………………………………………28
3D Scanner Tekniği…………………………………………………………………………………………29
Yandan ve Önden Fotoğraflar…………………………………………………………………31
Distort Aracı………………………………………………………………………………………………………31
Straighten Aracı………………………………………………………………………………………………31
İnsan Kafası Kasları……………………………………………………………………………………32
Önden ve Yandan Boyanmış Kas Grupları………………………………………33
Maya’ya Aktarılmış Image Planeler…………………………………………………34
Yanlış Birleştirilmiş Eğriler……………………………………………………………35
Shelf……………………………………………………………………………………………………………………………35
Eğrilerin Oluşturulması……………………………………………………………………………36
Oluşturulan Eğriler………………………………………………………………………………………37
Birail 2 Tool ile Yüzey Oluşturma…………………………………………………37
Oluşturulan Yüzeyler……………………………………………………………………………………38
Smooth İşlemi………………………………………………………………………………………………………38
Oluşturulan Kafa………………………………………………………………………………………………38
Kulağın Tamamlanmış Hali…………………………………………………………………………39
Resim
Resim
Resim
Resim
Resim
Resim
54
55
56
57
58
59
–
–
–
–
–
–
Göz Küresi………………………………………………………………………………………………………………39
Tamamlanmış Göz…………………………………………………………………………………………………39
Projection Kamera Ayarları……………………………………………………………………40
Projection Render’ı………………………………………………………………………………………40
Ön Texture Map……………………………………………………………………………………………………40
Sonuç Renderları………………………………………………………………………………………………41
FORMÜLLER DİZİNİ
Formül
Formül
Formül
Formül
Formül
Formül
Formül
1
2
3
4
5
6
7
-
Bezier Eğrisi………………………………………………………………………………………………………9
Bernstein Polinoları……………………………………………………………………………………9
Bezier Yüzeyi……………………………………………………………………………………………………10
B-Spline Eğrisi………………………………………………………………………………………………11
B-Spline Eğrisi Ağırlık Fonksiyonu……………………………………………12
NURBS Eğrileri…………………………………………………………………………………………………12
B-Spline Yüzeyler…………………………………………………………………………………………13
ÖZET
Bu bitirme tezinde ilk olarak Maya ve diğer üç boyutlu tasarım ve animasyon
programlarının temelini oluşturan bilgisayar grafikleri konuları ana hatlarıyla verilmiştir.
Daha sonra Maya programının özellikleri ve Maya’ya yeni başlayacak kişilerin ara yüze aşina
olması için ara yüz bileşenleri de verilmiştir. Maya’nın nesnelere yaklaşımı ve içindeki
bileşenler ayrıntılı olarak işlenmiş ve Maya ile yapılabilecekler sıralanmıştır. İnsan anatomisi
ve kasları ile ilgili bilgiler gerçekçi organik modelleme yapabilmek için gerekli olduğundan
onlara da değinilmiştir.
Tezin önemli bir kısmını insan kafası modellemesinin B-spline eğrileriyle nasıl
yapıldığı, NURBS yüzeylerle bu eğrilerin arasını yüzeylerle doldurma aşamaları
oluşturmaktadır. Bu aşamalar ekran görüntüleriyle desteklenmektedir, ayrıca Maya’nın örnek
kullanım alanlarının resimleri de bulunmaktadır.
Anahtar Kelimeler: Maya, Modelleme, Organik Modelleme, AutoDesk, Alias,
Animasyon, NURBS Yüzeyler, Bilgisayar Grafikleri, 3D, Anatomi.
1. GENEL BİLGİLER
1.1 Bilgisayar Grafiklerinin Temelleri
Bilgisayar grafiklerinin genel olarak tanımı; bilgisayar tarafından üretilen resimlerdir.
Ancak olaya 3 boyutlu grafikler açısından bakacak olursak; görsel bir objenin matematiksel
veya geometrik tanımlama yardımıyla, 3 boyutlu düzlemden 2 boyutlu düzleme
aktarılmasıdır.
1.1.1 Bilgisayar Grafiklerinin Kullanım Alanları:
•
En çok sanat ve eğlence dünyasında kullanılır. Reklam, film, animasyon sektöründe
bilgisayar grafikleri günümüzün vazgeçilmezleri arasındadır. Ayrıca web sitelerinde
de bu grafiklerden yararlanılmaktadır.
•
Günümüz yayıncılığında bilgisayar grafiklerinden etkin bir şekilde faydalanılmaktadır.
Artık kitaplar ve dergiler bilgisayar grafikleri ile donatılmaktadır.
•
Günümüzde bilgisayar grafikleri ve resim işleme (Image Processing) konuları
birbiriyle ilişkili konular olarak öne çıkıyor. Bilgisayar grafikleri alanı bilgisayar
tabanlı resimleri yaratırken, resim işleme ise mevcut bir resim üzerinde değişiklikler
yapıyor. Analog yollarla elde edilen resimler bilgisayara aktarılarak üzerinde istenilen
her türlü değişiklik yapılabiliyor.
•
Artık çoğu fabrikada, enerji üretim santrallerinde ve hava alanlarında devam eden
işleri gözlemek için bilgisayar ve grafiklerden yararlanılıyor. Fabrikalardaki
otomasyon sistemleri sıcaklık veya basınç gibi bazı değerleri ölçen sensörlerden gelen
değerleri grafiksel bilgiye dönüştürüyor. Hava alanlarında da bilgisayar ve grafikler
kullanılıyor. NASA’nın yürüttüğü bir projede hava alanı kulesi tamamen kapalı ve
hava alanından izole bir yere kuruluyor. Gerçekte olması gereken hava alanı görüntüsü
(uçaklar, araçlar vs.) ise bu odanın çevresine yerleştirilmiş perdelere panoramik olarak
yansıtılıyor. Yansıtılan görüntü kaydedilen gerçek görüntünün bilgisayar tarafından
yeniden üretilmiş şekli. Bu sistem sadece hava alanları için değil roket fırlatılması,
Marsın yüzeyinin araştırılması gibi projelerde de kullanılabiliyor.
•
Gerçek dünyanın simüle edilerek, gerçek hayatta tehlikeli olabilecek birtakım
eğitimler (uçak pilotu ve gemi kaptanı eğitimleri gibi) bu simülasyonlar yardımıyla
tehlikesiz ve daha etkin bir biçimde yapılabiliyor.
•
Bilgisayar grafiklerinin en çok kullanıldığı bir diğer alan ise bilgisayar destekli dizayn
(CAD). Mimarlar artık binaları bilgisayar programlarıyla tasarlayıp müşterilerinin
beğenisine sunabiliyorlar. Müşterilerin bu yapay binalar içinde gezmeleri bile
sağlanabiliyor. Bilgisayar destekli tasarım sadece mimaride kullanılmıyor, günümüzde
elektronik devreler de grafiksel olarak tasarlanıp üretiliyorlar.
•
Bilgisayar grafikleri bilimsel araştırmalarda ve bu araştırmaların sonuçlarının
görselleştirilmesinde de kullanılıyor. Matematikte değişkenlerin değerlerinin 3 boyutlu
bir ortamda gösterilmesinde, kimyada karmaşık moleküllerin gösteriminde, sağlık
alanında insan vücudunun değişik cihazlarla görüntülenmesinde kullanılıyor.
1.1.2 Transformasyon Matrisleri
Bilgisayar
grafiklerinde,
değiştirilmesinde,
şeklinin
oluşturulan
deforme
objenin
edilerek
büyütülüp
başka
bir
küçültülmesinde,
şekle
yer
döndürülmesinde
transformasyon matrisleri kullanılır. Bu matrislerin kullanılma mantığı, objeyi oluşturan
her bir noktanın istenilen şekilde yerinin değiştirilmesidir. Mayada tasarım yaparken de bu
matrislerden etkin bir şekilde yararlanılır.
Translation Matrisi
Scaling Matrisi
Rotation Matrisi
Translation Matrisi: Bir objeyi oluşturan noktaları, objenin ilk yerinden dx, dy, dz kadar
uzağa taşımak için kullanılır.
Scaling Matrisi: Bir objeyi oluşturan köşe noktalarının Sx, Sy, Sz kadar uzaklığa taşınarak
objenin ölçeklenmesini sağlar.
Rotation Matrisi: Objenin bir eksen etrafında kaç derecelik bir açıyla döneceğini belirler.
Şekilde verilen matriste objenin x ekseni etrafında θ kadar bir açıyla dönmesi sağlanmaktadır.
1.2 Üç Boyutlu Nesne Tanımlama Yöntemleri
Bilgisayar grafiklerinde üç boyutlu nesneleri tanımlamak için birçok yöntem
geliştirilmiştir. Hangi tanımlama yöntemin avantajlı olduğu üç boyutlu uygulamanın amaç ve
gereksinimleri, modellenme yöntemleri ve kullanılan modelleme programına göre farklılık
gösterir.
Nesne tanımlama yöntemlerini iki sınıfta incelemek mümkündür: Bu yöntemlerin
ilkinde nesnenin iç kısmını dış ortamdan ayıran sınır (nesnenin yüzeyi) tanımlanır. Bu
yöntemin belirgin örnekleri arasında poligonsal nesneler ve parametrik yüzeyler bulunur.
İkinci yöntemde ise nesnenin uzayda kapladığı hacim göz önünde bulundurulur ve genellikle
bu yöntem nesnenin sınır bilgisinin uygulama için yetersiz kaldığı durumlarda kullanılır.
1.2.1 Poligon Nesneler
Poligonsal nesneler en yaygın kullanılan nesne tanımlama yöntemidir. Poligonsal
tanımlama yöntemlerinde, birbirlerine komşu birçok üç boyutlu poligon nesnenin yüzeyini
oluşturur. Poligonsal nesnelerin diğer nesne tanımlama yöntemlerine göre çok daha yaygın
olarak kullanılmasının başlıca nedenleri, poligonsal tanımlama yöntemlerinin hızlı, kolay ve
esnek olmasıdır. Ancak ayrıntılı bir nesneyi tanımlamak için yüksek sayıda poligon
kullanılması gerekliliği, poligonsal nesnelerin önemli bir dezavantajdır. Örneğin, bir Boeing–
777 uçağının üç boyutlu modeli yaklaşık olarak 500.000.000 adet poligon içerebilir. Bu kadar
fazla sayıda poligon ile çalışmak fazla bellek, yüksek işlemci gücü ve hızlı veri yolları
gerektirecektir.
Resim 1 – Poligonsal Nesneler
Şekil 1'de bazı nesneler ve poligonlarla tanımlanmış halleri gösterilmektedir.
Kullanılan poligon sayısı arttırıldıkça, tanımlamadaki hatalar (gerçek nesne ile poligonlarla
tanımlanmış hali arasındaki fark) o kadar azalacaktır.
1.2.2 Eğriler ve Yüzeyler
Ayrıntılı bir nesneyi tanımlamak için yüksek sayıda poligon kullanılması gerekliliği,
poligonsal nesnelerin en önemli dezavantajıdır. Örneğin, basit kahve kupasının poligonsal
gösterimi binlerce poligon içerebilir ve kupa üzerinde ufak bir değişiklik yapmak için bile
birçok koordinatın değiştirilmesi gereklidir. Dolayısıyla, ayrıntılı nesnelerin gösterimi için
hem daha az bellek ihtiyacı olan hem de modelleme yapan kişiye kolaylıklar sağlayacak daha
esnek yapılara ihtiyaç duyulur.
1.2.2.1 Bézier Eğrileri
Bu yöntem, bir Fransız mühendis olan Pierre Bézier tarafından otomobil tasarımında
kullanmak amacıyla geliştirilmiştir. Bézier eğrilerinin sahip olduğu özellikler, onları eğri ve
yüzey tasarımında bir hayli kullanışlı ve uygun hale getirmektedir. Ayrıca, Bézier eğrilerinin
programlanması da oldukça kolaydır. Bu tür özelliklerinden dolayı, Bézier eğrileri bilgisayar
grafiklerinde yaygın olarak kullanılır.
Pierre Bézier, n+1 adet pi kontrol noktası tarafından kontrol edilen p(u) eğrisini
aşağıdaki gibi tanımlamıştır:
n
∑ pB
i
i, n
(u )
i =0
Formül 1 – Bezier Eğrisi
Denklemde bulunan Bi,n (u) fonksiyonu Bernstein polinomları olarak adlandırılır.
Bi , n(u ) =
n!
u i (1 − u ) n−i
i!(n − i )!
Formül 2 – Bernstein polinomları
Tüm kontrol noktalarının az veya çok eğri üzerinde bir etkisi vardır. Çünkü Bernstein
polinomlarının değeri sadece u=0 ve u=1 dışında sıfırdan farklıdır. Kontrol noktalarının sayısı
ne olursa olsun bu durum değişmez. Kontrolün geniş çaplı olup, kontrol noktalarının tüm eğri
üzerinde etkili olması Bézier eğrilerinin dezavantajlarından birisi olarak kabul edilebilir.
Ayrıntılı Bézier eğrilerini tanımlamak için birçok kontrol noktası kullanmak
mümkündür. Fakat Bézier eğrilerinde kontrolün geniş çaplı olması ve polinomun derecesi
arttıkça matematiksel hesaplamalarının karmaşıklaşması yüzünden kontrol noktalarının
sayısının fazla olması tercih edilmez. Bunun yerine dört kontrol noktasına sahip Bézier
eğrilerinin arka arkaya birleştirilmesiyle daha ayrıntılı eğriler oluşturulur. Bu nedenden
dolayı, kübik Bézier eğrileri (4 kontrol noktasına sahip Bézier eğrileri) diğer dereceden Bézier
eğrilerine göre daha yaygın olarak kullanılır.
Resim 2 - Bir kübik Bézier eğrisi ve onu tanımlamak için kullanılan dört kontrol noktası.
1.2.2.2 Bézier Yüzeyler
Üç boyutlu Bézier yüzeylerinin (diğer adıyla Bézier yamalarının) tanımlanması için
Bézier eğrilerinin gösteriminin genelleştirilmesi mümkündür. Matematiksel olarak, üç boyutlu
yüzeyler iki eğrinin kartezyen çarpımından elde edilebilir. Dolayısıyla, (m+1)(n+1) kontrol
noktası tarafından belirtilen Bézier yüzeyinin gösterimi şöyle olacaktır:
n
m
p(u, v) = ∑∑ pi , jBi , n(u ) Bj , m(v)
i =0 j =0
Formül 3 – Bézier yüzeyi
Resim 3 – 16 kontrol noktası ile tanımlanmış 3 boyutlu Bézier yüzeyi
1.2.2.3 B-Spline Eğrileri
B-spline eğrilerinin teorisi ilk olarak Schoenberg (1946) tarafından önerilmiş olmasına
rağmen, Bilgisayar Destekli Geometrik Dizayn alanında ilk uygulamalar Gordon ve
Riesenfeld (1974) tarafından yapılmıştır.
B-spline eğri ve yüzeyleri kontrol noktaları adı verilen köşe noktaları ile tanımlanırlar.
Bu noktalar kullanılarak elde edilen eğri ve yüzeyler, kontrol noktalarından geçmemekle
birlikte, eğri veya yüzeyin formu tamamen bu noktaların konumlarına göre şekillenmektedir.
Bu kontrol noktalarının oluşturduğu poligona kontrol poligonu denilmektedir. Bu noktalar bir
mıknatıs gibi davranarak eğrinin kontrol poligonunun şeklini takip etmesini sağlar ve sonuçta
kontrol poligonunun sınırları içerisinde kalan karakteristik ve düzgün bir eğri elde edilir.
Resim 4 – Bir B-Spline eğrisi ve kontrol poligonu
B-spline eğrilerinin genel olarak Bézier eğrilerinin geliştirilmesi sonucu ortaya çıkmış
eğriler olduğunu söyleyebiliriz. Yalnız B-spline eğrileri genelde Bézier eğrisi gibi tek parça
bir eğri değildir. B-spline eğrisi en az bir ya da daha çok polinom segmentinin birleşmesinden
oluşmaktadır. B-spline eğrisinin tek bir segmentten oluşması durumunda bu eğri aynı
zamanda Bézier eğrisidir. Bu durumun gerçekleşebilmesi için, eğrinin kontrol noktası sayısı
ile mertebesinin birbirine eşit olması gerekmektedir. Şekil 5’te görülen eğrinin dört kontrol
noktası vardır ve eğrinin mertebesi de dört olarak belirlenmiştir. Dolayısıyla bu eğri, hem Bspline eğrisi hem de Bézier eğrisidir ve tek parça bir eğridir.
Resim 5 – Bézier eğrisine eşdeğer bir B-Spline eğrisi
B-Spline eğrilerinin tanımlanması aşağıdaki şekilde olmaktadır:
n
p (t ) = ∑ PiNi , k (t )
i =0
Formül 4 – B-spline eğrisi
pi n+1 adet poligon köşelerinden biridir. k. dereceden i. normalize edilmiş B-spline
eğrisi için Ni,k(t) ağırlık fonksiyonu recursive formüllerle tanımlanır.
Ni , k (t ) =
(t − xi ) Ni , k − 1(t ) ( Xi + k − t ) Ni + 1, k − 1(t )
+
Xi + k − 1 − X i
X i + k − Xi + 1
Formül 5 – B-spline eğrisi ağırlık fonksiyonu
B-spline eğrileri yerel kontrollerde Bézier eğrilerine göre daha üstündür, eğriyi
oluşturan bir noktanın yeri değiştirildiğinde eğrinin hepsi değişmez.
1.2.2.4 NURBS (Non-Uniform Rational B-Splines) Eğrileri
Temsil kabiliyeti açısından en başarılı yöntemlerden biri olan B-spline eğrilerinin tek
dezavantajı daire, çember gibi konik şekillerin temsilindeki yetersizlikleridir. Versprille
(1975) bu yetersizlikleri gidermek üzere non-üniform rasyonel B-spline eğrilerini (NURBS)
önermiştir ve Bilgisayar Destekli Geometrik Dizayn uygulamalarında kullanmaya başlamıştır.
NURBS eğrilerinin diğer B-spline eğrilerine göre avantajı, bilgisayar destekli tasarım
ortamında karşılaşılabilecek tüm analitik şekilleri (çember, elips, yay) temsil edebilme
kabiliyetidir.
NURBS eğrileri, standart B-spline eğrileri gibi kontrol noktaları (Bi) ve kontrol
poligonu ile tanımlanır. NURBS eğrilerinde farklı olarak her kontrol noktasında bir ağırlık
fonksiyonu tanımlanmıştır. Bu ağırlık fonksiyonu eğrinin formunu etkileyen yeni bir faktör
olarak karşımıza çıkmaktadır. Ağırlık fonksiyonu ait olduğu kontrol noktasının B-spline
eğrisini ne kadar etkileyeceğini belirlemektedir. Ağırlık fonksiyonunun değerinin artması Bspline eğrisini o kontrol noktasına yaklaştırmakta, düşmesi ise uzaklaştırmaktadır.
Rasyonel B-spline eğrileri standart B-spline eğrilerinin genelleştirilmiş halidir ve
ifadesi aşağıdaki gibi verilmektedir:
n +1
n +1
i =1
i =1
P (t ) = ∑ B i Ri ,k (t ) = ∑ Bi
hi N i ,k (t )
n +1
∑h N
i =1
i
i ,k
(t )
Formül 6 – NURBS eğrileri
Bu ifadede, hi her kontrol noktası için tanımlanmış ağırlık fonksiyonunu, R
i,k(t)
rasyonel temel fonksiyonu göstermektedir. Eğer tüm ağırlık fonksiyonlarının bire eşit olduğu
kabul edilirse (hi=1), rasyonel B-spline eğrileri standart B-spline eğrilerine dönüşecektir.
NURBS eğrileri B-spline eğrilerinin genelleştirilmiş hali olduğundan, B-spline eğrileri
için geçerli olan tüm özellikler NURBS eğrileri için de geçerlidir. NURBS eğrileri farklı
olarak aşağıdaki özelliklere sahiptir:
•
Araba, gemi vs. gibi endüstriyel ürünlerde rastlanabilecek her türlü şekil ve formda
(Doğru parçalarından, çember, yay gibi analitik şekillere kadar) eğri ve yüzeylerin
temsil imkanı.
•
Herhangi bir kompleks şekli, az sayıda nokta ile tanımlayarak temsil edebilme imkanı.
•
NURBS eğrilerinin ağırlık fonksiyonları, eğrinin yerel kontrol kabiliyetini
arttırmaktadır. Ağırlık fonksiyonu değerleri kullanıcı tarafından değiştirilerek, eğri
istenildiği kadar kontrol noktalarına yaklaştırılıp uzaklaştırılabilmektedir. (ör. ağırlık
fonksiyonu değerinin sıfır olması, o kontrol noktasının eğri üzerinde herhangi bir
etkisinin olmadığını göstermektedir)
•
Bir NURBS eğrisi tek parça bir eğri ise o eğri aynı zamanda rasyonel bir Bézier
eğrisidir. Dolayısıyla NURBS eğrileri hem Bézier eğrilerini hem de B-spline eğrilerini
bünyesinde barındıran eğrilerdir.
•
NURBS eğrilerinin temel kontrol araçları olarak kontrol noktaları, eğrinin derecesi,
düğüm vektörü ve ağırlık fonksiyonları sayılabilir.
1.2.2.4 B-Spline Yüzeyleri
B-spline eğrileri yüzeyler için genelleştirilerek B-spline yüzeyleri elde edilmektedir.
B-spline yüzeyleri, B-spline eğrilerinin sahip olduğu tüm özelliklere sahiptir. Matematiksel
denklemi de
B-spline eğrilerine benzer olarak aşağıdaki gibidir:
n +1 m +1
umin ≤ u ≤ umax , 2 ≤ k ≤ n + 1,
i =1 j =1
wmin ≤ w ≤ wmax , 2 ≤ l ≤ m + 1
Q(u, w) = ∑∑ Bi , j N i ,k (u ) M j ,l ( w)
Formül 7- B-Spline yüzeyler
Kontrol noktaları, artık kontrol neti olarak adlandırılmakta ve yüzey tanımlamada
kullanılacak olan köşe noktalarını göstermektedir.
Resim 6 – B-Spline yüzeyi ve kontrol neti
B-spline yüzeyleri ile ilgili temel özellikler aşağıdaki gibi sıralanabilir:
•
Bir B-spline yüzeyinin herhangi bir parametrik yönündeki maksimum mertebe değeri,
o yönde tanımlanan nokta sayısı kadardır.
•
B-spline yüzeyinin her iki yöndeki sürekliliği, eğer düğüm vektörlerinde tekrarlanan
değerler yoksa, mertebesinden iki eksiktir (Ck-2), (Cl-2) .Yani B-spline yüzeyi ve tüm
(k-2) ve (l-2)’ye kadar olan türevleri süreklidir.
•
B-spline yüzeyinin herhangi bir transformasyonu (döndürme, ölçeklendirme, vs) için
kontrol netinin transformasyonu yeterlidir.
•
Tek bir kontrol noktasının yüzeye etkisi her iki parametrik yönde de ± k/2, ± l/2 ile
sınırlıdır.
•
Her iki yönde de kontrol noktası sayısı mertebe sayısına eşitse B-spline yüzeyi Bézier
yüzeyine dönüşür.
•
B-spline yüzeyi, tıpkı B-spline eğrilerinde olduğu gibi kontrol noktalarının
oluşturduğu konveks alanlar içinde kalacak şekilde oluşur.
2. MAYA
Maya Nedir?
Maya,
uzun
yıllar
Alias
firması
tarafından
hazırlandıktan sonra 7,0 sürümü ile birlikte Autocad ve
3DMax gibi tanınmış yazılımların sahibi Autodesk firması
tarafından, diğer tüm Alias yazılımları ile birlikte satın
alınmış bir 3D tasarım ve animasyon yazılımıdır.
Günümüzde birçok büyük film, animasyon, oyun ve
tasarım stüdyosu çalışmalarını Maya ile yapmaktadır.
Resim 7- Maya Amblemi
Bu stüdyolara ve Maya ile yaptıkları çalışmalara örnek olarak:
Industrial Light&Magic (Karayip Korsanları 1, 2, 3, Harry Potter serisi, Terminator 3,
Hulk Yeşil Dev… ), New Line Cinema (Yüzüklerin Efendisi serisi…), Pixar (tüm
animasyonları), Vetor Zero, Kleiser-Walcwak (X-Men Serisi…), CapCom, Turner Studios,
Meteor Studios, vb… gösterilebilir. Maya modülerliği ve içerdiği MEL (Maya Embedded
Language) script dilinin esnekliği sayesinde CG (Computer Graphics) sanatçıları tarafından
kısa zamanda benimsenmiş ve kullanılmaya başlanmıştır. Maya için birçok plug-in
tasarlanmış ve bunlar sayesinde kullanımını daha profesyonel ve rahat hale getirmek
amaçlanmıştır.
Resim 8 - Maya’nın günümüz sinema ve animasyon filmlerinde örnek kullanımları:
Sol: Gollum (Yüzüklerin Efendisi), Orta: Davy Jones (Karayip Korsanları) Sağ: Mr. Incredible (İnanılmaz Aile)
Maya’nın Temelleri
Maya programında 10.000’den fazla komut bulunmaktadır ve bu komutların
bulunduğu ara yüze aşina olmak için Maya ile oldukça uzun süre uğraşmak gerekmektedir.
Bu bölümde Maya ara yüzünü ve alt yapısını göreceğiz.
2.2.1 Maya’nın Ara yüzü
QWERTY araçları
Menüler
Durum Çubuğu
(Status Line)
Menü takımı
Shelf
Kanal Kutusu
(Channel Box)
Yerleşimler
(Layouts)
Oynatma
Zaman sürgüsü
(Time Slider)
Alan Sürgüsü
(Range Slider)
Komut Satırı
(Command Line)
Yardım Satırı
(Help Line)
Resim 9 – Maya arayüzü
2.2.1.1 Durum Çubuğu (Status Line)
Menü takımları (Menu Sets)
Render Kontrolleri
Bu menü takımları yardımıyla
var olan menülere(polygon,
animation.,vs) ulaşılabilir, ayrıca kişisel
menüler oluşturulabilir.
Sahnenin neresinin render
edileceğini belirler.
Odaklama Fonksiyonları
Seçme Modları
Hiyerarşiye, nesneye
ve komponente göre seçme sağlar
İşaretçiyi sahnenin belli
yerlerine getirmek için kullanılır
Sahne Dosyası (scene file)
Seçme maskeleri
Bu 3 simge sayesinde
sahneler kaydedilebilir,
açılabilir, yaratılabilir.
Hangi komponentlerin
seçileceğini belirler.
Giriş/Çıkış Bağlantıları
Objelerin birbirlerine
olan bağlantısının nasıl
olacağını belirlerler
Resim 10 – Status Line
Ad seçme
Objeleri isimlerine
göre seçmede kullanılır
Kanal Kutusu
Özellik editörünü,araç
özelliklerini ve kanal
kutusunu gösterip
gizlemede kullanılır.
2.2.1.2 QWERTY Araçları
2.2.1.2 Yerleşimler (Layouts)
Select(Q):Objeleri seçmede kullanılır
Bir eğri çizerek obje seçmede
kullanılır.
Seçili objeleri boyamak için kullanılır.
Tekli perspektif
Dörtlü Perspektif
Move(W):Objeleri hareket ettirmek için
kullanılır.
Rotate(E):Objeleri döndürmek için kullanılır
Perspektif ve Taslak görünümü
Perspektif ve Grafik editörü
Scale(R):Objeleri ölçeklendirmek
için kullanılır.
Genel Manipule aracıdır,
tüm W,E,R işlemlerini birden yapar.
Perspektif ve Hypershade editörü
Perspektif, Grafik ve Hypershade
Nesneleri bozmadan yumuşak düzeltmeler
yapmakta kullanılır.
Show Manipulator(T):Manipule aracını gösterir.
Resim 12 - Layouts
(Y):En son kullanılan aracı seçer.
Resim 11 – QWERTY Tools
2.2.1.3 Hotbox (Space tuşuna basıldığında açılan menü kutusu)
Ana Menüler
Panel Menüleri
Önceki
Emirler
Görünüm
Hotbox
Menü
Takımları:
Kontrolleri
Seçilen menü
takımına
göre gelecek
menüleri
gösterir
Resim 13 – Hotbox
2.2.1.4 Kanal Kutusu (The Channel Box):
Mode Seçimi: Kanal Kutusunu, Layer editörünü veya ikisini birden gösterir.
Kanallar: Üzerine tıklandığında açılan menüden kanal özellikleri
değiştirilebilir.
Objeler: Birden fazla obje seçilmişse bunların arasında geçişi sağlar.
Özellikler: Seçili olan nesnenin ilk oluşturulduğu yere göre yer, şekil ve açı
değişimleri ayrıca nesnenin görülebilirliği buradan ayarlanabilir ve bu özellikler
istenilirse kilitlenebilir.
Girişler: Seçili nesneyi değiştiren giriş değiştiricilerini gösterir.
Giriş Özellikleri: Seçili nesnenin değiştirilebilir giriş özelliklerini gösterir.
Layer Editörü: Katmanlar halinde çalışırken katmanları yönetmek için
kullanılır.
Resim 14- Kanal Kutusu
2.2.1.5 Özellik Editörü (The Attribute Editor):
Ana menü:
List: Bir nesne seçildiğinde otomatik olarak özellikleri yüklemek
için kullanılır.
Selected: Birden fazla nesne seçilirse istenilen nesnenin özelliklerini
görmek için kullanılır.
Focus: Sahnedeki tüm seçili düğümleri gösterir.
Attributes: Bir nesne düğümü için ekstra özellik eklemek veya
çıkarmak için kullanılır.
Düğümler: Seçili nesnenin düğümlerini gösterir.
Transform Attributes: Ana düğüm için yer değiştirme,
döndürme, ölçeklendirme gibi özellikleri gösterir.
Pivots: Ölçeklendirme ve döndürme eksenlerinin ayrı ayrı
gözükmesini sağlar.
Limit Information: Nesnenin yer değiştirme, döndürme,
ölçeklendirme özelliklerinin sınırlandırılmasını sağlar.
Display: Bir nesnenin nasıl gözükeceğini belirleyen özellikler.
Notes: Dökümantasyonda yardımı olması için her düğüm not
almaya uygun yapılmıştır. Buraya düğümle ilgili şeyler yazılabilir
Resim 15 – Özellik editörü
2.2.2 Koordinat Düzlemleri
2.2.2.1 XYZ Koordinat Düzlemi:
Maya’da ve diğer birçok 3D programda kullanılan homojen
koordinat düzlemidir. X uzunluğu, Y yüksekliği, Z derinliği
belirtir. Mayada X kırmızı, Y yeşil, Z mavi olarak gösterilir.
Bu koordinat düzleminde merkez origin adını almaktadır ve
0,0,0 noktası ile temsil edilir.
Resim 16 – XYZ Koordinat Düzlemi
2.2.2.2 UV Koordinat Düzlemi:
Maya’da yüzeyler kendi koordinat sistemlerinde yaratılır.
Bir doğrultuda U adını alırken, diğer doğrultuda V adını
alır. U kırmızı ile ,V yeşil ile gösterilir. Yüzey nesneleri
ile çalışırken veya bu nesnelere kaplama (texture)
eklerken bu koordinat sisteminden yararlanılır. Yüzeyin
bir köşesi origin olarak olarak kullanılır ve tüm
Resim 17 – UV Koordinat Düzlemi
koordinatlar direk olarak yüzeyde uzanır.
2.2.3 Görünümler
2.2.3.1 Perspektif Görünüm:
Sahneye sanki bir kameradan veya bir fotoğraf makinesinin lensinden bakıyormuş gibi
bakmak için kullanılır.
2.2.3.2 Orthographic Görünüm:
Bu görünümler sahneye paraleldir ve daha nesnel bir görünüm sağlarlar. Bu
görünümlerde sadece iki koordinata odaklanılır. Yukarıdan, yandan ve önden bakış açıları
sağlanabilir.
2.2.4 Kameralar
Kameralar da aynı görünüm açıları gibi perspektif ve orthographic olarak ayrılırlar.
Orthographic kameralar sahneye paralel olarak yerleştirilerek yine 2 koordinat açısından
sahneye bakmayı sağlarlar. Perspektif kameralar daha karmaşıktır; göz noktası, gözün baktığı
açı ve odak derinliği gibi özelliklere sahiptirler.
2.2.4.1 Görüntü Düzlemi:
Kameralarla çalışırken, kameralara görüntü düzlemi
(image plane) adı verilen nesneler eklenebilir. Bu
nesnelerin özellikleri sayesinde kamera hareket
ettikçe bu nesneler de hareket eder ve kamera
açısından bakıldığında nesnenin bir arka planı
Resim 18 – Görüntü düzlemi
olduğu hissi doğar.
2.2.5 Bağımlılık Grafiği
Mayanın sistem mimarisi, sahnedeki tüm nesnelerin birbirlerine olan bağımlılıklarını
ve özelliklerini düğümlerle ifade ederek büyük bir esneklik sağlar.
Yan taraftaki grafikte basit bir kürenin bağımlık
grafiği ve bağlantılar gösterilmiştir.
Resim 19 – Bağımlılık grafiği
2.2.5.1 Düğümler:
Mayada eğriler, yüzeyler, ışıklar, kameralar, kaplamalar kısacası her şey bir veya
birbirlerine bağlanmış birden çok düğüm ile ifade edilir. Bu düğümler mayada ki geometri,
ışıklandırma, gölgelendirme gibi nesneleri de kapsayan tüm nesne tiplerini tanımlayabilir.
Yukarıdaki grafikte en üstteki düğüm kürenin transform düğümünü ifade etmektedir. Sol alt
tarafta giriş düğümü, alt ortada şekil düğümü, sağ altta gölgelendirme düğümü bulunmaktadır.
2.2.5.2 Eksenler:
Mayada transform düğümleri eksen noktası (pivot point)
olarak bilinen özel bir bileşene sahiptirler. Bu eksen
noktasının
yeri
değiştirilip
nesne
herhangi
bir
transformasyona uğratılırsa değişik sonuçlar elde edilir.
Pivot noktaları basit olarak nesnelerin ölçeklendiklerinde
veya döndürüldüklerinde sabit kalan noktalarıdır.
Resim 20 – Eksenlerin kullanımına örnek
2.2.5.3 Hiyerarşi:
Maya’da sahneler yapılırken nesneler ve alt
nesneleri birbirleriyle parent- child ilişkisine
sahiptirler. Maya bu düğümlerle çalışırken en
üstteki yani root düğümden başlar ve aşağıya
Resim 21 – Hiyerarşi grafiği
doğru devam eder. Yan taraftaki grafikte solda
bulunan group1 düğümü döndürülürse veya yer değiştirme yapılırsa alt taraftaki düğümler de
bundan etkilenecektir. Ancak nurbsCone düğümü döndürülürse üst düğümler bundan
etkilenmeyecektir. Grafikte sağ tarafta bulunan hiyerarşiye birleşim noktası (joint) hiyerarşisi
denilir. Bu hiyerarşi daha çok karakter yapımında kullanılır. İskelet şekillendirilirken
birbirleriyle bağlantısı olan kemikler birbirlerine joint ile bağlanılır ve bir hiyerarşi
oluşturulur. Bu sayede en üstteki düğüm oynadığında alttakiler de etkilenecektir ancak alt
taraftaki düğümler oynadığında üst taraftakiler nesne hiyerarşisinde olduğu gibi oynamaz. Bu
aynen kolumuzu hareket ettirdiğimizde elimizin de hareket etmesine ama elimizi hareket
ettirdiğimizde kolumuzun hareket etmemesine benzemektedir.
2.2.6 MEL (Maya Embedded Language)
Maya’da herhangi bir şey açıldığında, kullanıldığında veya değiştirildiğinde ufak bir
script çalıştırılmış olunur. Bu scripte MEL (Maya Embedded Language) denilmektedir. MEL
sayesinde basit komutlar yazılabilir, matematiksel ifadeler yazılabilir ,scriptler oluşturularak
Maya’ya fonksiyonellik kazandırılabilir. Animatörler MEL sayesinde komplex sahneler için
makrolar hazırlayarak işlerini kolaylaştırmaktadırlar. Aşağıda bir torus oluşturan ve yerini
değiştiren bir MEL script örneği bulunmaktadır:
CreateNURBSTorus;
setToolTo "CreateNurbsTorusCtx";
torus -ch on -o on -po 0 -ax 0 1 0 -nsp 4 -hr 0.5 ;
// Result: nurbsTorus1 makeNurbTorus1 //
select -cl ;
select -r nurbsTorus1 ;
move -r 2.684282 0 0 ;
select -cl ;
2.3 Maya’da Modelleme
2.3.1 Maya’da NURBS Eğriler
Şekil22 - Maya’da NURBS eğrilerinin önemli bileşenleri
3D tasarım dünyasında, karakter modellemesi yapılırken en fazla kullanılan bileşen
NURBS eğrileridir. Bunun sebebi, poligon modellemeye göre daha fazla esneklik sağlaması
ve genelde yumuşak hatlar içeren karakter modellemede bu esnekliğe ihtiyaç duyulmasıdır.
Şekil 7’de Maya’da tanımlanmış bir NURBS eğrisi ve bu eğriyi oluşturan bileşenler
görülmektedir. Eğrinin şeklinin belirlenmesi büyük bir oranla tasarımcının ustalığına
kalmıştır. Eğrilerle tanımlanacak şekil karmaşıklaştıkça, eğrinin kontrolü bir o kadar zorlaşır.
Bu sebeple, daha az kontrol içeren eğriler kullanmak tasarımcının iyiliğine olacaktır. Eğer
daha fazla kontrole ihtiyaç duyuluyorsa, bu kontroller daha sonra eklenilebilir.
2.3.2 Maya’da NURBS yüzeyler
Resim 23 - NURBS yüzey
Resim 24 – NURBS yüzey bileşenleri
NURBS yüzeyler NURBS eğrilerle aynı matematik tanımlamaya sahiptir ancak bu
yüzeyler U-V koordinat düzleminde tanımlanmıştır. Resim 24’de görülen NURBS yüzey
bileşenleri sayesinde bu yüzeylerin şekli değiştirilebilmektedir. Aynen NURBS eğriler gibi ilk
başta az kontrol bileşeni ile bu yüzeyleri oluşturmak, tasarımcının daha kolay modelleme
yapabilmesini sağlamaktadır.
2.3.3 Maya’da Poligonlar
NURBS yüzeyler daha çok organik tasarımda kullanılırlar, düzgün şekillere sahip
olması gereken mimari ve iç mimari tasarımlar ve benzeri düzgün hatlara sahip olması
gereken nesnelerin modellenmesinde genellikle poligonlarla modelleme yapılır. Aşağıda
Maya’da tanımlanmış bir poligonun kontrol bileşenleri bulunmaktadır:
Resim 25 – Poligonal yüzey
Poligonal yüzeyler tanımlandığında yüzey yumuşaklığını hızlıca değiştirmek için
klavyeden 1(düşük yumuşaklık), 2(orta yumuşaklık) ve 3(yüksek yumuşaklık) tuşları
kullanılabilir.
2.4 Maya’da Deformasyonlar
Deforme ediciler Maya’da tanımlanmış özel nesne türleridir ve diğer nesnelerin
yeniden şekillendirilmesinde kullanılır. Bu nesneler sayesinde animasyonlarda germe (stretch)
ve sıkıştırma (squash) etkilerinden daha fazlası verilebilir.
2.4.1 Lattice (Kafesler)
Lattice’ler, nesneleri dışarıdan saran çerçeveler gibi düşünülebilir. Eğer bu çerçevenin
kontrol noktalarının yeri değiştirilirse, etki olarak tanımlanmış olduğu nesnenin şekli
değiştirilmiş olur.
Resim 26 – Lattice deformasyon aracı
2.4.2 Sculpt (Yontma) Nesneleri
Yontma araçları sayesinde bir yüzey üzerinde itme ve çekme etkileri rahatlıkla
yapılabilir. Bu nesnelerin canlandırma sahnesinde ki pozisyonları canlandırılarak,
animasyonlu yüzey deformasyonları yapılabilir.
Resim 27 – Sculpt deformasyon aracı
2.4.3 Cluster (Küme) Nesneleri
Bu nesneler CV veya lattice noktalarının bir araya getirilmiş halleridir. Cluster tutacı
sayesinde bu noktaların hepsinin birden kontrolü sağlanabilir. Bu nesne sayesinde, kontrol
edilen nesne üzerinde daha zarif etkiler sağlanabilir.
Resim 28 – Cluster deformasyon aracı
2.5 Maya’da Animasyon
Animasyon, objelerin canlandırılması olarak tanımlanabilir. Maya özellikle animasyon
gücü ve etkinliği sayesinde günümüz piyasasında oldukça iyi bir yer edinmiştir. Maya’da
animasyon hazırlamanın değişik yolları vardır. Ancak genellikle izlenen yol, film karelerinde
izlenilen yoldur. Yani bir hareketi oluşturan karelerin arka arkaya değişik hızlarda
gösterilmesi yoluyla sağlanır.
2.5.1 Kilit Kareler Animasyon Yöntemi (Keyframe Animation)
En fazla kullanılan animasyon yöntemidir. Bir nesnenin hareketinin nasıl olacağına
karar verildikten sonra önemli kareler belirlenir ve buralardaki hareketler tanımlanır. Bu
karelerin arasını Maya kendisi tanımlayarak canlandırma etkisinin verilmesi sağlar.
Resim 29 – Keyframe Animasyon
2.5.2 Yol Animasyonu (Path Animation)
Yol animasyonu yönteminde 3 boyutlu uzayda tanımlanan bir eğri sayesinde
canlandırma yapılacak nesnenin hareketi sağlanır. Bu eğrinin veya yol işaretçilerinin şekli
değiştirilerek, hareket düzleminin değiştirilmesi sağlanır.
Resim 30 –Yol Animasyonu
2.5.3 Tepkisel Animasyon (Reactive Animation)
Tepkisel animasyon, bir objenin canlandırma etkilerinin bir diğerine bağlı olduğu
animasyon yöntemidir. Bu animasyon yöntemine en basit örnek iki dişlinin hareketidir. İkinci
dişlinin transformasyonu, ilk dişlinin transformasyon değerleriyle ilişkilendirilir, bu sayede
ilki döndüğünde ikinci çark da dönecektir.
Resim 31 –Tepkisel Animasyon
Maya’da tepkisel animasyon yapmanın birçok yolu vardır. Aşağıda bunlardan birkaçı
listelenmiştir.
Sürülen Anahtarı Atama (Set Driven Key): Bu yöntemde bir adet sürücü (driver), bir adet
de sürülen (driven) nesne vardır. Sürücü nesnenin bir özelliğine atanılan sürme anahtarı
sayesinde, bu özellik değişime uğradığınde sürülen nesnenin o özelliği de belirlenen kriterlere
göre değişime uğrar.
İfadeler (Expressions): Expression’lar, değişik özelliklerin değişik düğümlere atanmasına
izin veren scriptlerdir.
Kısıtlayıcılar (Constraints): Constraint’ler, bir nesnenin başka bir nesneyi işaret etmesini,
yönlenmesini ve göz atmasını sağlayan araçlardır.
Bağlantılar (Connections): Bir nesnenin özellikleri, bağımlılık düğümü bağlantılarını
kullanarak başka bir nesnenin özelliklerine bağlanılabilir. Bu işlem Bağlantı Editörü
(Connection Editor) aracılığıyla yapılır.
2.5.4 Dinamik Animasyon (Dynamics)
Bu animasyon tekniğinde, sahne üzerindeki nesnelerin hareketleri fizik kanunlarına
göre simüle edilir ve diğer tekniklere göre daha gerçekçi animasyon sahneleri oluşturulabilir.
Bu teknikte çarpışma, yer çekimi, rüzgar etkenler sahneye adapte edilebilir. Canlılık, ilk hız,
sürtünme gibi değişkenler ayarlanarak sahnenin bu değişkenlere göre tepki vermesi
sağlanabilir.
Dinamik animasyon tekniği parçacıklar üzerinde veya katı/yumuşak cisimler üzerinde
uygulanabilir.
Katı cisimler deformasyona uğramayan cisimlerdir. Bu simüle etme tekniğinde katı
cisimler aktif ve pasif olarak ayarlanılır ve fizik kuralları bu ayarlamaya göre uygulanır. Aktif
cisimler fizik kurallarına göre hareket ederken, pasif cisimler sadece aktif cisimler tarafından
çarpılan cisimler olmaktadır.
Resim 32 – Bowling topu ve lobutlarla yapılmış bir katı cisim simülasyonu
Parçacıklar; duman, ateş veya patlama etkilerinin yaratılması için kullanılan küçük
noktalardır. Bu noktalar sahneye saçılırlar ve fizik kurallarından etkilenirler.
Resim 33 – Parçacıklar
Yumuşak cisimler, simülasyon esnasında deforme edilebilen yüzeylerdir. Yumuşak
cisim üretimi için bir yüzeyi parçacıklarla birleştirmek gereklidir. Parçacıklar fizik kurallarına
uygun hareket edeceğinden yüzeyi deforme edebilirler.
Resim 34 – Yumuşak cisim
2.5.5 Hareket Yakalama (Motion Capture)
Animasyonda ki karakteri canlandıracak olan bir kişinin üzerine veya bir insan iskeleti
üzerine sensörler takılarak, yapılan hareketlerin yakalanıp Mayaya aktarılması ile yapılan
animasyon tekniğidir.
2.6 Maya’da Organik Modelleme Teknikleri
2.6.1 Kılavuz Resimler Yardımıyla Modelleme
Bir adet profilden ve bir adet de önden olmak üzere iki
adet fotoğraf veya çizim yardımıyla yapılan modelleme
tekniğidir. Bu kılavuz resimler mayaya aktarıldıktan
sonra, yan tarafta ki resimde görüldüğü gibi birbirine dik
açı ile koordinat eksenine oturtulur ve daha sonra
koordinat eksenine eklenilen bir cisim (genellikle küp
Resim 35 – Kılavuz Resimli Modelleme
veya silindir) deforme edilerek bu kılavuz resimlerin hizasına gelmesi sağlanır. Bu cisim
yavaş yavaş şekillendirilerek insan kafası oluşturulur.
2.6.2 Yontma Tekniği (Kaba Poligonal Modelleme )
Bu teknikte de yine bir adet cisim, heykel yapar gibi poligonlarla
şekillendirilip yontularak insan kafası şekli verilir. Bu teknik
genellikle modellenecek kafanın herhangi bir kişiye ait olmadığı
zamanlarda veya oyunlarda yaratık kafası modellenmesinde
kullanılır.
Resim 36 – Yontma Tekniği
2.6.3 NURBS Modelleme
Bu yöntemde tek bir NURBS bileşeninden yola çıkılarak insan kafası
modellemesi yapılır. Bu eğri yine kılavuz resimler yardımıyla veya
başka bir teknikle insan kafası şeklini alana kadar deforme edilir.
İstenilen şekil verildikten sonra bu bileşen kopya edilir ve bir yerden
başlayarak eğriler şekillendirilir. Genellikle ağızdan başlanılır.
Resim 37 – NURBS Tekniği
2.6.4 3D Tarayıcı Yardımıyla Hazır Model Elde Etme
3D tarayıcı vasıtasıyla insan kafasının değişik yönlerden
taranmasıyla elde edilen model RapidForm isimli yazılımla
düzenlenerek daha gerçekçi modeller elde edilebilir. Oldukça
hızlı bir yöntem olduğundan büyük stüdyolar genellikle bu
yöntemi tercih ederler. Animasyon filmlerindeki karakterlerin bir
heykelciği yapılarak 3D tarayıcı vasıtasıyla modellenmesi yapılır
ve Maya’ya aktarılır.
Resim 38 – 3D Scanner Tekniği
Bölüm 3 – Yapılan Çalışma
3. Maya’da İnsan Yüzü Modellemesi
Maya’da insan yüzü modellemesinin kılavuz resimler ve NURBS eğriler ile yapılma
aşamaları, yani bitirme projesinde izlenilen aşamalar aşağıda verilmiştir:
•
Önden ve yandan olmak üzere iki adet fotoğraf çekilir veya çizim hazırlanılır.
Fotoğrafların özellikleri dikkat edilmesi gerekli olan noktalar; fotoğraf makinesine
olan uzaklığın sabit olması sağlanmalıdır, yüz bölgelerinin gözükmesini engelleyen
veya yanıltıcı yönlendirmelere sebebiyet verecek gölgelerin oluşması engellenmelidir.
•
Bu
fotoğraflar
Photoshop
programı
yardımıyla
modelleme
referansı
için
düzeltilmelidir. Fotoğrafın amacı 3 boyutlu bir yüzeyi 2 boyutlu bir ortama taşımak
olduğundan, 2 boyutlu ortamda balıkgözü efekti (eye fish efect) ile karşılaşılması
kaçınılmazdır. Bu görünüm Photoshop CS serisi ile gelen Lens Correction efektiyle
düzeltilebilir. Daha sonra iki fotoğrafta kafanın ana noktalarını belirleyen kısımların
aynı yükseklikte olması sağlanmalıdır. Bu kısım fotoğraf düzenlemenin en önemli
kısmıdır ve oldukça titiz bir çalışma gösterilmelidir, eğer ana noktalar aynı yükseklikte
olmazsa veya fotoğrafı çekilen kişinin makineye olan uzaklığı her iki fotoğrafta
farklıysa ve bu düzeltilmemişse veya kişi fotoğraflarda ayrı yüz ifadelerine sahipse,
Maya’da yapılan model bu kişiye benzemeyecektir.
•
Photoshop’ ta bu fotoğraflar insan kafasının ana kasları açıkça fark edilecek şekilde
canlı
renkle
boyanmalıdır.
Bu
kaslar
daha
sonradan
NURBS
yüzeylere
dönüştürüleceğinden, bu boyanan yerlerin her iki fotoğrafta da aynı yükseklikte ve
yerde olması gereklidir.
•
Bu fotoğraflar Maya’ya image plane olarak aktarılmalı ve daha önceden boyanan
yerlerden NURBS eğrileri çizilmelidir. Daha sonra bu eğrilerin arasında NURBS
yüzeyleri oluşturulmalıdır. İlk aşamada oluşturulan bu yüzeyler akıcı bir görünüme
sahip olmayacaktır, ancak daha sonra bu yüzeyler birleştirilecek ve modellenecek
kişinin yüzünün ayrıntıları bu yüzeyler alçaltılarak ve yükseltilerek modele
eklenilecektir. Bu yüzey deforme etme aşaması estetik cerrahi modellemesinde
genellikle önce ve sonra olarak adlandırılan modellerin biçimlendirilmesinde
kullanılabilir. Kişinin asıl hali modellenirken bu aşamaya gelindiğinde farklı kaydet
seçeneğiyle sonraki halinin modeli, estetik cerrahi yapılacak bölgedeki düzenlemeler
yapıldıktan sonraki haline benzetilerek yapılabilir.
•
Modelin texture haritası Maya’da bulunan projection araçlarından bir tanesi
kullanılarak çıkartılmalı, Photoshop’ta texture için çekilmiş fotoğraflar birleştirilerek
kaplama oluşturulmalı ve oluşturulan texture modele kaplanarak gerçekçi bir deri
görüntüsü verilmelidir.
Yukarıda özeti verilen aşamalar ayrıntılı bir şekilde aşağıda verilmiştir.
3.1 Model Fotoğraflarının Çekilmesi ve Düzenlenmesi
Fotoğraf çekimi için yüksek çözünürlükte
bir fotoğraf makinesine ve tripoda (üçayak) ihtiyaç
duyulmaktadır.
Fotoğrafçılığın
temelleri
de
öğrenilirse daha kaliteli fotoğraflar elde edilebilir.
Gölge oluşmaması için çift flaş kullanılabilir.
Fotoğraf makinesinin kendi flaşına ek olarak bir de
modelin arka tarafına doğru tutulan iki flaş
senkronize olarak çalıştırılırsa gölge oluşumunun
Resim 39-a)Yandan b)Önden Fotoğraflar
önüne geçilebilir veya fotoğraf çekimi gündüz yapılıyorsa renklerin daha yumuşak olması ve
gölge oluşumunun engellenmesi için öğleden sonraki saatler tercih edilebilir. Tripod ve
modelin duracağı yere çizilen bir çizgi yardımıyla iki fotoğrafta da kişinin aynı uzaklıkta
olması sağlanabilir ve Photoshop’ ta bu düzenlemelerin yapılması gereği ortadan kalkar.
Fotoğraf çekimi esnasında kişinin yüz ifadelerinin değişmemesi gereklidir, ayrıca kişinin
saçlarının geriye doğru yatırılması kafanın dış hatlarının işaretlenmesi için gerekli bir
aşamadır. Modellemede kulak kısmı oldukça önemlidir bu yüzden saçların kulakları
örtmemesi gerekir.
Yukarıdaki
uyarılara
göre
çekilen
fotoğraflar
Photoshop’ a aktarıldıktan sonra her biri Filter>Distort>Lens
Correction aracı yardımıyla fotoğrafçıdan ve makine lensinden
kaynaklanan hataları azaltmak için düzeltilir. İlk olarak sağ
tarafta en üstte bulunan
Resim 40 – Distort Aracı
Distort kısmını + kısıma doğru arttırarak balıkgözü etkisi
azaltılır. Eğer kişinin kafası yan duruyorsa, sol tarafta bulunan
straighten aracıyla suratın her iki tarafından referans noktalar
(mesela kulak memeleri, göz bebekleri, dudak çizgileri vb.)
alınarak düzeltilmeye çalışılır.
Resim 41 – Straighten aracı
Daha sonra eğer fotoğraf makinesi kafadan aşağıda veya yukarıda kalmışsa yani makinenin
lensi kişiye direk karşıdan bakmıyorsa vertical perspektif kısmıyla gerekli ayarlamalar
yapılarak düzeltme sağlanır. Bu ayarlar yapıldıktan sonra ok’ e basılıp kasları oluşturacak
olan kısımların boyanması aşamasına geçilir.
Bu aşamaya geçmeden önce insan kafasını oluşturan kasların yapısına bakalım:
3.2 İnsan Kafası Anatomisi
Resim 42 – İnsan Kafası Kasları
Kafa kaslarının gerçekçi olarak modellenmesi, yapılan kafa modelinin animasyon
aşamasında, hareketlerin doğallığı için olmazsa olmazlardan birisidir. Yüz mimiklerinin
oluşmasını ve kafanın boyun ekseni etrafında dönmesini sağlayan kaslar yukarıdaki çizimde
verilmiştir. Göz kası (Orbicularis oculi) ve ağız kası (Orbicularis oris) arasında bulunan kaslar
(Zygomaticus Major ve Zygomaticus Minor) üst dudağın kaldırılması ve indirilmesini
sağlayan kaslardır. Bu kaslar gülümsemeyi ve genellikle küçük çocukların üst dudaklarını
bükerek takındıkları üzüntü ifadelerini sağlarlar. Depressor Angoli Oris ağzın kenarlarını
hareket ettirir, bu kas sayesinde üzüntü ve hayal kırıklığı ifadeleri gerçekleştirilir. Masseter
kası ağzın açılmasını ve kapanmasını sağlar. Sternocleidomastoid kası, kafatasını kulağın
arkasından göğüs kemiğine (sternum) birleştiren kastır ve kafanın dönüşünü sağlar. Bu
kasların dışında kafada daha birçok kas bulunmaktadır ancak bunlar yüz ifadelerini sağlayan
ana kaslar olduğundan sadece bu kasların bulunduğu kısımlar NURBS yüzeylerle ifade
edilecektir.
3.3 Kas Gruplarının Boyanması
Resim 43 a,b – Önden ve yandan kas gruplarının boyanmış hali
Yüzü oluşturan kasların modele aktarılması için, fotoğraflarda yapılması gereken
boyamalar yukarıdaki çizimde gösterilmiştir. Bunlar Photoshop’ ta canlı bir renk seçilerek
dikkatli bir biçimde boyanmalıdır. Boyama aşamasından önce bu iki resim tek bir resim
içerisine farklı layerlar olarak konulmalıdır. Resimler burna, kafanın üst kısmına, çeneye ve
gözlere göre hizalama sağlanmalıdır. Boyama esnasında bu boyanan yerlerin her iki layerda
da aynı hizada ve aynı büyüklükte olması oldukça önemlidir. Modelin Mayada
oluşturulmadan önceki hazırlık aşamaları Mayada yapılan çizimlerden daha önemlidir, bu
kısımlarda gerekli özen gösterilmezse yeniden başa dönmek kaçınılmazdır. Hizalamalar ve
boyamalar yapıldıktan sonra bu tek resim yeniden iki resim olarak ayrılmalıdır. Mayaya çok
yük binmemesi için bu resimler kaydedilirken jpeg olarak ve kalitesi orta seviyelerde
tutularak kaydedilmelidir.
3.4 Resimlerin Maya’ya Aktarılması
Maya açılınca default olarak perspektif görünümde açılır. Bu görünümü sol altta
bulunan QWERTY araç çubuğunun altındaki Layouts araç çubuğunda ikinci sırada bulunan
Four View ile değiştirmeliyiz. Şimdi ekranda Top, Perspektive, Front ve Side olmak üzere 4
kamera açısı gözükmektedir. Henüz resimleri aktarmadan hiçbir orthographic görünümde
yakınlaştırma yapılmaması gerekir. Eğer yakınlaştırma yapılırsa resimler image plane’e
değişik boyutlarda atılmış olur. Eğer herhangi bir yakınlaştırma veya uzaklaştırma yapılmışsa
Maya kapatılıp tekrar açılmalı ve bu şekilde devam edilmelidir. Eğer böyle bir şey
yapılmamışsa, kişinin ön taraftan çekilmiş fotoğrafı Maya’da front kısmında bulunan
View>Image Plane>Import Image kısmından Maya’ya aktarılır. Aynı şekilde profil fotoğrafı
da side kısmına aktarılır. Önden görünümde, fotoğrafta önceden çizilmiş yüzü ikiye ayıran
çizginin tam olarak bu görünümü ikiye ayıran çizgiye denk gelmesi gereklidir. Eğer denk
değilse önden görünüm penceresine gelinerek mouse yardımıyla fotoğraf seçilir ve Channel
Box kutusunda bulunan Input kısmından Center Y seçeneğinde mouse’un orta düğmesini
kaydırmak suretiyle bu hizalama yapılır. Daha sonra perspektif görünüme geçilerek (Layouts
menüsünden en üstteki simgeye basarak veya 4lü görünümdeyken perspektif görünümün
üzerine mouse cursorunu getirip space tuşuna basarak) image planelerin yerleşimine bakılır.
İlk olarak profil image plane’i seçilerek aynı şekilde Channel Box> Inputs kısmından Center
X ile yine mouse’un orta tuşu ile fotoğrafı perspektif görünümde bulunan gridlerin biraz
gerisine getirilir. Bu işlemin aynısı önden görünüm image plane’i için Center Z ile yapılır. Bu
image plane’lerin birbirlerini kesmediğini görmek için bir adet poligonal küp yaratıp, her iki
image plane’de kafanın dış hatları kadar büyütmek gerekir. Elde edilen görünüm aşağıdaki
gibi olmalıdır:
Resim 44 – Maya’ya aktarılmış image planeler
Eğer yukarıdaki şekilde görüldüğü gibi küp image planelerden herhangi birini
kesmiyorsa işlem doğru yapılmış demektir, artık poligonal küp silinebilir (küp seçilip delete
tuşuna basılarak silinebilir). Image Planeler düzgün bir şekilde yerleştirildikten sonra artık
perspektif görünümde onlara ihtiyaç kalmaz, sadece ortographic görünümlerde ihtiyaç vardır.
Perspektif görünümde gözükmelerini engellemek için bu image planeleri tek tek seçip
attribute editorden Image Planes Attributes tabının altındaki in all views’i, looking through
the camera seçeneğiyle değiştirmek yeterli olacaktır.
3.5 Kafanın Ana Hatlarının ve Kas Gruplarının Eğrilerle Belirtilmesi
Bu
aşamaya
geçmeden
bilinmesi
gereken en önemli şey, kafanın ve kas
gruplarının
belirlendiği
eğrilerin
daha
sonradan NURBS yüzeylere birail 2 tool
denilen Maya aracıyla çevrilecek olmasıdır.
Bu aracın çalışma mantığı devamlı olan 2
eğriyi profil olarak alıp daha sonra bu iki
eğrinin arasındaki diğer iki eğri boyunca
Resim 45 – Yanlış birleştirilmiş eğriler
bir yüzey oluşturmaktır. Buradan anlaşılacağı üzere NURBS yüzeyleri oluşturmak için 4 adet
birbirinin devamı olan eğriye ihtiyacımız vardır. Kas gruplarını eğriler ile ifade ederken en
dikkat edilmesi gereken nokta burasıdır. Eğer bu oluşturulan eğriler yukarıda ki şekilde
görüldüğü gibi bir devamlılığa ve aynı yerde kesişime sahip değillerse yüzeyler
oluşturulamayacaklardır.
Bu aşamada en çok ihtiyaç duyulacak araçlar, Mayanın shelf kısmına
yeni bir shelf açarak eklenilirse oldukça hız kazanılır. Shelf editörünün yan
tarafında bulunan küçük oka basarak New Shelf’e basıp, oluşturulacak shelf’e
bir isim verilmelidir. Bu işlemden sonra açılan yeni shelf boş olarak görünüm
Resim46-Shelf
pencerelerinin üst tarafında oluşturulacaktır. Shelf’e yeni butonlar, Ctrl+Alt+Shift’e birlikte
basarken, koyulacak olan butona menüden ulaşıp tıklayarak koyulabilir. Shelf’e eklenmesi
gerekecek araçlar bulundukları menüler ile birlikte aşağıda verilmiştir:
•
Polygons menu set>Edit Curves>Detach Curves
•
Polygons menu set>Edit Curves>Attach Curves(ilk olarak option boxtan girilip attach
metodu olarak blend seçilmelidir ve bu şekilde eklenmelidir )
•
Polygons menu set>Edit Curves>Rebuild Curves(ilk olarak option boxtan girilip
rebuild type’ı uniform’a ve Keep kısmını CV’s e ayarlayıp o şekilde eklenmelidir,
eğrilerimizin hepsinin uniform olması oldukça önemlidir.)
•
Polygons menu set>Edit Curves>Rebuild Curves option box(rebuild ayarlarında
değişiklik yapmamız gerekeceğinden bu ayar kutusunu da shelf’e eklememiz hız
kazandıracaktır)
•
Surfaces menu set>Surfaces>Birail>Birail 2 Tool(Yüzey oluşturmada kullanılacak
olan araç)
•
Surfaces menu set>Edit NURBS >Rebuild Surfaces(ilk olarak option boxtan girilip şu
ayarlar yapılmalıdır:Rebuild Type:Uniform, Parameter Range: 0 to number of spans,
Direction:U and V, Keep CVs:On, Degree U ve Degree V:3, Output Geometry:Nurbs)
•
Edit>Delete All by Type>History (yüzeyleri veya eğrileri attach veya detach ettikten
sonra Mayanın kullanılan araç geçmişini silmemiz gerekiyor, eğer bu yapılmazsa
oldukça büyük sorunlar çıkacaktır.)
•
Create>EP Curve Tool
•
Surfaces menu set>Edit NURBS>Attach Surfaces(ilk olarak option boxtan girilip
attach method:blend yapılmalı ve keep original’ın yanındaki tick kaldırılmalıdır )
•
Surfaces menu set>Edit NURBS>Detach Surfaces(ilk olarak option boxtan girilip
keep original’ın yanındaki tick kaldırılmalıdır )
•
Surfaces menu set>Edit NURBS>Stitch>Global Stitch (Ayrık olan yüzeyler arasındaki
boşluğu azaltmakta kullanılır)
•
Surfaces menu set>Edit NURBS>Sculpt Geometry Tool Option Box (Yüzeyleri
yumuşatma, yükseltme ve çukurlaştırma işlemlerinde kullanılır)
Kas gruplarını ve kafanın ana hatlarını eğrilerle çizmek için ilk olarak oluşturulan
shelf’den EP Curve Tool’a tıklanmalı ve
orthographic görünümlerde(ilk olarak ön
görünümden başlamakta fayda var) oldukça az
nokta kullanmaya gayret göstererek daha önceden
Photoshop’ta çizilen çizgiler takip edilerek eğriler
oluşturulmalıdır. Bir çizginin üzerinde eğri
oluşturulduktan sonra enter’a basılmalı ve
Resim 47 – Eğrilerin oluşturulması
eğrinin tamamlanması gereklidir. Oluşturulan eğrinin diğer orthographic görünümlerde
düzenlemesini yapabilmek için, eğrinin seçilip mouse’un sağ tuşu ile nesne kontrol
araçlarından control vertex’i seçerek diğer görünümlerde de oluşturulan çizgileri takip edecek
şekilde eğrinin düzenlemesi yapılmalıdır. Eğrileri oluştururken kafanın dış hattının tek bir
eğriden oluşturulmasında fayda vardır. Daha önceden bahsedildiği gibi yüzeylerin
oluşturulabilmesi için eğrilerin birbirleriyle kesişmesi gereklidir, bu kesişimin sağlanması için
başka bir eğri yaparken, kesiştirilecek eğri ile birleşimi sağlamak amacıyla klavyeden c tuşuna
basarak(snapping tool) eğrinin son noktasını kesiştirilecek eğri üzerine denk düşürmek
gereklidir. Göz ve göz çevresindeki kas grupları dairesel eğrilerle ifade edildiği için, bunları
oluştururken en son kısma yaklaşıldığında attach curves tuşuyla ilk oluşturulan nokta ile
birleştirilmesi sağlanmalıdır. Burada unutulmaması gerekenler aşağıda verilmiştir:
•
Her attach veya detach yapılmasından sonra history’nin silinmesi unutulmamalıdır!
•
Eğriler oluşturulduktan ve düzenlendikten sonra mutlaka rebuild curves tuşu
kullanılarak uniform olarak yeniden yapılandırılmalıdır. Bu aşama her eğri
tamamlandıktan sonra tek tek de yapılabilir veya tüm eğriler yapıldıktan sonra hepsi
seçilerek hepsi birden rebuild yapılabilir. Rebuild işlemi control vertex kısmındayken
yapılamaz, object mode’a geçilmelidir.
•
Oluşturulan eğriler 4 görünümde birden kontrol
edilmeli ve ani değişimler varsa eğriyi oluşturan
noktalar yeniden düzenlenerek düzgün bir görünüm
sağlanmalıdır.
4 eğri arasında kalan alan yüzeye dönüştürüleceğinden, eğriler
kesişim noktalarından detach edilebilir. Ancak bu detach
işleminde diğer eğri kesişimlerinin engellenmediğinden emin
olunmalıdır. Önceden çizilmiş çizgilerde bulunmayan ağız içi
kısmı ağız animasyonu yapılacaksa mutlaka eklenmelidir.
Yüzey oluşturma işlemine geçmeden önce tüm eğrileri seçip
rebuild etmekte fayda vardır, eğriler uniform olmazsa
Resim 48 – Oluşturulan eğriler
yüzey oluşturmada sorunlar çıkacaktır.
3.6 NURBS Yüzeylerin Oluşturulması
Birail 2 Toolla yüzey oluştururken ilk
olarak karşılıklı duran iki eğri profil olarak
seçilir ve daha sonra bu eğrilerden, hangi iki
eğri boyunca yüzey oluşturulacağı seçilir. Diğer
iki eğri de seçildikten sonra bu 4 eğri
birbirleriyle kesişiyorsa bu eğriler arasında bir
yüzey oluşturulur. Diğer yüzeyleri yapmadan
önce view kısmından NURBS Surfaces’ın
Resim 49 – Birail 2 Tool ile yüzey oluşturma
yanındaki tick kaldırılarak yanlışlıkla eğriler yerine yüzeyleri seçmenin önüne geçilmelidir.
Tüm yüzeyler tamamlandıktan sonra bu sefer view kısmından NURBS Curves’ın yanındaki
tick kaldırılır ve yüzeylerin yanına yeniden tick konularak
yüzeyler görünür yapılır. Yüzeylerin hepsini birden seçerek
rebuild surfaces işlemi yapılır. Bu aşamada oluşturulan model,
fotoğrafları çekilen kişiye pek benzememekte ve yüzeyler
arasında herhangi bir bağlantı bulunmamaktadır. Ancak daha
sonra yapılacak işlemlerle yüzeylerin görünümü değiştirilecek,
yumuşak ve gerçekçi bir görünüm kazandırılacak, birbirleriyle
bağlantıları sağlanacak ve modellenen kişiye daha da benzer bir Resim 50 – Oluşturulan Yüzeyler
durum kazanacaktır.
3.7 NURBS Yüzeylerin Düzeltilmesi
Yüzeylerin birleştirilmesi ve gerçekçi bir görünüm kazandırılması için yan yana olan
NURBS yüzeyler seçilerek önceden oluşturulan shelfdeki Attach Surfaces butonu ile
birleştirilir. Bu birleştirme işleminde birleştirilecek yüzeylerin birleştirilen kenarlarındaki
span sayısının birbirine eşit olması gerekmektedir. Her
birleştirme işleminden sonra birleştirilen yüzeyler diğer
yüzeylerden ayrılacaktır ancak global stitch butonu
yardımıyla
bu
aradaki
oluşan
boşluk
azaltılabilir.
Birleştirme işleminden sonra yüzey uniform olarak rebuild
edilmelidir ve history’nin silinmesi unutulmamalıdır (bu
işlemler buton olarak shelf’e eklenmişti). Birleşimden
sonra sculpt geometry tool’dan smooth işlemi seçilmeli
Resim 51 – Smooth İşlemi
ve yüzeyi yumuşatma işlemi yapılmalıdır. Smooth işleminden
sonra birleştirilen yüzeyler, birleştirildikleri yerdeki isoparm
seçilerek yeniden ayrılır ve tüm yüzeyler bu şekilde düzeltilip
düzgün bir görünüm elde edilene kadar devam edilir. Ayrıca
sculpt geometry tool ile buruna ve yüzün diğer kısımlarına
istenilen görünüm push ve pull işlemleriyle verilmeye çalışılır.
Yüzey düzeltme işlemleri bittikten sonra yüzeylerin hepsi
seçilip Edit>Group ile bu yüzeylerin bir grup altına toplanması
sağlanır. Yüzeyler gruplandıktan sonra bu grup seçilerek
Edit>Duplicate Special Option Box’dan Scale x kısmındaki
1’in başına -1 konularak yüzeylerin ayna simetriği alınarak
kafanın diğer tarafı oluşturulur.
Resim 52 – Oluşturulan kafa
3.8 Kulak Modellemesi
Kulak modellemek için, kafa yüzeylerinin arasında kalan boşluklar referans eğri olarak
alınır. Bu eğriler birleştirilir ve tek bir eğri haline getirilir, daha sonra duplicate işlemi ile
kopyalanarak referans fotolar yardımıyla modellenecek kişinin kulak anatomisine benzetilir.
Bu eğrilerin birbirlerini kesmemesi kulak yüzeyinin oluşturulmasında kullanılacak olan Loft
aracının düzgün bir şekilde çalışması için gereklidir. Eğriler oluşturulup control vertexleri ile
fotoğraflardaki kulağın ana çizgileri oluşturulduktan sonra
içten dışarıya doğru teker teker seçilerek Surfaces>Loft
Tool’a basılır. Oluşan yüzey ilk başta oldukça ilkel bir
kulak görünümündedir ancak Sculpt Geometry Tool ve
yüzey control vertexleri ile modellenenen kişinin kulak
görüntüsü yavaş ve sabırlı bir işlem sonucunda verilebilir.
Resim 53 – Kulağın tamamlanmış hali
3.9 Göz Modellemesi
Göz modellemesinde de aynen kulak modellemesinde olduğu gibi
göz boşluklarını oluşturan yüzeylerin oluşturduğu eğri alınır ve tek bir
eğri olarak birleştirilir. Bu eğriden duplicate işlemi ile 2 adet daha eğri
oluşturulur. Göz boşluğuna oturacak şekilde bir NURBS küre oluşturulur
ve transform değerleriyle oynanarak bilinen göz şekli verilir.
Resim 54 – Göz küresi
Sonradan oluşturulan eğrilerden bir tanesi göz küresinin üzerine gelmeyecek kadar büyütülür,
üçüncü olarak oluşturulan eğri ise göz küresinin tam yüzeyine değecek kadar yakınına getirilir
ve NURBS>Project Curve On Surface aracı ile bu eğrinin göz küresi üzerine map edilmesi
sağlanır. Daha sonra map edilmiş eğrinin asıl hali silinir ve kalan 3
eğri arasında loft aracı ile yüzey oluşturulur. Yine control
vertexleri ve Sculpt Geometry Tool yardımıyla smooth bir
görünüm sağlanır. Kafayı oluşturan diğer yüzeyler ile birleşim
Resim 55 – Tamamlanmış Göz
sağlandıktan sonra bu yüzeyler arasında da smooth bir görünüm sağlanır ve yüzeyler
birbirinden ayırılır.
3.10 Texture Yapımı
Texture yapımı için 45’er derecelik açılarla modellenen kişinin referans fotoğraflarının
çekilmesi gereklidir. Bu fotoğraflardan alınan parçalar Photoshopta projection kamerasından
alınan render görüntüsünün üzerine yapıştırılacak ve sonuçta elimizde texture map olacaktır.
3.10.1 Projection Kamera
Projection görüntüsünün alınması için modelin bulunduğu sahnede başka bir
perspektif kamera tanımlanmalıdır. Bunun için outliner penceresinden seçilen perspektif
kameranın üzerine bir kere tıklanılıp Ctrl+d’ye basmak yeterlidir. Yeni oluşturulan kameraya
çift tıklanıldığında açılan özellikler kısmında aşağıdaki ayarlar yapılmalıdır:
Resim 56 – Projection kamera ayarları
Resim 57 – Projection Render’ı
Bu kameranın transform ayarları tam modeli karşıdan görecek şekilde yapılandırıldıktan sonra
kilitlenmelidir. Render kısmında Render>Render>Render Using “oluşturulan kamera ismi”
seçilip alınan render, .tiff image dosyası olarak kaydedilir.
3.10.2 Photoshop’ta Texture Map Yapımı
Maya’da alınan Projection render’ı Photoshopa’a aktarıldıktan
sonra, referans resimlerden alınan parçalar bu render’ın üzerine transform
değerleriyle oynanılarak örtüştürülür. Bu parçalarla her tarafı kaplanılan
render tiff dosyası olarak kaydedilir. Bu işlem modelin 4 tarafı için de
yapılır sonuçta elde edilen resimler birleştirilir, elde edilen modelin
texture map’idir.
Resim 58 – Ön Texture Map
3.10.3 Texture’ın Modele Kaplanması
Maya’da Hypershade editöründe Create>Material>Lambert menüsünden yeni bir
Lambert materyali oluşturulur. Bu materyale çift tıklanıldığında açılan özellikler menüsünden
Common Material Attributes kısmında en üstte bulunan Color özelliğinin yanında bulunan
option box’a basıldığında açılan pencerede Textures tab’ında 2D Textures kımında ki As
Projection radio butonu aktif hale getirilir ve File seçeneğine basılır. Açılan özelliklerden
Projection Attributes kımsındaki Proj Type:Perspective olarak ayarlanılır, Camera Projection
Attributes kısmındaki Link To Camera seçeneğinde projection yapılmış olan kamera seçilir ve
image kısmında ki option box’a tıklanılır. Açılan pencereden Filter Type off’a getirilir ve
Image Name kısmında ki browse butonu ile yüklenilecek tiff dosyası seçilir. Sonuç olarak
oluşturulan Lambert nesnesine Photoshop’ta hazırlanmış texture eklenmiş olunur. Model
seçildikten sonra bu texturelı materyale tıklanılıp Assign Material to Selection seçeneğine
basılır, ve materyalin modele kaplanması sağlanmış olunur.
Resim 59 – Sonuç Renderları
4. SONUÇLAR ve ÖNERİLER
Maya ile ilgili bir bitirme aldığımda bilgisayar mühendisliği konusu olmaması
sebebiyle birtakım endişelerim vardı, biz bilgisayar mühendisleri Maya’da tasarım değil,
Maya benzeri programlar yapmalıyız diye düşünüyordum. Ama 3D modellemenin günümüz
dünyasındaki yerini daha iyi anladıkça bu endişelerim yerini Maya ile ilgili daha fazla bilgi
edinme isteğine bıraktı. Bu projede izlenilen yöntemlerle yapılan model eğlence sektöründe
kullanılabileceği gibi, estetik cerrahi gibi birtakım sağlık alanlarında da kullanım alanı
bulabilir. Fakat Maya’nın kullanım alanları bunlarla sınırlı olmadığından, oluşturulan modelin
kullanım alanının sınırları insan hayal gücünün sınırlarıyla aynıdır.
Maya oldukça zorlu bir program ve öğrenme sürecinin sonu yok ama Maya ile bir
şeyler yapabildikten sonra bu işin ne kadar keyifli olduğu anlaşılacak ve bu zorlu süreç çok
daha çabuk geçecektir. Herhangi bir 3D modelleme veya animasyon programı geçmişi olan
kişiler internette bulunan yüzlerce bedava ders veren siteden edindikleri bilgilerle Maya’ya
geçiş aşamasını kolaylaştırabilirler.
Günümüz 3D piyasası gittikçe gelişen bilgisayar sistemleri ve sinema sektörünün
ihtiyacı sebebiyle adımlarını daha geniş atmakta, 3D tasarımcılar ve animatörler yüksek
maaşlarla piyasada çok rahat iş bulabilmektedirler. Maya ile ilgili Türkçe kaynak
sıkıntısından dolayı ülkemizde 3DMax kullanımı daha fazladır, ancak 3DMax mimari
tasarımlarda oldukça kolaylık sağlarken, organik modelleme ve animasyon gibi konularda çok
zayıf kalmaktadır. Bu bitirme tezinin asıl amacı Maya’ya adım atacaklara yol göstermektir. O
yolda daha hızlı ilerlemek için daha fazla çalışmak ve deneyim kazanmak gereklidir.
4. KAYNAKLAR
•
Learning Maya (Alias Wavefront - Ocak 1998)
•
Maya 8 At a Glance (George Maestri - 2006)
•
University Of Applied Science Wedel Diploma Thesis – Muscle Based Facial
Animation (Terence Benja Küderle – Şubat 2005)
•
Stop Staring:Facial Modelling And Animation Done Right (Jason Osipa)
•
Türkiye Bilişim Ansiklopedisi
•
www.digital-tutors.com
•
www.thegnomonworkshop.com
•
www.highend3d.com
•
www.dersvar.com
•
www.tr3d.com
•
Digital-Tutors Maya Basics Vol 1-2-3-4 Cd Tutorial
•
Digital-Tutors Character Setup in Maya DVD Tutorial
•
Gnomon Workshop Modelling The Human Head DVD Tutorial
•
Gnomon Workshop Head Modelling For Games DVD Tutorial
•
Gnomon Workshop Humanoid Modelling DVD Tutorial
•
Gnomon Workshop Texture Painting Fundamentals DVD Tutorial