27
Barış KES Game Engines Konular; Game Engine (Oyun Motoru) Nedir Game Engines Öncesi Game Engines Kısa Tarihi Popüler Game Engines Kıyaslamalar Rendering Engines Kaynakça Konular; Game Engine (Oyun Motoru) Nedir Game Engines Öncesi Game Engines Kısa Tarihi Popüler Game Engines Kıyaslamalar Rendering Engines Kaynakça

Barış KES Game Engines - web.cs.hacettepe.edu.trbgenc/courses/bco... · 1993 Id Tech 1 1993 yılında Id Software Id Tech 1 ile 2.5D Doom oyunu ile game enginelerin doğuşu başlamıştır

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Barış KES Game Engines - web.cs.hacettepe.edu.trbgenc/courses/bco... · 1993 Id Tech 1 1993 yılında Id Software Id Tech 1 ile 2.5D Doom oyunu ile game enginelerin doğuşu başlamıştır

Barış KESGame Engines Konular;

Game Engine (Oyun Motoru) Nedir

Game Engines Öncesi

Game Engines Kısa Tarihi

Popüler Game Engines

Kıyaslamalar

Rendering Engines

Kaynakça

Konular;

Game Engine (Oyun Motoru) Nedir

Game Engines Öncesi

Game Engines Kısa Tarihi

Popüler Game Engines

Kıyaslamalar

Rendering Engines

Kaynakça

Page 2: Barış KES Game Engines - web.cs.hacettepe.edu.trbgenc/courses/bco... · 1993 Id Tech 1 1993 yılında Id Software Id Tech 1 ile 2.5D Doom oyunu ile game enginelerin doğuşu başlamıştır

Oyun Motoru Nedir.

• Oyun motoru oyun geliştirmek için oluşturulan bir geliştirme ortamıdır.

• Bu Geliştirme ortamı Konsollara,Mobil cihazlara PC lere oyun üretmeye olanak sağlamaktadır.

• Render yapan tüm 2D-3d grafik görüntüleme programlarıda Engine Kapsamındadır.

• Daha detaylı bilgi için;

• https://en.wikipedia.org/wiki/Game_engine

Page 3: Barış KES Game Engines - web.cs.hacettepe.edu.trbgenc/courses/bco... · 1993 Id Tech 1 1993 yılında Id Software Id Tech 1 ile 2.5D Doom oyunu ile game enginelerin doğuşu başlamıştır

Game Engines Öncesi

• Constructions Kits (1980’s)

ÞPinnball Construction Kit

Þhttps://www.youtube.com/watch?v=ow0X7IrzzO8

Þ Arcade Game Constuction Kit (Comodore 64)

Þhttps://www.youtube.com/watch?v=q_iI87ZFEvs

Bu kitler belirli kısıtlamalar ile oyun geliştirme ortamı sağlıyorlardı.

Page 4: Barış KES Game Engines - web.cs.hacettepe.edu.trbgenc/courses/bco... · 1993 Id Tech 1 1993 yılında Id Software Id Tech 1 ile 2.5D Doom oyunu ile game enginelerin doğuşu başlamıştır

Game Engines Kısa Tarihi

1989 Ultima Underworld

Ultima Underworld oyunu ile birlikte ilk Game Engine aynı isimle geliştirilmiştir.

1993 Id Tech 1

1993 yılında Id Software Id Tech 1 ile 2.5D Doom oyunu ile game enginelerin doğuşu başlamıştır diyebiliriz.Zamanına göre oldukca hızlı ve standar VGA desteği olan 386 bir PC de çalıştırılabiliyordu.

• John Carmach ve John Romero bu oyun motoru geliştirmesinde büyük rol oynamışlardır.

Carmack&Romeronun bazı Yorumlarını aşağıdaki linkten bulabilirsiniz.

https://www.youtube.com/watch?v=_MWN8a1SJ7Y

Page 5: Barış KES Game Engines - web.cs.hacettepe.edu.trbgenc/courses/bco... · 1993 Id Tech 1 1993 yılında Id Software Id Tech 1 ile 2.5D Doom oyunu ile game enginelerin doğuşu başlamıştır

