zb_old2

ZBrush ve sculpting temelleri

ZBrush programı ve sculpting temelleri

 

 zb_arnold

“2008 de yayınlanan Digital Arts dergilerinde yayınlanan yazılarımızdandır. İstek üzerine aynı şekilde Animanya Blog dan yayınlıyoruz.”

Merhaba arkadaşlar. CG (Computer Graphic) dünyası, dünyada büyük bir sektör haline gelmiş olsa da Türkiye için aynı şeyleri söylemek pek mümkün değil. Tabi ki, nispeten CG’nin hizmet verdiği daha gelişmiş sektörlerimiz var. Bunların başında reklam sektörü gelmekte. Sinema sektörümüz ise hızla gelişmesine rağmen, CG dünyasının nasiplerinden yeni yeni faydalanır olmuştur. Oyun sektörü gibi daha hiç gelişememiş, emekleme safhasında alanlarımızda mevcut. Türkiye’de CG alanında ihtiyaçlar artmaya başlayınca, görüldü ki yetişmiş, alanında uzman insanlar yok, varsa da yurtdışına gitmişler. Bu ihtiyacı karşılayabilecek kişiler, zaman geçtikçe değer kazanmakta ve doğal olarak birçok kişiyi cezp etmekte. Fakat bu alanda uzmanlaşmak çok fazla emek ve yetenek gerektiriyor. Buna rağmen bilgiye ulaşmakta bir o kadar kolay hale geldi.

Digital Arts dergisine baktığımda bir 10 yıl öncesi gözümün önünden geçiyor. Bilgi ve kaynak bulmak çok zordu. Nerde 3d animasyon ile ilgili bir yazı görsem, ufacık bir kupür dahi, hazine bulmuş gibi sevinerek koparıp arşivime eklerdim. O zamanlar Türkiye de bir dergi olacak ve dahası tamamen CG içerikli olacak, hayali bile mümkün değildi. Şimdi sizlerin elinizde… Tek tavsiyem bu bilgileri mutlaka iyi değerlendirin. Çünkü çok değerli bilgiler bunlar dahası Türkçe. Bu bağlamda ben kişisel olarak yıllardır elimden geldiği kadarıyla bilgilerimi paylaşmaya çalıştım. Bundan sonra da bu dergide sizlerle paylaşmaya devam edeceğim.

Bu kadar geniş içerikli CG alanında, en zor kısmı -benim açımdan- konu seçimi olacağı kesin. Uzman olduğum konular var elbet. En iyi bildiklerimden, nispeten daha az bildiğim konulara doğru bir sıralama yapmak isterdim açıkçası. Fakat ihtiyaçlar, bu konuda daha çok önem kazanıyor biliyorum. Bu sebepten en doğru seçim (dergiden de gelen istek üzerine) ZBrush3.1 olacak sanırım. Neden ZBrush değil de ZBrush3.1 dedim, vurgulayarak? Çünkü 3.1 sürümünde geçirdiği evrim inanılmaz. İleride ZBrush Gelişim Serüveni konu başlığında değineceğim

Şimdi ZBrush programını genel hatları ile tanıtıp daha sonraki yazımızda detaylı bir kafa modelleyerek konumuzda uzmanlaşalım ve keyifli bir “workshop” yapalım isterseniz, belki ilerde gelişmekte olan “mudbox” yazılımına da değinip karşılaştırmalar yapabiliriz.

 zb_old2

ZBrush ile “Sculpting” nedir?

 Sculpting kelimesini öncelikle biraz açsak daha anlaşılır olacak. Sculpting heykel yapmak, yontmak, heykeltıraşlık veya çamur yoğurur gibi modelleme yapmak anlamında kullanılan bir kelimedir. “Sculpting” yöntemi ile modelleme, modelleme yöntemine yeni bir yaklaşım olarak ilk çıktığında, pek çok kişi olayın bu noktalara kadar geleceğini tahmin bile etmiyordu.

Yoğurarak/yontarak şekil vermek için basınç hassasiyetli araçlara ihtiyacımız olduğundan, ZBrush kullanımı için kesinlikle bir tablet kalem kullanımı tavsiye edilir. Mouse ile modelleme yapmak gerçekten çok güç olacaktır.

