3 boyutlu modelleme nedir?

pontiac-edgestxt

Merhaba. Bu yazıda ben 3 boyutlu modelleme ile ilgili konuşmaya karar verdim. 3D modelleme nedir ve hangi aşamalardan oluşur?

Birkaç modelleme yöntemi vardır, ama onlardan en yaygını polygonal modelleme. Bazen 3D videolarda veya bilim kurgu filmlerinde herhangi bir nesne file şeklinde gösteriliyor (yukarıdaki resme bakınız). Bu çokgen modellemenin ta kendisidir.

İlk önce tarihe bir göz atalım.  Yıllar önce bilgisayar grafiklerinde Z (üçüncü yükseklik ekseni, 3d boyut) ekseni kavramı ortaya çıktı. Akıllı amcalar 2 boyutlu sistemden 3 boyutlu sisteme geçmeye karar verdiler ve bunu nasıl hayata geçirebilirler değe düşünmeye başladılar. İki boyutta ölçü birimi piksel. Ama üç boyutta ölçü birimi olarak piksel kullanılamaz.

Bunun için onlar 3 boyutta obje neden oluşabilir değe düşünmeye başladılar. Akla gelen ilk şey sahnenin farklı konumlarında, x, y, z koordinatlarında oluşturulabilecek noktalar (vertex) oluyor. Ama görselleştirme için noktalar yetersizdi. Çünkü onların boyutu yoktu.

Akla gelen bir sonraki fikir 3D sahnede bu noktaları çizim (segment) yardımı ile birleştire bilmeleri. Böylece 3 boyutlu sahnede her hangi bir şekil çizmeleri mümkün olacaktı (Wireframe).

Ama bu yeterli değildi. Görselleştirme yapmak için onlara yüzey gerekliydi. Ve bir yüzey oluşturmak için onlara tabii ki en az 3 nokta lazımdı. Böylece mesh (alt obje) kavramı ortaya çıktı.

Ama daha sonra mesh ile çalışmanın rahat olmadığını gördüler ve bundan sonra iki mesh’ in birleşiminden oluşan Polygon kavramı yarandı. Polygon (dörtken) aslında iki mesh’ in (üçken) birleşimi. Bunu görmek için sadece Customize -> Preferences -> Viewport -> Configure Driver yapıp Display All Triangle Edges tikini eklemeniz yeterli (Eğer ekran sürücüsü olarak Direct3D kullanıyorsanız)

triangle-edges

Yüzey basit iki boyutlu geometrik ilkellerden ibaret. Bilgisayar oyunlarında üçgen, diğer maksatlar için ise dörtgen ve açıları çok sayıda olan yüzeyler kullanılıyor. Modelin oluştuğu bu ilkeller polygon adlanıyor. Bilgisayarda nesne oluşturma zamanı âdeta, dörtgenlerle (polygon) yetiniliyor. Çünkü gerektiğinde dörtgenler oyun motoruna export zamanı kolayca üçgene dönüştürülebilir, yumuşatma (smooth) veya tessellate işlemleri ise dörtken kullanıldığında genelde hatasız yapılıyor.

Tessellate nedir? Eyer 3d nesne polygonlardan oluşuyorsa (bilhassa organik nesneler, mesela insan), açık ki, çokgenlerin ölçüleri ne kadar küçük olursa, o kadar sayı fazla olur ve model orijinale daha yakın olur. Tessellate yöntemi şuna dayalı: ilk önce az sayıda çokgenden kaba model yapılır, sonraysa tessellate operasyonuna başlanıyor. Bu zaman her çokgen 4 parçaya bölünür. Yani, çokgen dörtgense, ( kareye yakın olursa daha iyi), o zaman tessellate algoritması kaliteli ve tahmin edilebilir bir sonuç verir. Yumuşatma operasyonu da, buda neredeyse tessellate’ in ta kendisidir, sadece açıların daha genişlenmesiyle, kareye yakın olan çokgenlerde iyi bir sonuç almayı sağlar.

