DİJİTAL OYUN TASARIMI
Lisans TYYÇ: 6. Düzey QF-EHEA: 1. Düzey EQF-LLL: 6. Düzey

Ders Tanıtım Bilgileri

Ders Kodu Ders Adı Yarıyıl Teorik Pratik Kredi AKTS
GAD2006 Gelişmiş Oyun Programlama Bahar 2 2 3 5
Bu dersin açılması ilgili bölüm tarafından yarıyıl başında belirlenir

Temel Bilgiler

Öğretim Dili: En
Dersin Türü: Departmental Elective
Dersin Seviyesi: LİSANS
Dersin Veriliş Şekli: Yüz yüze
Dersin Koordinatörü: Doç. Dr. GÜVEN ÇATAK
Dersin Amacı: Bu dersin temel amacı, öğrencilerin etkileşimli deneyimler ve/veya gerçek zamanlı eğitim simülasyonu, görselleştirme ve medya/eğlence gibi kurumsal alanlar yaratmak için endüstri lideri bir profesyonel geliştirme aracı/editörü olan Unreal Engine 4'ü kullanarak oyun programlama/geliştirme kavramlarını daha derinlemesine anlamalarını sağlamaktır.

Öğrenme Çıktıları

Bu dersi başarıyla tamamlayabilen öğrenciler;
1.Nesne yönelimli yaklaşım, karmaşık veri yapıları ve yaygın olarak kullanılan algoritmalar gibi oyun programlama kavramları hakkında kapsamlı bir anlayışa sahip olacak,
2.Motorun ve bileşenlerinin kullanımını daha iyi anlayacak,
3. Editör ile daha iyi bir yetkinlik elde edecek,
4. Motorun nasıl çalıştığını ve kişinin projesinin verimli bir şekilde çalışmasına yardımcı olmak için nasıl çalıştığını daha fazla öğrenecek,
5. Sorunları çözmek ve hataları ayıklamak için araçlar ve stratejiler hakkında bilgi edineceklerdir.

Dersin İçeriği

Bu ders oyun geliştirme üzerine hem teorik hem de pratik uygulamalar içermektedir. Öğrencilerin dersler sırasında öğretilen noktalarla kendi oyunlarını inşa etmeleri gereken bir final projesi olacaktır. Daha önceki Oyun Geliştirme I/II derslerinde anlatılan Unreal Engine 4'ün temel yönleri her derste daha da açıklanacak ve detaylandırılacaktır. Öğrencilerin planlar ve destekli C++ ile becerilerini göstermek ve geliştirmek için atanmış projeleri tamamlamaları beklenecektir.

Öğrenme Metodları: Ders, Uygulama, Bireysel Çalışma, Proje, Problem Çözme

Haftalık Ayrıntılı Ders İçeriği

Hafta Konu Ön Hazırlık
1) Giriş ve Komut Dosyası Özeti
2) Yerel Programlamaya Giriş Laboratuvar Çalışması #1
3) Destekli C++ ile Aktör Kodlamanın Temelleri Laboratuvar Çalışması #2
4) İçerik İş Akış Planları ve Animasyon Planları Laboratuvar Çalışması #3
5) Bir Oyun Prototipinin Dökümü Ödev #1 Tanıtımı - Laboratuvar Çalışması #4
6) UE'de Yapay Zeka Geliştirme Bölüm #1 Laboratuvar Çalışması #5
7) UE'de Yapay Zeka Geliştirme Bölüm #2 Ödev #2 Tanıtımı - Laboratuvar Çalışması #6
8) Fiziğe Giriş Laboratuvar çalışması #7
9) Çoklu Oyuncu Bölüm #1 Laboratuvar çalışması #8
10) Çoklu Oyuncu Bölüm #2 SVN kurulumu - Laboratuvar Çalışması #9
11) UMG Final Projesi Mülakatı #1
12) Optimizasyon ve Hata Ayıklama Final Projesi Mülakatı #2
13) Hazırlama ve Yayınlama Final Projesi Mülakatı #3
14) Final Projesi Değerlendirmesi

Kaynaklar