ZBrush Gelişim Serüveni

 ZBrush 1999 yılında ilk sürümünü duyurdu. 1.0 ile 2.0 sürümleri arasında hızlı bir gelişim süreci yaşamasa da 2.0 (2004) sürümü ile bir çığır açmış ve çıkardığı son sürüm olan ZBrush 3.1 ile kullanımı artık çok daha kolay ve bir o kadar da güçlü hale gelmiştir.

ZBrush 2.0 sürümü ile dünya çapında en çok kullanılan ve vazgeçilmez programlardan biri haline gelmeye başladı. Özellikle realizm için en büyük gereksinim olan ayrıntı ve yüksek poligon sayılarına ulaşıldı. Dolayısı ile bu tarihten itibaren internet ortamında ve basılı yayınlarda inanılmaz detayda ve kalitede çalışmalar ve modeller görmeye başladık.

Fakat Türkiye’ye baktığımızda; sektöründe gelişmemiş olmasından kaynaklı olarak, ZBrush ve Mudbox yazılımlarının pek kullanılmadığını ve Türkçe kaynakların çok sınırlı olduğunu görüyoruz.

 ZBrush ile neler yapılır/yapılmaz? Nerelerde kullanılır?

 ZBrush programının çok güçlü olduğu bazı alan ve konular olmasının yanında, aynı zamanda hala geliştiriliyor olmasından dolayı, henüz geliştirilmemiş kısımları da vardır. Bunlar gelecekte gelişir mi, ihtiyaç var mıdır bilemiyorum ama ZBrush’ın hala gelişim miadını tamamlamadığı kesin.

oldboxer_web1024

ZBrush şu an oyun sektöründe (low poly için “project yada bake” etmek suretiyle normal, color, bump ve displacement  map olarak kullanılır) ve film sektöründe  (realizm için) yoğun olarak kullanılmaktadır.

Şimdi ZBrush programı ile neler yapılabilir ona bakalım isterseniz. Maddelerle başlıkları sıralayıp daha sonra örneklerle açıklamak daha doğru olacaktır sanırım. Çünkü hepsini detayları ile anlatmam en azından bu yazıda mümkün olmayacaktır.  Böylece programın içine yavaş yavaş girerek daha teknik açıdan da incelemiş olacağız.

Sculpting ile modelleme

  • ZSphere ile base (temel) model oluşturulabilir.
  • Hazır primitif objeler sayesinde modellemeye başlanılabilir.
  • Base (temel) modeller import edilerek modellemeye başlanılabilir. Bu modeller harici bir programdan alınabileceği gibi ücretsiz internet ortamından ya da ZBrush içindeki kütüphaneden de temin edilebilir.
  • Bu kategoriye almayı uygun gördüğüm, ayrıca 2.5D boyama yapılarak modelle etkileşim yapılabilir.
  • Texture (doku) boyama: Gelişmiş fırça ve alfalar yardımı ile boyama yapmak çok kolaydır. Bir nevi 3 boyutlu doku boyama programı gibidir. Aynı zamanda boyamalara efektli fırçalar yardımı ile varyasyonlar da yapılabilir. Boyanmış dokuyu kolaylıkla export edebilirsiniz.
  • Shading (Malzeme biçimi, gölgeleme): Yeni sürümle birlikte gelen MatCap kütüphanesi ve sahnede gerçek zamanlı gölge ve ışıklar ile çalışmak ZBrush’ın en güçlü özelliklerinden biridir. Ayrıca birçok malzemeyi de içinde barındırır. Bu malzemeler aynı zamanda viewport’ta eşzamanlı olarak görülebilmektedir.
  • Render: Sınırlı bir render imkanı sunar ZBrush. Genellikle viewport’ta gördüğümüzün biraz daha iyi halini verebilir. Render alırken bize birçok ayar sunulsa da bunların temel olanları; ışıklar ayarlanabilir, Antialiasing ile kırıklar giderilebilir, daha yumuşak bir gölge alabiliriz, fill light sayesinde ayrıntılar daha iyi gölgelenir ve görülür.

