BBZ404 Oyun Programlama

5 AKTS - 2-2 Süre (T+U)- 8. Yarıyıl- 3 Yerel Kredi

Genel Bilgi

Birim FEN-EDEBİYAT FAKÜLTESİ
BİLGİSAYAR BİLİMLERİ PR.
Kod BBZ404
Ad Oyun Programlama
Dönem 2026-2027 Eğitim-Öğretim Yılı
Yarıyıl 8. Yarıyıl
Süre (T+U) 2-2 (T-U) (17 Hafta)
AKTS 5 AKTS
Yerel Kredi 3 Yerel Kredi
Eğitim Dil Türkçe
Seviye Belirsiz
Tür Normal
Etiket S Seçmeli
Öğretim Şekli Yüz Yüze Öğretim
Bilgi Paketi Koordinatörü Dr. Öğr. Üyesi Cevher ÖZDEN
Dersin Öğretim Elemanı
Güncel dönem ders programı henüz yapılmamıştır.


Dersin Amacı / Hedefi

Bu dersin amacı, öğrencilerin Unity oyun motoru ve C# programlama dili kullanarak 2D ve 3D oyun geliştirme süreçlerini kavramsal ve uygulamalı düzeyde öğrenmelerini; oyun döngüsü, sahne yönetimi, nesne-bileşen mimarisi, fizik, kullanıcı etkileşimi, animasyon, arayüz, temel oyun yapay zekâsı ve proje geliştirme süreçlerini bütünleşik bir oyun prototipi içinde uygulayabilmelerini sağlamaktır.

Dersin İçeriği

Oyun programlamaya giriş; oyun döngüsü, oyun nesnesi, bileşen tabanlı mimari ve Unity editörünün temel kullanımı; C# ile Unity scripting yapısı; 2D oyun geliştirme, sprite kullanımı, 2D fizik, çarpışma, tetikleyici olaylar, animasyon ve arayüz tasarımı; 3D oyun geliştirme, kamera, ışıklandırma, materyal, 3D fizik, karakter/nesne kontrolü ve etkileşim; prefab yapısı, sahne yönetimi, seviye tasarımı, skor ve oyun durumu yönetimi; temel oyun yapay zekâsı, ses ve görsel efektler; hata ayıklama, performans iyileştirme, oyun paketleme ve dönem projesi geliştirme.

Dersin Ön Koşulu

Ön koşul yoktur. Nesneye yönelik programlama, temel algoritma geliştirme ve C# programlama dili hakkında ön bilgi önerilir.

Kaynaklar

Ders notları, Unity resmi dokümantasyonu, Unity Learn materyalleri, Microsoft C# dokümantasyonu ve öğretim elemanı tarafından sağlanan örnek proje notları. Unity dokümantasyonu, Unity ile 2D ve 3D oyunlar, uygulamalar ve deneyimler geliştirmeye yönelik temel teknik başvuru kaynağıdır; Unity Learn ise oyun geliştirme ve gerçek zamanlı 3D becerileri için ücretsiz eğitim yolları ve öğreticiler sunar.

Notlar

Nystrom, R. Game Programming Patterns; Microsoft C# Guide; Unity Manual; Unity Learn beginner projects; Unity 2D Game Development Documentation; Unity Physics, Animation, UI ve Audio dokümantasyonları. C# için Microsoft dokümantasyonu, C# ve .NET platformuna başlamak için öğreticiler, kod örnekleri ve dil başvuru içerikleri sunar.


Dersin Öğrenme Çıktıları

