Ana sayfa Yazılım Modo 501 – Recoil Uygulaması

Modo 501 – Recoil Uygulaması

0

“Bu ay Modo 501’e ait Recoil isimli fizik simülatörü eklentisi ile uygulamalı deneme atışı yapıyoruz”.
 

Recoil’den geçtiğimiz sayıda bahsetmiştik, şimdi uygulamasına geçiyoruz. Daha önce de açıkladığımız gibi Recoil obje temelli fiziksel simülasyon eklentisi. Cisimlerin birbirileriyle çarpışmaları üzerine tanımlanan parametreler üzerinden tepki analizi yapan bu eklenti ile sahnenize yerleştireceğiniz çeşitli kuvvetler ile objeler üzerinde değişik sonuçlar alabilirsiniz. örneğin yatayda bir rüzgar etkisi ile hareket eden bir topun çarptığı yüzeyden sekmesi gibi sonuçları bu eklenti ile hesaplayabiliriz.

Recoil aynı zamanda mekanik yapıların da fiziki simülasyonunu yapabilmektedir. örneğin dişli çarkların birbirini tetiklemesi, zincir halkalarının birbirleri üzerindeki etkileri, tank paleti gibi mekanik aksamları Recoil ile canlandırabilirsiniz.
 


 
Animasyon alanında faydalı bir eklenti olan Recoil ile biz sahne oluşturma üzerine uygulama yapacağız. Yani illa bir animasyon sonucu elde etmenize gerek yok. Durağan sahne çalışmalarınızda da Recoil size yardımcı olacaktır. örneğin sahnenizde elle tek tek dizildiği belli olmayacak, tamamen ağırlık merkezlerine ve birbirlerine dayandıkları yüzeylere göre yığılmış objeler oluşturabilirsiniz. Yine animasyon şeklinde sonuç oluşturmak yerine fiziksel bir hareketin/olayın o anki görünümünü motion blur açık şekilde sunarak da durağan sahne çalışmalarınızda Recoil’i değerlendirebilirsiniz.

Recoil ile gerçekleştireceğimiz çalışmaya gelince… Bir cam kaba çivi yığını dolduracağız. Bunu yaparken Recoil’in en can alıcı parametrelerini ve bu parametrelerin fizik simülasyonundaki etkilerini inceleyeceğiz.

 

Modeller

Modelleme açısından fazla bir yük yok sahnemizde. Zaten deneysel bir çalışma yaptığımız için çok fazla sanatsal bir kaygı hissetmedim. Sahnede 1 zemin, 1 kap ve 3 farklı modelden kopyalanmış 238 adet çivimiz var.

çivileri; bir küre oluşturup onun üzerinde edge bevel, scale, move gibi temel araçları kullanarak oluşturdum. Sonrasında ise elimdeki doneyi düz çiviyi bükerek çeşitlilik yaratması açısından 2 alternatif ile toplam 3 çeşit çiviye tamamladım.

Resim 01’de Modo’nun hazır modellerinden eklenmiş küreyi görebilirsiniz. Kürenin başta üst kısmını kütleştirmek için ilgili kenarları seçip düşeyde ölçekleyerek (Scale) basık bir görünüm oluşturdum. Sonrasında altta kalan kenarları seçip yatay düzlemde ölçekleyerek daralttım.
 


Resim 01
 
Sonrasında sivrilttiğim yüzeyleri ortadan kaldırıp geri kalan çemberi aşağı doğru uzatarak sütunsal bir uzanım yakaladım. Sütunun en ucundaki noktaları ise yine yatay düzlemde %0’a ölçekleyerek (scale 2d) bir araya gelmelerini sağladım. Ufak bir not olarak belirtelim; ölçeklediğinizde tek nokta gibi görünmesine rağmen 24 nokta (benim küre modelim 24 kenarlı olduğu için sayı böyle) üst üste gelmiştir. Merge Tool ile bu noktaları tek noktaya dönüştürmeniz modelinizin kalitesini (en azından teoride) artıracaktır (Resim 02).
 

Resim 02

 

çivilerin uçları aslında buradaki gibi silindirik olarak sivrilmez. Resim 03’teki gibi 4 kenarlı daralma etkisini sağlamak için model üzerindeki bir kaç nokta ile oynamak zorunda kaldım. Adımlarımı Resim 04’te görebilirsiniz. Burada öncelikle oyukları yaratıp sonrasında subdivision mode’u açıp seçtiğim kenarları edge weight aracı ile keskinleştirdim ve bir kaç noktayı yukarı taşıyarak oval bir görünüm verdim.
 

Resim 03