Game Engines Kısa Tarihi

1992 Voxel Space NovaLogic firması tarafından geliştirilmiştir 90 lı yılların sonuna kadar çeşitli oyunlar bu engine ile yapılmıştır.

Delta force oyunu bu oyun motorunun bilinen örnekleri arasındadır.

Voxel Space web Demosu;

https://s-macke.github.io/VoxelSpace/

Steam de bu oyun motoru ile yapılmış oyunların bir pack i halen satılmaktadır.

https://store.steampowered.com/sub/46995/

Page 6: Barış KES Game Engines - web.cs.hacettepe.edu.trbgenc/courses/bco... · 1993 Id Tech 1 1993 yılında Id Software Id Tech 1 ile 2.5D Doom oyunu ile game enginelerin doğuşu başlamıştır

Game Engines Kısa Tarihi

1995 XnGine

ilk DOS tabanlı 3D game Engine olan XnGine Bethesta Softworks tarafından geliştirilmiştir.

Ilk yapılan oyun;

The Terminator FutureShock

Yaklaşık 4 yıl boyunca geliştirilmeye devam edilmiştir

Sonraki versiyonlarında 3DFX ve yüksek çözünürlüğü destekler hale geltirilmiştir.

Yapılan bazı oyunlar.

https://www.youtube.com/watch?v=jnyHG_nHyB0

Page 7: Barış KES Game Engines - web.cs.hacettepe.edu.trbgenc/courses/bco... · 1993 Id Tech 1 1993 yılında Id Software Id Tech 1 ile 2.5D Doom oyunu ile game enginelerin doğuşu başlamıştır

Game Engines Kısa Tarihi

1996 Quake Engine

Id Software tarafından yılında yapılmıştır.

Bu firmanın ilk 3D game engine i olmuştur ve zamanına göre bir çok performans artısı bulunmaktadır.

Oyuncuya yanlızca kendisinin göreceği kısımlar render edilmekte ve oyunun diğer bölümleri Görüntülenmemekteydi.

İlk oyun Quake’di aslında Quake DOOM esintileri olan bir oyun Quake Engine geliştirimesinde DOOM ekibinde olan John Carmach yine görev almıştır ve aynı konsepti korumuştur diyebiliriz.

Firma Aynı Engine i 1998 yılında OpenGL destekleyecek şekilde, C dilini destekleyecek şekilde ve bir çok optimizasyon ile Id Tech 2 adında tekrar Release edecektir.

Bu seri 7. versiyona kadar ulaşmıştır.

Page 8: Barış KES Game Engines - web.cs.hacettepe.edu.trbgenc/courses/bco... · 1993 Id Tech 1 1993 yılında Id Software Id Tech 1 ile 2.5D Doom oyunu ile game enginelerin doğuşu başlamıştır

Game Engines Kısa Tarihi

1998 GoldSRC Valve tarafından geliştirilen bu engine “Half-life” oyunu ile hayat bulmuştur Bu engine sayesinde hem OpenGL hemde Direct3d desteği sağlanmıştır.

Sonrasında Counter-Strike,Team Forness Classic gibi oyunlarda kullanılmıştır.

“C” dili ile geliştirme yapılmaktadır.

Page 9: Barış KES Game Engines - web.cs.hacettepe.edu.trbgenc/courses/bco... · 1993 Id Tech 1 1993 yılında Id Software Id Tech 1 ile 2.5D Doom oyunu ile game enginelerin doğuşu başlamıştır

Game Engines Kısa Tarihi

1998 Unreal EngineEpic games tarafından geliştirilen bu engine ilk olarak Unreal oyunu ile oyunculara sunulmuştur.

Tim Seeeney Tarafından geliştirilen bu engine gelşmekte olan bu engine zamanına göre halen bir çok enginede kullanılan yapılara temel oluşturmuştur. Engine software rendering üzerinden çalışıyordu.

C++ kullanılıyordu.

Bu engine 2.3.4. nesilleri ile günümüze kadar güncelliğini korumuştur.

1999 Game MakerMart Overmars tarafından geliştirilen 2D engine C++,C# dilinde yazılmıştır.

