Behaviour Trees (BT), oyun karakterlerinin AI tabanlı karar alma ve kişilik sistemlerini modellemede kullanılan güçlü bir yöntemdir. Karakterlerin davranışlarını hiyerarşik olarak organize ederek hem esnek hem de yönetilebilir sistemler yaratılır.
1. Behaviour Trees Nedir?
-
Tanım: Karakterin yapacağı eylemleri hiyerarşik bir ağaç yapısında organize eden AI modelidir.
-
Amaç: NPC veya AI karakterlerinin çevreye tepki vermesini, görevleri yerine getirmesini ve adaptif davranmasını sağlamak.
Bunu da okuyun
Yapay Zeka ile Chatbot Geliştirme (Python & NLP)
Temel Elemanlar:
-
Root Node: Karakterin ana davranış ağacının başlangıcı
-
Composite Nodes: Sequence (sıralı görevler), Selector (alternatifler)
-
Leaf Nodes: Gerçek eylemler veya koşullar
Örnek:
2. Karakter Kişiliğini Modelleme
Behaviour Trees, karakter kişiliğini belirlerken kullanılabilir:
-
Agresif Karakter: Saldırı sequence’i yüksek öncelikli
-
Savunmacı Karakter: Kaçış ve savunma sequence’leri daha öncelikli
-
Denge Karakter: Rastgele veya duruma göre seçim yapan selector
Örnek:
-
Unity’de BT kullanarak NPC’ye agresif veya pasif davranış atamak kolaydır.
-
Unreal Engine’de AI Controller + Behaviour Tree ile karakter tipi tanımlanabilir.
3. Dinamik Tepki ve Adaptasyon
BT, çevresel koşullara tepki verebilir:
-
NPC sağlık durumu düşükse kaçma davranışı aktif
-
Oyuncu görünürse saldırı sequence’i tetiklenir
-
Çevresel öğeler (kapılar, engeller) AI tarafından değerlendirilir
Örnek:
4. BT ile Çok Katmanlı Karakter Yönetimi
-
Nested Trees: Büyük ve karmaşık davranışları alt ağaçlarla yönetmek
-
Modular BT: Aynı BT’yi farklı NPC’lerde yeniden kullanmak
Örnek:
-
Düşman birimi için “Patrol Tree” ve “Combat Tree” ayrı tutulur, ana BT bunları çağırır.
5. AI Karar Alma Optimizasyonu
-
BT, karar alma sürecini hızlandırır ve performansı iyileştirir
-
Karmaşık durumlar için koşullar ve priority selector kullanılır
-
Oyun sırasında gerçek zamanlı güncellenebilir
Örnek:
-
FPS oyunlarında düşman AI, oyuncu hareketine göre saldırı, kaçış veya siper alma sequence’lerini optimize eder.
6. Kullanılan Araçlar ve Motorlar
-
Unity: Behaviour Designer, NodeCanvas, ML-Agents ile BT entegrasyonu
-
Unreal Engine: Native Behaviour Tree Editor, AI Controller, Blackboard sistemleri
-
Diğer Araçlar: Godot AI BehaviourTree, Lumberyard AI
Örnek:
-
Unity NodeCanvas ile karakterlere farklı BT tanımlamak 5 dakika sürer.
-
Unreal Engine’de BT + Blackboard ile karmaşık görevleri yönetmek mümkün.
7. BT ve Karakter Kişiliğinin Geleceği
-
AI tabanlı dinamik kişilikler: BT ile sadece davranış değil, karakterin kişiliği de zamanla değişebilir
-
Oyun içi öğrenen karakterler: BT + Reinforcement Learning kombinasyonu
-
Gelişmiş RPG ve sandbox oyunlarda daha gerçekçi NPC davranışları
Örnek:
-
NPC, oyuncunun önceki etkileşimlerine göre saldırgan veya dostane davranabilir.
Bir Cevap Yaz
E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir.