O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.
Oyun Programlama 
(Yapay Zeka) 
Hazırlayan: 
GÖKHAN ÇALI
AI nedir? 
• Oyun programlamadaki yapay zeka; oyun içierisindeki 
kullanıcı dışındaki bütün objelerin insana özgü bazı 
da...
AI Kullanımı 
• Yapay Zeka Kullanıcının Herbir yeni hareketine göre 
tekrar kendini çalıştırarak yeni bir konum belirlemel...
Yapay Zekanın Amacı 
• Amaç Temelli Ne Yapacağı sıkı kurallarla verilmiş. Bu 
hareketi yap şu hareketi yapma. 
• Hemen değ...
Yapay Zekaların Video Oyunlarında 
Kullanımı 
• 5-10% CPU Gerçek Zamanlı 
• 25-50% CPU for Durum Temelli 
• Takip /Kaçış d...
Takip Kaçma 
• En kısa yol algoritması bu durumlar için kullanınıla bilir. 
Canavarın oyuncuyu en kısa yoldan yakalaması. ...
Örnek Kod 
if (predatorX > preyX) { 
predatorX--; 
} else if (predatorX == preyX) { 
// do nothing 
} else { 
predatorX++;...
Algoritmayı Geliştirmek 
• En Kısa Yolun Bulunması 
prey 
predator
Algoritmayı Geliştirmek 
• Bresenham’s algoritması ile En Kısa yolun farklı bir şekilde 
bulunması 
prey 
predator
Ekran ile Bu işin bulunması 
• Ekrandaki Pixel ilede bu işler gerçekleştirilebilir.
Örnek Bir Kaçma Algoritması 
Define a few terms: 
Closing velocity, Vc = Vprey – Vpredator 
Range to close, Sc = Pprey – P...
Próximos SlideShares
Carregando em…5
×

003 - Oyun Programlama Yapay Zeka

581 visualizações

Publicada em

Oyun programlamada yapay zeka kullanımı hakkında bilgi içerir.

Publicada em: Engenharia
  • Seja o primeiro a comentar

003 - Oyun Programlama Yapay Zeka

  1. 1. Oyun Programlama (Yapay Zeka) Hazırlayan: GÖKHAN ÇALI
  2. 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 Olarak • Araba oyunundaki diğer arabalar. • Ateş ettiğiniz canavarlar • RTS oyunlarındaki rakip nişancı
  3. 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. 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. 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. 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. 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. 8. Algoritmayı Geliştirmek • En Kısa Yolun Bulunması prey predator
  9. 9. Algoritmayı Geliştirmek • Bresenham’s algoritması ile En Kısa yolun farklı bir şekilde bulunması prey predator
  10. 10. Ekran ile Bu işin bulunması • Ekrandaki Pixel ilede bu işler gerçekleştirilebilir.
  11. 11. Örnek Bir Kaçma Algoritması Define a few terms: Closing velocity, Vc = Vprey – Vpredator Range to close, Sc = Pprey – Ppredator Time to close, Tc = | Sc | / | Vc | Current velocity of prey We can calculate intercept position: Intercept position = Pprey + Vprey x Tc Current position of predator

×