2D iskelet animasyonları geniş bir standart çizim kütüphanesi bulunmaktadır. Kendine ait bir scripting dili olan “GameMaker” dili ile oyun geliştirmek mümkündir bu syntax javascripte yakındır.

Sürükle Bırak (Drag And Drop) visual scripting tool gibi özellikleri de beraberinde getiren bu Engine Günümüzde de kendini güncel tutan ve gelişmeye açık olan popüler engineler arasındadır

Page 10: Barış KES Game Engines - web.cs.hacettepe.edu.trbgenc/courses/bco... · 1993 Id Tech 1 1993 yılında Id Software Id Tech 1 ile 2.5D Doom oyunu ile game enginelerin doğuşu başlamıştır

Game Engines Kısa Tarihi

2001 GeoModVolition firması tarafından Ref Faction oyun serisi için tasarlanmıştır.

2001 TorqueGarage games tarafından geliştirilmiştir. Şu an open source olarak sitesinden ulaşabileceğiniz bir enginedir.

https://torque3d.org/

Tribes 2 oyununu modifiye edebilmek için geliştirilen bir engine dir.

2001 Serius EngineCroTeam tarafından Serius Sam Serisi için geliştirilmiş bir engine dir. Çok sayıda karakteri ekranda görüntüleme üzerine performansı yüksek olan bir engine dir.

Page 11: Barış KES Game Engines - web.cs.hacettepe.edu.trbgenc/courses/bco... · 1993 Id Tech 1 1993 yılında Id Software Id Tech 1 ile 2.5D Doom oyunu ile game enginelerin doğuşu başlamıştır

Game Engines Kısa Tarihi

2004 CryEngine CryTek firması tarafından geliştirilen engine da bulunan pixel shader sayesinde Daha realistik su efektleri ve rendering sağlanmıştır.

FarCry,Crysis serisi bu engine in popular oyunları arasındadır

2005 SourceValve tarafından geliştirmiştir. Bu engine sayesinde ileri seviye shader teknolojileri, dinamik ışıklandırma, gölgelendirme gibi konularda yenilikler yapılmıştır.

Daha gerçekci yansıyan su alanları hareket bulanıklaştırma gibi özellikler de gelmiştir.

Page 12: Barış KES Game Engines - web.cs.hacettepe.edu.trbgenc/courses/bco... · 1993 Id Tech 1 1993 yılında Id Software Id Tech 1 ile 2.5D Doom oyunu ile game enginelerin doğuşu başlamıştır

Game Engines Kısa Tarihi

2005 Id Tech 4 (Doom 3)Id Software tarafından geliştirilen bu engine aslında tüm render kısımındaki kodların tekrar yazılmasını kapsıyor. Ve önceki versiyonların aksine bu cersiyonda “C “den “C++ “ a geçiş yapılmış.

Quake4,Prey,Enemy Territory gibi oyunlar bu engine ile geliştirilmiştir.

Open source linki aşağıdadır.

https://github.com/id-Software/DOOM-3-BFG

Page 13: Barış KES Game Engines - web.cs.hacettepe.edu.trbgenc/courses/bco... · 1993 Id Tech 1 1993 yılında Id Software Id Tech 1 ile 2.5D Doom oyunu ile game enginelerin doğuşu başlamıştır

Game Engines Kısa Tarihi

2005 UnityUnity Technologies tarafından geliştiriden 25 den fazla patformda oyun geliştiriebilecek bir engine dir. Kolay erişilebilirlik ve sürekli gelişmesi sonucu popüler bir geliştirme ortamı haline gelmiştir. C,C++ ile geliştirilmiştir.

C#,javaScript ile geliştirme yapmaya olanak sağlamaktadır

şu an özellikle mobil oyun sektöründe marketteki oyunların %60 I Unity ile geliştirilmiştir. 2D ve 3D oyun geliştirmeye olanak sağlamaktadır.

2006 RAGEThe Rock Star Advanced Game Engine (Rage) RAGE teknoloji grubu tarafından Rock Start Games için geliştirilmiştir

Page 14: Barış KES Game Engines - web.cs.hacettepe.edu.trbgenc/courses/bco... · 1993 Id Tech 1 1993 yılında Id Software Id Tech 1 ile 2.5D Doom oyunu ile game enginelerin doğuşu başlamıştır