Sıra Dersin Öğrenme Çıktıları
ÖÇ01 Oyun programlamanın temel kavramlarını, oyun döngüsünü ve oyun motorlarının yazılım geliştirme sürecindeki rolünü açıklar.
ÖÇ02 Unity editörü, sahne yapısı, GameObject ve bileşen tabanlı mimariyi kullanarak oyun nesneleri oluşturur.
ÖÇ03 C# ve Unity scripting yapısını kullanarak oyun nesnelerinin davranışlarını geliştirir.
ÖÇ04 Sprite, kamera, 2D fizik, çarpışma ve tetikleyici olayları kullanarak 2D oyun mekanikleri geliştirir.
ÖÇ05 2D oyunlarda animasyon, kullanıcı arayüzü, skor sistemi ve oyun durumu yönetimi bileşenlerini uygular.
ÖÇ06 Kamera, ışıklandırma, materyal, 3D fizik ve nesne kontrolü kullanarak 3D oyun sahneleri geliştirir.
ÖÇ07 Prefab, sahne yönetimi, seviye tasarımı ve etkileşimli oyun nesnelerini bütünleşik oyun yapısı içinde kullanır.
ÖÇ08 Basit oyun yapay zekâsı, ses, görsel efekt, hata ayıklama ve performans iyileştirme yaklaşımlarını uygular.
ÖÇ09 Belirlenen gereksinimlere uygun çalışan bir 2D veya 3D oyun prototipi geliştirir ve sunar.


Program Öğrenme Çıktıları ile İlişkisi

Sıra Tür Program Öğrenme Çıktıları Duzey
PÖÇ01 Bilgi - Kuramsal, Olgusal Bilgisayar Bilimleri temel kavramları, algoritmalar ve veri yapıları hakkında geniş bir bilgi yelpazesi kazandırır. 3
PÖÇ02 Bilgi - Kuramsal, Olgusal Yazılım geliştirme, programlama dilleri ve veritabanı yönetimi gibi temel bilgisayar konularını öğrenir. 3
PÖÇ03 Bilgi - Kuramsal, Olgusal Veri bilimi, yapay zeka ve makine öğrenimi gibi ileri düzey bilgisayar alanlarını anlar. 3
PÖÇ04 Bilgi - Kuramsal, Olgusal Bilgisayar ağları, siber güvenlik ve veritabanı tasarımı gibi konularda bilgi edinir. 2
PÖÇ05 Beceriler - Bilişsel, Uygulamalı Algoritmaları tasarlama, uygulama ve analiz etme becerilerini geliştirir. 3
PÖÇ06 Beceriler - Bilişsel, Uygulamalı Farklı programlama dillerini etkili bir şekilde kullanabilme yeteneği kazanır 3
PÖÇ07 Beceriler - Bilişsel, Uygulamalı Veri analizi, veritabanı yönetimi ve büyük veri işleme becerilerini öğrenir. 2
PÖÇ08 Beceriler - Bilişsel, Uygulamalı Yazılım geliştirme projelerinde çalışarak pratik deneyim kazanır. 3
PÖÇ09 Yetkinlikler - Bağımsız Çalışabilme ve Sorumluluk Alabilme Yetkinliği Ekip içinde işbirliği yapma ve iletişim becerilerini güçlendirir.
PÖÇ10 Yetkinlikler - Alana Özgü Yetkinlik Teknolojik yeniliklere açık bir zihniyet kazandırır.
PÖÇ11 Yetkinlikler - Öğrenme Yetkinliği Sürekli öğrenme ve kendini geliştirme yetkinliğini teşvik eder.
PÖÇ12 Yetkinlikler - İletişim ve Sosyal Yetkinlik Karmaşık sorunları çözme yeteneği geliştirir. 3


Haftalık Akış

