Oyun motoru nedir? Oyun oluşturmaya yönelik bir platform veya “Oyun Motoru” Nedir? Özellikler ve Temel Özellikler

İlk oyunların yaratılmasıyla birlikte programcılar, donanım platformlarındaki farklılıklara rağmen her oyunun ortak bileşenler içerdiği sonucuna vardılar. Ve ilk oyunlar buzdolabı büyüklüğündeki slot makinelerinde oynandı.

Oyunların ortak işlevleri (grafik çözümleri, oyun mekanikleri, fizik hesaplamaları ve daha fazlası) ayrı kitaplıklara ayrılmaya başlandı ancak bir “oyun motoru” olabilmek hâlâ çok uzaktaydı. Bunun nedeni büyük ölçüde yazılım ve donanım platformlarındaki ciddi farklılıklardan ve oyunların kendisindeki belirsizlikten kaynaklanıyordu. Sonuçta, ilk oyunların çoğu metin tabanlı olmasına rağmen oyun türleri ve türleri henüz icat edilmemişti. Aslında oyun motorları, özellikle grafiklerin gelişmesiyle birlikte ilk macera oyunları ve platform oyunları için ortaya çıkmaya başladı. iyi örnek Macera Oyunu Yorumlayıcısı (AGI) olarak adlandırılabilir. 1984 yılında King's Quest'i geliştirirken, Sierra On-Line programcıları o günlerde böylesine karmaşık ve gelecek vaat eden bir oyunun düşük düzeyde geliştirilmesinin zorluğuyla karşı karşıya kaldılar ve AGI haline gelen bir dizi çözüm geliştirdiler. Toplamda 5 yıl boyunca 7 farklı platformda 14 farklı oyun yayınladı, dolayısıyla “çapraz platform” kavramı o zamanlar bile önemliydi.

Bununla birlikte, o zamanın motorları nadiren orijinal geliştirme şirketinin sınırlarının ötesine geçti ve kural olarak belirli bir oyun türü için oldukça uzmanlaşmıştı.

Başlangıç

1993 yılında id Software'den Doom oyununun piyasaya sürülmesinden sonra durum değişmeye başladı. Geliştirilmesi Wolfenstein 3D motorunun geliştirmelerine dayanmasına rağmen yetenekler ve modülerlik açısından gerçek bir teknolojik atılımdı. O zamanlar video işlemcileri 3D grafiklerle verimli bir şekilde çalışma yeteneğine sahip değildi, bu nedenle John Carmack (motorun baş programcısı) 3D nesneleri, ışığı, gölgelemeyi, doku eşlemeyi ve diğer şeyleri değiştirmek için gerekli tüm matematiksel hesaplamaları kendisi gerçekleştirdi. Sonuç olarak görüntü üç boyutlu görünüyordu ama aslında değildi. Bu nedenle Doom motoru (id Tech'in ilk versiyonu) gerçek anlamda üç boyutlu değil, sözde üç boyutluydu. Ancak önemli olan, bu oyunun teknik bileşeninin, oyun motoru olarak adlandırılabilecek şeyin standardını belirlemesidir. Yani Doom motoru modülerdi ve her biri açıkça ayrılmış yazılım katmanının kendi veri bölümünü işlemekten sorumlu olduğu bir dizi alt sistemden oluşuyordu. Sonuç olarak, onu çeşitli oyunlar (Hexen, Heretic, Strife) ve üçüncü taraf geliştiriciler (Raven Software ve Rogue Entertainment) için kullanmak çok daha kolay hale geldi. Dolayısıyla oyun motorlarının ortaya çıkışı 20. yüzyılın 90'lı yıllarının ortalarına kadar uzanıyor, yani modern anlamda oyun motorunun tanımı nihayet oluştu.

Oyun motoru, son derece uzmanlaşmış bir tür işletim sistemidir, çünkü ikincisinin tüm modüllerini içerir. Şunları içerir: bellek yönetim sistemi, grafik alt sistemi, giriş sistemi, ses alt sistemi, yapay zeka, fiziksel alt sistem, ağ alt sistemi, editör oyun seviyeleri ve diğeri. Ek olarak, motor çekirdeği, dosyalarla çalışmaya özel bir yaklaşım sağlayabilir - bir dosya (kaynak) sistemi ve ayrıca ana işletim sisteminden farklı olan çoklu iş parçacığıyla çalışmaya yönelik araçlar. Modern oyun motorları ayrıca oyun mantığını tanımlamak için tasarlanmış bir komut dosyası dilinin yorumlayıcısını ve genellikle tamamen görsel bir düzenleyiciyi içerir. Kullanımı, düşük seviyeli komutların ve talimatların açıklamalarından soyutlamanıza ve oyuna konsantre olmanıza olanak tanır. Motoru oluşturan bileşenler bununla sınırlı değildir; daha fazlası veya daha azı olabilir.

Hedefler

Bir oyun motoru öncelikle geliştirmeyi basitleştirmek ve hızlandırmak için yaratılmıştır. Bu nedenle, oyun dünyası oluşturmaya yönelik araçlar içerir - düzeyde modelleme, nesneleri içe aktarma, doku oluşturma, karakterleri yükleme ve canlandırma, oluşturma görsel efektler, fizik ayarları ve daha fazlası.

Motor geliştirmenin ikinci önemli hedefi, geliştirilmekte olan oyunun platformlar arası veya platform bağımsızlığıdır. Yani, mümkün olan en az değişiklikle onu başlatma yeteneği. Ekran boyutları, kontroller ve yöntemler gibi donanım farklılıkları nedeniyle oyunu herhangi bir değişiklik yapmadan başka bir platformda başlatmak mümkün olmayacaktır.

Oyun motorlarının gelişimi, donanım ve yazılım platformlarının gelişmesiyle birlikte ya da etkisi altında, yeni oyun türlerinin ortaya çıkması ve kullanıcı zevklerinin değişmesiyle ortaya çıkıyor. Kısacası oyun sektörünün bir bütün olarak gelişimi.

Grafik sistemlerinin doğuşu

90'lı yılların ortalarında, 3D grafikleri işleyebilen video işlemcilerin ortaya çıkmasından sonra, gelişimini basitleştiren yazılım arayüzleri ortaya çıkmaya başladı. Platformlar arası OpenGL'nin ardından Windows için Direct3D, DirectX'in bir parçası olarak sahneye çıktı. Bu 2 görselleştirici, uzun yıllar boyunca oyunlarda grafik çıktı yöntemlerini tanımladı.

1996 yılında Quake, Quake Engine'de piyasaya sürüldü. Bu motorun oyun endüstrisi üzerinde muazzam bir etkisi oldu.


Quake Engine'i temel alan motor ağacı

On yılın neredeyse geri kalanı boyunca, oyun ara yazılımı (diğer bir deyişle oyun motorları) pazarı, neredeyse tek başına id Software'in hakimiyetindeydi. Ancak 1998'de Epic Games, grafik açısından gerçek bir teknolojik atılımla aynı adlı motorda başarılı bir oyun olan Unreal'ı piyasaya sürdü. Motorun baş programcısı Epic'in kurucusu Tim Sweeney'di. Tim, Carmack ile birlikte oyun motorları tarihindeki en önemli figürdür ve Unreal Engine'in 3 ve 4 versiyonları bugün hala çok popülerdir. Bir yıl sonra Epic daha da fazlasını yayınladı. popüler oyun Gerçekdışı Turnuva.

Aynı zamanda, rakip bir geliştirme şirketi olan id Software, Unreal Tournament gibi çevrimiçi savaşlar da dahil olmak üzere çok oyunculu oyun Quake 3 Arena'yı (id Tech 3 motorunda) piyasaya sürdü.

Bu iki oyun sektörün amiral gemisi haline geldi ve gelecek yıllardaki gelişimini belirledi.

Piyasada çok fazla oyuncu yoktu. Bu nedenle ürünleri çok pahalıydı ve amiral gemisi motorları yalnızca oldukça büyük geliştiriciler tarafından lisanslanıyordu.

Durum 21. yüzyılın ilk on yılının ortalarında kökten değişmeye başladı. Daha sonra piyasada ve kamuya açık alanda oyun geliştirmeye yönelik çok sayıda araç ortaya çıkmaya başladı. Ara yazılım işi ivme kazanmaya başladı. İlk olarak pazar, programcıya grafik API'si üzerinde üst düzey bir katman sağlayan Ogre, DarkGDK vb. grafik çerçeveleriyle doluydu. Aynı zamanda oyun içi editörlerin tamamen bulunmaması nedeniyle oyun motorlarından farklıdırlar.

