Ders haritası 🗺️
Oyun programlama öğrencileri için algoritmalar: her konu bir oyun problemiyle başlar, elle izleme ve oynanabilir demolarla ilerler, kodla (JavaScript / p5.js, Python, C#) biter. Bölüm 1–5: temel algoritmalar ve veri yapıları (18 sunum). Bölüm 6: oyun geometrisi ve fiziği (çarpışma, görünürlük, fizik, eğriler, ağ, bulmacalar, kamera). Bölüm 7–12: oyun yapay zekâsı (haftalık ders planı + ek ileri konular; sıra, ön koşulları en aza indirecek şekilde düzenlendi).
- 01
Union–Find dynamic connectivity
Quick-find, quick-union, ağırlıklandırma, yol sıkıştırma · Kruskal ile labirent üretimi · perkolasyon · Go taş grupları
hazırSlaytlar ▶ - 02
Algoritma Analizi analysis of algorithms
Bilimsel yöntem · canlı iki katına çıkarma deneyi ve log-log grafiği · ~ gösterimi · büyüme mertebeleri · 60 FPS kare bütçesi · bellek
hazırSlaytlar ▶ - 03
Bağlı Listeler linked lists
Dizi ile kapsamlı karşılaştırma: bellek, önbellek, canlı ölçüm · dinamik diziler · yılan oyunu, Uno sırası, mermi havuzu
hazırSlaytlar ▶ - 04
Yığınlar ve Kuyruklar stacks & queues
Bağlı liste / dizi / dairesel tampon · geri al, menü yığını, RTS hedef kuyruğu, kombo tamponu · DFS ve BFS’ye giriş
hazırSlaytlar ▶ - 05
Arama Algoritmaları searching
Sıralı arama · nöbetçi · ikili arama · lower bound · loot tabloları · ikiye bölme ile çarpışma anı
hazırSlaytlar ▶
- 06
Temel Sıralama Algoritmaları elementary sorts
Selection, insertion, shellsort · kararlılık · karıştırma · y-sıralama, Tetris torbası, önbellek
hazırSlaytlar ▶ - 07
Mergesort mergesort
Böl ve fethet · birleştirme · N lg N analizi · Timsort · aşağıdan yukarı · sıralamanın alt sınırı · kararlılık ve skor tabloları
hazırSlaytlar ▶ - 08
Quicksort quicksort
Bölümleme · karıştırmanın önemi · üç yollu quicksort · quickselect ile medyan ve “%1 low FPS” · canlıları başa topla · sistem sıralamaları
hazırSlaytlar ▶
- 09
Ağaçlar ve İkili Arama Ağaçları trees & BSTs
Ağaç terimleri · gezinme · davranış ağaçları · BST · sıralı işlemler · silme · quadtree
hazırSlaytlar ▶ - 10
Dengeli Arama Ağaçları balanced search trees
2-3 ağaçları · sola yatık kırmızı-siyah BST · döndürme · B-ağaçları · SortedDictionary
hazırSlaytlar ▶ - 11
BST’nin Geometrik Uygulamaları geometric applications of BSTs
1B aralık arama · doğru parçası kesişimi · kd-ağaçları · aralık ağaçları · oyunlarda uzaysal sorgular
hazırSlaytlar ▶
- 12
Öncelik Kuyrukları priority queues
İkili heap · heapsort · olay zamanlayıcıları · A*’ın açık listesi
hazırSlaytlar ▶ - 13
Hash Tabloları hash tables
Hash fonksiyonları · ayrı zincirleme · doğrusal yoklama · uzaysal hash ızgarası
hazırSlaytlar ▶ - 14
Sembol Tablosu Uygulamaları symbol table applications
Kümeler · sözlükler · dizinler · seyrek vektörler
hazırSlaytlar ▶
- 15
Yönsüz Graflar undirected graphs
Graf gösterimleri · DFS · BFS · bağlı bileşenler · oyun haritaları ve navigasyon ağları
hazırSlaytlar ▶ - 16
Yönlü Graflar directed graphs
Erişilebilirlik · topolojik sıralama · güçlü bağlı bileşenler · teknoloji ağaçları, görev bağımlılıkları
hazırSlaytlar ▶ - 17
Minimum Yayılan Ağaçlar minimum spanning trees
Kesme özelliği · Kruskal · Prim · prosedürel harita/labirent üretimi
hazırSlaytlar ▶ - 18
En Kısa Yollar shortest paths
Dijkstra · DAG’de en kısa yol · Bellman–Ford · oyunlarda yol bulmaya köprü
hazırSlaytlar ▶
- G1
Geometri Temelleri orientation, intersection, convex hull
Yön testi (çapraz çarpım) · doğru parçası kesişimi · nokta çokgenin içinde mi · ayakkabı bağı formülü · dışbükey zarf
hazırSlaytlar ▶ - G2
Uzaysal Bölümleme spatial partitioning
Düzgün ızgara · uzaysal hash · dörtlü ağaç (quadtree) · BVH · “yakınımda kim var?”
hazırSlaytlar ▶ - G3
Çarpışma Tespiti collision detection
Daire, AABB, OBB · ayıran eksen teoremi (SAT) · ışın–şekil kesişimi · geniş ve dar aşama
hazırSlaytlar ▶ - G4
Görünürlük ve Işık visibility & field of view
Işın dökümü · 2B görüş çokgeni · gölge dökümü · savaş sisi · BSP ağacı
hazırSlaytlar ▶ - G5
Fizik Simülasyonunun Temeli integration & constraints
Euler, yarı-örtük Euler, Verlet · sabit zaman adımı · kısıtlar (ip, kumaş) · çarpışma tepkisi
hazırSlaytlar ▶ - G6
Eğriler ve Ara Değerleme curves & easing
Lerp’ten Bézier’e · Catmull-Rom · yumuşatma (easing) · sabit hızla eğri üzerinde hareket
hazırSlaytlar ▶ - G7
Ağ Senkronizasyonu netcode
Yetkili sunucu · ara değerleme · istemci tahmini ve uzlaştırma · gecikme telafisi · eşzamanlı simülasyon ve geri sarma
hazırSlaytlar ▶ - G8
Geri İzleme: Envanter ve Bulmacalar backtracking
Seç-dene-geri al · N vezir · ızgara envanterde otomatik yerleştirme · sudoku · Sokoban çözücü ve geri al · en değerli yük
hazırSlaytlar ▶ - G9
Kamera Algoritmaları game cameras
Dünya–ekran dönüşümü · 2B takip kuralları · ekran sarsıntısı · çok hedefi kadraja sığdırma · üçüncü şahıs kamera kolu
hazırSlaytlar ▶ - G10
Üçgenleme ve Voronoi triangulation & Voronoi
Kulak kesme · Delaunay üçgenlemesi (Bowyer–Watson) · Voronoi diyagramı ve harita üretimi · Lloyd ve Poisson disk · Delaunay + MST ile zindan
hazırSlaytlar ▶
- Y0
Oyun YZ’si İçin Hazırlık vectors & game loop
Ön koşul sunumu: vektörler, nokta/çapraz çarpım, açı, lerp, delta time, oyun döngüsü, Unity ve p5.js temelleri
hazırSlaytlar ▶ - Y1
Oyun Yapay Zekâsına Giriş introduction to game AI
Hafta 1 · ajan, NPC, algıla-düşün-davran, zorluk ayarı, oyun YZ’si ile akademik YZ farkı, Pac-Man hayaletleri
hazırSlaytlar ▶
- Y2
Sonlu Durum Makineleri finite state machines
Hafta 2 · durumlar, geçişler, hiyerarşik FSM, Unity Animator, kütüphaneler
hazırSlaytlar ▶ - Y3
Davranış Ağaçları behavior trees
Hafta 7 · selector, sequence, decorator, blackboard, Halo 2, Unity Behavior / Unreal BT
hazırSlaytlar ▶ - Y4
Fayda Tabanlı YZ utility AI
Hafta 8 · skorlama fonksiyonları, tepki eğrileri, The Sims, Infinite Axis
hazırSlaytlar ▶ - Y5
Hedef Yönelimli Eylem Planlama GOAP
Hafta 9 · ön koşullar ve etkiler, A* ile plan arama, F.E.A.R.
hazırSlaytlar ▶ - Y6
Oyun Ağaçları minimax, alpha-beta, MCTS
Ek konu · sıra tabanlı oyunlarda arama: satranç, Go, kart oyunları
hazırSlaytlar ▶
- Y7
Yönlendirme Davranışları steering behaviors
Hafta 5 · seek, flee, arrive, wander, pursuit, engelden kaçınma
hazırSlaytlar ▶ - Y8
A* ile Yol Bulma A* pathfinding
Hafta 3 · graf ve ızgara temsili, sezgisel fonksiyonlar, yol düzeltme, JPS
hazırSlaytlar ▶ - Y9
Unity NavMesh navigation meshes
Hafta 4 · agent, obstacle, off-mesh link, Recast & Detour
hazırSlaytlar ▶ - Y10
Grup Yapay Zekâsı flocking & formations
Hafta 10 · boids, sürü davranışı, formasyonlar, kalabalık simülasyonu
hazırSlaytlar ▶
- Y11
Algılama Sistemleri perception
Hafta 6 · görüş konisi, işitme, hafıza ve dikkat; Thief, Metal Gear, Alien: Isolation
hazırSlaytlar ▶ - Y12
Taktik Yapay Zekâ tactical AI
Hafta 11 · siper, kuşatma, mevzi seçimi, etki haritaları, EQS
hazırSlaytlar ▶
- Y13
Öğrenme Tabanlı Oyun YZ’si reinforcement learning & ML-Agents
Hafta 12 · pekiştirmeli öğrenme, Q-öğrenme, Unity ML-Agents, gerçek hikâyeler
hazırSlaytlar ▶ - Y14
Büyük Dil Modelleriyle NPC’ler LLM-driven NPCs
Ek konu · diyalog, hafıza, araç çağırma, Generative Agents, maliyet ve güvenlik
hazırSlaytlar ▶ - Y15
Prosedürel İçerik Üretimi procedural content generation
Ek konu · gürültü, hücresel otomat, WFC, L-sistemleri, zindanlar
hazırSlaytlar ▶ - Y16
Üretken YZ ve Oyunlar generative AI in games
Ek konu · görsel, ses, 3B, dünya modelleri; etik ve hukuk
hazırSlaytlar ▶ - Y17
Zorluk Ayarı ve Oyuncu Modelleme dynamic difficulty adjustment
Ek konu · AI Director, lastik bant etkisi, oyuncu analitiği
hazırSlaytlar ▶
- Y18
YZ Hata Ayıklama ve Performans debugging & optimization
Hafta 13 · görselleştirme, profil çıkarma, LOD AI, güncelleme sıklığı
hazırSlaytlar ▶ - Y19
Proje: YZ Modüllü Oyun Prototipi project guide
Hafta 14 · proje fikirleri, değerlendirme ölçütleri, sunum
hazırSlaytlar ▶