Hafta Konu Ön Hazırlık Yöntemler
1 Oyun programlamaya giriş; oyun döngüsü, oyun motorları, Unity editörü, sahne, GameObject ve Component mantığı Unity kurulumu ve arayüz incelemesi Öğretim Yöntemleri:
Anlatım, Gösterip Yaptırma
2 C# ile Unity scripting: MonoBehaviour, Start, Update, değişkenler, metotlar, prefab mantığı ve temel kod organizasyonu Temel C# sözdizimi tekrarı Öğretim Yöntemleri:
Gösterip Yaptırma, Anlatım
3 2D oyun geliştirmeye giriş: sprite kullanımı, kamera ayarları, input işlemleri ve karakter hareketi Sprite ve 2D sahne örneklerini inceleme Öğretim Yöntemleri:
Anlatım, Gösterip Yaptırma
4 2D fizik: Rigidbody2D, Collider2D, çarpışma, trigger olayları, zıplama ve platform mekaniği Unity 2D fizik bileşenlerini inceleme Öğretim Yöntemleri:
Alıştırma ve Uygulama, Gösterip Yaptırma, Anlatım
5 2D seviye tasarımı: Tilemap kullanımı, sahne düzeni, engel, düşman ve toplanabilir nesne yerleşimi Tilemap ve seviye tasarımı örneklerini inceleme Öğretim Yöntemleri:
Anlatım, Gösterip Yaptırma, Proje Temelli Öğrenme
6 2D animasyon: Animator, karakter durumları, basit düşman davranışı ve oyun hissinin geliştirilmesi Animator penceresi ve animasyon örneklerini inceleme Öğretim Yöntemleri:
Anlatım, Gösterip Yaptırma, Proje Temelli Öğrenme
7 2D oyun arayüzü: skor, can, süre, menü, oyun durumu, kazanma ve kaybetme koşulları Unity UI bileşenlerini inceleme Öğretim Yöntemleri:
Anlatım, Gösterip Yaptırma, Proje Temelli Öğrenme
8 Ara Sınavlar Konu tekrarı Ölçme Yöntemleri:
Yazılı Sınav
9 3D oyun geliştirmeye giriş: koordinat sistemi, kamera, ışık, materyal, 3D sahne yapısı ve temel nesne kullanımı 3D sahne, kamera ve ışık örneklerini inceleme Öğretim Yöntemleri:
Anlatım, Gösterip Yaptırma, Proje Temelli Öğrenme
10 3D hareket ve kamera kontrolü: karakter/nesne hareketi, first-person veya third-person kontrol yaklaşımları 3D hareket ve kamera kontrolü örneklerini inceleme Öğretim Yöntemleri:
Anlatım, Gösterip Yaptırma, Proje Temelli Öğrenme
11 3D fizik ve etkileşim: Rigidbody, Collider, raycasting, tetikleyici olaylar ve etkileşimli nesneler Rigidbody, Collider ve raycasting kavramlarını inceleme Öğretim Yöntemleri:
Anlatım, Gösterip Yaptırma, Proje Temelli Öğrenme
12 3D seviye tasarımı: prefab kullanımı, sahne organizasyonu, toplanabilir nesneler, engeller ve oyun hedefleri Prefab ve sahne organizasyonu örneklerini inceleme Öğretim Yöntemleri:
Anlatım, Gösterip Yaptırma, Proje Temelli Öğrenme
13 Temel oyun yapay zekâsı: devriye, takip, kaçınma, hedef seçme, basit karar kuralları ve NavMesh’e giriş Basit düşman davranışı ve NavMesh örneklerini inceleme Öğretim Yöntemleri:
Anlatım, Gösterip Yaptırma, Proje Temelli Öğrenme
14 Ses, görsel efekt, hata ayıklama, performans iyileştirme, güvenli kodlama ve oyun kalitesinin artırılması Ses, efekt ve profiler araçlarını inceleme Öğretim Yöntemleri:
Anlatım, Gösterip Yaptırma, Proje Temelli Öğrenme
15 Oyun paketleme, build alma, dönem projesi sunumları, kod savunması ve genel değerlendirme Proje dosyalarını ve sunumu hazırlama Öğretim Yöntemleri:
Gösterip Yaptırma, Anlatım, Proje Temelli Öğrenme
16 Yarıyıl Sonu Sınavları Final projesi sunumları Ölçme Yöntemleri:
Proje / Tasarım
17 Yarıyıl Sonu Sınavları Genel tekrar Ölçme Yöntemleri:
Yazılı Sınav


Öğrenci İş Yükü - AKTS

Çalışmalar Sayısı Süresi (Saat) İş Yükü (Saat)
Ders ile İlgili Çalışmalar
Ders (Sınav haftaları dahil değildir) 14 4 56
Sınıf Dışı Ders Çalışma (Ön çalışma, pekiştirme) 14 4 56
Değerlendirmeler ile İlgili Çalışmalar
Ödev, Proje, Diğer 5 2 10
Ara Sınavlar (Yazılı, Sözlü, vs.) 1 3 3
Yarıyıl/Yıl Sonu/Final Sınavı 1 5 5
Toplam İş Yükü (Saat) 130
Toplam İş Yükü / 25 (s) 5,20
AKTS 5 AKTS

Güncelleme Zamanı: 06.05.2026 03:44