Daha sonra tam teşekküllü oyun motorları, aralarında Torque 3D, Unity 3D ve diğerlerinin de bulunduğu küçük bir bağımsız geliştirme ekibine uygun fiyatlarla piyasaya çıktı. Amiral gemisi motorlar olarak yola çıkanlar bile (örneğin, Crytek'in CryEngine'i ve daha önce bahsedilen Unreal Engine) çok daha uygun bir fiyatlandırma politikası kullanmaya başladı ve acemi geliştiricilerin bile kullanımına sunuldu.


Tork 3D

Oyun endüstrisinde önemli bir trend haline geldi sıradan oyunlar. Klavye ve fare ile çılgınca etkileşim gerektirmeyen, doğası gereği basit ama renkli bulmacalar, teknik açıdan 3D zorlu atıcılardan daha basitti, bu nedenle bunların geliştirilmesi, evrensel motorlarda güçlü değişiklikler gerektirmiyordu. Ancak diğer yandan sektörde Torque Game Builder, HGE ve diğerleri gibi yeni oyuncular ortaya çıktı.


Tork Oyun Oluşturucusu

Aynı zamanda World of Warcraft sayesinde MMORPG'ler oyun endüstrisinde çok popüler hale geldi ve aynı zamanda birçok tür giderek çok oyunculu oyunlara dayalı hale geldi. Bazı motorlar, kullanıcılara istemci-sunucu uygulamaları için yeni işlevler sağlayamadı ve bu nedenle unutulmaya yüz tuttu. Unity 3D için Photon ve SmartFox gibi diğer motorlar, onlar için sunucu çözümleri geliştirilerek çok oyunculu dünyaya uyarlandı. Başlangıçta istemci-sunucu olan üçüncü tip evrensel motorlar herhangi bir değişiklik hissetmedi. Buna Torque 3D de dahildir. Ayrıca, binlerce oyuncu için ölçeklenebilir bir sunucu çözümü ile belirli bir oyuncunun kullanabileceği bir istemciyi birleştiren HeroEngine, BigWorld gibi küresel çok oyunculu oyunlar için tasarlanmış yeni motorlar piyasaya çıktı.


KahramanEngine

Tarayıcı oyunları 90'lı yıllardan beri piyasada yer alıyor ve ardından sosyal ağlar onlara ikinci bir doğuş yaşattı. Tarayıcı için etkili bir şekilde oyun oluşturma ihtiyacı gözden kaçmadı. Torque 2D/3D, Unity 3D gibi evrensel motor geliştiricileri, tarayıcılar için grafiklerin doğrudan tarayıcı penceresinde görüntülenmesini mümkün kılan eklentiler yayınlayarak buna oldukça hızlı bir şekilde yanıt verdi. İlk başta, Flash teknolojisini temel alan bir görselleştirici popülerlik kazandı, ancak çeşitli nedenlerden dolayı bu teknoloji giderek pazar payını kaybediyor. Bu nedenle, artık web üzerinde görselleştirme için, etkileşimli 3D grafikler oluşturmanıza olanak tanıyan WebGL JavaScript kitaplığı sıklıkla kullanılıyor. Ancak dilin multithreading eksikliği gibi eksiklikleri nedeniyle kütüphane, oyun yapımcılarının ihtiyaçlarını tam olarak karşılayamıyor. Bunu değiştirmek için W3C konsorsiyumu (Microsoft, Google, Mozilla vb.'yi içerir) yeni bir düşük seviyeli ikili derlenmiş format olan WebAssembly'yi geliştiriyor.


Web Montajı

21. yüzyılın ilk on yılının sonlarına doğru mobil teknolojiler çok hızlı gelişti. Aniden ortaya çıkan bir cıvata gibi, güç açısından orta fiyatlı PC'lerle karşılaştırılabilecek ve düşük seviyeli grafik arayüzlerin sahip olduğu tüm özel efektlerle güçlü oyun uygulamalarını çalıştırabilen mobil cihazlar ortaya çıktı. Oyun motoru geliştiricileri, bazı durumlarda belirli donanıma özgü kod oluşturan özel dönüştürücüler oluşturarak (Unity 3D gibi) ve diğerlerinde ürünlerini platformlar arası işlevsellik için modernleştirerek (örneğin Torque 2D, Cocos 2DX) bu duruma yanıt verdi. Ayrıca, tüm mobil cihaz filosu için yerel kod hızında çalışan çapraz platform motorları sunan yeni oyuncular da piyasada ortaya çıktı. Bu tür araçlara örnekler: Corona SDK, Marmalade SDK, AGK (App Game Kit).


Corona SDK'sı

Ayrıca, minimum programlama bilgisiyle oyun geliştirmenize olanak tanıyan bir dizi platformlar arası motor ortaya çıktı. Örnekler arasında Construct 2 ve GameMaker Pro yer alır. Hazır çözümleri ve görsel editörleri kullanarak hızlı bir şekilde - bazen birkaç saat içinde - basit oyunlar oluşturabilirsiniz. Bunun özellikle free2play modellerinin çoğalmasının ve kısa oyun oturumlarının "basit" oyunları çok başarılı bir tür haline getirdiği mobil pazarda yaygın olduğu kanıtlandı.

Oyun sektöründe yeni ürünler

Düşük seviyeli programlama arayüzleri: OpenGL, DirectX video adaptörlerine uygun olarak geliştirilmektedir. Her 1 - 2 yılda bir, uygulama programcılarının (motor geliştiricilerinin) donanımın tüm işlevlerini uygulamasını destekleyen ve sağlayan yeni sürümler ortaya çıkar. DirectX zaten sürüm 12'ye ulaştı. Öte yandan OpenGL'in yerini, donanım ve yazılım üreticilerini de içeren Khronos Group konsorsiyumu tarafından geliştirilen yeni bir platformlar arası grafik API'si olan Vulkan aldı.

Sanal Gerçeklik


Şu anda oyun endüstrisindeki son trend sanal/artırılmış gerçekliktir. Modern oyun motorlarının büyük çoğunluğu halihazırda bu teknoloji için destek almıştır; bunların arasında Torque 3D, Unity 3D, Unreal Engine 4 de bulunmaktadır. Vuforia Unity Extension gibi birçok üçüncü taraf uzantı da geliştirilmiştir. VR gözlük desteğini uygulamak için motor geliştiricilerinin yalnızca ikinci ekrana (ikinci göz için) birinciden farklı içeriğe sahip görselleştirme eklemesi değil (çünkü birinci ve ikinci göz farklı sahneleri görebilir), aynı zamanda kontrol desteği de eklemesi gerekir. VR kulaklıklar arasında farklılık gösteren ve henüz standartlaştırılmamış yeni giriş cihazlarından.

Sonuçlar

Oyun endüstrisinin var olduğu yıllar boyunca, oyun motorları açısından 5 büyük oyun türü ortaya çıkmıştır:

1) Tek oyunculu oyunlar (PC ve konsollar için kendi özellikleriyle)
2) Çok oyunculu çevrimiçi oyunlar
3) Genel olarak sosyal ağlara yönelik oyunlar ve tarayıcı oyunları
4) Mobil oyunlar(telefonlar, tabletler ve Android/iOS ile ilgili ayrıntılarla birlikte)
5) VR/AR Oyunları

Ayrıca SmartTV'den slot makinelerine kadar başka platformlar da var.

Her türün geliştirilmesi için belirli bir motor seti vardır, çünkü teknik açıdan tüm oyun türleri arasında büyük farklılıklar vardır. Artık piyasada her zevke uygun düzinelerce motor var: platformlar arası ve uzmanlaşmış, motorun kaynak koduyla aktif çalışma gerektiren ve hiçbir programlama bilgisi gerektirmeyen, farklı performans, dokümantasyon kalitesi ve fiyatla mevcut. Programımızın “Oyun Geliştirmenin Teknik Temelleri” disiplininde modern motorlardan ve amaçlarınıza uygun olanı nasıl seçeceğinizden daha çok bahsediyorum”

Hepimiz oyun oluşturmaya yönelik motorları duymuşuzdur, ancak çok az kişi bunların ne olduğunu anlıyor.

Video oyunları geliştiren stüdyoların kendileri bile terimin çok belirsiz bir tanımını veriyor, daha doğrusu oyunu üzerine inşa edildiği motordan gerçekten ayıramıyorlar.

Roldeki duruma yaklaşarak soruyu anlamaya çalışalım ve düşünelim. en popüler oyun motorları: özellikleri, uygulama alanları, zayıf ve güçlü yönleri.

Konsept