Resim 04
Resim 05’te aynı işlemi çivinin tepsinde de uyguladığımı göreceksiniz. Edge weight aracı subdivision ile yumuşattığınız modelinizde istediğiniz noktalarda bu yumuşatma işlemini kısmı olarak kontrol etmenizi sağlıyor.
 

Resim 05
Düz çivi modelini bu şekilde oluşturduktan sonra çeşitlilik yaratmak için eğri çiviler de oluşturmak istedim. Bir kopya oluşturduktan sonra Linear Falloff aracını Resim 06’daki gibi yerleştirdikten sonra modeli dikey düzlemde çevirerek (rotate) çivinin Linear Falloff doğrultusu boyunca kısmen bükülmesini sağladım. Modelin, Linear Falloff doğrusunun kalın kenarına yakın kısımları dönerken sivrilen kısmına yakın kısmı dönmediğinden dolayı sevimli bir bükülme elde etmiş oldum.
 

Resim 06

 

Modelleri bu şekilde oluşturduktan sonra elimdeki 3 çeşit çivi modelini kopyalayarak dik doğrusal şekilde sıraladım. çünkü Recoil aşamasına geçiyoruz. Recoil ile bu çivileri silindirden modellediğim kovanın içine dökeceğim.

Array komutu ve sağ paneldeki mesh’lerin sağ tıklayıp duplicate seçilerek çoğaltılmış halini Resim 07’de görebilirsiniz. Bu işlemi de hallettikten sonra sahnemi Recoil aşamasına tamamen hazırlamış oldum.
 


Resim 07
 
Recoil!

Recoil simülasyonu için öncelikle sahnedeki bileşenleri fiziksel olarak tanımlamamız gerekiyor. Bunlar basit tanımlamalardan ibaret. önemli parametreleri tek tek inceleyeceğiz.

Recoil menüsüne ulaşmak için üstten animate arabirimini seçtikten sonra sol panelde Recoil yan sekmesine tıklayarak Recoil menüsüne erişebilirsiniz. Bu menüdeki araçlar üst paneldeki Recoil menüsünde de mevcut (Resim 08).

Menüyü aktif hale getirdikten sonra öncelikle sahnedeki sabit ve hareketli cisimleri belirlememiz gerekiyor. Item seçim modunu aktif hale getiriyoruz.


Resim 08

 

Sabit Modellerin Tanımı

Sabit modelleri tanımlamak için zemin ve cam kap modellerini seçip sol paneldeki “Make passive rigid body” butonuna tıklıyoruz. Bu sayede seçtiğimiz modeller yer çekimine karşı koyarak sabitlenecektir. Bu işlemden sonra seçili objelerin özelliklerinin yer aldığı sağ panelde “Dynamic” yan sekmesi açılacaktır. Buradaki özelliklerin bir çoğu sabit objeler için değil, aşağıda çiviler için açıklayacağım hareketli objeler için gerekli parametreleri içermektedir (Resim 09).
 


Resim 09
 
Type kısmındaki kinematic seçeneği objenin sabitlenmesini sağlamaktadır. Sonradan fikir değiştirirseniz hareketli obje olmasını sağlamak için Type kısmındaki kinematic seçeneğini dynamic olarak değiştirebilirsiniz.

Sabit objeler için bizi ilgilendiren tek özellik “Collision Type” oluyor. Collision type çarpışma mantığını tanımlamak için gereken parametredir. Sabit seçtiğiniz objeler çok karmaşık geometriye sahip olabilir. Bu simülasyon hesabını uzatacaktır. Bu yüzden o şekle en yakın tercihi burada seçerek işleminizin hızlanmasını sağlayabilirsiniz. Bu menüden objenizi ne olarak tanımlarsanız diğer cisimlerle bu tanımladığınız geometri üzerinden çarpışma hesabı yapılacaktır.

 

Collision Type seçeneklerini özetleyecek olursak;

Bbox – Bounding Box’ın kısaltmasıdır. Objenizin etrafı bir dikdörtgenler prizması ile kaplandığında oluşacak geometrik şekildir. Bir küreye bunu uyguladınız diyelim; küreye objeler çarparken oval kısımlara daha yaklaşmadan sanki bir küpe çarpıyormuş gibi sekecektir. bbox hızlı sonuç veren bir tercihtir fakat verdiğim örnekteki gibi saçma sonuçlar elde etmemek için collision type’ı doğru belirlemek çok önemli.

Sphere – Sabit objenizi, onu saran bir küre ile koruyacaktır. Bu da köşeli bir cisim için hatalı tercih olacaktır. Hızlı hesap yapılmasını sağlamaktadır.