Ders Notları: Unreal Engine Instructor Guide - https://www.unrealengine.com/en-US/educators/resources
Diğer Kaynaklar: Akenine-Möller, T., Haines, E., & Hoffman, N. (2018). Real-time rendering (4th ed.). A K Peters/CRC Press. Lengyel, E. (2020). Mathematics for 3D game programming and computer graphics (4th ed.). Cengage Learning.

Değerlendirme Sistemi

Yarıyıl İçi Çalışmaları Aktivite Sayısı Katkı Payı
Devam % 0
Laboratuar 9 % 30
Uygulama % 0
Arazi Çalışması % 0
Derse Özgü Staj % 0
Küçük Sınavlar % 0
Ödev % 0
Sunum % 0
Projeler % 0
Seminer % 0
Ara Sınavlar 2 % 30
Ara Juri % 0
Final 1 % 40
Rapor Teslimi % 0
Juri % 0
Bütünleme % 0
Toplam % 100
YARIYIL İÇİ ÇALIŞMALARININ BAŞARI NOTU KATKISI % 60
YARIYIL SONU ÇALIŞMALARININ BAŞARI NOTUNA KATKISI % 40
Toplam % 100

AKTS / İş Yükü Tablosu

Aktiviteler Aktivite Sayısı Süre (Saat) İş Yükü
Ders Saati 14 4 56
Laboratuvar 9 4 36
Uygulama 0 0 0
Derse Özgü Staj 0 0 0
Arazi Çalışması 0 0 0
Sınıf Dışı Ders Çalışması 5 5 25
Sunum / Seminer 0 0 0
Proje 0 0 0
Ödevler 0 0 0
Küçük Sınavlar 0 0 0
Ara Juri 0 0 0
Ara Sınavlar 1 3 3
Rapor Teslimi 0 0 0
Juri 3 3 9
Final 1 4 4
Toplam İş Yükü 133

Program ve Öğrenme Kazanımları İlişkisi

Etkisi Yok 1 En Düşük 2 Düşük 3 Orta 4 Yüksek 5 En Yüksek
           
Dersin Program Kazanımlarına Etkisi Katkı Payı
1) İletişim alanında oyunun kavramsal olarak önemini anlayıp, oyuncuyu merkeze alan tasarım odaklı uygulama yapabilme yeteneği kazandırmak.
2) Çeşitli perspektiflerden bilgi ve fikirleri analiz ederek, sentezlemek ve değerlendirebilmek.
3) Oyun türlerini, etkileşim ve anlatım biçimlerini oluşturan temel öğeleri analiz edebilme ve başarılı bir oyun oluşturmak için nasıl kullanıldığını anlamak.
4) Oyun tasarımı teorilerini ve metodolojilerini anlamak ve oyun geliştirirken kullanmak; hedef kitleye göre eğlenceli, çekici, içine alan ve öğretici oyunlar yapmak.
5) Oyun geliştirmede kullanılan teknolojileri ve bilişim temellerini anlamak; oyun motorlarının kullanımına hakim olmak.
6) Oyunlarda 2B ve 3B karakterler ile animasyonlarının yaratılması sürecine hakim olmak.
7) Oyuncu deneyimini anlama, ölçme teorileri ile metodolojilerini kavramak ve oyun üretimi sürecinde bu bilgilerden faydalanmak.
8) Oyunların tasarım yoluyla nasıl bir fikri, bir mesajı ve bir duyguyu ilettiğini kavramak oyun üretimi sürecinde bu bilgilerden faydalanmak.
9) Oyun tasarımı ve geliştirme sürecini, gerekli dokümantasyonu yaparak yönetebilmek; bu dokümantasyon ile oyun üretim bandını takip edebilmek.
10) Oyun geliştirme takımlarının yapısını ve çalışma biçimlerini; takım üyelerinin sorumluluklarını ve işbirliği yöntemlerini kavramak ve pratikte uygulayabilmek.
11) Geliştirme dışında bir oyunun yayın sürecini endüstri standartlarında kavrayabilmek ve pratiğe dökebilmek.
12) Bir video oyununu oyunculara, yatırımcılara ve yayıncılara tanıtabilmek; ortaya çıkan oyun fikrinin veya oyunun özelliklerini ve potansiyel ticari kazanımlarını etkin bir şekilde iletebilmek adına pazarlama konusuna hakim olmak.