Oyun motoru veya oyun motoru- bu orijinal yazılım, onu temel alacak şekilde tasarlandı bilgisayar oyunları, genellikle belirli bir türden.

Terim 90'ların ortasında atıcılarla ilgili olarak oluşturuldu. Quake, Wolfenstein ve Doom.

Böyle bir kavram ortaya çıkmadan önce bile oyun DünyasıŞaşırtıcı derecede iyi birleştiklerini fark ettim:

  • üç boyutlu grafikler;
  • nesnelerle çarpışmaların hesaplanması;
  • hacimli oyun dünyası;
  • ses bileşeni;
  • envanter (silah sistemi) ve diğer kurallar.

Bunu fark eden geliştiriciler aynı Doom'u temel alan kendi oyunlarını yayınlamaya başladı, minimum değişiklikle: haritaların ve diğer grafik modellerin yeniden çizilmesi, fizik motorunun düzenlenmesi.

Motorların büyük çoğunluğu belirli bir oyun türü ve çoğunlukla belirli bir platform için yaratılmıştır.

Bir oyun motorunu birden fazla platformda veya türde kullanmak, onu daha az birleşik ve ideal hale getirir ve potansiyeline ulaşamaz.

Çeşitler

Oyun geliştirme motorları türler konusunda uzmanlaşmıştır.

Örneğin temel yazılım ve eylem, ana bileşenlerde bile oldukça farklı olacaktır. Buna rağmen hepsinin bir takım ortak veya benzer kısımları (kod satırları) vardır.

Her oyunda nesneler arasında etkileşim vardır., gamepad, fare ve klavye kullanarak birini veya bir şeyi kontrol etmek, resim ve ses çıktısı almak, metni üst üste koymak, üç boyutlu nesneler oluşturmak (3D oyunlarda).

Bunu dikkate alarak, bazı motorlar çeşitli türlerde eğlenceyi geliştirmek için başarıyla kullanılmaktadır. Başlangıçta birinci şahıs nişancı oyunları oluşturmak için bir platformdu, ancak Savaş donanımı(üçüncü şahıs görünümü) ve Hız Yıldızı(ırk) buna dayanarak tam teşekküllü video oyunları olduğu ortaya çıktı.

Atıcı

Onlar sayesinde motor kavramı ortaya çıktı, onlarla başlayalım.

Atıcılık oyunları oluşturmaya yönelik platformlar bir dereceye kadar teknolojik açıdan en gelişmiş, en gelişmiş ve karmaşık olanlardır. Yüksek kaliteye ek olarak, oyuncak için aşağıdaki gereksinimler öne sürülmektedir:

  • olayların dinamiklerini dikkate alarak sanal bir üç boyutlu dünyayı modelleme işlevi;
  • hedefleme kontrolünün varlığı;
  • son derece duyarlı oyun mekaniği;
  • karakterin ellerinin ve silahlarının çiziminde ve ayrıntılarında belirgin netlik;
  • parçacık etkileşimine dayalı atışların ve patlamaların iyi animasyonu;
  • Nesnelerin tahrip edilebilirliği de dahil olmak üzere, atış ve patlamalara yanıt olarak çevrenin gerçekçi davranışı; bu tür motorların kinematik alanında yüksek taleplere tabi olmasının nedeni budur;
  • büyük seçim farklı özelliklere sahip silahlar;
  • iyi geliştirilmiş bir karakter hareketleri ve etkileşim modeli;
  • tek oyunculu bir oyunun varlığında yapay zekanın kalitesi;
  • oyun modlarının çeşitliliği ve kurumsal modda kitlesel katılım.

Platform oyunu

Genellikle bunlar iki boyutlu eğlencelerdir, onlar için gereksinimler daha yumuşaktır:

  • ana karakterin görünümüne, kişiselleştirilmesine, davranışına ve animasyonuna çok dikkat edilir;
  • hareketli platformlar olarak adlandırılan çeşitli platformlar (düşme, farklı yörüngelerde hareket etme, kaybolma, dönme);
  • basamaklar, halatlar, merdivenler, borular ve bunlarla etkileşime girecek bir sistem şeklinde ek platformlar;
  • bulmaca unsurlarının varlığı;
  • çok katmanlı geometri;
  • nesne etkileşiminin basit fiziği;
  • diğer oyun karakterleriyle etkileşim (diyaloglar, savaşlar).

Savaş

Benzersiz yetenek ve tekniklere sahip çok çeşitli karakterler, her birinin bireysel animasyonu, yüz ifadeleri ve jestleri, turlar boyunca görevlerin tamamlanması, karmaşık bir saldırı sistemi, bunların kombinasyonları, savunma hareketleri, kombinasyonlar ve özel teknikler ile karakterize edilirler. .

Ağ etkileşimi, karakter özelleştirme, bir dövüşün sonuçlarının ortaya çıkması (çizikler, sıyrıklar) ve bitirme teknikleri de dövüş oyunlarında yaygındır.

Irk

Yarış için tasarlandı Oyunların özelliklerini dikkate alarak birden fazla oyun motoru.

Çoklu iş parçacığının uygulanması nedeniyle PhysX, herhangi bir kontrol olmaksızın özel bir iş parçacığının varlığıyla ayırt edilir. Bu, paralel iş parçacıklarında bir dizi görevin aynı anda yürütülmesine olanak tanır.

Mozaikleme, renk düzeltme üzerinde olumlu bir etkiye sahip olan, görüntüdeki gürültüyü ve greni gerçek zamanlı olarak üst üste bindirerek elde etmenize olanak tanır.

Hacimsel sis, hareket bulanıklığı, herhangi bir yüzey için paralaks, önemli doğruluk ve yüksek detay, motorun tüm avantajları değildir.

Ses bileşeni, üç boyutlu alan hissi veren ve sesin kaynağını hesaplama yeteneği veren üç boyutlu konumlandırmayı destekler.

Diğer işlevler:

  • geniş renk uzayına sahip sahnelerin görselleştirilmesi;
  • çerçevede onlarca ışık kaynağının kullanılması;
  • tamamen dinamik aydınlatma;
  • performansı etkilemeden hareket bulanıklığı;
  • görselleştirme sürecinin mükemmel paralelleştirilmesi;
  • ses yayılımının hesaplanması, emilimi ve engellerden yansıması;
  • birçok savaş koşulu;
  • kullanışlı ve anlaşılır komut dosyası sistemi;
  • AI topolojisi analiz sistemi;
  • karakterlere görme, işitme ve diğer duyular verilmiştir, bu da onları ciddi rakipler haline getirir;
  • grup davranışı.
  • oyunları konsollara taşıma sürecinin karmaşıklığı;
  • orijinal bir gelişme değil, geliştirilmiş bir X-Ray (gerçek kanıtlanmadı, ancak bunun ipuçları var);
  • DirextX12 desteği uygulanmadı.
  • geliştirilmiş grafikler;
  • modellerin yıkılabilirliği ve PhysX'in diğer avantajları;
  • özel efektler uğruna özel efektler yoktur (sadece gerekli olanlar eklenir).

Oyunlar: Metro Exodus ve Arktika.1'in de aralarında bulunduğu Metro serisi geliştirme aşamasındadır.

Çarpıcı bir örnek kişisel tutkuların gerçekleştirilmesi ve BDT'de yaratılan dünyaca ünlü birkaç motordan biri.

Örs

Ubisoft'un bir yan kuruluşu tarafından oluşturulmuştur, yayınlanmak üzere ve yalnızca şirket içinde kullanılmaktadır.

İlk oyun Assassin's Creed'in ilk bölümüydü, ardından bir snowboard simülatörü ve Prince of Persia ortaya çıktı.

Bunlardan herhangi biri çok fazla sürpriz yarattı ve sanal eğlence dünyasına birçok yeni şey getirdi.

PC, PS tüm sürümleri, Nintendo, Wii ve Xbox'ta desteklenir.

Kod C++ ile yazılmış, modeller ZBrush'ta çizilmiş ve Dünya– 3ds Max'te. Doğru iskelet animasyonu için . Fizik sanal dünya efsanevi Havok'u modelliyor. Son sürümlerde günün saatini değiştirmeye, dinamik aydınlatmaya ve uzaktan görüntülemeye büyük önem verildi. Aynı zamanda aşamalı bir bitki örtüsü şemasını da entegre etti (olduğu gibi) Uzak Ağla 2) önemli bir farkı geliştirilmiş NPC navigasyon sistemi olan yeni yapay zeka ile. Direct3D 10/11'in uygulanması ve hata ayıklaması çok pahalı olmasına rağmen iş yine de yapıldı.

Motorun isimlendirilmeyen özellikleri arasında Aşağıdakileri vurgulayalım:

  • 32 iş parçacığına kadar çok çekirdekli sistemlerde çalışmanın optimizasyonu;
  • oyunların panoramik modda birden fazla ekranda başlatılması;
  • fps'yi düşürmeden kum fırtınasını simüle edebilen karmaşık gürültü sisi;
  • ışığın suda kırılması, yansıması ve saçılmasının etkileri;
  • bir ara sahnede en fazla altı farklı karakter;
  • Animasyonların çoğu şuradan çekildi: gerçek aktörler;
  • bir sahnede 3 bine kadar katılımcı olabilir, bu da PC'nin yükle başa çıkabildiği sürece büyük savaşlar düzenlemenize olanak tanır;
  • NPC'ler kahramana aktif olarak tepki verirler, tek tek değil aynı anda saldırabilirler;
  • modelleri kesme ve nesneleri derinliğe göre ayırma teknolojisi.
  • kaynak talebi;
  • lisanslı değil;
  • uzun süredir DirectX 10 ve 11'i desteklemiyordu.
  • çoklu iş parçacığının iyi uygulanması;
  • PC'de ve birçok konsolda çalışır;
  • yüzlerce oyun karakterinin katılımıyla ekstralar uygulama yeteneği.

İLEUbisoft büyük bir karmaşa yaratıp arayı kapatmayı planlıyor Daha fazla insan tek bir yerde kimse karşılaştırılamaz.

Yaratılış Motoru

Skyrim'deki yeteneklerini gösteren Amerikan stüdyosu Bethesda'dan oldukça yeni bir motor. Önceki çözümler gibi, yalnızca geliştiricisinin ihtiyaçları için oluşturuldu. Gamebryo temel alındı ​​- Oblivion ve eklentileri için bir yardım.

Teknolojiyle ilgili ilginç olan ilk şey– uzun menzilli işleme, serbest ve hızlı hareket ile devasa konumlar için destek.

Su ve karla çalışmaya çok dikkat ediliyor ve otomatik olarak yağış, taş, ağaç ve çim üreten sistem, araziye bağlı olarak oluşturulan nesnelerin oranlarını bağımsız olarak belirliyor.

Oblivion'da kullanılan gelişmiş yapay zeka, insanların yaşamlarını ve ana karakterle ilişkilerini daha gerçekçi bir şekilde simüle ediyor.

Arsa geliştirme yönetimi kavramı, Ek görevler oyun tarzını dikkate alarak.

Ağaç oluşturma sistemi, motorun yeni versiyonunda önemli ölçüde yeniden tasarlandı ve bu da çeşitlendirmeyi mümkün kıldı. sebze dünyası ve hesaplanması için boşaltın.

Karakterleri canlandırmak için Havok'un üçüncü taraf bir aracı kullanıldı.

Özellikler:

  • Oyuncular ve mod geliştiriciler için Creation Kit seviye düzenleyicisinin kullanılabilirliği;
  • Fallout'ta fizik tabanlı oluşturma ortaya çıktı;
  • mod geliştiriciler için birçok araç;
  • Değişiklikleri konsollara aktarma kolaylığı.
  • lisanslı değil;
  • iki elli silahlar yaratmak zordur;
  • Karakter davranış sistemi oldukça zayıf.
  • her platformda çalışacak bir mod editörü var;
  • uzun çekme mesafesi;
  • ağaçları ve onların animasyonlarını oluşturmak için benzersiz bir şema.

Henüz mod geliştiriciler için daha iyi bir şey icat edilmedi, bu nedenle Fallout'tan daha fazlası yalnızca Oblivion için yaratıldı.

CryEngine 4

Birinci şahıs nişancı oyunları için Alman Crytek firmasının motorunun en son versiyonu.

En başarılı kullanım örneği .

Motor, 2016 yılından bu yana "istediğin kadar öde" planına göre, ancak yalnızca oyun amaçlı olarak dağıtılmaya başlandı.

Özellikler ve yetenekler:

  • koridor bölgelerinin değil, devasa bölgelerin varlığı;
  • yerler dikişsiz oluşturulur;
  • karakterlerin ve araçların ters sinematiklerine destek, bunların birbirleriyle etkileşimi çevre;
  • çeşitli katı olmayan nesnelerin taklidi: kumaş, su;
  • her silah türünün benzersiz özelliklerine sahip devasa bir cephanelik;
  • senaryo ve komut zekası;
  • AI parametrelerini programlama bilgisine sahip olmadan değiştirebilirsiniz;
  • interaktif müzik eşliği - müzik duruma uyuyor;
  • 5.1 ses sistemi için tam destek;
  • sesin ortamı, yansımasını ve emilimini dikkate alarak doğal seslerin çoğaltılması;
  • ısı ve ateşin gerçekçi etkisi;
  • camın şeffaflığı - binalarda ne olduğunu görebilirsiniz;
  • 2000 m'ye kadar görünür mesafeye sahip çok seviyeli bir ortam elde etmek için yükseklik haritalarının çalıştırılması;
  • Crysis'in mükemmel bir şekilde gösterdiği ışık ve gölgelerle çalışmak için inanılmaz olanaklar;
  • atmosfer eklemek için hacimsel kalın sis ve duman;
  • olağandışı fiziksel etkilerin varlığı (örneğin bir nano giysi).

Birlik3D

Unity 3D çok uygun fiyatlı bir motordur. Onun bir numarası var yadsınamaz avantajlar Rakiplerinizden önce ve belki de en önemlisi, lisans için yalnızca bir kez ödeme yapmanızdır. Bir oyunun ne kadar popüler olduğu önemli değil; Unity'yi seçerseniz tekrar para harcamanıza gerek kalmayacak. Mali açıdan bakıldığında bu, özellikle yeni başlayanlar ve acemi geliştiriciler için iyi bir çözümdür.

  • avantajlı lisanslama politikası;
  • kullanım kolaylığı;
  • herhangi bir platformla uyumlu;
  • harika topluluk;
  • düşük giriş eşiği;
  • geliştiriciler arasında popülerdir (bu, hataların hızla bulunup düzeltildiği anlamına gelir).
  • sınırlı araç seti (büyük olasılıkla bunlardan bazılarını kendiniz geliştirmeniz gerekecektir);
  • Bir oyun yapma süreci çok zaman alır.

Gerçekdışı Motor

Unreal Engine, AAA oyunları geliştirmek için en popüler motorlardan biridir. Gears of War, Batman: Arkham Asylum, Kütle Etkisi- tüm bu vuruşlar onun üzerinde yapıldı.

  • Pek çok geliştirici bunu kullandığından Unreal Engine, rakipleri arasında belki de en iyi topluluğa sahip. Birkaç saatlik video eğitimi bunun kanıtıdır;
  • mükemmel teknik destek ve güncelleme mekanizması;
  • Her güncellemede yeni araçlar çıkıyor
  • Çeşitli amaçlara yönelik geniş bir araç yelpazesi (bazılarının kullanımı o kadar kolaydır ki bunları bir okul çocuğu bile kullanabilir)
  • Çeşitli platformlarla uyumlu (iOS, Android, Linux, Mac, Windows ve diğerleri)
  • Yeni lisanslama politikası, aylık 19 ABD Doları tutarında bir abonelik ve oyunun 5.000 ABD Dolarından fazla kazanması durumunda %5 telif hakkını içeriyor ve bu da motoru geliştiriciler için eskisinden çok daha çekici hale getiriyor.
  • öznel. Bazı geliştiriciler belirli araçlara alışmanın zor olduğundan şikayet ediyor

CryEngine 3

Oyunun harici bileşeni sizin işinizse, CryEngine 3'e ihtiyacınız var.

  • Akış Grafiği işlevi, oyunu mükemmel grafiklerle dekore etmenize yardımcı olacaktır;
  • güçlü ses yaratmak için bir dizi Fmod işlevi;
  • segmentteki en basit yapay zeka oluşturma süreci;
  • Acemi bir geliştiricinin kullanıcı arayüzünü yapması kolay olacaktır.
  • ücretsiz sürüm için nispeten özensiz teknik destek;
  • Motor sektörde nispeten yeni olduğundan henüz güçlü bir topluluk oluşturamamıştır;
  • nispeten yüksek giriş engeli.

KahramanEngine

