Unity Nedir?

resim93347589
resim93347589

Oyun sektörü her geçen gün gelişmeye ve tanınmış hale gelmeye devam ediyor. Oyun severler, yeni keşfettikleri oyunları oynamanın yanı sıra istedikleri bir oyun geliştirmeyi de düşünebiliyorlar. Bu durumda da oyun geliştirme platformlarına yöneliyorlar. Unity de bu hususta oyun geliştiriciler için öne çıkıyor. Peki Unity nedir?

Oyun sektörünün gelişmesi, yazılımcıların ve yatırımcıların ilgisini çekmektedir. Bunun kararında da birtakım firmalar, oyun şirketlerine yatırım yapmaktadır. Unity de oyun geliştirme konusu ile alakalı kullanıcılar için destek bir platform olmaktadır.

Yakın bir zamanda, Unity şirketinin ironSource ile birleştiğini duyurmuştuk. Şimdi ise bu oyun motorunun tam anlamıyla ne olduğuyla alakalı de izahat yapmak istedik. Bu nedenle bu yazımızda Unity nelerdir sorusunu yanıtlayarak sizlere bu mevzu ile alakalı malumat vermeye çalışacağız.

İçindekiler

Unity Nedir?

Basitçe tarif etmek gerek görülürse Unity, dünyanın en tanınmış video oyun motoru ve geliştirme platformudur. İçeriğinde geliştirmeye dayalı özellikler olduğundan IDE olarak geçmektedir. IDE (Integrated Development Environment), bilgisayar programcılarının süratli ve huzurlu bir halde uygulama geliştirmesine imkan tanıyan uygulama türüdür. Unity’de de IDE uygulama türünün bir örneği olarak yer almaktadır.

Unity, çoğu özelliği bir araya getirerek neredeyse tüm oyunları geliştirmenize imkân tanımaktadır. Bu özelliklere, animasyonlar, 3B oluşturma ve oyun için lüzumlu fizik motorlarını eklemek örneğin gösterilebilir. İçeriğinde bulunan çapraz platform özelliği vasıtası ile de Unity, hem hobi hem de oyun geliştirme amacıyla kullanıma uygundur. Örneğin Pokemon Go, Rimworld, Hearthstone, Cuphead, Angry Bird, Super Mario Run, Temple Run, Call of Duty ve daha çoğu oyun Unity üstünden oluşturulmuştur.

Bilgisayar, konsol ve mobil cihazlar için video oyunları ve simülasyonlar geliştirmeye yarayan Unity, 2005 yılından beri piyasada yer almaktadır. Adında 3D olsa da Unity, 2D oyun geliştirme araçlarını da içermektedir. Aynı zamanda Unity, C# komut dosyası oluşturma ve yerleşik Visual Studio entegrasyonundan yararlanmayla da programcıların ilgisini çekmektedir.

Ayrıca Unity, Visual Studio’ya alternatif bir betik dili olarak JavaScript ve IDE imkânına sahiptir. Bunun kararında da Unity, kullanıcılara MonoDevelop denilen bütünleşik geliştirme ortamı sunmuş olmaktadır. Böylelikle Unity nelerdir sorusunun cevabını vermiş olduk. Şimdi ise Unity’nin özellikleri ile alakalı izahat yapalım.

Unity Hangi Özellikleri İçermektedir?

Oyun motoru olan Unity, hem programcılar hem de sanatçılar için yüzlerce ustalaşmış araçla yüklü halde gelmektedir. Kullanıcılar bu araçları ‘Varlık Mağazası’ adındaki bölümden bulabilmektedir. Bu bölüm, oyun geliştiricilerin oluşturduğu oyunları yükleyecekleri ve bir topluluğa sunacakları yerdir.

Örneğin oyun geliştiricileri, oluşturmaya çalışmış oldukları oyunlara rastgele bir efekt eklemek istediklerinde ve bu efekti baştan yaratmak istemediklerinde mevcudiyet mağazasından yararlanma imkânına sahiptir. Ayrıca uzun ve ayrıntılı bir halde uğraşmaya gereksinim duymadan mevcudiyet mağazası üstünden eğim kontrolleri eklemek de mümkündür. Yüzlerce model, senaryo, sahne, araç-gereç ve istediğiniz öteki her şeyi içeren mevcudiyet mağazası, oyun geliştiriciler için yarar elde etmiş olmaktadır.

Unity, araçlarını, bileşen odaklı tasarımlarla birleştiren bir çabalama ortamı sağlamaktadır. Bu oyun motorunda hem 2B hem de 3B geliştirme, Box2D motoru tarafınca işlenen 2B fizik ile olası olmaktadır. Unity, prefabrikler çevresinde gelişen oyun geliştirme için bileşen tabanlı bir yaklaşım kullanmaktadır. Prefabrik yapılarla oyun geliştiricileri, nesneleri ve ortamları daha bereketli bir halde oluşturabilmektedir. Aynı zamanda bu nesneler ve ortamlar daha süratli ölçeklenebilir.

Güçlü gölge araçları, fizik tabanlı malzemeler ve yüksek çözünürlüğünde olan tenvir sistemleriyle Unity, çarpıcı grafikler sunmaktadır. Bunun yanısıra Unity’nin programlama dilleri ise C Sharp ve C++ şeklindedir. Aynı zamanda Unity’nin premium kullanıcıları ise kaynak koduna erişim sağlayabilmektedir. Ayrıca Unity, her konsola ve işletim sistemine ahenk sağlamaktadır. Bu da tasarlanan oyunların her platforma dağıtılmasına imkân verir.

Unity’nin düzenleyici araçlarıyla fareler, klavyeler ve oyun denetleyicileri için girişleri aynı anda kullanabilirsiniz. Ayrıca server barındırma ve ölçeklenebilir eşleştirmeyle oldukça oyunculu oyunlar için kuvvetli bir yardıma sahiptir. Bunun dışında Unity, kendi editör araçlarınızı ve komut dosyalarınızı oluşturmanız için tam API desteği içeren kişiselleştirilebilir düzenleyiciye de sahiptir.

Unity Oyun Motorunun Avantajları Nelerdir?

Yazımızda Unity nelerdir ve özellikleri nelerdir sorusunun cevabını vermiş olduk. Bunun yanı sıra Unity’de birtakım avantajlar da yer almaktadır. Bu hizmetin en büyük pozitif yanları bedava olmasıdır. Kullanıcılar, çoğu hizmetten bedava olarak yararlanmaktadır. Şirket, oyun geliştiricileri buradan bir gelir elde edene kadar ise bedava özelliklerini sunmaya devam etmektedir. Bunun yanısıra Unity, animasyon editörü, fizik motoru, shader yazılımı ve occlusion culling gibi özellikleri de kullanıcılara bedava olarak sunmaktadır.

Unity’nin bir öteki pozitif yanları ise oyunların, değişik platformlara ve işletim sistemlerine altyapı değişikliğine gereksinim duymadan derlenmesidir. Bu sayede PC için hazırlanan bir oyun, tek bir tıklamayla Android için de çalışır hale gelecektir.

Prefabrik sistem vasıtası ile Unity, öteki projelerden kod ve varlıkları tekrar kullanmayı sağlamaktadır. Aynı zamanda hizmet, bu kod ve varlıkları öteki amaçlar için düzenlemeyi de kolaylaştırmaktadır. Diğer oyun motorları grafik ile kodu ayırmaktadır. Ancak Unity, grafik ve kodun beraber çalışmasını sağlamaktadır. Bu mantık ise geliştiriciye elastikiyet sağlayıp geliştirme süresini kısaltmaktadır.

Unity’nin mühim avantajlarından birisi de büyük kaynak kütüphanesidir. Oyun geliştiricileri bu kaynak kütüphanelerinden yararlanarak zamandan tutum etmiş olmaktadır. Tüm bu avantajların yanı sıra Unity 3D’de yazılan oyunlar, düşük ve orta seviyeleri bilgisayarlarda da kullanıma açıktır.

Unity, oyun geliştirmenin yanında, eğitim amaçlı simülasyonlar da hazırlamaktadır. Bu nedenle şirket, son versiyonlarla şahsi kullanımlar için bedava bir uygulama geliştirmiştir. 2018 itibariyle Unity, mobil oyunların neredeyse yarısını, artırılmış gerçeklik ve sanal gerçeklik içinde ne olduğunun de %60’ını oluşturmaya çalışmaktadır.

Unity Oyun Motorunun Dezavantajları Nelerdir?

Yazımızda Unity’nin avantajlarından bahsettikten sonra bu hizmetin dezavantajlarından da dile getirmemiz iyi olacaktır. Birçok oyun motoru ya da öteki platformlarda olduğu gibi Unity de birtakım sorunlarda karşılaşmaktadır. Şimdi bu dezavantajlar ile alakalı izahat yapalım.