Game Engines Kısa Tarihi

2008 EGO EngineNeo Game Engine ini modifiye bir versiyonu olan bu engine CodeMasters tarafından geliştirilmiştir. Genelde

Colin McRae serisi F1 serisi gibi yarış oyunlarında kendini göstern bir engine dir.

2008 FrostBiteEA Digital Illusions CE AB (DICE) firması tarafından C++,C# ile geliştirilen engine Battlefield:Bad Company serisi, Metal Of Honor,Battlefield 1943 gibi önemli oyunlarun geliştirildiği bir Engine olmuştur.

Page 15: Barış KES Game Engines - web.cs.hacettepe.edu.trbgenc/courses/bco... · 1993 Id Tech 1 1993 yılında Id Software Id Tech 1 ile 2.5D Doom oyunu ile game enginelerin doğuşu başlamıştır

Game Engines Kısa Tarihi

2010 Cocos2dOpen source olarak hayatına başlayan 2d game engine Chukong Technologies tarafından C++,Objective-c,python kullanarak geliştirilmiştir.

2d oyunlarda mobil oyun sektöründe bir çok kullanımı buunmaktadır.

Hill Climb Racing ,Family Guy: Quest For Stuff,Flow Free Diamond Dash Castle Clash,Clash of Lords 2 gibi bir çok oyun bu engine ile geliştirilmiştir.

2014 GodotOpen Source olan bu engine bir kaç firmanın birlikte çalışması sonucu geliştirilmiştir. C,C++ diller ile geliştirilen bu engine Developerın tüm ihtiyaçlarını tek bir editör üzerinde toplamayı amaçlamıştır.

Scripting olarakta farklı dillerde geliştirmeye olanak sağlamaktadır C++,C# kendi içinde barındırdığı GDScript gibi.

İçerisinde kendi script editörü bulunmaktadır bu editor ile debugging , compile işlemleri yapılabilmektedirç.

Page 16: Barış KES Game Engines - web.cs.hacettepe.edu.trbgenc/courses/bco... · 1993 Id Tech 1 1993 yılında Id Software Id Tech 1 ile 2.5D Doom oyunu ile game enginelerin doğuşu başlamıştır

Game Engines Kısa Tarihi

Bu kısımdan sonra Id Tech,Godot,Unity,Unreal vs gibi Engine lerin versiyon güncellediğini görüyoruz. Aslında first release tarihlerinden sonra Engine ler sürekli yenileniyor iyileştiriliyor daha iyi grafikler daha yüksek performans üzerine çalışmalar devam ediyor.

Bir çok game engine linki buradan bulunabilir.

https://en.wikipedia.org/wiki/List_of_game_engines

Page 17: Barış KES Game Engines - web.cs.hacettepe.edu.trbgenc/courses/bco... · 1993 Id Tech 1 1993 yılında Id Software Id Tech 1 ile 2.5D Doom oyunu ile game enginelerin doğuşu başlamıştır

Popüler Game Engines

Game Engine Nasıl Popüler olur ?Oyun Geliştiricilerinin geliştirme esnasında bir çok ihtiyacı

olmaktadırBunlardan bazıları

=> Fizik(physics)=> input=>rendering=>Scripting=> collision detection=> artificial intelligence

Tüm oyun motorları bu işlemleri kolaylaştıran kütüphanelerle donatılmıştır böylece geliştirici oyundaki diğer elementlere odaklanabilir.

Page 18: Barış KES Game Engines - web.cs.hacettepe.edu.trbgenc/courses/bco... · 1993 Id Tech 1 1993 yılında Id Software Id Tech 1 ile 2.5D Doom oyunu ile game enginelerin doğuşu başlamıştır

Popüler Game Engines

Game Engine Nasıl Popüler olur ?

Engine Popüler olmasında yukarıdaki maddeler önem taşır bunların dışında

=>Stabilizasyon (Bug free olması)=>Erişilebilirlik=>Süreklilik=> Döküman/Eğitim gibi bilgilere ulaşım kolaylığı

=> Ücretlendirme=> Performans /Kaynak kullanımı