Bu motor, çok oyunculu oyunlar oluşturmada kendini kanıtlamıştır - en azından Yıldız Savaşları: Eski Cumhuriyet. Lisans oldukça pahalıdır ve acemi geliştiriciler için pek uygun değildir, ancak projeniz iddialıysa bu seçeneği değerlendirmenizi tavsiye ederim.

  • Oluşturulabilecek birkaç kart var dünyayı aç. Bunları "kesintisiz" bir şekilde bağlamak mümkündür;
  • inanılmaz derecede güçlü yapay zeka!
  • haritaları modellemek için kullanışlı bir araç seti;
  • karmaşık görevler oluşturmaya, kaynakları işlemeye ve toplamaya uygun;
  • Teknik destek, oldukça kullanışlı olan HeroCloud hizmeti kullanılarak sağlanmaktadır.
  • Komut dosyası motoru güçlüdür ancak kullanımı zahmetlidir;
  • HeroEngine, HeroCloud müşteri desteğiyle birlikte çok pahalıdır ve acemi geliştiricilerin erişebilmesi pek mümkün değildir;
  • giriş engeli yüksek.

Öfke Motoru

Rage Engine'in sağladığı geniş özellikler yelpazesiyle çok az kişi rekabet edebilir. büyük soygun Auto V, Red Dead Redemption ve daha birçok ünlü proje bu motor kullanılarak yapıldı.

  • yaratmak için geniş fırsatlar büyük dünyalar ve hava durumu etkileri;
  • güçlü yapay zeka;
  • aralarından seçim yapabileceğiniz birçok oyun stili;
  • hızlı ağ kodu.
  • Motor arayüzü nispeten elverişsizdir;
  • Kontroller klavye ve fare için kötü şekilde optimize edilmiştir.

Proje Anarşisi

Bu güçlü oyun motoru, açık ve anlaşılır dokümantasyonu nedeniyle birçok geliştirici tarafından beğeniliyor. Ancak dezavantajları da vardır.

  • iOS, Android ve Tizen platformlarında oyun geliştirmeyi planlıyorsanız lisans ücretsizdir;
  • hataları bulmak ve düzeltmek için güçlü araçlar;
  • güçlü topluluk;
  • yayıncının açık, anlaşılır belgeler ve örnekler sunması;
  • Ses eşliği için Fmod;
  • güçlü Havok yapay zekası.
  • oyunu Mac ve Linux'ta geliştirme imkanı yok;
  • Yeni başlayan geliştiriciler için giriş kılavuzu yoktur;
  • oyun PC içinse, lisans size oldukça pahalıya mal olacaktır.

OyunSalata

Bu popüler oyun motorunun yaratıcıları, geliştiricinin tek satır kod yazmak zorunda kalmayacağına söz veriyor. Genel olarak bu doğrudur. Ancak her güzel şeyin bir bedeli vardır: Motorun bir takım özellikleri vardır. önemli eksiklikler. Yalnızca iPhone üzerinde oyun geliştirmeyi planlıyorsanız bu sizin seçiminiz.

  • ücretsiz lisans (yalnızca PRO sürümü için para ödemeniz gerekecektir);
  • aktif topluluk;
  • hızlı prototipleme için mükemmel motor;
  • Cocona ve Moai gibi popüler mobil platformlarla uyumludur.
  • sınırlı sayıda geliştirme aracı;
  • iOS platformunun çoğu özelliğine erişim yok.

GameMaker:Stüdyo

Yeni başlayan bir geliştiriciyseniz ve basit ve anlaşılır bir motora ihtiyacınız varsa GameMaker: Studio hedeflerinizi tam olarak karşılar.

  • basit ve sezgisel kontroller;
  • tescilli programlama dili Game Maker Language (GML);
  • Steam ile entegrasyon;
  • platformlar arası.
  • oyunda sorun gidermenin nispeten zor olması;
  • Oyununuzu popüler platformlara aktarmak için yüklü miktarda ödeme yapmanız gerekecek.

Uygulama Oyun Kiti

App Game Kit, geliştiricilere yönelik çapraz platform yazılımıdır. Çok yönlülüğü ve kullanım kolaylığı nedeniyle değerlidir.

  • ana platformlar için kod yazmanıza olanak tanır: Android iOS, Windows, Mac ve Linux;
  • Oyunları herhangi bir cihazda test etmenize olanak tanıyan bir IDE ile birlikte gelir;
  • ek kurulum olmadan zaten IAP, AdMob ve Push'u içerir;
  • 2D grafikler, fizik ve ağ etkileşimi için güçlü komut dosyaları vardır.
  • Bu motorla çok az kişi çalıştığı için programın eksiklikleri uzun süre giderilemiyor (nispeten zayıf teknik destek);
  • birçok hata (doğal olarak önceki paragraftan kaynaklanmaktadır).

Cocos2D

Pek çok tasarımcı Cocos2D'yi son derece uyarlanabilir ve aynı zamanda yeni başlayan geliştiriciler için mükemmel şekilde uygun olan birkaç motordan biri olarak görüyor.

  • iOS platformuna mükemmel şekilde entegre edilmiştir;
  • ücretsiz ve açık kaynak;
  • geniş geliştirme araçları seçimi;
  • güçlü topluluk desteği.
  • kullanımı çoğu analogdan daha zor;
  • girişe karşı yüksek bariyer;
  • Mac veya iOS için özel olarak "özelleştirilmiş". Platformlar arası işlevsellik yoktur.

Sonuç olarak insanlar konsollarda oyun oynuyor, mobil cihazlar, PC'de ve hatta TV'de - böylece geliştirici her zaman hedeflerine uygun bir motor bulma fırsatına sahiptir. Umarım makalem seçiminizi yapmanıza ve sürekli büyüyen oyun endüstrisine başarıyla katılmanıza yardımcı olur.

Oyun motoru(İngilizce) oyun motoru) merkezi olanıdır yazılım bileşeni gerçek zamanlı olarak işlenen grafiklere sahip bilgisayar ve video oyunları ve diğer etkileşimli uygulamalar. Temel teknolojiyi sağlar, geliştirmeyi basitleştirir ve çoğu zaman oyuna birden fazla platformda çalışma yeteneği kazandırır. oyun konsolları ve masaüstü işletim sistemiörneğin GNU/Linux, Mac OS X ve Microsoft Windows.

"Oyun motoru" ifadesi, 2D veya 3D grafikler için bir işleme motoru ("görselleştirici"), bir fizik motoru veya çarpışma tespiti (ve çarpışma reaksiyonları), ses, komut dosyası oluşturma, animasyon, yapay zeka dahil olmak üzere bir dizi uygulama programını ifade eder. , ağ kodu, akış, bellek yönetimi, iş parçacığı ve sahne grafiği. Açıkça söylemek gerekirse, programcılar tarafından oyun geliştirirken yazılan tüm kod parçaları motor bileşenleridir. Oynanış (oynanış), bu programlarda uygulanan işlevler tarafından belirlenir.

Bilgisayar çağının başlangıcında her oyun geliştiriciler tarafından "sıfırdan" yaratıldıysa, Doom oyununun ortaya çıkışından bu yana (10 yıldan fazla bir süre önce) her şey değişti. Günümüzde neredeyse tüm ticari oyunlar kullanıma hazır araçlar kullanılarak oluşturulmaktadır: birçok farklı oyun oluşturmak için tek bir oyun motorunun yeniden kullanılmasıyla geliştirme süreci sırasında tasarruf yapılabilir.

Bazen "mod geliştiriciler", komut dosyaları aracılığıyla oyunda yerleşik programlama dilini kullanarak bazı değişiklikler yaparlar. Hilecilerin kullanmaktan keyif aldığı motor fonksiyonlarının bazı parametrelerinde ince ayar yapabilirsiniz (örneğin, bir oyuncunun sahip olduğu para miktarını artırmak). Ancak oyunun kaynak koduna müdahale edilmeden oynanışta büyük değişiklikler yapılması imkansızdır. Ve sorunların başladığı yer burasıdır. Öncelikle her oyun şirketi Kod halka açıklanacak. İkincisi, çok sayıda motor fonksiyonunu herkes bağımsız olarak anlayamaz. Referans bilgisi ve teknik destek olmadığı için (soracak kimse olmadığı için) çoğu zaman başka yol da yoktur. Üçüncüsü, kural olarak, teknik olarak zaten güncel olmayan motorların (örneğin, Quake II, III) kaynak kodunu yayınlarlar.

Acemi geliştiriciler için geriye ne kaldı?

  • Tanınmış bir şirketten modern bir motorun kullanım hakkını satın alın (motorun lisansını alın). Referans bilgileri ve üretici desteğiyle birlikte gelir. Ancak bu zevk ucuza gelmiyor. Yüzbinlerce dolara varan maliyeti olan ticari oyun motorları var.
  • Kendi motorunuzu geliştirin. Elbette bir çıkış yolu var ama bu çok fazla çaba ve yüksek programlama nitelikleri gerektiriyor.
  • Şunlardan birini kullanın: ücretsiz motorlar, yeteneklerine en uygun olanıdır. Genellikle ek bilgi ve destekle birlikte gelirler.

Ücretsiz oyun motorları

Bugün ücretsiz olanların en popüler ve gelişmiş olanı (genellikle o) kalem kaynağı, İle açık kaynak) oyun motorları şunlardır:

  • OGR(Nesneye Dayalı Grafik İşleme Motoru)

Nesne yönelimli grafik oluşturma motoru. C++, 3D grafiklerle yazılmış olup Direct3D ve OpenGL kullanır. Bu motorda basılı kitaplar var (üzerinde) ingilizce dili). Ayrıca Rusça bir web sitesi de bulunmaktadır. Birlikte çalışmak En son sürüm Motor şu derleyicilerden birini gerektirir: gcc, Visual C++ 7.1 (2003), Visual C++ 8.0 (2005). Motor derleyicileri destekler.Linux ve Mac'te çalışmak için gcc 3+ kullanılır. Oyun DirectX kullanacaksa öncelikle DirectX SDK'yı yüklemelisiniz (Microsoft web sitesinden indirilebilir).

Geliştiriciye göre Ogre, kelimenin tam anlamıyla bir oyun motoru değil. Belgelerde belirtildiği gibi, “Ogre bir grafik motorudur ve yalnızca bir grafik motorudur. Bu, grafikleri görüntülemek ve işlemekten başka bir şey yapmadığı anlamına gelir. Ancak bu aynı zamanda üçüncü taraf kütüphaneleri ekleyebileceğiniz anlamına da gelir. tüm oyun, yani:

  • ses;
  • ağ oluşturma;
  • giriş (manipülatörler, kumanda kolları);
  • çarpışma hesaplaması

Ogre bu kütüphaneleri içermiyor ancak harici modüllerin kolayca bağlanmasını sağlayan bir arayüz sağlıyor."

Motorun çeşitli grafik formatları için geniş desteği vardır. Standart olanlara ek olarak hacimsel, sıkıştırılmış dokular ve küp haritaları.Çeşitli 3D grafik paketlerinden (3DS Max, Maya, Milkshape3D, Blender Wings3D) 3D modelleri içe aktarmanıza olanak tanıyan birçok eklenti vardır. Bu durumda hem çerçeve hem de iskelet animasyonunu kullanabilirsiniz. Ogre'deki manzaralar güzel görünüyor. Oluşturmak için küçük oyun Motor gerekli tüm standart sahne kontrol sınıflarını içerir. Oyun kaynakları PK3 ZIP arşivlerinde paketlenebilir.

Ogre'de ticari oyunlar da yapılıyor - özellikle üzerine "Çelik Canavarlar" oyunları yazılıyor (Pasifik Fırtınası) ve çevrimiçi oyun Anarşi Çevrimiçi. Ticari bir oyun motorunu temel alan geliştirme, Ogre'nin büyük potansiyelini gösteriyor. Birçok kullanıcısı var. Sorun ortaya çıktığında iletişime geçilecek biri var. Elbette birileri bunları sizden önce çözmüştür veya en azından bunların üstesinden nasıl gelineceğini biliyordur. Çok sayıda referans bilgisi ve örnekler yeni başlayanların bile motorda ustalaşmasını sağlayacak. Ticari bir motor satın alacak mali durumunuz yoksa bu, oyun geliştirmek için mükemmel bir seçenektir.

  • Kristal Uzay. Özellikle oyun geliştirmeye yönelik, gerçek zamanlı 3D grafiklere yönelik açık kaynaklı, platformlar arası bir SDK. C++ ile yazılmıştır ancak sadece C++ projelerinde değil, Python, Perl, Java projelerinde de kullanılabilir.
  • Nebula Motoru 2. Açık kaynaklı bir 3D oyun ve işleme motoru. Çeşitli ticari oyunlarda kullanılır. Ayrıca C++ ile yazılmıştır, yalnızca Windows'ta çalışır ve DirectX 9.0 kullanır. Gölgelendiricileri (HLSL ve DirectX FX dosyaları), iskelet animasyonunu, parçacık sistemlerini ve gölgeleri uygulamaya yönelik sınıflar vardır. Yaygın olarak kullanılan birçok kodlama dilini TCL, Python ve Lua'yı destekler.
  • . Açık kaynak, çapraz platform, C++ ile yazılmış, .NET'ten (C#, VisualBasic ve Delphi.NET gibi diller), Java - jirr veya Bindenlicht kütüphanesi kullanılarak, Python - Pyrr kütüphanesi kullanılarak, Ruby - kullanılabilir. IrrRuby kütüphanesini ve diğer birçok dili kullanarak. Bu oyun motoru Almanya'dan geliyor. Aslında bir kişi tarafından tanıtılıyor. Tek başına bir motor geliştirmek, onu tamamen ücretsiz hale getirmek ve tüm kaynak kodlarını yayınlamak herkesin yapabileceği bir şey değil. Irrlicht'in son versiyonu henüz çok uzakta olsa da üzerinde şimdiden ciddi oyunlar yapılabilir. Motor bunun için gerekli tüm işlevlere sahiptir. İşleme OpenGLDirect3D (DirectX9.0 desteğiyle) aracılığıyla yapılır. Ayrıca bir yazılım modu da var, yani her şey kendi yazılım görselleştiricisi tarafından oluşturulacak ve bu, video kartlarının mükemmel donanım yetenekleri çağında pratik olarak kullanılmayan. Öğrenmesi oldukça kolay olan bu oyun motoru, hem 3D oyunları programlamaya ilk adımlarını atanlar hem de tam teşekküllü bir oyun yaratma konusunda deneyimli ekipler için uygundur. Irrlicht hakkında daha fazla bilgiyi knol.google.com adresinden okuyabilirsiniz.
  • OpenSceneGraphg . Açık kaynak, çapraz platform, standart C++ ile yazılmış, OpenGL kullanıyor. .lwo, .obj, .geo, .3ds, .x, .wrl formatlarındaki 3D modellerle, yani herhangi bir modern 3D grafik düzenleyicide (3DS Max, Maya ve Lightwave 3D) oluşturulan nesnelerle çalışır.
  • Microsoft XNA. 3 platform için platformlar arası oyun geliştirmeye yönelik Microsoft teknolojisi - Windows, Xbox 360 ve Zune (Microsoft'tan mp3 oynatıcı). Doğru, Xbox için oyun geliştirmek için Xbox Geliştirici Kitini satın almanız gerekecek, ancak oyunlar Windows için ücretsiz olarak geliştirilebilir. Teknoloji, DirectX ve .NET Framework (Xbox 360'ta .NET Compact Framework) altında oyun geliştirmek için tasarlanmıştır ve kesin olarak konuşursak, XNA kullanarak oyun geliştirirken ana dil C# olmalıdır. Kurumsal destekli bir geliştirici topluluğu var. Techdays.ru web sitesinde, XNA'da oyunların geliştirilmesine adanmış birkaç “” (seslendirme slaytı) bulunmaktadır. Web seminerleri Microsoft çalışanları tarafından sunulur ve sürece bir giriş sağlar.
  • Başka ücretsiz oyun motorları da var: Panda3D, , Koyu Temel ancak yukarıda açıklananlar kadar yaygın olarak kullanılmazlar.

Hazır bir oyun motoruna sahip olduğunuz için oyunun sadece mekaniklerini düşünebilirsiniz ve bu geliştirici için çok önemlidir.

Kaynaklar:

  • sindicollo.blogspot.com - ücretsiz oyun motorlarının incelemesi;
  • knol.google.com - ücretsiz oyun motorları (A. Krylov);
  • x-sky.ru - ücretsiz oyun motorları;
  • irrlicht3d.org - Irrlicht motoruyla ilgili wiki kaynağı (İngilizce).

Birçok kişi muhtemelen tek bir oyun yaratmanın ne kadar zaman ve çaba gerektirdiğini biliyor. Orijinal bir tane bulmalıyız hikaye konusu ilginç karakterlerle ve büyük bir senaryo yazın. Ve her şey düşünüldüğünde projeyi uygulama zamanı geldi. Çeşitli modeller oluşturmak (seviye nesneleri, insanlar vb.), konumlar oluşturmak, program kodları yazmak, oyun içi videolar çekmek. Ve hepsi bu değil. Detaylara inersek oyunun gelişimini tüm detaylarıyla anlatmak bir sayfadan fazlasını alacak. Kural olarak özel oyun motorlarında yapılırlar. Öncelikle “oyun motoru” kavramının ne anlama geldiğine ve amacına bakalım.