Hull – Vertex point’ler üzerinden modele en yakın geometriyi oluşturan hızlı bir çözümdür. Sphere ve bbox’a göre hesabın uzamasını sağlar fakat şimdiye kadar anlamsız bir sonuç elde etmedim. Aşağıda açıklayacağım Mesh’e göre çivilerimde 10 kat daha hızlı sonuç verdi.

Mesh –
Modeliniz neyse o şekilde çarpışma hesaplar. Simülasyon hesabı en yavaş yapılan tercihtir fakat nokta atışı sonuç vermektedir.

Static Plane – Sabit yüzey şeklinde objeler için birebirdir. Hareketsiz (static) ön tanımı olduğundan dolayı sabit zeminler için en hızlı sonucu verir.

Static Mesh –
Sabit kompleks yüzeyler için Mesh’ten daha hızlı fakat diğer seçeneklerden daha yavaş hesaplama yapılmasını sağlamaktadır.

Capsule X,Y,Z – Koordinat eksenine dayalı kapsül şeklindeki dış kaplama olarak değerlendirilebilir.

Cylinder X,Y,Z – Koordinat eksenine dayalı silindir şeklindeki dış kaplama olarak değerlendirilebilir.

 

Dinamik Modellerin Tanımı

Hareketli objelerin tanımını yapmak içinse tüm çivileri seçip “Make active rigid body” butonuna tıklıyoruz. Böylelikle çivilerin yerçekimine ayak uydurup dökülmelerini sağlayacağız. Sağ paneldeki Dynamic yan sekmesindeki özelliklerin bir çoğu hareketli objelerin simülasyon esnasındaki tepkilerini belirlemekte kullanılmaktadır (Resim 10).
 


Resim 10
 
Bunlardan önemli olanları inceleyecek olursak;

Density – Objenin yapısal katılığını ve ağırlığı çarpan olarak etkilemektedir.

Mass – Density ile beraber objenin ağırlığını tanımlamaktadır.

Linear Damping –
Dinamik objenin doğrusal hareketinde karşılaştığı havanın sürtünme miktarı olarak düşünebilirsiniz. Objenin simülasyon tamamlandığında hareketsizleşmesini sağlamak için %2-3 civarında bir değer vermenizde fayda var.

Angular Damping – Linear damping ile aynı amaca hizmet eder. Tek farkı doğrusal hareketi kısmak için değil objenin dönmesi (rotasyonu) ile ilgili sınırlama getirir.

Bounce – Objenin sekme miktarını belirlemektedir. Ne kadar yüksekse obje sabit veya dinamik bir objeye çarptığında o kadar sekecektir.

Friction – Objenin diğer sabit ve hareketli objelerle sürtünmesinden dolayı kaybedeceği hızı belirlemektedir. Düşükken obje kaygan bir tepki verirken yüksek olduğunda daha dirençli bir yapı kazanacaktır.

Margin – Objenin diğer objelerle çarpışması ile ilgili bir müdahale aracıdır. Birbiri ile çarpışan 2 küre düşünün. Margin değeri pozitif değerdeyse küreler birbirine temas etmeden uzaklaşacak, negatif değerdeyse belli bir miktar iç içe girdikten sonra sekerek birbirlerinden uzaklaşacaklardır.

 

Simülasyon Süreci

Objelerin parametrik tanımlamaları bittikten sonrası tamamen beklemeye kalıyor. Sol paneldeki Run butonu ile simülasyonu arka planda hesaplatabilir, Play ile ise arabirimde izleyerek hesaplatma yapabilirsiniz. Simülasyon tamamlandıktan sonra ise Recoil menüsünden Cache alt sekmesine ve oradan da Bake seçeneğine tıklayarak objelerin yapılan simülasyona göre keyframe’lerinin atanmasını sağlayabilirsiniz. Yani uzun süren bir simülasyonu kaydetmenin tek yolu onu “Bake etmek” (Türkçesi “pişirmek”) oluyor. Tabii simülasyon parametreleriniz silineceğinden dolayı bake işleminden önce farklı bir dosya kaydı yapmanız daha faydalı olacaktır.

Resim 11’de simülasyon ile gerçekleştirdiğim dökülme anını, Resim 00’da ise simülasyon sonucunda durulmuş objelerin kap içindeki görüntüsünü görebilirsiniz.
 


Resim 11
 
Recoil hakkında bahsedeceklerimin sonuna geldik. Detaylı bir konu olduğu gibi üzerine yoğunlaşamadığımız daha bir çok ayrıntıya sahip Recoil. Şimdilik $199’a satılan bu eklenti hızlı çözümler sunuyor ve fazlasıyla keyifli. Modo’nun bir sonraki sürümü olan 601 sürümünde tam entegre olarak geleceğini düşünüyorum.

 

BİR CEVAP BIRAK

Please enter your comment!
Please enter your name here