Unity’de 2D oyunlar kurmak Godot ve GameMaker kullanmaktan daha zor olmaktadır. Ayrıca Unreal’ın oluşturma ve tenvir sistemleri, Unity’den daha oldukça kabiliyete sahiptir. Bu da hizmeti, rekabet konusu ile alakalı birazcık geri plana atmaktadır.

Unity üstündeki boş bir proje bile birtakım oyunlardan daha büyük olmaktadır. Bu da yalın ve yaklaşık bir oyun motoru arayışındaki kullanıcılar için müsait olmamaktadır. Aynı zamanda Unity, hizmeti kullanan birtakım oyun geliştiricilerine zor gelebilmektedir.

Unity Arayüzü Hakkında Bilgiler

Unity’yi ilk defa kullanmaya başladığınızda, pencerelerin, simgelerin ve seçeneklerin sayısı birazcık komplike gelebilir. Ancak vaziyet oldukça da komplike değildir. Oyun motorunda ilgileneceğiniz birtakım ana pencereler yer almaktadır. Bu ana pencerelerin içinde ne olduğu ile alakalı malumat verelim.

Hiyerarşi Penceresi

Unity arayüzünde en solda sizi ‘Hiyerarşi Penceresi’ karşılayacaktır. Hiyerarşi penceresi, sahnedeki her objenin hiyerarşik yazılı temsili olarak geçmektedir. Sahnede bulunan her nesne hiyerarşide bir girişe haiz olmaktadır. Bu da iki pencerenin bağlantılı bulunduğunu göstermektedir.

Hiyerarşi penceresi, sahne bölümündeki tüm GameObject’lerin uzun listesini de göstermektedir. GameObject ise Unity üstünde yarattığınız sahnelerin içine yerleştireceğinizi nesnelerin genel adıdır. Aynı zamanda hiyerarşi listesi, GameObject’lerin özelliklerini değiştirmeniz için oyununuzun rastgele bir bölümünü çabucak bulmanızı ve seçmenizi kolaylaştırmaktadır.

Sahne Görünümü

Unity’nin bir öteki kullanıcı arayüzü de ‘Sahne’ olarak karşımıza çıkmaktadır. Bu pencere, Unity’nin ortasında büyük bir halde yer almaktadır. Sahne size, üstünde çalıştığınız oyunun görünümünü göstermektedir. Bu pencere, GameObject’i sürükleme, bırakma, büyütme ve küçültme seçeneklerini de sağlamaktadır. Unity’nin sol üst köşesinde bulunan simgeler, GameObject ve sahne ile etkileşim şeklinizi değiştirmektedir. El simgesi, görünümü sürüklemeye izin verirken, oklar nesneleri 3 boyutlu olarak hareket ettirmenizi sağlar.

Inspector Penceresi

Unity’de Inspector Penceresi de yer almaktadır. Bu pencere, kullanıcı arayüzünün en sağında bulunmaktadır. Inspector penceresi, aktüel objeleri görüntülemenize ve düzenlemenize imkan tanımaktadır. Bu, boyutu (ölçek) ya da konumu (dönüştürme) değişiklik yapmak anlamına da gelmektedir. Ayrıca bu pencere, C# komut dosyası ya da bileşen ekleme anlamlarını da içermektedir. Inspector penceresindeki objeler aktüel olduğundan derli toplu olarak değişme ihtimali vardır.

Oyun Bölümü

Oyun kısmı ise sıklıkla ‘Sahne’ penceresinin arkasına gizlenmektedir. Bu parçaya erişmek için üst kısımdaki sekmeye basmak kafi olmaktadır. Oyun görünümü, sahnenizin görünümünü oyunda olduğu gibi göstermektedir. Bu da kamerayla aynı açıda olacağınız ve etraftaki nesneleri hareket ettiremeyeceğiniz anlamına gelmektedir. Ayrıca bu bölüm, geliştirdiğiniz oyunu kontrol edeceğiniz yerdir.

Araç Çubuğu

Araç çubuğu, çabalama özelliklerini gerçekleştirmenizi sağlamaktadır. Ekranın kenarlarında objeleri yönetim etmeyi elde eden araçlar yer almaktadır. Ekranın merkezinde ise oynat, durdur ve adım kontrolleri vardır. Ayrıca ekranın kenarında bulunan düğmeler ise Unity Cloud servisine ve Unity hesabınıza giriş yapmanız için yer almaktadır.