Oyun motoru(İngilizce) oyun motoru dinle)) bilgisayar video oyunlarının ve gerçek zamanlı grafiklere sahip diğer etkileşimli uygulamaların merkezi yazılım bileşenidir. Temel teknolojiyi sağlar, geliştirmeyi basitleştirir ve çoğu zaman bir oyunun birden fazla platformda çalışmasına olanak tanır. Bir oyun motoru, 2D veya 3D grafikler için bir işleme motoru (görselleştirici), bir fizik motoru, ses, komut dosyası oluşturma, animasyon, yapay zeka, ağ kodu, akış, bellek yönetimi, iş parçacığı ve grafik sahneleri dahil olmak üzere çok çeşitli uygulama programlarını içerir. Yani programcıların oyun geliştirirken yazdığı kodun tüm parçaları motor bileşenleridir. Oynanış, bu programlarda uygulanan işlevlere göre belirlenir, dolayısıyla bu işlevler ne kadar fazla olursa oyun da o kadar çeşitli olur.

Oyun motorlarının faydaları somuttur. Eğer oyundan önce Kelimenin tam anlamıyla sıfırdan yaratıldılar, ancak şimdi hazır araçlar kullanılarak geliştiriliyorlar. Bu, geliştiricilerin, programlama kodlarının ve diğer yararlı şeylerin çoğu zaten el altındayken çok fazla zaman kazanmalarına olanak tanır. Aynı motorun onlarca popüler oyunda kullanılabilmesi şaşırtıcı değil.

Şimdi size birkaç popüler oyun motorunu listeleyip teknik özelliklerini anlatacağız.

CryEngine.

CryEngine, Alman Crytek firmasının geliştirdiği ilk oyun motorudur. Stüdyo bunu ilk oyununu yapmak için kullandı. Uzak Ağla. Motor 2 Mayıs 2002'de piyasaya sürüldü ve 2006'da tüm hakları Ubisoft'a devredildi.

Crytek'in kurucularına göre amaçları öncelikle projeleri için iyi ve kaliteli bir motor yapmaktı. Ancak resmi olarak piyasaya sürülmesinin ardından şirket, onu satın alma teklifi aldı. Başarılı bir anlaşma ve biraz müzakere sonrasında geliştiriciler kendi iş satış lisanslarını oluşturmaya başladılar.

CryEngine'in geliştirilmesi şirket kurulduktan hemen sonra başladı. Başlangıçta motorun nVidia tarafından bir teknoloji gösterimi için kullanılması amaçlanmıştı. Ancak ECTS 2000 fuarında (İngiliz Avrupa Bilgisayar Ticaret Fuarı) Crytek'in yaratımı tüm ziyaretçiler üzerinde büyük bir etki yarattı. Bundan sonra geliştiriciler, motorun tüm yeteneklerini ve birkaç yeni güncellemeyi kullanacak olan ilk nişancı oyunlarını geliştirmeye başladılar. Bu güncellemelerin özü, yeni gölgelendiricilerin tüm karmaşık hesaplamaları başka bir uzun gölgelendiricide gerçekleştirmeyi mümkün kılması ve karmaşık şekilde aydınlatılmış nesneler üzerinde kabartma görüntüler oluştururken artık önemli hızlandırıcı kaynaklarının israf edilmesine gerek kalmamasıydı. Ve yeni PolyBump motor teknolojisi, gerçek çokgenleri kullanarak dokular oluşturmanıza olanak tanır. Bu, normal haritaların doku oluşturmak için kullanıldığı Bumpmapping'den farkıdır. Daha sonra geliştiriciler, mevcut teknolojilerin iyileştirildiği ve yenilerinin eklendiği motorun başka bir versiyonunu yayınladı. Bu yeni ürünlerden biri Geometri Örneklemedir.

2 yıl sonra Far Cry oyununun piyasaya sürülmesinden sonra Ubisoft oyunun haklarını aldı. Anlaşma şartlarına göre, yalnızca oyunun değil, aynı zamanda motorun kendisi, karakterler, olay örgüsü, franchise, ortam, ticari marka, logo, devam filmi geliştirme ve yayınlama haklarına ilişkin tüm fikri mülkiyet hakları kendisine devredildi. Bundan sonra Crytek, Xbox, Xbox 360 ve Nintendo Wii konsolları için Far Cry eklentilerinde motoru geliştirmeye devam etti.

İlk CryEngine'in çeşitli özellikleri:

  • donanım yetenekleri desteğine sahip işleyici, dikişsiz entegre açık ve kapalı konumlar,
  • Karakterlerin, araçların, katıların ve sıvıların ters kinematiği desteği,
  • Oyunun yapay zeka sistemi, özel düşmanlar ve onların davranışlarını yaratmanıza olanak tanır,
  • müzik parçaları tamamen etkileşimlidir ve oyuncunun eylemlerine yanıt verir,
  • Komut dosyası sistemi popüler Lua diline dayanmaktadır.

CryEngine 2.

CryEngine 2, Alman Crytek şirketi tarafından oluşturuldu ve ilk kez bir nişancı oyununda kullanıldı. Crysis aynı stüdyodan. Motorun resmi duyurusu 23 Ocak 2006'da gerçekleşti, ancak yalnızca 2006'da piyasaya sürüldü. gelecek yıl aynı tarih. Geliştiriciler, konsolların teknik donanımının oyunu iyi kalitede yeniden üretemeyeceği için oyunun kendisinin PC'ye özel kalacağını açıkladı. Ve o zamanın birçok bilgisayarında Crysis grafikleri nedeniyle sıklıkla yavaşlıyordu. Oyunun piyasaya sürülmesinin ardından Crytek, yeni motorun tüm yeteneklerini gösteren HD formatında bir video göstermeye karar verdi. İlk kez Oyun Geliştiricileri Konferansı 2007'de (GDC) gösterildi, ancak büyük popülaritesi nedeniyle video halka açıldı.

Daha sonra bu motor San Francisco'da düzenlenen (GDC) 2008 fuarında tanıtıldı. Orada kendisine “En İyi Teknoloji” anlamına gelen “En İyi Teknoloji Ödülü” verildi. Ayrıca bu kategoride Crysis gibi ünlü oyunlarla yarıştı. Hale 3 , Call of Duty 4: Modern Savaş , Portal Ve Assassin's Creed. Önemli olan hepsini yenmiş olması. Aynı sergide geliştiriciler, CryEngine 2'nin Xbox 360 ve PlayStation 3 konsollarında gösterileceğini, optimize edileceğini, yani orta güçlü bilgisayar sistemlerinde dahi çalışacağını ifade etmişti. Ayrıca bir şirket, I/ITSEC Ciddi Oyunlar Yarışması'nda ödül alan Vigilance oyununu geliştirdi. Oyunun kendisi halka açık kullanıma yönelik değildir. Patlayıcı cihazların tespiti ve tanımlanması konusunda askeri uzmanların yetiştirilmesine ihtiyaç duyulmaktadır.

Özellikler ve temel özellikler.

Motorun oluşturucusu gerçekçi görünen ışıklar ve gölgeler oluşturur. Işık kaynağı arasında bir engel varsa, yüksek çözünürlükte, hacimli kenarlara ve doğru perspektife sahip, doğal, yumuşak bir gölge etkisi yaratılır. Bir örnek güneş ve gölge oluşturacak bir ağaç olabilir. Işık kaynağının konumuna göre konumu değişecektir.

Sis teknolojisi, zemini saran bulutlar, duman ve sis oluşturmanıza olanak tanır ve oyunun, bu efektin uygulandığı nesnelerin görünürlüğünün azaldığı hissini yaratmasına neden olur. Bu teknoloji aynı zamanda gölgelerle de çok iyi çalışarak manzaraya derinlik ve boyut katar.

Gelişmiş shader teknolojisi sayesinde kir, görünmezlik, donmuş yüzey vb. özgün efektler oluşturabilirsiniz. Diğer temel gölgelendiricilerden ayrı olarak kullanılabilirler. Piksel başına aydınlatma, pencereler, ekranlar, kurşun delikleri ve animasyonlu dokular gibi özellikler de desteklenmektedir. Ayrıca motor, yüksek kaliteli 3D okyanus teknolojisini destekler. Bu sayede kıyının bulunduğu yerde su kesilmektedir. Sualtında güneş ışınlarının ve hareketli gölgelerin etkisi kostik simülasyon sistemi kullanılarak yaratılıyor.