yuzey
Yukarıda belirtildiği gibi, çokgen çok olursa, model daha çok orijinale benzeyebilir (benzeyebilir, çünkü model orijinale benzemeli, bu ise aynı zamanda modelcinin ustalığına da bağlı).

Ama çok sayıda çokgen kullanmanın ters yüzü de var: bu üretimin düşmesidir. Çokgen ne kadar fazla olursa, onları oluşturan noktalar o kadar fazla olur ve işlemci daha çok verinin üstesinden gelmek zorunda kalır. Bu yüzden 3D grafik – modelin detaylı bir briçimde hazırlanması ile üretimlik arasında bir uzlaşmadır. Bu nedenle hight poly ve low poly terimleri ortaya çıktı, yani yüksek çokgenli (polygonlu) model ve düşük çokgenli model. Oyunlarda düşük çokgenli modeller uygulanıyor, çünkü orada gerçek zamanda görselleşme kullanılmaktadır. Bu arada üretimliği yükseltmek amacıyla oyunlarda modeller üçgenlerle sunuluyor: çünkü grafik işlemciler donanım düzeyinde saniyede milyonlarca üçgeni hızla inceleyebiliyorlar.

yuzey2
Genelde, çokgen modelleme nesnenin yalnız hacme sahip olduğu, içeridense boş olduğu oyuk modellemeye ait. Bu bir küp modeli yapıp, ardından yüzeyin birini yıkarsak, içeride boşluk görürüz anlamına gelir.

Ayrıca aynı küpü tekparça bir nesne olarak gösteren, katı cisimleri modelleme programları da mevcut. Bu programlarda (örneğin, Autodesk Inventor) çokgen modellemede kullanılanlardan farklı olarak matematiksel modeller kullanılmakta. Katı modellemenin algoritmaları teknoloji geliştirilmesi zamanı mekanizma modellemesi için daha uygun. Autodesk Inventor gibi programların pahlama, delme, boyutlandırma, toleranslar gibi teknoloji işlemleri göz önüne alan modelleme araçları vardır. Meydana gelen modelleri, ürünü metal veya diğer malzeme şeklinde almak için hemen uygun tezgâha gönderebiliriz.

Üstelik girinti ve çıkıntıların yapımından ibaret olan 3d oylumlama (kabaca söylersek) programları da mevcut (ZBrush, Autodesk Mudbox). Bu teknik heykeltıraşların kilden bir şey yapmasına benzer – lüzumsuzu kaldırıp, gerekeni eklemek. Bu programların yardımıyla gerçekçi yüzey şeklini alabiliriz, mesela yüzdeki kırışlar veya kumaşın kırışlarını. Şimdi yüksek çokgenli karakter (insan, hayvan ve s.) modelleri (modelleme için model önemli sayıda çokgenlere sahip olmalı) çoğu zaman bu modelleme programlarını kullanarak yapılıyor. Şöyle bir deneyim yaygınlaşmış: genelde model yapımı ilk başta polygonal modelleme programlarının yardımıyla yapılıyor, ardından oylumlama programında tessellate işlemi yapılıp ve küçük detaylar ekleniyor.

Bu tür programların cekirdeği yüksek sayıda polygonla çalışmak için tasarlanmış. Onun için bilgisayarınız güçlü olmasa bile milyonlarla polygondan oluşan bir sahneni kaldırabilir. Ama tabii ki böğle programlarda profesyonel görselleştirme yapmak mümkün değil. Onlar sırf 3d modelleme için tasarlanmış. Bu tür programlardan her hangi birini bilmeniz size gerçekçi sahneler oluşturmanıza yardımcı olur. Mimari tasarım için de bu programları kullanabilirsiniz. Programın arayüzünde, bu yönde size yardımcı olabilecek fazla faydalı araçlar vardır.

3d-heykel

Diyelim hazır bir tank modelimiz var. Ama tanka pek benzemiyor. Peki neder böyle oluyor?

