Oyun Geliştirici Nasıl Olunur?

Oyun Geliştirici Nasıl Olunur?

Bir bilgisayar oyununun amacı, oyuncuya eğlenceli bir etkileşimli deneyim sunmaktır. Ticari ve/veya kritik başarıları olan oyunları incelersek, bu oyunların en yaygın özelliğinin eğlenceli olmaları olduğunu görürüz. Güzel grafikler, süslü teknoloji veya büyük bir lisans bir oyunun başarısına katkıda bulunabilse de, bunların hiçbiri tek başına asgari başarı için bile yeterli değildir.

Oyun geliştirici, farklı tür ve konseptteki oyunları oluşturan ve kullanıcılarla buluşturan, içerik üreticisi konumundaki kişidir. Geliştiriciler, genellikle yazılım ve tasarım gibi alanlarda uzmanlık sahibi olan kişilerden oluşur.

Oyun Geliştiriciler freelance olarak farkli oyun şirketlerinde çalışabilir ya da, oyun stüdyolarında ve geliştirme ekiplerinde görev alabilirler. Bitmeyen ve gün geçtikçe gözde haline gelen “Game Development” sektörü, büyümeye devam ettikçe bu alandaki iş imkanları da aynı hızda artmaya devam ediyor.

Bu alanı seçmek istiyorsan genel olarak, oyunun yazılım kısmında yer alacaksın. Ama birçok farklı oyun türü ve konsepti olduğu için gerekli uzmanlık alanları değişiklik gösterebilir.

Oyun geliştiriciliği bugün de gelecekte de hatırı sayılır geçerlilikte olan bir alan. Bakıldığında kişiler, en basit bir mobil oyunundan bile ciddi gelirler elde edebiliyorlar. Kompleks bir oyunu ya da basit bir oyunu doğru yaratıcılıkla harmanladığında inanılmaz sonuçlar elde etmek mümkün.


Nasıl Oyun Geliştiricisi Olunur?

Bir Lisans Derecesi/ Sertifikası Al

Bir derece al. Yazılım mühendisliği veya bilgisayar bilimi alanında lisans derecesi, işverenler arasında öne çıkmana yardımcı olabilir. Yeterli beceri ve yeteneğe sahip olsan bile, ilgili bir programın sertifikası veya tamamlanması, alanın kapsamlı bilgisini ve sağlam bir temelini gösterebilir ve sana eşit derecede yetenekli rekabette bir adım önde olmanı sağlayabilir.

Kod Yazmaya Giriş Yap

Oyun geliştiricilerin tüm oyunu şekillendirecek kod tasarlamak için donanım teknolojisinin yanı sıra C, C#, C++, Java, Python, Lua ve diğer programlama dilleri konusunda bilgili olmaları gerekir. Bu yüzden yazılım mühendisliği becerilerini geliştirmeyi unutma.

C++ Yazılım Dilini Öğren

C++, dünyadaki en popüler programlama dillerinden biridir. Sistem düzeyinde programlamadan mobil uygulama geliştirmeye kadar her şey için kullanılır ve her programcının beceri seti için sağlam bir temel oluşturur. Basit dil ve güncel kod örnekleriyle giriş niteliğindeki C++ dili programlamayı öğrenebilirsin.

C# Yazılım Dilini Öğren

C#, Microsoft'un birincil programlama dilidir ve Microsoft araçlarıyla çalışan tüm geliştiricilerin ihtiyaç duyduğu temel bir beceridir. Programlamada yeni veya Microsoft ekosisteminde yeni olsan da, bu öğrenme yolu sana Visual Studio ve diğer önemli Microsoft araçlarını kullanarak uygulama geliştirmek için ihtiyacın olan temeli sağlayacaktır.

Unity

Unity, mobil ve masaüstü oyunların yanı sıra gerçek zamanlı simülasyonlar ve görselleştirmeler için güçlü bir etkileşimli geliştirme aracıdır.

Unreal Engine

Unreal artık sadece oyun oynamak için değil. Otomotiv tasarımı, mimari, sağlık ve eğitim gibi sektörler, ilgi çekici ve etkileşimli görseller oluşturmak için gerçek zamanlı geliştirme araçlarını benimsiyor. Unreal Engine hepsine güç sağlayabilir.


Oyun Geliştiricisinin Sorumlulukları Nelerdir?


Oyunlarımızın çekiciliğini artırmak istiyorsak, bir deneyimi neyin eğlenceli hale getirdiğini ve böyle bir deneyimin nasıl yaratılabileceğini anlamamız gerekiyor. Bir oyun geliştiricinin ister kendi oyununu geliştiriyor, ister bir ekip ile birlikte büyük bir projede yer alıyor olsun; sahip olduğu belli başlı görev ve sorumlulukları vardır.

Oyun Sektörüne Hakimlik

Başarılı bir oyun geliştirici, piyasaya yeni çıkan her oyunu, popüler ya da hangi tarzlarda olduklarından bağımsız olarak takip ediyor olmalıdır. Hangi oyunlar daha çok talep görüyor ya da hangi oyunlar en çok tercih ediliyor gibi sorular hakkında genel olarak bir fikre sahip olmalı. Kullanıcı yorumları, oyun şirketleri için altın değerindedir. Bir oyun hakkında eksik kalabilecek, tercih edilmemesine sebep olacak neler olabilir sorusuna cevap verebiliyor olmalı. Bu noktada, birçok oyunu kendisi de deneyimleyebilmeli ve tarafsız şekilde oyunları inceleyebilmeli.

Tasarım Özelliklerini İncelemek

Bir oyun geliştirici çıkaracağı, üzerinde çalıştığı oyun için her daim birçok açıdan gözlem yeteneğine sahip olan kişi olmalıdır. Bu sorumluluk, ilk madde de bahsetmiş olduğum çıkan oyunları takip etme maddesine girebilir, oynanış ve hangi oyunların popüler olduğunu takip etmenin yanı sıra, tasarım özellikleri açısından da çıkmış olan birçok oyun gözlemlenmelidir.

Kod Yazma

Oyun fikirleri, aklımızda her daim inanılmaz derecede büyük fikirlerdir. Genelde bir ekipte Oyun Tasarımı alanı farklı bir pozisyondur. Bir de bu tasarımları gerçek hayata geçiren Kod Yazıcılar var. Bu noktada, uzmanlık alanını bu pozisyonda yükseltmek istiyor olabilirsin. Kod yazıcılar, fikirleri hayata geçiren kişilerdir ve bunun ilgili teknik bilgiye sahip olman gerekir.

Detaylı Düşünmek

Bir oyunu her detayıyla tasarlamak ve hayata geçirmek zorundasın. Oyun geliştiriciliğin teknik kısımlarında birçok program yazılım dili ve motoruna hakim olman gerekir.

Analitik Düşünmek

