Oyun Motorları
-
oyun motor ları nasıl neye göre yazılmaktadır hangi mantık ızlendıgı yol nasıldır c# ile bir oyun motoru yazılabılmektemıdır
yapay zeka neye göre tasarlanır bunlar hakkında bılgı dokuman varmıdır
-
oyun motoru denilince hep aklıma böyle bieşy gelir.
ben nereden bileyim oyunun yazılımı ile ilgili birşey olduğunu yazılımsal bir zımbırtı olduğunu.
cahillik böyle birşey işte :/
-
c# ile niye yazamayasın yazarsın herhalde :D ama biraz sıkar işte :D c# kullanan popüler oyun motorları unity ve xna
oyun motoru yazmaya gelincede c++ ile birlikte bir alternatif kütüphaneyle birlikte (directx veya opengl) yazabilirsin.
-
cewap yetersız :)
-
yapay zeka başlı başına bi olay neural network fuzzy logic genetic algorithm gibi keywordslerden araştırabilirsin
bence oyun motoru c# da yazılmaz çünkü fizik, matematiksel modelleme, gibi işlerin düşük seviyeli sistem programlama dilleri ile yapılması uygundur
istersen olur ama mantıklı değil bence oyüzden C/C++ olmalıdır
-
Yeni başlayanlar için 2d motor oyunu kaynak kodunu alttaki sitede paylaşmış biri. C++ ve sdl kullanmışlar
http://www.programming-techniques.com/2012/07/bike-race-game-in-c-and-sdl-free.html
-
https://farseerphysics.codeplex.com/
al sana c# fizik motoru (kaynağıyla).
nessaj tarafından 21/Şub/14 10:47 tarihinde düzenlenmiştir -
http://www.crytek.com/cryengine/cryengine3/overview
-
d3lete bunu yazdı
http://www.crytek.com/cryengine/cryengine3/overview
bu tarz büyük oyun motorlarını projende kullnmak için büyük miktarda lisans ücreti ödemelisin ayrıca.Cryengine 3 1.2 milyon dolar idi mesela lisansı :D
-
uz-i bunu yazdı
cewap yetersız :)
hocam ben ne kadar yazsamda yetersiz gelecek muhtemelen o yüzden sana kullandığım bazı siteleri paylaşayım onlar üzerinden bir bak
şimdi c# ile oyun motoru yazmak doğru değil(çok fazla performans kaybına yol açar c++ oyun motorları için vazgeçilmezdir) ama oyun sektörünün parlayan yıldızı unity olduğu için iş ilanlarında artık c# bilgisi istediklerini bol bol görebilirsin. iş ilanları: http://jobs.gamasutra.com/search
örneğin bak burda engine engineer var ne istediklerine bakabilirsin: http://jobs.gamasutra.com/job/lead-engine-engineer-glendale-california-25982
eğer c++ ile birlikte directx kullanmaya karar verdiysen şu sitede dx9 ile ilgili tut lar var: http://www.directxtutorial.com/LessonList.aspx?listid=9
bunun dışında oyun yapımıyla ve oyun motoru yapmayla ilgili yardımları, makaleleri bulabileceğin site: http://www.gamedev.net/page/index.html
olacaktır, örneğin: http://www.gamedev.net/page/resources/_/technical/math-and-physics/making-a-game-engine-transformations-r3566
bunların dışındada teorik olarak mutlaka takip etmen gereken site http://www.gamasutra.com/
bunlar dışında yapay zeka ile ilgili bilgileri bulabileceğin site: http://aigamedev.com/ bu adam bedava canlı yayında yapıyordu, eskiden düzenli olarak katılırdım 2 haftada bir. birde yapay zeka kodlamayla ilgili kitaplar vardı ingilice ama hatırlamıyorum google da aratırsan zaten tonla bulursun.
-
uz-i bunu yazdı
cewap yetersız :)
belki soru yetersizdir, anasının nikahı kadar modül, dinamik var belli kategoriye yöneltirsen sorunu daha açıklayıcı cevaplanır yoksa genel olarak fizik motorları, ses, görüntü işleme, veri işleme den bahsedilir ki bunlar da yine yine anasının nikahına ayrılıyor da ayrılıyor.
C# ile yazılır neden yazılmasın bir ton dille yazılıyor, GPU'ya erişip render ettikleri için ya da CPU+GPU render aldıkları için çokta düşük seviyeli programlama dillerine gerek kalmıyor zaten apiler mevcut, opengl veya directx hangi işleyiciyi kullanacağını seçer yaparsın fakat frameworkte bir dil olduğu için native olmadığı için sanmıyorum çok verim alınsın, çok farkı olmaz ama yine de tercih ve kolaylık meselesi işte.
Yapay zekada olasılıkları birbirine bağlayacaksın, sağlam bir kümeleme çalışması. Serbest bir dünya varsa kesin olasılıklar yerine birbirine bağlı olasılıkları kullanarak ve tetikleyicileri kullanarak yine davranış biçimleri oluşturabilirsin tabi ki ne kadar çok olasılığı girdiğine bağlı, yeterince çok girdikten sonra sınırları belirleyerek rastgele ve bağlı işlemler atayabilirsin, bir noktadan sonra adaptasyon gösterebilir tabi ki yine aynı olasılıkların türevi içinde dönüp dolaşacaktır fakat gayet yeterli bilinç oluşturmuyoruz zaten.
Basit bir şekilde "patrol" komutu verilmiş düşman, belirli bir LoS içine player girince ona yönelebilir, player yeteneklerine göre onu tanıyıp yakın mesafe veya uzak mesafe zarar verme kabiliyeti varsa ona göre olasılıklar hesaplanıp uzak vurabilir, uzaktan sersemletip yakından vurabilir, kaçabilir, saklanabilir, uçurum kenarında ise toslayabilir, player hasar eşiği belirli kademe düştükten sonra başka bir düşman arkadaşının öldürmesi garanti ise ve yakındaysa, kendini feda edebilir gibi, olasılıklar tamamen.