3dtank

Çünkü bu aşamada sadece geometrik şekillerden veriler içeren matematiksel modelimiz var. Ama gerçek bir nesnenin şekilden başka rengi, yoğunluğu, yansıtma özelliği ve hatta kokusu vardır. Sonuncusu, henüz 3D grafikte uygulanmıyor, ama ötekilerini simule edebiliriz :-)  Modele istenen renk ve parıltıyı vermek dokulama (texturing) adlanıyor (doku kelimesinden kaynaklanıyor)

Genelde doku – 3D modelin üzerine atanan iki boyutlu bir resimdir. Doku hem prosedürel – algoritma yardımıyla oluşturulan, grafik editörde çizilmiş veya gerçek bir nesnenin fotoğrafıda olabilir. Dokunun yardımıyla resim ve modelin rengi belirtiliyor, ama gerçek yüzey diğer seçeneklere de sahip: yansıtma özelliği, kırılma, yüzey şekli, şeffaflık ve b.

3d-tank2

 

Tüm bu seçenekler malzemenin özelliklerinde belirtilmiştir. Yani 3D grafik açısından malzeme – yüzey parametrelerini açıklayan matematiksel bir modeldir. Mesela, su için muhakkak şeffaflık ve yansıtma özelliğini belirtmek lazım.

Malzemeyi (dokuyu) 3D modele atamadan önce onun kaplama koordinatlarını çıkarmak gerekiyor. Sanki modeli parçalara ayırarak masa üzerine koymuşuz gibi. Bu iki boyutlu dokunun sonra modele doğru kaplanması için gerekli.

unwrap

Böylece 3D modelin yapılması genelde şu aşamalardan ibaret:

1. Referans görüntüler veya modelin kendisini almak (yani modellenecek nesnenin). Veya eskizin çizimi.
2. Referansa göre geometrinin modellenmesi.
3. Kaplama koordinatlarının çıkarılması
4. Dokuların çizimi veya dosyalar şeklinde diğer bir yöntemle onların alınması.
5. Malzeme seçeneklerini ayarlama (dokular, kırılma, yansıma, şeffaflık).

Şimdi 3D model görselleştirme – resim almak için hazır.

Birinci ve ikinci madde kaldırılabilir eğer model sade ise, ama genelde, bu beş adımsız iyi bir neticeye ulaşmak mümkün değil.

Özetleyelim:
Kâğıt üzerinde olan resim ve 3D resim arasındaki önemli fark işlemin kendisindedir. İki boyutlu bir resim, bir kural olarak, iki aşamada oluşur: eskiz ve boyama. 3D grafikte modeli yaptıktan sonra onu sahneye (veya stüdyoya) diğer nesnelerin yanına yerleştirmek, sahneyi aydınlatmak, kamerayı eklemek lazım ve yalnız bundan sonra bitmiş bir resmi görebileceğinizi ummalısınız. 3D grafikte görüntüleme fiziksel modele dayanıyor, bir kural olarak, bu ışık ışınının yayılması modeli yansıma, kırılma ve dağılımı göz önüne alarak hesaplanır. Boya resim yaparak kendimiz gölgeler, parıltılar çizeriz, üç boyutlu grafikte ise aydınlatma, malzemeler, geometri, kamera özelliklerini göz önüne alarak hazırlıyoruz. Program resmi kendisi tasarlıyor.

Bugünlük bu kadar.

3 boyutlu modelleme nedir? için 2 cevap

  • Merhaba Sitene ilk defa giriyorum. Oldukça başarılı buldum. Kendimi geliştirmem için çok ipucu var. Verdiğin emekler için teşşekkür ederim.

  • türkçe dilinde böyle bir yazı bulmak mutluluk verici. eline sağlık. çalışmalarına devam etmen dileğiyle.

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Bugün dünden daha iyiyiz!

Dersler
Anket

Ekran kartı seçiminiz

Sonuçları Göster

Yükleniyor ... Yükleniyor ...