1 / 11

Oyun Programlama (Yapay Zeka)

Oyun Programlama (Yapay Zeka). Hazırlayan: Yrd.Doç.Dr. Emin BORANDAĞ. AI nedir ?. Oyun programlamadaki yapay zeka; oyun içierisindeki kullanıcı dışındaki bütün objelerin insana özgü bazı davranışları oluşturmasını sağlamaktır. Örnek Olaraak Araba oyunundaki diğer arabalar.

keith
Télécharger la présentation

Oyun Programlama (Yapay Zeka)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Oyun Programlama(Yapay Zeka) Hazırlayan: Yrd.Doç.Dr. Emin BORANDAĞ

  2. AI nedir? • Oyun programlamadaki yapay zeka; oyun içierisindeki kullanıcı dışındaki bütün objelerin insana özgü bazı davranışları oluşturmasını sağlamaktır. • Örnek Olaraak • Araba oyunundaki diğer arabalar. • Ateş ettiğiniz canavarlar • RTS oyunlarındaki rakip nişancı

  3. AI Kullanımı • Yapay Zeka Kullanıcının Herbir yeni hareketine göre tekrar kendini çalıştırarak yeni bir konum belirlemelidir. • Her Yerde Kullanılmalımıdır?

  4. Yapay Zekanın Amacı • Amaç Temelli Ne Yapacağı sıkı kurallarla verilmiş. Bu hareketi yap şu hareketi yapma. • Hemen değişen durumlara yanıt verme. • Knowledge intensive - the AI knows a lot about the world and how it behaves, and embodies knowledge in its own behavior • Karakteristik olarak sadece bazı olaylara yanıt verme. • Ayrıca AI sayesinde • AI hızlı ve kolay geliştirmeye yardımcı olur. • CPU ve RAM kullanımını azaltır.

  5. Yapay Zekaların Video Oyunlarında Kullanımı • 5-10% CPU Gerçek Zamanlı • 25-50% CPU for Durum Temelli • Takip /Kaçış davranışları • Grup davranışları • Sonlu durum makineleri • Adaptasyon / Öğrenme

  6. Takip Kaçma • En kısa yol algoritması bu durumlar için kullanınıla bilir. Canavarın oyuncuyu en kısa yoldan yakalaması. Araba yarışında diğer arabanın oyuncuyu en kısa yolu bularak geçmesi.

  7. Örnek Kod if (predatorX > preyX) { predatorX--; } else if (predatorX == preyX) { // do nothing } else { predatorX++; } if (predatorY > preyY) { predatorY--; } else if (predatorY == preyY) { // do nothing } else { predatorY++; } Oyunu oynayan ile Oyundaki canavarın konumlarının alınıp en kısa yoldan canavarın kullannıcı üzerine saldırması Predator is at coordinates (predatorX,predatorY). Prey is at coordinates (preyX,preyY).

  8. Algoritmayı Geliştirmek • En Kısa Yolun Bulunması predator prey

  9. Algoritmayı Geliştirmek • Bresenham’s algoritması ile En Kısa yolun farklı bir şekilde bulunması predator prey

  10. Ekran ile Bu işin bulunması • Ekrandaki Pixel ilede bu işler gerçekleştirilebilir.

  11. Örnek Bir Kaçma Algoritması Current velocity of prey Define a few terms: Closing velocity, Vc = Vprey – Vpredator Range to close, Sc = Pprey – Ppredator Time to close, Tc = | Sc | / | Vc | We can calculate intercept position: Intercept position = Pprey + Vprey x Tc Current position of predator

More Related