Art of CGI  24 Haziran 2019   Ana Sayfa/Röportaj  

Batuhan Özer ile Röportajımız

5 sene önce

 
1- Sizi tanımayan arkadaşlar için Batuhan Özer kimdir?
1999 yılında İstanbul’da bir aileye 3. kardeş olarak geldim. İki tane abim var. Büyük olan abim(Hüseyin) Trakya Üniversitesi mezunu, Veripark’ta yazılımcı, diğeri(Yasin) ise Boğaziçi Üniversitesi mezunu, Siemens’de çalışan bir Elektrik Elektronik mühendisi. Ben de İTU’de mühendislik okuyan bir öğrenciyim. 12 yaşıma geldiğimde Unity oyun motoruyla tanıştım ve oyun geliştiriciliğine merak duymaya başladım.

Unity’den sonra internette program arayışına girdiğimde 3dsmax ile karşılaştım ve 3 boyutlu modelleme ilgimi çekmeye başladı. Programı kendi başıma öğrenmeye başladım. O günden beri 3dsMax’i hiç bırakmadım ve son zamanlarda ise 3dsMax’e eklentiler yazmaya başladım.

2- Eğitim hayatı ve okuduğunuz bölüm hakkında neler söylemek istersiniz?
İlköğretimimi Çamlıca Bilfen Okulları’nda tamamladım. Lisede ise Atatürk Fen lisesini kazandım fakat oraya gitmeyip, Bilfen Üsküdar Fen Lisesine devam etmeye karar verdim. Lisede robot yazılımlarıya ilgilendim, Arduino ile projeler yapıp yarışmalara katıldım.

Şuanda ise İstanbul Teknik Üniversitesinde Elektrik Elektronik – Kontrol ve Otomasyon Mühendisliği bölümünde irregular olarak 1. sınıftayım. Bölümüm diğer bölümlere göre biraz yeni olduğundan çoğu insana ne ile ilgili olduğunu açıklamak durumunda kalıyorum. Genel olarak yazılım ve elektronik üzerine kurulu bir meslek diyebiliriz, robotik mühendisliği gibi de düşünülebilir.

3- Yazılım ile ilgilenmeden önce ki 3D görselleştirme sürecinde neler yaşadınız?
Modellemeyi öğrendiğim program 3dsMax oldu. 3dsMax ile ilgili Youtube’da ne kadar tutorial, modelleme videosu, timelapse videolar varsa izledim. 3dsMax öğrendiğim sürece genelde hep modelleme kısmına yöneldim. Daha sonra bir gün yine bir tutorial izlerken 3dsMax’deki “Maxscript” ile karşılaştım. “Maxscript” ilgimi çekti ve deneme yanılmayla ilk scriptlerimi yazmaya başladım.(İlk scriptim Rock Generator)

4- PolyDamage ve PolySnow pluginlerinin hikayesi nedir? — (Polydamage’a değinmedim)
PolySnow’un hikâyesi Facebook’da karlı kış renderlarını görmemle başladı. Özellikle Cihan Özkan’ın kış renderlarını hayranlıkla takip ediyordum. Daha sonra karların nasıl modellendiğini merak etmeye başladım. Youtube’dan birkaç video izledim ve yöntemlerin çok uğraştırıcı olduğunu ve bazılarının da güzel sonuçlar vermediğini gördüm. Hemen aklıma kar yapmakla ilgili bir script yazmak geldi ve denemelere başladım ve paylaştım. Yazdığım script sayesinde artık herkes sadece 1 tık ile istediği modelin üzerine kar yağdırabiliyor. Paylaştığımda çok olumlu, güzel tepkiler aldım.

5- Eklenti geliştirmek için neden 3ds Max yazılımını tercih ettiniz?
Modellemeyi öğrendiğim ilk program 3dsMax olduğundan çoğu komutuna hakimim. Hakim olduğum bir programa yazılım geliştirmek bana daha rahat geldiğinden 3dsMax’i tercih ettim.

6- Eklenti ve yazılım geliştirirken hangi programlama dillerini kullanıyorsunuz?
Eklenti geliştirirken ben ağırlıklı olarak maxscript kullanıyorum. 3dsMax, maxscript yanında C++, python, c# gibi dilleri de destekliyor. Hangisini kullanmanız gerektiği yazacağınız plugin’e göre değişiklik gösteriyor.
Mesela plugininiz çok fazla sayıda matematiksel hesaplama işlemleri yapıyorsa bunu C++’da yazmak en mantıklısı. Hız olarak C++ ve diğer diller arasında çok büyük farklar var. C++’ın hız avantajı olmasına rağmen zor olması ve basit işlemler için bile çok sayıda kod yazmak gerekmesi gibi bir dezavantajı da var. Ayrıca C++ ile yazılmış pluginlerin tüm 3dsMax sürümleri için ayrı ayrı derlenmesi de gerekir.
Mesela plugininiz arayüz ve kontroller için ise. NET kullanarak yazmak daha mantıklı çünkü maxscript’te olmayan birçok arayüz elemanına erişiminiz olmuş oluyor.

7- 3ds Max veya başka yazılımlar için ek paketler geliştirmek isteyen arkadaşlar nereden başlamalı. Onlara önerileriniz nelerdir?
Yazılım geliştirmeye başlamak isteyen arkadaşlar için bence en önemli önşart yabancı dil (ingilizce). Özellikle maxscript veya 3dsMax SDK için türkçe kaynaklar yok denecek kadar az. Genelde video tutorial’lar da olmadığından öğrenme sürecinin neredeyse tamamı online dokümantasyon okumakla geçiyor. Yabancı diliniz iyi ise benim başladığım gibi “Maxscript Listener” ile başlayabilirsiniz. Biraz göz aşinalığı oluştuktan sonra Maxscript Help kısmını inceleyebilirler.

8- Eklenti geliştirirken A dan Z ye süreç nasıl işliyor?
Her şey akla gelen bir fikirle başlıyor. Sonra bu fikri nasıl uygulamaya geçirebiliriz bunu düşünmeye başlıyoruz. Biraz denemeden sonra eklenti yazarken kullanacağımız araçları aklımızda şekillendiriyoruz. “Hangi komutları kullanmamız gerekiyor?”, “Alternatifleri nedir?” gibi araştırmalar yapıyoruz. Planımızı yaptıktan sonra eklentiyi yazmaya başlıyoruz. Bazen işler olması gerektiği gibi gitmiyor ve Adım 1’e geri dönüyoruz 🙂 Eklentiyi yazarken eklentimiz sürekli bir değişim içinde oluyor, yazarken sürekli test ediyoruz, yazılıma geri dönüp bazı yerleri değiştirip yeniden test ediyoruz. Çok fazla test etmek önemli çünkü bazen gözden kaçabilen hatalar oluyor. En son çalışır duruma geldiğinde scriptimizi şifreleyip paylaşıyoruz. Ve olay burada bitmiyor. Daha sonra insanlardan gelen geri bildirimler sonucunda yine değişiklikler yapıyoruz, yeni özellikler ekliyoruz ve güncelliyoruz.

9- Aktif olarak kullandığınız yazılımlar ve yazılım dilleri nelerdir? Ayrıca öğrenmeyi düşündükleriniz ve gelecek vaad edenler hangileri?
Lisede C ile robot yazılımıyla uğraşmıştım. Unity’de C# ile oyunlar yazdım. Ve şu an pluginler için maxscript kullanıyorum. Şu an için öğrenmeyi düşündüğüm en önemli dil C++ . Python ve C de planlarım arasında.

10- Kendinizi 3D sektörü ve yazılımcılığın neresinde görüyorsunuz? Hedefleriniz ve yapmak istedikleriniz nelerdir?
3D ile her zaman hobi olarak ilgilendim ve muhtemelen de bir süre daha böyle olmaya devam edecek. Yazılımcılık konusunda daha başlangıç seviyesindeyim diyebilirim. Ama mesleğim bunun üzerine olduğundan kendimi daha çok geliştireceğim. Hedeflerim mezun olduktan sonra görsel ve donanımsal tasarımlarını kendim yaptığım robotlar veya araçlar üretmek.(Bkz. Boston Dynamics). Yapmak istediklerime gelirsek de animasyon, film yapan bir ekiple çalışmak isterdim küçüklüğümden beri.

11- Oyun geliştirme ve kodlama ile hiç ilgilendiniz mi? 3D ve yazılımı birleştiren sektör hakkında düsünceleriniz nelerdir?
Evet yazılıma başlamam Unity ile oldu. Birçok mobil oyun geliştirdim. 3D sektörünü geliştiren en önemli sektörün oyun sektörü olduğunu düşünüyorum. Her şey ilk olarak oyun sektöründe çıkıp daha sonra mimari görselleştirme gibi sektörlere geliyor. Örnek vermek gerekirse, Realtime render motorları, PBR materyaller veya oyun motorlarında son zamanlarda gördüğümüz realtime raytracing teknolojisi.

12- Tasarımın yanında oyun ve yazılım geliştirmeyi düşünen arkadaşlar hangi yazılım dillerine yatırım yapmalı ve kendilerini hangi konularda geliştirmeli?
Bu günlerde bireysel kullanım için en popüler olan oyun motorları Unity ve Unreal Engine. Unity kullanmak istiyorsanız C# veya Javascript* öğrenmeniz gerekir, Unreal öğrenmek istiyorsanız da ya C++ yada Unreal’ın blueprint sistemini öğrenmeniz gerekir.
* Unity’de C# daha yaygın bir dil.

13- Yazılım hakkında yabancı dil öğrenme konusunda düşünceleriniz nelerdir. Ve yazılım geliştirme sürecinde Github gibi platformlar hakkındaki düşünceleriniz nelerdir?
Daha önce de bahsettiğim gibi yabancı dil yazılımda çok önemlidir. Özellikle maxscript gibi az kullanılan, az bilinen bir yazılım dili için ise daha da önemlidir. Sürekli yabancı kaynakları okuyup güncel kalmak gerekir. Github’da başkaları tarafından yazılmış scriptleri incelemek de öğrenmek açısından yardımcı olur.

14- CG ve tasarım konularında takip ettiğiniz yerli ve uluslararası platformlar, dergiler, siteler hangileri?
artofcgi, cgsociety.org, 3dtotal.com, 80.lv, polycount.com, cgpress.org, maxplugins.de

İçeriği Sosyal Medyada Paylaşmak İster misiniz?

Art of CGI Yazar Notu:

Bir cevap yazın

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