Yukarda saydıklarımı çoğaltmak mümkün tabi ki fakat temel olarak ZBrush genel olarak modelleme (sculpt) ve dokulama (texture) programıdır. ZBrush ile render ve animasyon yapılmaz. (çok sınırlı) Gerekte yoktur zaten. Gücünü aldığı; yüksek ayrıntıları kolayca girebilmek ve boyama kolaylığı üzerine ilerlemesi en doğrusudur.

Peki, bu yüksek ayrıntılı modelleri nerelerde kullanabilirim? Nasıl import/export ederim? Diye sorabilirsiniz, birçok kişi gibi. Animasyon yapılan programlar henüz bu kadar yüksek poligonlarla rahat çalışamıyor. Evet, ama bunu yapmanın yolları var. Düşük poligonlu export edilmiş bir model ve yüksek ayrıntılar için alınmış map‘ler (örn: displacement, bump…) sayesinde, sadece render esnasında ayrıntıları hesaplatabiliriz. Yeri geldiğinde diğer programlarla nasıl iletişim kurabileceğinizi de açıklamaya çalışacağım.

zbss1

ZBrush Ara yüzü ile Tanışmak

Elbette tüm programın ara yüzünü birkaç sayfada anlatamam fakat bazı püf noktaları ile çok kullanıcının karşılaşabileceği ayrıntılara değineceğim. Öncelikle yeni bir çalışmaya başlamadan önce dosya açmak gerekli tabi ki ya da yeni bir dosya yaratılmalı, fakat ZBrush bu konuda biraz farklı gelebilir. Çalışmaya başlamadan önce bilinmesi gereken üç nokta var. Document, Custom UI ve Tool.

zbss_document

  • Document

ZBrush ta modellemeye başlamak için ilk olarak varsa daha önce kaydedilmiş, yoksa kendinizin ayarlayabileceği bir Document (Doküman) açmalısınız. Document sizin çalışma ekranınızdır. Daha önceden arka fonda (bacground) bir nesneniz ya da resminiz varsa bu document’le birlikte gelecektir, edit yapılamaz.

İPUCU: Document menüsü ile ekranınıza tam olarak oturan bir alan yaratabilirsiniz. Bu alan ne kadar geniş olursa çalışmanız o kadar rahat olacaktır.

zbss_cui 

  • Custom UI (İsteğe bağlı Ara yüz)

ZBrush’ın yine çok güçlü olduğu “Custom UI (kullanıcı ara yüzü)” yaratma özellikleri vardır. Örneğin son versiyonlarında gelen sağ üst köşedeki Interface Color ve Interface Layout ile hazır birçok ara yüz biçimine kolayca sokabilirsiniz. Çalışma şekline göre istediğinizde değiştirmeniz mümkündür.

İPUCU: En üstteki kayan menülerin sol üst köşesindeki ikona basarak rahatlıkla menüyü yana alabilir, istediğiniz anda da yan menüden kapatabilirsiniz. Bu sayede sık çalışacağınız menülerin sürekli yanda açık kalmasını sağlayabilirsiniz. Default UI’de sadece Tool menüsü açık gelecektir.

İPUCU: Ayrıca Preferences > Custom UI ile kendi kullandığınız araçlarla “Tool’lar” ve “Paletler” yapabilirsiniz. Örneğin ben Sculpt yaparken çok sık kullandığım fırçaları altta kolayca erişebileceğim bir alanda topladım. Bunun için Enable Customize yapıp sürükle bırak yöntemini kullanmak kafi.

zbss_custombr

Daha sonra her açılışta son yaptığınız değişikliklerin aktif olmasını isterseniz Preferences > Config menüsünden Save ve Store yapmanız gerekli.

zbss_tool

 Tool menüsü

Tool menüsünden Load (kendi dosya formatı .ZTL) yada Import (yalnızca .OBJ ve .DXF) ile dışarıdan çağırılan bir objeyle başlanılabileceği gibi halihazırda kendi içinde bulunan bazı özel nesneler veya ZSphere ile de başlanılabilir.

Ayrıca ekranda bir nesne yarattıktan sonra Tool menüsü genişler ve modellemenin nerdeyse her aşamasının yapılacağı yardımcı menüler aktif hale gelir. Bu menülerin önemlilerini yeri geldikçe anlatacağım.

 

Sıkça sorulan sorular, detaylar ve püf noktaları

  • Nesneyi ekrana hizalama: Nesneyi ekranda oluştururken Shift tuşuna basılı tutmak ekranda hizalamanızı kolaylaştıracaktır. Shift tuşu objenin 90 derece görünüşlerini ekrana sabitlemeye yarar.
  • Flip hatası: Import edilen nesneniz eğer dönüyorsa, ters duruyorsa Preferences > Importexport dan iFlip – eFlip ayarlarını seçili konumdan kaldırın.
  • Editing: Oluşturulan nesne ile çalışmak için mutlaka Edit butonuna basmanız gerekir. Eğer basılmazsa mouse’u tekrar ekrana değdirdiğinizde yeniden seçili obje oluşacaktır.
  • Ekranı temizlemek: Ekranda bulunan ve Edit durumunda olmayan nesne ya da boyamaları silmek için Layer > Clear butonuna basmanız gerekli. Kısa yol tuşu Ctrl+N.

zbss_geo

  • Ayrıntı girmek: Modelin detayını arttırmak için Tool > Geometry > Divide (Subdivision) yapmak gerekir veya Ctrl+D yi kullanabilirsiniz. Aynı menüden de yapılabileceği gibi detayı yükseltip azaltmak için D ve Shift+D kısa yolları kullanılabilir.
  • Çalışma alanının kullanımı: Sahnede çalışılan nesneyi çalışma ekranına ortalamak için F butonuna basmalısınız. Çalışırken ekranda kalan boşluğa sol Clickl’leyerek rotate aynı zamanda alt tuşuna basarak move ve alt tuşunu bırakarak scale (Mouse sol tuşu hala basılı) yapabilirsiniz.

Ayrıca yandaki ekran kontrol butonları (move, rotate, scale) yardımı ile de yapılabilir. Butonların üzerine çift Click’lemek ekrana oturacak şekilde hizalamaya yarar.

İPUCU: Eğer çalışma ekranı dolu ise, boşluk yok ise, çalışma ekranın etrafındaki küçük çerçeveyi çalışma alanını kontrol etmek için kullanabilirsiniz.

zbss_layers

zbss_morph

  • Katmanlar (layers) ve geri dönüşleri: Modelde yapılan değişiklikleri hafızada tutup tekrar geri dönebilmek için Tool > Morph Target > StoreMT yapıp istenildiği takdirde morph fırçası ile silmek mümkündür. Fakat hafızada yer tutar, gerektikçe kullanmak en iyisidir.

Yine yeni sürümde gelen Tool > Layers ile belli aşamalardaki değişiklikleri layerlar şeklinde hafızada tutabilir ve ileride değişikliklerle tekrar oynanabilir. (hem morph hem Layer sadece çalışılan SDiv için geçerlidir)

İPUCU: Hafıza demişken Preferences > Mem menüsünden Compact Mem ile hafıza kullanımını (ram) ayarlayabilirsiniz. Yüksek seviyedeki subdivision’larda yükseltmek gereklidir.

  • UV için önemli notlar: Bir obje ZBrush’a import edilmeden önce modelleme programları ile UV map’inin yapılmış olması önemlidir. UV içinde overlaped (üst üste gelen nokralar) kısımların olmamasına dikkat edilmelidir. Bu kısımlar ZBrush ta da üst üste gelir ve yapılacak texture ve boyama sorunlu çıkar. Ayrıca alınacak displacement map için sorun yaratır. Test etmek için Tool > Texture > Uv Check, renk olarak gösterir.

İPUCU: Eğer UV yapılmamış ise ZBrush’tan export edilecek map’ler sorunlu çıkar. Export’tan önce çalışma bittikten sonra da UV yapmak mümkündür. Bu konuyu ilerleyen kısımlardaki Texture Oluşturmak altında açıklayacağım.

 Base (temel) modelde değişiklik yapmak: Base mesh de değişiklik yapmak istenilirse 1 subdivision (SDiv=1) da iken obje export Export edilen obj dosyası herhangi bir 3d programı ile açılır. Burada istenilen deformasyonlar veya UV değişiklikleri yapılır ve tekrar aynı adla kaydedilir, ZBrush a tekrar dönülüp bu obj dosyası import’la alınır ve değişiklikler otomatik olarak objeye uygulanmış olur. Burada dikkat edilmesi gereken şey, bu değişikliği objenin topolojisini bozmadan, poligon eklemeden, çıkarmadan yapmaktır

 Obje Topolojisi önemli: UV map’in önemi gibi import edilecek ya da ZBrush içinde oluşturulacak objelerin topolojisi de önemlidir. Sorunsuz bir model için modelin tamamen dörtgenlerden (quad) oluşmasına dikkat edilmelidir. Üçgen ya da çokgenler sorunlu divide olur. Ayrıca ayrıntının çok girileceği kısımlarda poligonlar yoğunlaşmalı ayrıntının az olduğu kısımlarda poligonlar azalmalı ki, optimum divisionda rahat çalışılsın.

ZSphere ile yapılan modellerde ayrıca Tool >Topology menüsü yardımıyla topology’i tekrar düzenlemek mümkündür.

İPUCU: ZBrushta hem çalışma rahatlığı hem de export edilecek texture ve displacement-normal map’in doğru çıkması için objede deliklerin olmaması iyi olur. Örneğin bir kafa modelindeki göz, burun, kulak delikleri kapalı olmalı.

zbss_mask

  • Mask ve hide/unhide işlemleri: Maskeler çalışmak için çok kullanışlı araçlardır. Maskelerle boyanarak belirlenmiş alanlara deformasyonlar uygulamak çok kolaydır. Masklı alan donar (frezee) ve diğer alanlar deforme edilebilir. Seçimi tersine çevirmek için aşağıdaki kısa yol tuşlarına bakınız. Deformasyon (Tool > Deformation) ya da transformlar da aynı şekilde seçili olmayan alan için geçerlidir. Maskelemek için bazı kısa yol tuşlarını bilmek gerek;
  • Obje Ctrl tuşu basılı iken boyanırsa mask boyama yapılmış olur.

 zbss_hide

  • Eğer ekrandaki bir boşluktan yine Ctrl + Sol click’lenerek çizim yapılırsa bir dörtgen seçim alanı oluşur.

 Mask seçimi yapıldıktan sonra mask alanını yumuşatmak için objeye bir defa Ctrl + Sol

 Seçimi tersine çevirmek için (inverse) Ctrl + ekran boşluğuna Sol click.

  • Seçimi temizlemek için ekranın boşluğuna Ctrl + Sol click’lenerek çizim yapılır. (objeye dokunmadan)

 Hide/Unhide modelin belli bir kısmında çalışmak ve hızı arttırmak için ideal bir işlemdir. Özellikle büyük objelerle (örn: fullbody) çalışırken şarttır. Ekran performansı da çok yükselir. Fakat sadece bu işlem için ram doldurma boşaltma işlemi esnasında biraz bekletebilir. Yine Mask gibi kısa yol tuşlarını bilmek lazım, şimdi onları açıklayalım;

  • Ctrl+Shift+Sol Click ile seçilen kare dışındakiler gizlenir.
  • Bir defa objenin üzerine Ctrl+Shift+Sol click’lenirse seçim tersine çevrilir
  • Bir defa boş ekrana Ctrl+Shift+Sol click’lenirse objenin tamamı görünür.

  zbss_brushes

 Fırça ve Alphalar: Fırçalar basınç duyarlı bir tablet kalemi ile çok daha kullanışlı hale gelirler. Fırçaları deformasyonda kullanmak için objedeki edit butonuna basmak gerekir. Edit yapılırken Alt tuşuna basmak fırça etkisini tersine çevirir ve Shift basarak da Smooth yapılabilir. Çeşitli fırçalar seçilerek “freehand” “scatter” “spray” şeklinde boyama ve deformasyonlar yapılabileceği gibi texture yaparken boyama üzerine uygulanacak birçok 2.5D brush da mevcuttur.

zbss_alpha

Alpha boyama ve deformasyon yaparken yardımcı araçlardır. Birkaç kullanım alanı:

  • Seçili olan alfa resmi şeklinde fırça etkisi ile boyama ya da deformasyon
  • Yapılmış bir mask’ı kaydetmek için en kolay yol alfaya çevirmektir. Tool > Masking menüsünden Create Alpha butonuna basılarak Bir Alpha Map oluşturulur. İleride kullanılmak istenilirse istenilen alpha seçilir daha sonra Tool > Alpha > Mask By Alpha ile geri çağrılır.
  • En üst alpha menüsünün içindeki Make St ile seçili alpha Stencil’a çevrilebilir. Stencil kendi menüsünden aktif edildiğinde bu alfa ekranda görülür ve yapılan deformasyonlar bu map baz alınarak yapılır. (örn: bir yüzün deri dokusunda kullanmak için yapılmış deri dokusu şeklindeki alfa)

 Texture Oluşturmak: Objenin UV si eğer düzgün açılmış ise çalışmak daha kolaydır. Fakat son ana kadar UV yapılmamış ise (-ki bazen modelde radikal değişiklikler yapıldığında UV yi tekrar düzeltmek gerekir.) SDiv=1 iken model export edilip diğer yazılımlarla UV düzeltilir ve aynı adla tekrar ZBrush a import edilerek yenilenmiş UV alınmış olunur. (Bkz: Base (temel) modelde değişiklik yapmak)

zbss_texture

IPUCU: Fakat burada dikkat edilecek bir unsurda bu import/export işleminden önce Tool > Morph Target > Store MT ile modeli hafızaya alıp import’tan sonra Tool > Morph Target > Switch yapmak bir sorunla karşılaşmamak için gereklidir.

Texture’a başlamak için en yukarıdaki Texture menüsünden “texture map” boyutları ayarlanabilir. (örn: tipik bir kafa modeli için tavsiye edilen 2048*2048 dir)

Texture yapmak için de yine birkaç yöntem bulunmakta, bunların biri kullanılabileceği gibi hepsi de kullanılabilir:

  • UV map’i olmayan bir model için ZBrush içinde UV oluşturabilirsiniz. Bunun için Tool > Texture > GUVTiles ya da Tool > Texture > AUVTiles butonlarına basarak sıfırdan bir UV yapılabilir. Fakat çıkan texture ZBrush’ın anladığı bir koordinattadır. Bizim içinse anlaşılmaz.

zbss_texture2

  • “Poly Paint” yöntemi ile modeli boyamak için öncelikle Zadd ve Zsub kapatılır. (default UI de yukarıdaki menüde) Rgb butonu açılır. Daha sonra ekranda objeye bir defa click’ledikten sonra artık boyama modundasınız. Renk paletinden renk değiştirerek boyama yapılır. Alfalar ve fırçalar değiştirilebilir. Boyama bittikten sonra Tool > Texture > Col > Txr Butonuna basılarak boyamalar dokuya çevrilir. Boyamaya devam etmek için yaratılan texture yerine “Texture off” seçilerek devam etmek gerekir. Daha sonra bu adımlar tekrar edilir.

İPUCU: “Fırçayı texture yapmak” (map boyayan fırça) isterseniz; Tool > Texture > Disable UV yapmak gerekir. Fakat böyle yaparsanız diğer programlarla hazırladığını UV yok olacaktır. Bunun önüne geçmek için yukarıda anlattığım gibi objeyi başta export sonra import edin.

zbss_pro_master

  • Projection Masterparty bir plugindir. Son zamanlarda daha popüler olmasının nedeni hızıdır. Aynı zamanda 2D 2.5D boyamalara ve model ile etkileşimlerini sağlar. “Projection Master” içindeki “Colors” çarpısı işaretli iken “Drop Now” butonuna basarsanız, ekranda görünen görüntü üzerinde (çeviremezsiniz, simetri yapamazsınız) boyama yapılabilir. Boyamayı modele Project etmek için “Projection Master” > Pickup Now butonuna basılır.

İPUCU: Peki bu kadar kısıtlamaya rağmen neden bu kadar kullanılıyor? Çünkü son derece hızlıdır. 2.5D Brush ve Brush efektleri (örn: glow, noise, sharpen) ile kullanılabilir.

 Hak verirsiniz ki çok fazla başlığı bir yazıda toparlamak çok zor, bazı konuları çok yüzeysel bazı konuları detaylı olarak ele alabildim. Umarım anlattıklarım ZBrush a yeni başlayanlar ve başlamaktan korkanlar için faydalı bir yazı olmuştur.