Yukarıdaki bu maddeleri daha iyi değerlendiren ürünler bu sektörü daha çok domine edeceklerdir ve daha popüler olarak kalacaklardır.

Page 19: Barış KES Game Engines - web.cs.hacettepe.edu.trbgenc/courses/bco... · 1993 Id Tech 1 1993 yılında Id Software Id Tech 1 ile 2.5D Doom oyunu ile game enginelerin doğuşu başlamıştır

Popüler Game Engines

Game Engine Neye Göre Seçilmelidir ?Yapacağımız projenin içeriğine göre seçilecek game engine i belirlemeliyiz.Örneğin 2d bir oyun düşünüyorsak Gamemaker ,Cocos gibi game engine lerde değerlendirilmelidir.3d olarak geliştirme yapılacak projelerde ise proje çapına göre Unity,Unreal,godot,Source gibi engineler bir önceki speclere göre tercih edilmelidir.Tabiki bu süreçte ekibin hakim olduğu geliştirme dili hakim olduğu editörler gibi konularda göz ardı edilmemelidir.

Page 20: Barış KES Game Engines - web.cs.hacettepe.edu.trbgenc/courses/bco... · 1993 Id Tech 1 1993 yılında Id Software Id Tech 1 ile 2.5D Doom oyunu ile game enginelerin doğuşu başlamıştır

Popüler Game EnginesŞu an Oyun Endüstrisinde Popüler Engineler hangileri?2020 yılı için en başarılı game enginler arasında Þ UnrealÞ UnityÞ Game MakerÞ GodotGeliyor diyebiliriz. Tabiki bunların dışında da seçenekler çok fazla. Ancak ihtiyaçlar ve ekibin bilgi birimine göre bu örnekler arasından seçim yapmak mantıklı olacaktır.

Page 21: Barış KES Game Engines - web.cs.hacettepe.edu.trbgenc/courses/bco... · 1993 Id Tech 1 1993 yılında Id Software Id Tech 1 ile 2.5D Doom oyunu ile game enginelerin doğuşu başlamıştır

KıyaslamalarUnity & Godot& Unreal EnginesÞ Programming Language

Engine Programming Language

Godot GDScript,Visual ScriptingC#,C++

Unreal Blue Print,C#,C++

Unity C#,JavaScript(UnityScript)Boo

Page 22: Barış KES Game Engines - web.cs.hacettepe.edu.trbgenc/courses/bco... · 1993 Id Tech 1 1993 yılında Id Software Id Tech 1 ile 2.5D Doom oyunu ile game enginelerin doğuşu başlamıştır

KıyaslamalarUnity & Godot& Unreal EnginesÞ Ücretlendirme

Engine Ücretlendirme

Godot Free/open Source

Unreal Free ancak 4 ay içerisinde 3000 $ üzerinde gelir durumunda %5 Ücret almaktadır. Farkı özel ücretlendirme politikaları da bulunmaktadır./ C++ Open Source

Unity Kişisel Kullanum ücretsiz bunun dışında 4 Paket Bulunmaktadır.https://store.unity.com/compare-plans

Page 24: Barış KES Game Engines - web.cs.hacettepe.edu.trbgenc/courses/bco... · 1993 Id Tech 1 1993 yılında Id Software Id Tech 1 ile 2.5D Doom oyunu ile game enginelerin doğuşu başlamıştır

KıyaslamalarUnity & Godot & Unreal Engines=> Dökümantasyon & Erişilebilirlik.

Engine Dökümantasyon linki

Erişilebilirlik Asset Store

Godot https://docs.godotengine.org/en/latest/

Diğer Enginelere kıyasla en yenisi godot olduğu için henüz daha istenen seviyede yaygınlaşmamıştırhttps://godotengine.org/community

https://godotengine.org/asset-library/asset

Unreal https://docs.unity3d.com/Manual/index.html

Bir çok döküman bulunabilir gelişmiş bir community ortamı vardır.

https://www.unrealengine.com/marketplace/en-US/store

Unity https://docs.unrealengine.com/en-US/index.html

Bu Konuda en kuvvetli Unity Diyebiliriz Community ortamı çok gelişmiştir

https://assetstore.unity.com/

Page 25: Barış KES Game Engines - web.cs.hacettepe.edu.trbgenc/courses/bco... · 1993 Id Tech 1 1993 yılında Id Software Id Tech 1 ile 2.5D Doom oyunu ile game enginelerin doğuşu başlamıştır

KıyaslamalarUnity & Godot& Unreal EnginesÞ Platform Destekleri

Engine

IOS Android Windows Mac OS Linux Play Station

Switch/Nintendo

Xbox WebGL VR HTML5

Godot

Unreal

Unity

Günümüz teknolojisinde çoğu oyun motoru bir çok platforma uyum sağlamıştır diyebiliriz.

Page 26: Barış KES Game Engines - web.cs.hacettepe.edu.trbgenc/courses/bco... · 1993 Id Tech 1 1993 yılında Id Software Id Tech 1 ile 2.5D Doom oyunu ile game enginelerin doğuşu başlamıştır

Rendering EnginesRendering Engine Lisans Kullanım Alanları/Link Ürünler

3Delight Proprietary

Sinema Sektöründe Görsel Effektlerde kullanılmakta

https://www.foundry.com/products/katana/3delight

=>Riddick =>Fantastic Four => Hulk

AIR ProprietarySinema ve Animasyon gibi Sektörlerde kullanılmakta http://www.sitexgraphics.com/ht

ml/gallery.html

Aqsis Free and open-source https://www.aqsis.org/about.htmlDirekt bir ürünü olmamakla

beraber Blender ve Renderman standatlarına uygun bir renderer

Arnold ProprietarySinema Sektörü Mühendislik

sektörleri Oyun Tasarım sektörühttps://www.arnoldrenderer.com/

3dMax,Maya,Cinema4D Sony Pictures Imageworks

C3D Vision ProprietaryGenel olarak Endüstriyel tasarım üzerine kullanılan bir Renderer

https://c3dlabs.com/en/customers/

Cinema 4D ProprietarySinema,Sanat,3d Tasarım gibi bir

çok konuda kullanılmaktadır https://www.maxon.net/en-us/products/cinema-4d/overview/

Cycles Free and open-sourceAnimasyon Sinema Sanatsal alanlarda kullanılmaktadır.

https://www.cycles-renderer.org/

Blender (Blender ekibi tarafından geliştirilmiştir)Poser,Rhino

Editörlerinde kullanılmaktadır. 3d Max a ve Camera4d ye plugin yardımı ile Cycles4d Olarak

eklenebilir.

EEVEE Free and open-source

Blender 2.8 sonrası geliştirilen bir Renderer

https://render.st/engine-blender-eevee/

 

Flamingo Proprietary http://www.flamingo3d.com/as/features/

 

iClone ProprietaryPhoto realistik bir rendererdır

https://www.reallusion.com/iclone/visual.html

 

Indigo Renderer Proprietary

Oldukca gelişmiş realistik bir rendererdır.

https://www.indigorenderer.com/photon-photograph

 

Kerkythea Freeware http://www.kerkythea.net/cms/index.php/gallery

 LuxRender Free and open-source https://luxcorerender.org/gallery/  Maxwell Render Proprietary https://maxwellrender.com/galler

y/ 

Octane Render Proprietary https://home.otoy.com/render/octane-render/

 

RenderMan Proprietary https://renderman.pixar.com/stories

Pixar'n geliştirmekte olduğu üründür

SolidWorks Visualize Proprietary https://www.solidworks.com/product/solidworks-visualize

 YafaRay Free and open-source http://www.yafaray.org/  Light Tracer Render Freeware https://lighttracer.org/  

Page 27: Barış KES Game Engines - web.cs.hacettepe.edu.trbgenc/courses/bco... · 1993 Id Tech 1 1993 yılında Id Software Id Tech 1 ile 2.5D Doom oyunu ile game enginelerin doğuşu başlamıştır

Kaynakça

https://www.researchgate.net/publication/259496289_History_and_comparative_study_of_modern_game_engines

Wikipedia

Unreal resmi Sitesi

Unity resmi Sitesi

Godot Resmi sitesi.