Bir fikri oyunun içine yerleştirme sürecinde, bu fikrin yapılabilitesini kafanda iyi bir şekilde ölçeklendirebiliyor olmalısın. Konu oyun dünyasına gelince fikirler çok fazladır, çünkü birçok kez kullanıcı konumunda herhangi bir oyunu deneyimleme fırsatını yakalamışızdır. Bu noktada başarılı bir oyun geliştirici, hangi parçaları birleştirerek sonuca varabileceğini biliyor olmalıdır.

Yaratıcı Olabilmek

Fikri kafasında farklı bölümlere ayrıştırabiliyor olmak, bir oyun geliştirici için olmazsa olmaz sorumluluklardan biridir. Örneğin bir ekip içerisinde çalışıyor olduğunu varsayalım. Tasarımcı sana oyunla ilgili bazı feedbackleri sağlarken, geliştirici olarak senin görevin bunların şemalarını kafanda oluşturabiliyor olmaktır.

Ekip İşi

Birçok farklı perspektiften bakarak, oyununu daha oynanabilir ya da ilgili çekici hale getirmek mümkün. Birçok oyun geliştirici, kendi oyununu çıkarma hayalinden önce bir ekibe dahil olarak tabiri caizse, “işin içinde pişme” sürecinden geçiyor. Bir ekip halinde çalışmak sana her daim farklı bakış açıları ve disiplinler kazandıracaktır. Analitik düşünebilme de bunların içerisinde olan en önemli özelliklerden biri.

  1. Sistematik ve Modüler Olmak: Bir oyun geliştirirken süreç boyunca her şey birbirine karışabilir! Bu zorluğun üstesinden gelmek için sistematik bir şekilde düşünmek senin ana sorumluluklarından olacak. Yani her şeyi aynı anda, tek bir noktada birleştirip oluşturmak yerine; ilgili sınıf ve bölümlere ayırarak ilerleyebiliyor olmalısın.
  2. Güncel Kalabilme: Güncel oyun dünyasında olan biten gelişmeleri, aktif bir şekilde takip ediyor olmalısın.
  3. Teslim Tarihine Uyabilme: Bu sadece Oyun Geliştiriciliği sektörüne özel bir sorumluluk değil elbette. Hangi alanda çalışıyor olursan ol, belirlenen deadline tarihine uyum sağlamak ve proje teslim tarihini kaçırmadan, pozisyonunun gerektirdiği sorumlulukları yapabiliyor olmalısın.

Oyun Geliştirici İş Olanakları

Game Designer

Oyun tasarımcıları, video oyunlarının kavramlarını ve dünyalarını yaratır. Video oyunlarının türü, ortamı, hikayesi, karakterleri, oyun sistemi, amaçları ve kullanıcı deneyiminin tasarımı ile ilgilenirler. Oyun Tasarımcısı, bir video oyununun geliştirilmesinin arkasındaki yaratıcı güçtür. Onlar oyun konseptinin yaratıcıları ve son sürümüne kadar geliştirecekler. Oyun Tasarımcıları, hikayeyi yazar, olay örgüsünü, karakter gelişimini ve oyunu yönlendiren oyun hedeflerini yazar. Programcıların genellikle oyunun özel ihtiyaçlarını karşılamak için özel yazılımlar yazmaları gerekecektir. Oyun Tasarımcılarının bunları ne zaman devreye alacaklarını, bunlar için nasıl planlayacaklarını ve bütçelerini nasıl oluşturacaklarını ve bunları potansiyel olarak sektöre nasıl pazarlayacaklarını bilmeleri gerekir.

System Designer

Bir Sistem Tasarımcısı, bir video oyununa güç sağlayacak yazılım sistemlerinin yaratıcısıdır. Oyunu hayata geçirecek platformları kurmak için oyunun kapsamını ve tasarımını analiz etmek için geliştirme sürecinin başlarında getirilirler. Oyunun türüne ve mekaniğine bağlı olarak, Sistem Tasarımcısı projenin gelişiminin oluşturulmasına yardımcı olacaktır. Oyunun gerektirdiği teknik kaynaklar paketini bir araya getirecekler ve oyun için komut dosyası yazılması gereken özel yazılımları belirleyecekler.

Level Designer

Bir Level Designer, bir oyun içindeki seviyelerin yaratıcısıdır, oyunun kuralları dahilinde çalışacak ve oyunu Oyun Tasarımcısı tarafından yaratıldığı gibi yürütecek şekilde mizanpajın haritasını çıkarır. Level Design sürecinin ilk aşaması, seviyenin düzenini iki boyutlu olarak çizmektir, bu, Oyun Tasarımcısı tarafından sağlanan konsept sanatına ve storyboard'lara dayanmaktadır. İmzalandıktan sonra, 3D yinelemelerine dönüştürülürler ve seviye daha sonra karakterler, nesneler, olaylar, ortamlar ve eylem çemberleri ile doldurulur.

Oyun Programcısı

Oyun programcısı, bilgisayar oyunları üzerinde çalışan bilgisayar mühendislerine verilen genel bir terimdir. Genellikle bilgisayar programlamanın temel dillerinde eğitilen programcılar, bir oyunun hayata geçmesini sağlar. Grafik, yapay zeka, ses, komut dosyası oluşturma, kullanıcı arabirimi, ağ, araçlar, taşıma vb. gibi kodlama alanlarında uzmanlaşabilirler. Güçlü bir kodlama bilgisi ve çeşitli platformlar, Oyun Programcısı olmak için çok önemlidir. Üretim süreci boyunca teknik kaynakları alan ve sürecin sonunda oyunun etkin bir şekilde çalışmasını sağlayan geliştirme ekibinin önemli bir parçasıdırlar.

AI Programmer

Yapay Zeka (AI) Programcılarının bir oyuna beynini verdiği söylenebilir. Bireysel oyuncunun oyununa dayalı olarak karakterlerin ve öğelerin davranışını belirleyen algoritmalar oluştururlar. Bu, oyunun tepkilerini oyuncunun eylemlerine göre özelleştirerek yapılır. Yol bulma, grup hareketi ve kamera kontrolü gibi unsurların tümü oyun stratejisine dahil edilmiştir. Bu son derece uzmanlaşmış alanda programcılar karar ağaçları kurar ve oyun içinde sinir ağları tasarlayarak yapay sinir sistemleri oluşturur. AI programlama, oyun geliştirmede oyuncuların farkında olmadığı derin bir etkiye sahip olduğundan, oyun geliştirmenin en ileri noktasındadır, bu dinamik ve sezgisel bir deneyime yol açar.

Gameplay Engineer

Oyun Mühendisleri, yazılımı bir video oyununun gereksinimlerine uyarlayan kod yazarlarıdır. Ayrıca bir oyuna özgü işlevler için özel yazılımlar oluşturmaları gerekebilir.

Game Artist