CryPhysics fizik motoru seviyedeki hemen hemen tüm nesnelere uygulanır. Onun yardımıyla Crysis oyunundaki ağaçlar rüzgarın estiği yöne doğru bükülür ve oyuncunun hareketleri nedeniyle kırılabilir. Binalar fizik tarafından yok edilir ve onları yıkmak o kadar kolay değildir. Bir nesne yok edildiğinde molozla etkileşime girebilirsiniz.

Crysis ve hikaye eklentilerine ek olarak motor, Merchants of Brooklyn, Blue Mars, Entropia Universe, Kailas gibi oyunlarda ve bir dizi başka projede kullanıldı.

CryEngine 3.

CryEngine 3 şu anda Crytek stüdyosunun en yeni motorudur. Ancak aynı zamanda öncekilerden farklı olarak ilk kez sadece bilgisayarlar için değil, yedinci nesil konsollar için de tasarlandı. Ayrıca çok oyunculu çevrimiçi oyunların geliştirilmesine odaklanılmıştır.

Yeni motor ile önceki sürümler arasındaki ilk fark, platformlar arası yapısıdır. Geliştiriciler, yaygın korsanlık nedeniyle PC'ye özel oyunları durdurmaya karar verdi. Bu nedenle atıcı Kriz 2 Sadece kişisel bilgisayarlarda değil konsollarda da yayınlandı. Yeni CryEngine, orta güçlü bilgisayarlarda ve set üstü kutularda iyi çalışacak şekilde optimize edildi. CryEngine 3'ün görüntülerini koşu görüntüleri ile karşılaştıran çevrimiçi bir video var oyun Crysis CryEngine 2'de.

CryEngine 3 ve CryEngine 2'nin Karşılaştırılması

Video, grafik kalitesi açısından ilkinin ikincisinden daha düşük olduğunu gösterdi ancak bu, onun popüler olmasını engellemedi. Motor, "Avrupa Yenilikçi Oyunlar Ödülü" ve "Gerçek Zamanlı En İyi Simülasyon" ödüllerini kazandı.

CryEngine 3'teki yeni özellikler.

CryEngine 2'nin tüm unsurları yeni motorda kaldı ancak yeniden tasarlandı ve geliştirildi. Bu özellikle gerçek zamanlı piksel piksel aydınlatma teknolojisi için geçerlidir. Yeni gölgelendiriciler sayesinde, "görünmezlik" gibi farklı efektler yalnızca yaratılmakla kalmıyor, aynı zamanda diğer efektlerin, dokuların üzerine de uygulanıyor ve bunlar da diğer gölgelendiricilere eklenerek başka çeşitli efektler oluşturulabiliyor.

Piksel başına aydınlatma teknolojisi, kurşun deliklerinin, pencerelerin, yüzeylerin, animasyonlu dokuların, yansıma ve kırılmanın simülasyonunu destekler. Yeni uygulanan "bershader" teknolojisi bir dizi faydalı yenilik içeriyor: dört adede kadar ışık kaynağı, normal haritalar, aynasal ve ayrıntılı dokular, sis vb.

Rockstar Gelişmiş Oyun Motoru (RAGE), ana stüdyonun Rockstar San Diego ve Rockstar North bölümleri tarafından oluşturuldu. Rockstar oyunları. Motor yalnızca bu firmalar tarafından kullanıldığı için lisanslı değildir ve şahısların kullanımına yönelik değildir.

Başlangıçta Rockstars, RenderWare adı verilen Criterion Games motorunu kullandı. Ancak daha sonra büyük Amerikan yayınevi Electronic Arts, stüdyonun kendisini ve yaratımını satın aldı ve bu, motorun lisanslama politikası üzerinde kötü bir etki yarattı.

Bu bağlamda Rockstar, kendi motorunu yaratmaya karar verdi ve tüm bölümlerini bu çalışmaya dahil etti. Yenide oluşturulan ilk oyun (RAGE) 23 Mayıs 2006'da piyasaya sürüldü ve adı "Rockstar Games Masa Tenisi Sunuyor". Ve bir süre sonra geliştiriciler yayınladı yeni bölümünlü oyun serisi - GTA 4 zaten yeni motordaki ikinci oyundu ve ilk kez kullanıldı yeni teknoloji prosedürel animasyon "coşku".

Özellikler ve özellikler.

Diğer tüm motorlar gibi RAGE de grafik, ses, animasyon ve fizik motorlarını, oyun yapay zekasını, komut dosyası dilini ve gerekli tüm araçları içerir. Rockstar'ın yaratılışının ana avantajı, bu stüdyonun oyunları küçük seviyelere bölünmediğinden, büyük bir alanı oluşturduğundan, büyük oyun alanlarını verimli bir şekilde yönetebilme yeteneğidir. Geliştiricilerin özel bir motor hafıza yöneticisi oluşturması gerekiyordu. Nesneleri sürekli olarak dağıtır ve kaldırır. rasgele erişim belleği onu parçalamadan.

İşlemenin yanı sıra oyun alanı Geliştiriciler ayrıca oyunlardaki ulaşımın fiziğine de dikkat etti. Ağırlık, çekiş, belirli bir yüzeyde sürüş ve diğer özellikler gibi araç parametrelerini sürekli hesaba katmak zorunda kaldılar. Oyunlardaki insanların animasyonundan “Euphoria” sorumludur. Özel özelliği, anında bağımsız olarak karakter animasyonu oluşturmasıdır. Bu teknoloji GTA 4'ün piyasaya sürülmesinden sonra kullanılmaya başlandı.

Kimlik Teknolojisi 4.

id Tech 4, geliştirme sürecinin başlangıcında halihazırda tamamlanmış Quake III motorunun bir uzantısı olarak planlanmıştı. Ancak yeni renderın tanıtılmasının ardından eskisinin tamamen yeniden yazılması ve geri kalanının değiştirilmesiyle yeni bir motor oluşturulmasına karar verildi. Ancak yapılan tüm çalışmalara değdi. Bir zamanlar teknolojik açıdan en gelişmiş oyun motorlarından biriydi. Buna dayalı oyunlar oluşturuldu: kıyamet 3 , Deprem 4 , Kurban , Düşman Bölgesi: Deprem Savaşları , Wolfenstein .

Özellikler.

id Tech 4'ün ana yeniliklerinden biri piksel başına aydınlatmanın kullanılmasıdır. Bu teknik Doom 3'te de kullanıldı. Bu oyunda aynı zamanda tüm bu parametreleri anında üreten birleşik aydınlatma ve karartma teknolojisi kullanıldı. Daha önce ışık kaynağıyla ilgili tüm bilgiler kaydedilmişse ve seviyedeki tüm aydınlatma bir bütün olarak etkilenmemişse, şimdi her şey değişti. Herhangi bir nesne veya karakter, yalnızca bulunduğu mekanın belirli bir kısmına değil, kendisine de gölge düşürebilir.

Belirli kısımlarda veya bir alan boyunca araziye ilişkin çeşitli bilgilerin saklanması amacıyla Megatexture teknolojisi eklendi. Belirli bir efektin nerede oynanacağını hesaplamanın yanı sıra haritanın özel alanlarındaki yerçekimi kuvvetini hesaplamanız gerekiyorsa bu işlev gereklidir.

Sistem gereksinimleri.

id Tech 4'ün önemli bir dezavantajı, Direct3D 8 ile uyumlu, yüksek performanslı bir video kartına duyulan ihtiyaçtır. Bu sorun nedeniyle, hepsi istenen Direct'i desteklemediği için belirli grafik kartı türlerinin seçilmesi gerekiyordu. Bir örnek, GeForce 4 Ti video bağdaştırıcısıdır. Bu kartla oyun sorunsuz bir şekilde çalışırken, diğerlerinde ya hiç başlamadı ya da saniyede yetersiz kare sayısıyla çalıştı. Kullanıcılar bu durumdan memnun değildi ve bu nedenle id Software'in motorda önemli değişiklikler yapması gerekti. Bu değişiklikleri ekledikten sonra durum gözle görülür şekilde iyileşti.

Kendi bilgisayarını oluşturmak isteyen veya konsol oyunu motor işinize yarayacaktır. Ünlü geliştiricilerin eserlerini kullanabilirsiniz, ancak lisans satın almak için çok paraya ihtiyacınız var. Ancak kimse kendi motorunuzu yaratmanızı yasaklamaz. Evet, emek yoğun bir iş ama hazır bir platformda oyun oluşturmak da kolay bir iş değil. Ancak bu işi yapmaya karar verirseniz, size iyi şanslar, çaba ve sabır dileriz.



 

Okumak faydalı olabilir: