10 Şubat 2015 Salı

Blender Foundation Low Poly Modelleme

( Blender Foundation da başlangıç seviyesinin biraz üzerindekiler için yapılan bir anlatımdır.)
(  ozkancifci06@gmail.com)



Herkeze iyi günler diyorum öncelikle bu konuda elimden geldiğince iyi bir low poly model nasıl yapılıyor onu paylaşmaya çalışıcam.
öncelikle şunu belirtmekte fayda var low poly model nedir ne işe yarar neden low poly tercih ediyoruz.
Özellikle oyunlarda tercih ediliyor, oyunlar bir yandan gerçek zamanlı render yaparak çalışıyor .oyunlarda kasma dediğimiz şey bu render süresinin uzaması oluyor genellikle.
Kısacası ister bir oyun olsun ister bir animasyon olsun render süresini azaltmak için olabildiğince low poly modelleme yapmakta fayda var.

Low Poly yapmanın birçok yolu var kimisi  binlerce edge ve vertex'i eliyle tek tek silerek azaltıyor, kimisi blender dururken yardımcı programlarla uğraşıp bir kamyon inport- export işlemi yapıyor.. Tamamen kişisel tercihe bağlı bir çok yolla low poly model yapmak mümkün.

Şahsen benim tercih ettiğim yöntem yüksek detaylı (poligonlu) bir objeyi  Bake ile düşük poligona çevirme yöntemi .

adım 1 :
       Modellemeye başlıyoruz


Burada dikkat etmemiz gereken yer edge lerimizin birbirini takip ediyor olması. yani loop lar birbirnini ne kadar iyi takip ediyorsa o kadar iyi olur. birbirinden kopuk çizgi hatları varsa modellimizde ileride başımıza bela olarak geri dönüyor onun için hatların düzgün ve birbirini takip ediyor olmasına dikkat!!

adım2:
       Modelimizde boşta kalmış , üst üste gelmiş vertex- edge -face olmamasına dikkat ediyoruz . çalışırken arada bir ''remove doubles'' konutunu vermekte fayda var.



adım3:

     Modelimizin ana hatlarını oluşturuyoruz .Ana hatları oluşturmadan yüksek detaylandırmaya geçersek bu durum el arabasına araba lastiği takmaya çalışmak gibi birşey olur



adım 4:
      Şimdi oluşturduğumuz modelin UvMap'ını hazırlıcaz. Bu kısım yapacağımız işlemler için en önemli kısım onun için UvMap çıkartmadan önce kesinlikle Obje mod da Ctrl+A ile objemizin scale ve rotasyon işlemlerini blender'a tanıtıyoruz. Bu işlemi yapmadan UvMap çıkartırsak Mark Seam hatlarımız en doğru yerde olsa bile Uv map düzgün çıkmayacaktır.Mark seam hatlarımızın doğru yerde olması da önemli. Önce mark seam hatlarımızı oluşturuyoruz.




      Daha sonra Unwrap komutu ile UvMap çıkartıyoruz.Bu aşamada Uv İmage editörde UvMap ı düzenliyebiliriz.Bu aşamadan sonra kesinlikle UvMap da bir değişiklik yapmıcaz !!!



adım4:
       Obje modda modelimizin Shift+D ile bir kopyasını alıyoruz. Shift Double ile kopyalanan obje , ana objenin UvMap da dahil olmak üzere tüm özellikleriyle beraber kopyalanıyor


   
   
      Aslında şu ana kadar yaptığımız işlemler bizim asıl olayımıza refarans oluşturmak içindi.Ana objemiz olan objeyle (bende plane adında olan) bake işlemi dışında başka işimiz kalmadı istersek silebiliriz ama ilerideki işlemi kolaylaştıracağı ve zaman kazandıracağı için ben daha sonra kullanmak için saklıcam onun için gizliyorum ana objemi ve kopyaladığım plane 001 adındaki kopya ile devam edicem çalışmaya.

adım5:
         Artık yüksek poligon sayısıyla çalışıcaz .Yüksek poligon demişken ister edit modda tüm yüzeylerimize subdivade konutu verip yüzey sayısını çoğaltalım , ister SubSurf Modifier ekliyelim veya ikisinide yapalım farketmez ama UvMap a dokunmayalım :) . Sculpt Mode geçip başlıyoruz yontmaya . SubSurf modifierden etkilenmesini istemediğimiz face- edge varsa edit moda geçiyoruz  Shift+E komutu verip rengi kırmızı olana kadar sürüklüyoruz scale işlemi yapar gibi. renk kırmızı ise o face-edge  subsurf modifierden etkilenmez  rengi pembe gibi bir yerde bırakırsak daha az etkileneceği anlamına gelir.

   
     yontma işleminde çok abartılı şeyler yaparsak iyi bir sonuç alamayız ortaya saçma birşey çıkar.Modelleme aşamasında ana hatlarımızı belirlemiştik zaten , işte o ana hatlara uygun işlemler yapmak en iyi sonucu veriyor.

adım 6 :
       Yeteri kadar detaylandırma yaptığımıza inaıyorsak artık Bake işlemi ile Normal Map oluşturucaz .Hani sakladığımız ana objemiz vardı onu şimdi bake için kullanabilirz. Ana objemi ekrana geri çağırıyorum ve Bake işlemi için gerekli olan ayarlamaları yapıyorum.
       İlk önce ana objemiz için Uvİmage editörden yeni bir image dosyası istiyoruz ve ana objemizin UvMapında hiçbir scale rotasyon vs işlemi yapmıyoruz.
       Bu çalışmayı ben cycles da yaptığım için Node editörde ana objemin materyaline bir image texture istiyoruz ve az önce yeni oluşturduğumuz image dosyasını tanıtıyoruz hiç bir bağlantı kurmuyoruz . Sadece bake işleminin o dosyaya yapılması için aktif durumda olmasına dikkat ediyoruz .
       Obje moda geçiyoruz ilk önce yüksek poligonlu kopya objemizi sonra düşük poligonlu ana objemizi shift tuşuna basılı iken seçiyoruz. objeler üstüste geldiğinden dolayı seçmekte zorlanan olursa sağ menüden objelerin isimleri üzerine tıklayarakda seçebilir  tek dikkat etmemiz gereken düşük poligonlu ana objemiz sonra seçilecek ve rengi sarı(aktif obje) olucak .
       Render menüsündeki Bake sekmesini açıp oradaki ayarlarıda yapıyoruz.
Bake Type : Normal
Margin :2px
clear : pasif (çentik yok)
selectec to aktive : aktif ( çentik var)



adım7:  
      Bake butonuna basınca bize bir normal map vericek  Uv image editörden  save image diyerek kaydetmeyi unutmayın.



adım8:
     Artık yüksek poligonlu objemizi düşük poligona çeviricez kopya objemizin yüzey sayısını Decimate modifier ile düşük yüzey sayılı bir objeye çevirebiliriz.Ben farkı görmeniz için yüksek poligonlu objenin bir kopyasını oluşturdum ve 2 sefer Decimate modifier uyguladım.240.000 poligon sayılı objeyi 6871 poligona düşürdüm bu şekilde .Çalıştığım konsept gereği modelim çok extrem hatlara sahip biraz ince ayar ile 1000-1500 poligona düşücektir . Daha toplu olan modellerde insan modeli gibi veya araba modeli gibi modellerde daha iyi sonuç alınıyor.  Aynı normal mapı ana objenin(5544 face olan) üzerine tanıttığımda istediğim sonucu alamadım ama high polyden Decimate modifier ile low poly yapılan objede hiçbir sorun yok.

Low poly yaptığım objeye Node editörede  normal mapı tanıttım.


Sonuç Olarak ;


         Bu çalışma Cycles Render da hazırlandı ama  Blender Render ilede işlemler aynı. Cycles da extra olarak Node Editörü kullanıyoruz . Node editör bize daha ayrıntılı çalışma imkanı tanıyor ve Cysles render  esnasında daha hassas ışık hesaplamaları vs gibi hesaplamalar  yapıyor.
         Bake işlemi her iki render seçeneğinde de aynı mantıkla çalışıyor
Ben biraz daha uğraşarak yüzey sayısını 700 e kadar indirgedim ve Hand painted yöntemiyle texture dosyalarını hazırladım. Aşağıdaki videoda color map ve normal map kullanılmıştır.

https://www.youtube.com/watch?v=2QXL1uvj_sQ


Hiç yorum yok:

Yorum Gönder