Bir Game Artist, genellikle video oyunları için hem 2D hem de 3D sanat oluşturan genel bir animatör veya 3D modelleyicidir. Tasarım özetleri ve konsept sanatından çalışan Game Artist’ler, oyun dünyasını doldurmak için film şeridinden senaryoya ifade verir.

Karakterler, nesneler, dokular, varlıklar, ortamlar, aksesuarlar, araçlar, silahlar vb. dahil olmak üzere bir oyunu bir araya getirmek için gereken tüm görsel öğeler üzerinde çalışırlar.

3D Character Artist

3D Karakter Sanatçıları, filmler ve video oyunları için 3D karakter modelleri oluşturur. Modeller genellikle orijinal konsept sanatına dayanır.

Bilgisayar oyunları için Karakter Sanatçıları, Sanat Yönetmeni ve Baş Karakter Sanatçısı tarafından brifing verilen görsel unsurları hazırlar. Orijinal konsept sanatçısının eskizlerinden karakterlerin, araçların, çevrenin, silahların, aksesuarların vb. illüstrasyonlarını oluştururlar.


Oyun Geliştiricisinin Sahip Olduğu 7 Yetenek

Oyun Geliştirme sektöründe yukarıda da bahsettiğim gibi birçok farklı oyun konsepti ve türü mevcut. Bunları genel olarak değerlendirdiğimizde, bazı gerekli olan yetenekleri şu şekilde sıralayabiliriz.

Alanda Hakimiyet

Tasarım, ses efektleri, modelleme ve yazılım gibi konularda yeterli düzeyde bilgi sahibi olman gerekiyor.

Programlama Dilinde Yeterlilik

C++, C#, Java, Javascript, Lua, Phyton, HTML5 gibi oyun dilleri arasından en az biriyle başlayarak oyun geliştirmeye başlayabilirsin. Örneğin; “League of Legends (LOL)” oyunu C++ yazılım diliyle,  “Hollow Knight” oyunu C# ile, PES’09-10 oyunu Java ile, “Angry Birds” ve “Flappy Birds” gibi oyunlar JavaScript ile, “The Sims 4” oyunu ise Phyton ile yazılmış popüler oyunlara birkaç örnektir.

Unity
Eğer mobil için bir oyun geliştiricisi olmak istiyorsan (IOS, Android tarafında) genellikle Unity’nin burada ağır bastığını göreceksin. Mobil oyunların kullanıcıya ulaşımı çok daha gelişmiş ve önde olduğu için Unity ile yapılmış oyunlardan harika sonuçlar elde etmek oldukça olası. Sadece mobil değil, Unity kullanılarak yapılmış oldukça başarılı Indie Oyun yapımları da mevcut. Her ne kadar Triple A (AAA) dediğimiz daha komplike oyunları oluşturmak olmasa da, Unity ile de oyun sektöründe ses getirmek mümkün.

Unreal Engine 4
Unreal Engine 4’ baktığımızda işlerin biraz daha görselleşmiş tarafına odaklanıldığını görebilirsin. Görsel tarafta biraz daha zengin içerikler üretmek istiyorsan Unreal Engine 4 senin için doğru seçim olabilir. Bugün oyun konsollarında ve bilgisayarlarda ya mobil oyunlarında, kısacası oyun oynanabilecek bütün platformlarda bir Unreal Engine etkisini görmek mümkün.

Sayısal Zeka

Oyun geliştirici kişilerin matematik bilgileri, basit bir Arkanoid oyununu oluştururken bile oldukça önemli yer tutmakta. Açıları ayarlamak, ölçüler gibi seçeneklerin hepsi en az orta seviye matematik bilgisi gerektirmektedir.

Yaratıcılık

Bu yetenek, özellikle “Game Design” alanında uzmanlaşmak isteyenler için geçerli olabilecek bir madde. Oyun geliştirici ekiplerinin hepsinde, bir ya da birden fazla kişinin “Game Design” pozisyonunda görev aldığını göreceksin. Oyunu ilginçleştirmek için daha fazla neler yapılabilir? İşte bu soru sorulduğunda cevap olarak yaratıcılıkla oluşturulmuş sonuçlar yardıma koşuyor.

Oyun Dili ve Motorları Hakkında Bilgi

Yukarıda bahsetmiş olduğum oyun motorları Unity, Unreal Engine 4 ve son olarak CryEngine hakkında başlangıç olarak en azından alt düzeyde bir bilgi sahibi olman gerekir. Aynı şekilde yukarıda bahsetmiş olduğum oyun dillerinde de aynı misyonda yaklaşmalısın.


Oyun Geliştirmenin Avantajları

Hayalindeki Oyunu Yaratabilirsin

Eğer bir “Gamer” isen, bu zamana kadar kafanda mutlaka bir “mükemmel oyun” tasarlamışsındır. Oyun sektöründe bir geliştirici olarak kariyer dünyasına adımını attığında kendi “mükemmel” oyununu yaratarak, ciddi gelirler elde edebilirsin. Bunu hem bir ekip ile çalışarak, ya da kendi oyununu çıkarırken yaptığını bir düşün. Hayal değil ya da çok imkansız görünen bir fikir gibi gözükse de bu oldukça olası bir senaryo!

Evden Çalışma Rahatlığı

Birçok oyun geliştirici, “remote” şekilde uzaktan çalışarak projelerini sürdürüyor. Bu kendi çalışma saatlerini ve verimliliğini kendin ayarlaman anlamına geliyor. Herhangi bir ofis ortamında değil, kendi evinin konforunda inanılmaz sonuçlar ortaya çıkarabilir, yaratıcılığını konuşturabilirsin.

Asla Bitmeyecek Bir Sektör!

Her mesleki alan için, gelecekteki durumu mutlaka tartışılır ya da sorgulanır öyle değil mi? Bunlar içerisinden sıyrılan sayılı meslek dallarından biri de Oyun Geliştiriciliği. Oyun sektörü, gün geçtikçe dünyanın dört bir yanından inanılmaz yatırımlar alan ve gene dünyanın dört bir yanından katılım sağlayan oyuncularla dolu bir sektör. Özellikle pandemi sürecinde, belki de kazanca geçmiş nadir sektörlerden biri oyun sektörü oldu. Çünkü kişiler, yetişkin ya da genç nüfus ayırt etmeksizin oyun dünyasında kendi yaşantılarından uzaklaşıp, kafa dağıtabiliyorlar. Ortalama bir oyuncu, bir oyunu bitirdikten birkaç gün sonra yeni bir oyunu deneyimlemek için satın alma işlemi yapabiliyor. Bir yayıncının oynadığı oyun videosu bile milyonlarca tık alabiliyor.

Kendi Oyun Deneyimin Bile Bir Ders Niteliğinde

Kendi deneyimlediğin oyunlardan bile, projen için birçok fikir edinebilirsin. Bu düz bir araştırmadan çok daha zevkli bir süreç olacaktır. Farklı oyun türlerinden, yazılım ve kodlardan geliştirilmiş oyunlardan, harika bir oyun geliştirmek; kafa dağıtmak için oynadığın oyunun deneyimi sırasında sana bir ders niteliğinde olabilir.

Kazanç

Oyun sektörü, dünyanın dört bir yanından katılan kullanıcılar ve geliştiricilerle dolu. Bu sektörde farklı para birimlerinde, iyi ücretler kazanabilirsin. Bu dolar ve euro kazanacağın sektörde, yabancı şirketlerde de görev alabilir kendi mikro çevreni bambaşka boyutlara taşıyabilirsin. Başka ülkelerle çalışmak, tahmin edeceğin üzere CV için harika dönüşler almanı sağlayacaktır. Ayrıca her ülkenin farklı çalışma disiplinleri olduğundan, bu imkan, kendi misyon ve vizyonun için de altın değerinde!

Oyun Geliştirmenin Dezavantajları

Sanıldığı Gibi Basit Değil

Bugün piyasada bulunan oyunlara yakından bakıldığımızda, eğlenceli oyunlar yapmanın zor olduğu açıkça görülüyor olmalı. Her yıl kaç tane vasat oyun çıktığını bir düşün. Bir ay sonra unutulacak olan bazı oyunların dışında heyecan verici kaç oyun var? Genel olarak nasıl bir yazılım yapmak zor bir işse, yazılımı eğlenceli hale getirmek de son derece zor olarak kabul edilmeli.

Riskli

Çıkarılacak oyuna bir nebze kumar gözüyle bakılabilir. Bir oyun harika grafiklerle, çığır açan bir 3D motora veya fantastik yapay zekaya sahip olabilirken aynı zamanda sinir bozucu veya oynaması ilgi çekici olmayabilir. Ama bazen ise tam tersi,  berbat grafiklere ve vasat bir 2D görüntü motoruna sahip bir oyun, hem kritik hem de ticari bir başarı haline gelen klasik bir başyapıt olabilir.

Ekip Gerekliliği

Oyunun daha iyi hale gelmesi için, grafiklere bakacak ayrı bir kişi, ses düzenine bakacak ayrı bir kişi gibi bir ekip olmalı. Bunların hepsini tek başına üstlenemezsin, bu da birçok açıdan ekip içerisindeki diğer kişilere kısmi bağımlılık gerektirir.


Oyun Geliştirme Çalışma Alanları

Her Türlü Oyun Platformları İçin Çalışabilirler

IOS, Android dahil olmak üzere her türlü oyun platformlarında çalışabilirler. Buna artırılmış gerçeklik oyunları da dahil. VR gözlükleri gibi deneyimlerin sağlanacağı platformlar, gelecekte hayatlarımızda çok daha fazla yer edinecekler. Oyun geliştiricilere, bu sektörlerde çok fazla ihtiyaç duyulacak.

Metaverse Evreni

Eğer ilgi alanın bu sektörse, muhtemelen Metaverse Evreni’ni de duymuş olmalısın. Oyun yapımcıları, büyük yatırımcılar bu evrenle ilgili ciddi zaman ve ödenek harcamaları yapıyorlar. Oyun sektöründeki kişilerden, Metaverse Evreni için çalışma talepleri bulunabilir.


Oyun Geliştirici Ne Kadar Kazanır?


Oyun geliştirici olarak tam zamanlı yüz yüze çalışabilirsiniz, bir şirkete uzaktan çalışabilirsiniz, freelance çalışabilirsiniz, bireysel geliştirdiğiniz oyunlarınızı yayınlayabilirsiniz veya kendi oyun şirketinizi açıp oyunlarınızı pazara sunabilirsiniz.

Full-time Freelancer Olursan

Freelancer oyun geliştiricilerin ortalaması 93.000 dolar. Ortalama freelance saatlik ücret ise 45 dolar. Upwork’de saatlik ücretler 10 dolardan başlayıp 100 dolara kadar çıkıyor. Yani oyun geliştiriciler tam zamanlı işlerden diğer yazılımcılara göre daha az kazanıyor. Ancak freelance çalışmada fark kapanıyor.

Amerika’da tam zamanlı oyun geliştiricilerin ortalama yıllık ücreti Glassdoor’a göre 71.000 dolar. Bir aralık vermek gerekirse yıllık 45.000 dolardan 170.000 dolara kadar maaşlı iş ilanları büyük kariyer sitelerinde mevcut. (Remote çalışmak da bu kategoriye dahil.)

Kendi Oyununu Pazara Sürersen

Freelance veya tam zamanlı çalışırken de kendi oyunlarını yayınlayan geliştiriciler çok yaygın. Bireysel oyun geliştirip yayınlayarak başarılı olmanın yolu ise yaratıcı olmak. Oyunları 1000 indirmenin altında kalan çok kişi olduğu gibi bireysel geliştirdiği halde ekipçe oluşturulmuş oyunları geçebilen geliştiriciler de var. Yani mobil oyunda başarılı olmanın yolu yüksek kaliteli grafiklerden ziyade yaratıcı oyun fikirleri. Hyper-casual oyunlar bu yüzden çok başarılı oldu.

Kendi oyununu amatör olarak yayınlamanın bir üst seviyesi oyun şirketi haline gelmek, profesyonel bir oyun geliştirme ekibi ve oyun alanında tecrübeli reklam ve pazarlama ekibi kurarak oyunlarınızı satmaya çalışmak. Bu yolda ise tabii ki bir üst sınır yok, bunun yanında başarısız olma ihtimaliniz de işletme ve oyun sektörü bilginizle ters orantılıdır.

Türkiye'de Oyun Sektörü ve Maaşlar

Türkiye’de şaşırtıcı şekilde oyun sektöründeki eleman açığı diğer sektörlerden daha fazla. Fakat bu ihtiyaca rağmen maaşlar diğer yazılım alanlarına göre çok yüksek değil. Yine de oyun sesçisi, oyun geliştirici, oyun tasarımcısı maaşları en düşük 4.000 civarı, neyse ki sektördekiler bu maaşın hızlıca arttığını söylüyorlar. Maaşlarda üst sınır yok ancak 25.000 gibi rakamları alanlar mevcut.

Eskiden oyun geliştiriciler diğer yazılım alanlarına göre ufak bir farkla da olsa ortalama olarak az kazanıyorlardı. Sebebi ise oyun geliştirme sektörünün eğlenceli yapısı nedeniyle bu işi hobisi haline getirmiş geliştiricilerin daha düşük ücretlere de çalışmaya hayır dememesi. Ancak son yıllarda sanal ve arttırılmış gerçeklik ve NFT içerikli oyun projeleri ile oyun geliştiricilerin kazançlarında artış söz konusu.


Öncelikle oyun motorlarından başlamakta fayda var, lakin oyun motorlarının gerektirdiği yazılım dilini ve o dilin IDE’sini biliyor olmalısın.

Oyun Geliştirmede En çok kullanılan 5 oyun motoru

Unreal Engine

Unreal Engine, günümüz pazarında mevcut olan oyunların büyük bir kısmı için tercih edilen araçtır. Ve çıktığından beri bir süredir tercih edilen araç olmuş durumda. Unreal Engine 4, açık dünya RPG'sinden 2D platform oyununa kadar her türlü oyunu yaratmana yardımcı olabilecek kaynaklara sahiptir. Unreal Engine’de (IDE) C++ kodlanıyor.

Özellikleri:

  1. Daha deneyimli programcılar, C ++ dilini oyun motorunda, kendi komut dosyalarını oluşturmak için kullanabilirler. Kodlaman yeterli olmasa bile oyun ve uygulamalarda etkileşimler yaratmak için, nesnelerine ekleyebileceğin, önceden kodlanmış kod blokları olan çok güçlü Blueprint ara yüzünü de kullanabilirsin.
  2. Bu motor, VR oyunları içinde kullanılabilir bir altyapı sunarak, sahnelerdeki etkileşimleri kolayca yaratmana da olanak sağlar.
  3. Kullanımı tamamen ücretsizdir. .

Unity

Unity, Unreal Engine kadar büyük bir popülaritenin sahip ikinci oyun motorudur. Oluşturmak istediğin oyunun türüne bağlı olarak Unity'nin Unreal'e göre karar verme faktörü olarak hizmet edebilecek birkaç avantajı var. Üzerinde oyun geliştirmek daha hızlı ve daha kolay. Ayrıca, birden fazla platformu hedefleyen oyunlar için daha iyi bir seçenek. Unity ile oyununu yeni bir ekosisteme taşırken daha az taşıma ve daha fazla ince ayar seçeneğin olur. Unity için Visual Studio’da (IDE) C# kodlanıyor.

Özellikleri:

  1. Piyasada bulunan oyun motorlarına göre 3D oyun ve simülasyon yapımında daha başarılıdır. 2D oyunlar da yapılabilir ama 3D oyun yapımında elde edilen performans kadar iyi değildir.
  2. Birden fazla platformda (PC, konsol, mobil cihaz gibi) için oyun yapım ve geliştirmede Unity oyun motoru tercih edilebilir. Daha çok mobil platform ve VR (Sanal Gerçeklik) teknolojilerinde başarılı bir oyun motorudur.

Game Maker Studio

Diğer oyun motorlarından farklı olarak GameMaker, kullanmak için programlama bilgisi gerektirmemesiyle öne çıkıyor. Basit bir "göster ve tıkla" sistemi kullanarak kullanıcılar, yoğun kodlu sistemlere ihtiyaç duymadan hızlı ve verimli bir şekilde oyunlar oluşturabilirler. Elbette, kodlama deneyimine sahip olmak işleri daha da kolaylaştırır ve kullanıcıların harika oyunlar oluşturmasına olanak tanır.

Özellikleri:

  1. GMS'nin öncülük ettiği şeylerden biri, minimum kodlama becerisiyle oyun oluşturmadır..
  2. Github entegrasyonu, motor içi hata ayıklayıcı, Sportsxpro için destek, kullanımı kolay tam gölgelendirici desteği, motor İçi Fizik, bir ses karıştırıcı, sahne arkası istemci/sunucu desteği, üçüncü taraf kitaplıkları ve SDK'lar, Unity'nin veya Unreal'in pazarına benzer bir GMS pazarı.

Godot Engine

Godot motoru hem 2d hem de 3D oyunlar için iyi bir seçenek olabilir. Godot, yaygın olarak kullanılan çok sayıda öğe ve araçla birlikte gelir ve kullanıcıların tamamen oyunun yaratılmasına odaklanmasına olanak tanır. Motor açık kaynak kodludur ve kullanımı ücretsizdir - herhangi bir koşul eklenmez. Kullanıcıların oluşturdukları tamamen onlara aittir. Büyük bir çevrimiçi topluluk, kullanıcılara yeni özellikler ve hatayla ilgili sorunlar hakkında destek ve güncellemeler sunar.

Özellikleri:

  1. Kullanımı ücretsizdir.
  2. Bilgisayar , mobil ve web platformlarını hedefleyen hem 2D hem de 3D oyunlar oluşturmak için tasarlanmıştır.

Blender

Çok fazla kaynağa sahip olmayan bir 3D oyun yapıyorsan, işte çözüm burada. Burada, ücretsiz olan en büyük 3D paketini bulabileceksin. Birçok özellik sunar ve aynı zamanda açık kaynaktır.

Oyun Geliştirme Programlama Araçları

Visual Studio

Microsoft'un geliştirici paketi Visual Studio, son 20 yıldır Entegre Geliştirici Ortamı (IDE) tercihi olan bir araçtır. Birden çok dili, hata ayıklayıcıyı, düzenleyiciyi ve çok daha fazlasını destekler. Yakın zamanda iOS ve Android için mobil oyunlar oluşturmanıza daha iyi yardımcı olması için ince ayarlar yapılmıştır.

Özellikleri:

  1. Birden çok dil seçeneği.
  2. Web uygulamalarının ve bulut hizmetlerinin yanı sıra Android, iOS ve Windows için modern uygulamaların oluşturulmasına yönelik tam özellikli, genişletilebilir ve ücretsiz bir IDE.

GNU Tool Chain

GNU derleyici koleksiyonu, Visual Studio'nun açık kaynaklı bir eşdeğeridir. Oyunlarını Linux ekosisteminde geliştiriyorsan, muhtemelen araç zincirinin çoğu zaten kuruludur. Hayal edebileceğin hemen hemen tüm kodlama dilleriyle çalışabilir. Kendi başına bir IDE değildir, ancak iyi bir editörle birlikte ihtiyacın olan her şeye ulaşabilirsin (ister derleme, bağlama veya hata ayıklama olsun).

C++

Birçok büyük oyun firması için bu programlama dili bir zorunluluktur. Öğrenmesi oldukça zor bir dildir ancak, grafik ve donanım üzerinde doğrudan kontrol sağlar. Bu iyi bir başlangıç olabilir, çünkü C++'da zaten iyi olmak, C# gibi nesne yönelimli dilleri öğrenmeyi çok daha kolay hale getirecek. Örneğin. unreal engine C++ ile yazılmış bilgileri kabul eder, bu yüzden kontrol edilmesi en güçlü dillerden biridir.

Java

Java kullanılarak oluşturulan Angry Birds gibi en popüler oyunlardan bazılarıyla, popülerlik söz konusu olduğunda Java, C++ bir adım öne çıkar. Peki neden? Birincisi, Java, mevcut CPU'dan en iyi şekilde yararlanırken daha az bellek kullanımı gerektiren çoklu iş parçacığını destekler. İkincisi, Java ayrıca çok kullanıcılı oyunlar oluşturmaya izin veren araçlar kullanır. Oyununu geliştirmek için Java ile çalışırken pek çok yönerge bulacaksın.

Web Languages

Kendini tarayıcılar için oyun yaparken görmek istiyorsan, eksiksiz bir kullanıcı deneyimi sunabilmek için birkaç farklı kod bilmen gerekir. Bunlara HTML5, CSS3, SQL ve JavaScript dahildir.

Mobil Oyunlar Için Gerekli Diğer Araçlar

Marmalade

Son birkaç yılda oyun endüstrisine gelen büyük bir değişiklik, mobil oyunların yükselişidir. Artık herkes gittiği her yerde arka cebinde küçük bir bilgisayar taşıdığına göre, mobil oyunlar günden güne talep alan bir kol olmaya başladı demektir. Marmelade da bunun arkasındaki platformlardan biri. C++ veya Xcode ile Marmalade, yerel bir mobil oyun oluşturmana yardımcı olacaktır. Ayrıca hem Android hem de iOS ile kusursuz çalışır.

ARM

ARM, tüm Android akıllı telefonların yaklaşık yüzde 20'sine ve bu işletim sistemini çalıştıran tabletlerin yaklaşık yarısına güç sağlayan mikroişlemciler oluşturan bir şirkettir. Ayrıca yazılım geliştirme araçları da geliştirirler.

Photoshop

Dijital sanat yaratmaktan bahsedildiğinde, çoğu insan önce tek bir yazılımı düşünür, o da tabiki  Photoshop. Maliyetine rağmen bunun ederini oldukça karşılıyor. Neredeyse diğer tüm sanat yaratıcı yazılımlardan daha fazla özelliği ve eklentisi var ve birçok insan onunla nasıl çalışacağını biliyor. Photoshop kalitesi tartışılmaz. Ve bunu kullanmayan insanlar bile bunu biliyor.

GIMP

Açık kaynak kodlu Photoshop'a alternatif olarak edinebileceğiniz  en yakın şey. Photoshop'un yapabileceği hemen hemen her şeyi yapabilir - ancak bu zaman alacaktır. İnsanların GIMP ile ilgili temel sorunu, kullanıcı arayüzüdür. Kullanıcı dostu olmaktan uzaktır.

Web tabanlı oyun geliştirme araçları

Sektörde kullanımı çok az olsa da Upwork’de ilgili işler az değil. HTML5, TypeScript, Three.js ve WebGL kullanarak web tabanlı oyunlar geliştirebilirsiniz. Upwork’de oyun geliştiricilerin yanında web geliştiricilerin bir kısmı da bu alanda çalışıyor.

HTML5, TypeScript

Hakkında kullanmanın gerekli olup olmadığıyla ilgili tartışmalar olan bir dil ama yine de kullanılan bir hiper metin işaretleme dilidir. HTML5 ile Pacman, Tetris gibi basit oyunlar yapabilirsiniz. TypeScript bünyesinde barındırdığı derleyici sayesinde, yazılan kodu JavaScript koduna çevirir. Oyun geliştirmede çok yaygın olmayan ama hala kullanılan bir programlama dilidir.

Three.js, WebGL

WebGL, web uygulamalarında üç boyutlu nesneler oluşturmak veya üç boyutlu nesneleri kullanabilmek için oluşturulmuş bir API’dır. Three.js ise WebGL kullanarak bir web tarayıcısında animasyonlu 3D bilgisayar grafikleri oluşturmak ve görüntülemek için kullanılan tarayıcılar arası bir JavaScript kitaplığı ve uygulama programlama arayüzüdür.


Oyun Geliştiriciler için en iyi 7 kaynak

Yalin Kod - YouTube

Bilgem Çakır, Seattle'da yaşayan bir oyun geliştirici. Bugüne kadar birçok ekiple beraber çalışma imkanı bulmuş, donanımlı biri. Yazılım ve oyun geliştirme üzerine birçok bilgi paylaştığı YouTube kanalına göz atabilirsin.

at0m - YouTube

Ataberk Palacı, bir oyun geliştirici. Kanalında oyun videolarından, oyun yapımına kadar birçok içerik bulabilirsin.

Extra Credits - YouTube

Oyun tasarımı, televizyon prodüksiyonu, edebiyat ve akademi alanlarında geçmişe sahip eğlence meraklılarından oluşan eğitici bir YouTube kanalı. Ekip, her hafta oyun tasarımı, dünya tarihi, mitoloji gibi konular hakkında kısa biçimli animasyonlu video denemeleri oluşturuyor.

TierZoo - YouTube

Ahoy - YouTube

Ahoy, oyun tasarımı ve pop kültürünün bir karışımı gibi, silahlar ve oyun konsolları gibi şeylerin kökenini ve evrimini araştıran belgesel tarzı videolar yapıyor. Fikir edinmeni sağlayabilir.

at0m Reddit Sayfası

Yukarıda YouTube Kanalını önerdiğim Ataberk’in Reddit sayfası ve Discord sunucusu

Ahmet UTV – Medium

Alanınla ilgili Portfolyo oluşturmaktan, başka birçok şeye kadar verimli bilgiler öğrenebileceğin bir Medium yazısı.

Lorem Ipsum

AAA kategorisi gibi büyük prodüksiyonlu oyunlarla daha fazla ilgileniyorlar ama mobil oyunlarla ilgili de videoları var. Bunlardan daha önemlisi oyun geliştiricinin mantalitesi ile ilgili videoları yol haritanızı şekillendirmenize yardımcı olacaktır.

Mustafa Akkuzu

Bu kanalda ağırlıklı olarak unity eğitimi videoları var. Mustafa Akkuzu’nun Unity eğitimleri Türkiye’deki oyun geliştiriciler tarafından yeni başlayanlara çok kez tavsiye edilmiştir.

Turkcell Geleceği Yazanlar

Oyun geliştirme ile ilgili sektörde çalışmış eğitmenlerin bu eğitimlerini kesinlikle tavsiye ediyorum. Prodüksiyon, oyun tasarımı, sanat, gelir modeli ve oyun reklamcılığı konularına bu kadar detaylı değinen bir oyun geliştirme eğitimine Turkcell dışında rastlamadım. Unity eğitimi ile de Unity ile proje geliştireceksiniz.

Bu işle ilgilenecek arkadaşlara en önemli tavsiyem internetten araştırmayı ve istediğiniz bilgiyi bir şekilde koparmayı öğrenin. Aradığınız bilgi takip ettiğiniz Youtube kanalında olmayabilir bu yüzden tek bir kanala bağlı kalmayın. Tüm internet dünyası sizin.


Oyun Geliştirmeye yeni başlayanlar için 4 tavsiye

Kendine Bir Yazılım Dili Seç

Oyun geliştirme sürecinin ilk etabında kişinin kendisini geliştirmek isteyeceği iki eksen var. Birincisi; kullanacağın dil ki bu dil için çok fazla seçenek var. JavaScript, HTML ile bile oyun tasarlanabilir. Bu sebeple en az bir dil bilmen gerekiyor.

Ölçeklenebilir İstekler

Yeni geliştiriciler arasında genelde çok fazla rastlanılan hata, çok büyük Triple A (AAA) kategorisine girecek oyunları tasarlamaya çalışmak oluyor. Bu genel hatayı, birçok Oyun Geliştirici formlarında gezinirken bile görebilirsin. Kişilerin bu sektöre girmek istemesindeki motivasyonu belki de direkt olarak “Call of Duty” gibi oyunları yapmak olabilir. Bu tabii ki harika bir hedef, ama ne yazık ki gerçekçi değil. Bu tarz oyunlara geçmeden önce, daha küçük oyunlarla başlayabilir kendini temelden eğitebilirsin.

Küçük Oyunlarla Başla

Dört tane temel oyun yaparak başlayabilirsin. Yukarıda da bahsettiğim gibi genelde çok rastlanılan hata, çok büyük Triple A kategorisine girecek oyunları tasarlamaya çalışmak oluyor. Dört tane klasik oyun, sana çok fazla şey öğretebilir.

#1 Tetris
Tetris, olabilecek en basit oyun, ama kişi Tetris’i herhangi bir dilde yapmayı başarırsa;  ekrana çizme, ekrandaki çizilenlerin anime ettirilmesi, objelerin kaydırılması gibi ya da  GameLoop denilen zaman bileşenlerini ayarlamak, kullancııdan inputu almak (sağa-sola kaydırma), animasyon oluşturma, zamanı ayarlama, kendiliğinden olan bir akış (oyuncular bu akışa karşı oynuyor), skor tutma gibi özelliklerin hepsini, Tetris yapan biri öğrenebilir. Oyunu yaptıktan sonra, 80'lerdeki bir Arcane makinesinde çalışıyormuş gibi olması ve kusursuz çalışması gerekir. Örneğin oyunun başlığı ekranı çıkacak, başlamak için şu tuşa basın yazısı olacak, skor gözükecek, oyunda öldüğünde ekrana çıkacak, yüksek skorları gösterecek gibi detaylarıyla oyunun tamamen çalışıyor ve oynanabiliyor olması gerekir.

#2 Arkanoid
İkinci oyun Arkanoid; top sektirip blokları kırdığın bir oyun. Tetris’i yapıp üstüne bu oyunu da yaparsan sürecin sana öğrettiği şeyler;, matematik, açılar, yansımalar, sekmeler vs. gibi ana özellikler olacaktır.

#3 Mario
Bu ikisinin ardından Mario’yu yaparsan, daha az grafikle daha büyük alanları boyama, jump benzeri mekanikleri öğrenmiş olacaksın.

#4 Pacman
İlk üç oyunun ardından Pacman sıra geldi. Pacman her ne kadar basit bir oyunmuş gibi gözükse de  , oyun içerisindeki dört hayalatin  zamanlamaları inanılmazdır. Bunlar 70’lerde yapıldığında tam bir takım oyunu oynuyorlardı. Oyundaki bir hayalet takipçidir (karakterin nereye giderse seni takip eder), ikinci hayalete interceptor denir, senin yaklaşmakta olduğun bir kavşağa gitmeye çalışır. Oyunda yanlarda bulunan kapılar vardır ve, sen hangi kapıya yakınsan üçüncü hayalet o kapıda bekler. Dördüncü hayalet ise de alan savunması yapar, bir köşede gezer o da senin genelde yemediğin son peynirlerin kaldığı köşedir. Bu çok ciddi bir AI örneğidir. Bu dört oyunu yapabilirsen bu inanılmaz bir başarıdır ve  sektörde olan herkes de bunun ne denli önemli bir başarı olduğunu bilir.

Oynanabilirliğe Odaklan

Küçük oyunlardan başlayıp, hatta bunların üstüne kendi benzersiz fikirlerin ekleyebilirsin. Örneğin Pacman oyununu ele alalım, sence Pacman oyunu dört yerine beş hayaletli olsa nasıl olurdu? Bu fikir geliştirme alanı için özel bir pozisyon olarak “Game Design” diye bir dal mevcut.. Oyun mekaniğine bazı şeyler ekleyerek oyunu daha zevkli hale getirmek ayrı bir yetenek gerektirir. Eğer kendinde bu özelliği de görüyorsan, hem oyun geliştirip hem de Game Design pozisyonunu da beraber götürebilirsin. Bu tabii ki daha çok kazanç ve iş alanı anlamına gelir.


Oyun Geliştirmede Sık Kullanılan Terimler

AAA (Triple-A)

Genellikle orta ölçekli veya büyük yayıncılar tarafından oluşturulan ve yayınlanan oyunlar; genellikle "indie" olarak sınıflandırılamayan herhangi bir oyun. Kompleks dediğimiz oyunlar için kullanılabilir.

AI

Yapay zeka; işlevselliği insan girdisinden ziyade bilgisayar koduna bağlı olan oyun içi bir varlık. NPC'ler yaygın AI’lardır.

Beta

Tüm önemli özellikleri ve varlıkları içeren bir oyun sürümü. Bir oyunun bu sürümü önemli bir hata içermiyor ve kod yayınlama yolunda demektir. Beta sürümlerine zaman zaman hata raporlama ve kritik geri bildirim için sınırlı bir sürüm verilir.

Bug

Hata :)

Game Engine

Oyun geliştiricilere oyunlarını profesyonel ve verimli bir şekilde oluşturmaları için bir dizi araç ve özellik sunan yazılım.

Lightmap

Bir oyunda sürekli kullanım için saklanan önceden oluşturulmuş bir aydınlatma sistemi.

Localization

Bir oyunu birden çok dile çevirme.

Quality assurance (QA)

Bir oyunun genel kalitesi için test edilmesi, bu da normalde hataları bulmayı ve ortadan kaldırmayı içerir..

Scripting

Another word for coding or programming; the act of writing code..

UI/GUI

Kullanıcı arayüzü / grafiksel kullanıcı arayüzü. Ekrandaki menüler, envanterler ve diğer oyun dışı etkileşimli sistemler.

Orthographic camera

Nesnelerin birbirlerine olan gerçek mesafelerine veya göreli konumlarına bakılmaksızın ekranda sabit görünmesini sağlayan bir kamera görüntüsü. Bu, GameObject'lerin düz görünmesini sağladığından veya 2.5D oyunların (3D öğeleri kullanan 2D oyunlar) özellikle retro tarzı 2D oyunlar için kullanılır, çünkü aksi takdirde 2D görünümünü korurken 3D derinlik ve tanım dokunuşlarına izin verirler.

UIElements

Unity'de birleşik bir kullanıcı arayüzü düzenleme aracı. Unity 2020.1 itibariyle bu, UI Araç Takımı olarak kullanılır.


Oyun Geliştirici Mülakat Soruları

Mülakat soruları sadece iyi bir firmaya girmek için değil, aynı zamanda kendi içsel gelişimini ve bu pozisyon için yeterliliğe sahip olup olmadığını gösteren küçük bir testtir. Bu anlamda lütfen bu mülakat sorularını kendi kendine yanıtlamaya çalış, belki de hiç bilmediğin bir eksiğini keşfedeceksin!.

Oyun geliştirirken bir ekip ile çalışmak neden önemlidir?

Her oyun tasarımının birçok farklı oyuncu tarafından test edilmesi gerekir. Genellikle her oyuncu farklı bir strateji dener ve böylece tasarımcı hangi stratejilerin en iyi sonucu verdiğini görebilir. İyi bir oyun tasarımı, birçok farklı stratejiye izin verir, bu stratejiler eşit başarı şansı sunar. Her farklı bakış açısı, oyunu daha zevkli ve oynanabilir kılar.

Her video oyunu programlanabilir mi?

Herhangi bir programlama yapmadan tamamen işlevsel video oyunları yapmanızı sağlayacak yazılım uygulamaları bulunmaktadır. Ancak, gerçekten iyi olmak istiyorsanız programlamayı öğrenmeniz gerekir.

Java oyun geliştirme için uygun mudur?

Şu anda Java'da bir hobi projesi olarak ikinci 3D oyunumu yazıyorum ve buna bayılıyorum. Eskiden oyunlarımı C++ ile yazardım ama Java'ya geçtikten sonra gerek kalmadı.. Java ile birden fazla işletim sistemini desteklemek çok kolay olabilir, örneğin Windows'ta bir yıl boyunca geliştirdiğim önceki Java oyunum, bu platformlarda hiçbir şey derlemeye gerek kalmadan hemen Linux'ta ve OS X'te hatsız bir şekilde ile çalıştı.

Html5 Oyunları için bir portal var mı?

Aslında yok. Kısa süre önce (bir yıldan az bir süre önce) HTML5 oyun geliştirmeye başladım, ciddi bir şey değildi, sadece pek çok kişiye göstermediğim kendi küçük projelerimdi ve bu kesinlikle web'de bir ivme yakalamadı. Bağımsız geliştiricilerin kendi oyunlarını yayınlayabilecekleri bir çevrimiçi portalın varlığıyla ilgileniyorum, bir nevi "geliştiriciler için geliştirme" gibi. Güçlü bir sunucu tarafı ve mikro işlemler olmadan bir HTML5 oyununu gerçekten ticarileştiremezsiniz. İkinci sorunsa kod kolayca kopyalanabilir ve son olarak HTML5 tamamen yeni ve zamana ihtiyacı var.

Oyun Yönetmeni ile Oyun Yapımcısı Arasındaki Fark Nedir?

Genel olarak, listelenen bir oyun direktörü varsa, bu pozisyon yaratıcı kararlarla ilgilenecek ve bunları ekibe iletecek, oyun yapımcısı ise program ve iş kararları ile daha fazla ilgilenecek ve yatırımcılar / yayıncılarla ilgilenecektir. Bazı mağazalarda yapımcı olarak adlandırdıkları kişi aynı zamanda yaratıcı yönü de yönlendirir ve disipline yakın çalışır ve yaratıcı kararlar üzerinde bir oyun yönetmeni gibi çalışır. Diğer mağazalarda oyun tasarım lideri, etkin bir şekilde oyun direktörüdür.

Hangi popüler oyunlar C diliyle yazılmıştır?

Doom, Quake, id Tech 4'e kadar hemen hemen tüm id oyunları.

Oyun Geliştirmede C++ hala tercih ediliyor mu?

Evet, C++ en sık kullanılan dildir (ancak bazı insanlar hala C kullanıyor). Bunun birçok nedeni vardır. Tam bir ivme - bu sadece yıllardır kullanılan bir dil, birçok teknolojisi zaten mevcut  ve insanlar bundan memnun, bu yüzden değişim bir gecede olamaz.

“Pixel Art” nedir?

Pixel Art, bir 3D model oluşturmak yerine, bir görüntüdeki tek tek pikselleri çizerek oluşturulan dijital sanat eseridir. Genellikle eski 2D video oyunlarını andıran temiz, karikatürize grafiklere atıfta bulunur.


Oyun Geliştirmede En Önemli 6 Sosyal Beceri

Projeleri verimli ve etkili bir şekilde tamamlama ve güçlü profesyonel ilişkiler kurma söz konusu olduğunda, burada “Soft Skills” dediğimiz kavramı atlamamak gerek. Bu beceriler, oyunun kurallarını değiştirir! Bu nedenle, bunları öğrenme isteğin, bir Oyun Geliştiricisi olarak araç kutunun en önemli parçalarıdırlar.

Problem Çözme Odaklılık

Problem çözme, problemin tanımlanması, beyin fırtınası ve eleştirel düşünmeden karar vermeye kadar olan geliştirme sürecinin merkezinde yer alır. Krizi yönetmek, kritik ama doğru kararlar alma, her zaman hayat kurtaran yeteneklerdir.

Zaman Yönetimi

Ekip liderleri, işin ne zaman tamamlanacağına dair doğru zaman tahminleri isterler, bu nedenle projelerini ve görevlerini düzenli tutman ve bir zaman yönetimi stratejinin olması çok önemlidir.

Baskı Altında Çalışabilmek

Baskı altında çalışmak ve hala son teslim tarihlerini karşılamak, iyi bir oyun geliştiricisinin hayatıdır..

Sabır

Kodlama, bilgisayarın anlayabileceği bir dilde düşünmenizi gerektirir. Bunun bariz bir avantajı, vizyonununu bilgisayarın yürütebileceği bir şeye dönüştürebilmektir. Ancak, önemli bir dezavantajı, proje kararlarının arkasındaki nedenleri teknik olmayan paydaşlara açıklamanın genellikle zor olabilmesidir.

Uyarlanabilirlik

Teknolojik alan sürekli gelişiyor. Her gün yeni araçlar ve teknikler geliştirilmekte ve benimsenmektedir. Teknolojik sektörün bu doğası göz önüne alındığında, uyarlanabilir ve kendi kendine öğrenen bir tutuma sahip bir geliştirici, geliştirme yığını ve uygulamaları ile rahat büyüyen birine göre bir avantaja sahiptir.

Takıma Ayak Uydurabilmek

Bir oyun geliştiricisi olarak, diğer geliştiricilerle veya en azından daha fazla tasarımcı, PM ve müşteriyle bir ekibin parçası olarak çalışacağını söylemeye gerek yok. Her durumda, bir projede tamamen yalnız olma şansın oldukça zayıf.

Topluluğa katıl

Freelancer olarak gelişmiş ülkelerde bizimle aynı işi yapanlarla aynı gelire sahip olmanın yollarını birlikte keşfediyoruz. Bu yolda bize katılmak istersen aşağıdaki butonu kullanabilirsin.