Proje Penceresi

Proje penceresi ekranınızın en altında yer alır ve size oyununuzu oluşturan tüm dosyaları gösterir. Bu bölüm, C# betikleri oluşturup Unity’de açmak için seçeceğiniz yerdir. Ayrıca oyununuzda kullanmak için 3B dosyaları ve dokuları buraya sürükleyip bırakabilirsiniz.

Varlık Mağazası

Varlık mağazası da Unity’nin arayüzünde yer almaktadır. Bu bölüm ile oyun geliştiricileri, mevcudiyet kütüphanesine giderek hazır assetlerini (varlıklar) görme imkânına haiz olurlar. Aynı zamanda bu hazır assetlere proje penceresinden erişim de mümkündür.

Konsol

Son olarak konsol, Unity’nin kendisinden gelen detayları göreceğiniz yerdir. Unity konsolda size, kod hatasının olup olmadığını bildirir. Bunun yanısıra ikazlar da bu kısımda yer alır. Ayrıca uygulama kurulumunda problem olup olmadığının bilgisi de konsol bölümünde görünmektedir.

Unity Lisanslama Seçenekleri Nelerdir?

Unity, Kişisel, Plus ve Profesyonel olmak suretiyle muhtelif fiyatlandırma seçenekleri sunmaktadır. Kullanıcılar bedava versiyon ile bu oyun motoruna başlayabilirler. Eğer ticari oyunlar yapma konusu ile alakalı iyi olduğunuzu düşünüyorsanız Plus ya da Pro sürümüne geçebilirsiniz.

Aylık abonelik ödemesi yapmayan kullananların ise Unity ile geliştirdikleri oyunlar için 100.000 doların altında hasılat göstermeleri gerekmektedir. Oyun geliştiricileri, oyunlardan para kazanmaya ve performansı artırmayı elde eden daha oldukça özellikten istifade etmek için de Plus sürümüne geçebilirler.

Diğer taraftan Profesyonel versiyon ise, Unity projelerinden 200.000 dolardan fazla kazananlar için yer almaktadır. Ayrıca bu sürüm, firma içi yardıma gereksinim duyan oyun stüdyoları ve ustalaşmış takımlar için de geçerlidir. Lisanslama seçenekleri birazcık komplike olsa da her kullanıcı için müsait seçenekler yer almaktadır.

Genel Değerlendirme

Unity, mimari, mühendislik, film, otomotiv ve inşaat gibi video oyunlarını içermektedir. Bunların yanısıra Unity, değişik endüstriler tarafınca da kullanılmaktadır. Bu oyun motoru, tüm işletim sistemlerini desteklemektedir. Bu da her insanın bu hizmetten yararlanmasını sağlamaktadır.

Yazımızda da bahsetmiş olduğumuz gibi, Unity’nin en büyük pozitif yanları bedava olmasıdır. Kullanıcılar, Unity’nin çoğu hususi durumunu bedava olarak kullanma imkânına sahiptir. Aynı zamanda oyun geliştiricileri, bu hizmet vasıtası ile gelir elde etme şansına da haiz olmaktadır.

Unity, uygulama sektöründeki maksimum tercih edilen dillerden biri olan C# ile de ahenk göstermektedir. C# ise yazılıma yeni başlayanlar için kolaylık sağlamaktadır. Ayrıca bu dil, C ve Java gibi dillerle benzerlik göstermektedir. Oyun geliştiricileri, oyunlarına reklam vermek istediklerinde ise Unity’nin reklam birimi olan Unity Ads’i kullanabilmektedir.

Bunun yanısıra kullanıcılar, mobil oyunlar geliştirmenin yanı sıra Windows tabanlı oyunlar da geliştirme imkânına sahiptir. Oyun geliştiricileri bu oyunlarını Steam ve bunun gibi platformlarda yayınlama imkânına da haiz olmaktadırlar.

Sizler için hazırladığımız Unity nelerdir rehberimiz burada sona eriyor. Sizler de oyun geliştirmeyi düşünüyor musunuz? Unity oyun motorunu iyi mi buldunuz? Unity ile alakalı sual ve düşüncelerinizi aşağıdaki yorum bölümünden bizlerle paylaşmayı unutmayın.