Bilgisayar Oyunları ve Simulasyon (COMPE 376) Ders Detayları Ders Adı Ders Kodu Dönemi Ders Uygulama Saati Saati Laboratuar Kredi AKTS Saati Bilgisayar Oyunları ve Simulasyon COMPE 376 Her İkisi 2 2 0 3 5 Ön Koşul Ders(ler)i Dersin Dili Dersin Türü Dersin Seviyesi Ders Verilme Şekli Dersin Öğrenme ve Öğretme Teknikleri İngilizce Teknik Seçmeli Dersler Lisans Yüz Yüze Anlatım Dersin Koordinatörü
Dersin Öğretmen(ler)i Dersin Asistanı Dersin Amacı Dersin Eğitim Çıktıları Dersin İçeriği Öğrencilerin obje-tabanlı yazılım mühendisliği problemlerini anlamalarını sağlamak ve öğrencilerin hızlı geliştirilebilen, görsel tasarım özellikleri yüksek, oyun projelerinin geliştirilmesi için takım projelerini gerçekleştirmelerini sağlamak. Bu dersi başarıyla tamamlayabilen öğrenciler; Bilgisayar oyunlarını tasarlamak ve geliştirmek Simulasyon, akıllı sistemler ve insan bilgisayar etkileşimi gibi bilgisayar bilimleri konularını oyun tasarımı ve geliştirimine uygulayabilmek Oyun Teorisinin Bilgisayar oyunlarının geliştirilmesine uyarlanması İnsan bilgisayar etkileşimi alanındaki kullanılabilirlik prensiplerinin uygulanması Bilgisayar bilimleri ve temel bilimler ile ilgili temel kavramları oyun geliştirme konusunda uygulayabilmek Oyunların tarihçesi ve oyunlardaki mevcut yaklaşımlar. Tasarım ve geliştirmedeki temel kavramlar. Ticari oyunların değerlendirilmesi, temel oyun tasarım konuları. Fizik ve matematik kurallarının oyunlarda kullanılması. Temel bilgisayar grafik kavramlarının oyunlarda kullanılması. İnsan bilgisayar etkileşimi konularının oyunlarda kullanılması. Haftalık Konular ve İlgili Ön Hazırlık Çalışmaları HaftaKonular Ön Hazırlık
1 Oyunların tarihçesi ve mevcut yaklaşımlar 2 Oyun tasarımında ve geliştirilmesinde temel yaklaşımlar Other Sources: 4 Chapter 19 (main text) 3 Ticari oyunların değerlendirilmesi Other Sources: 1 Chapter 4 4 Temel Oyun tasarımı konuları Chapter 15, 16, 17 5 Simulasyon oluşturma Other Sources: 3 Chapter 1-3 6 Akıllı sistemlerin oyunlarda kullanımı 7 Fizik ve Matematiğin Oyunlarda Kullanımı 8 Temel bilgisayar grafik kavramlarının oyunlarda kullanımı 9 İnsan bilgisayar etkileşimi konularının oyunlarda kullanımı Other Sources: 8 Chapter 7 Other Sources: 3 Chapter 6-8 Other Sources: 1 Chapter 6 10 Oyun Motorları Other Sources: 7 11 Animasyonlar Chapter 6 12 Oyunlarda kullanılan algoritmalar ve teknikler 13 Oyunlarda kullanılan algoritmalar ve teknikler 14 Oyunlarda kullanılan algoritmalar ve teknikler 15 Gözden geçirme 16 Gözden geçirme Chapter 8 Chapter 9 Chapter 11 Kaynaklar Ders Kitabı: 1. Software Engineering and Computer Games, Rudy Rucker, Addison Wesley, Pearson Education, 2003.
Diğer 1. Game Design Perspectives François Dominic Laramee, Charles River Media, Kaynaklar: 2002. 2. Game Architecture and Design, Andrew Rollings, Dave Morris. Coriolis, 2000. 3. 3D Games, real-time rendering and software technology, Watt, A., Policarpo, F., Addison Wisley, 2001. 4. http://historicgames.com/gamestimeline.html 5. http://nehe.gamedev.net/ 6. http://www.opengl.org/documentation/specs/version1.1/glspec1.1/node1.html 7. http://en.wikipedia.org/wiki/list_of_game_engines 8. AI for game developers, Bourg, D., Seemann, G. OReilly, 2004 Değerlendirme Sistemi Çalışmalar Sayı Katkı Payı Devam/Katılım - - Laboratuar 1 10 Uygulama - - Alan Çalışması - - Derse Özgü Staj - - Küçük Sınavlar/Stüdyo Kritiği - - Ödevler 2 10 Sunum - - Projeler 1 30 Seminer - - Ara Sınavlar/Ara Juri 1 25 Genel Sınav/Final Juri 1 25 Toplam 6 100
Yarıyıl İçi Çalışmalarının Başarı Notu Katkısı Yarıyıl Sonu Çalışmalarının Başarı Notuna Katkısı 65 35 Toplam 100 Ders Kategorisi Temel Meslek Dersleri Uzmanlık/Alan Dersleri Destek Dersleri İletişim ve Yönetim Becerileri Dersleri Aktarılabilir Beceri Dersleri Dersin Öğrenim Çıktılarının Program Yeterlilikleri ile İlişkisi # Program Yeterlilikleri / Çıktıları Katkı Düzeyi 1 2 3 4 5
1 Matematik, fen bilimleri ve yazılım mühendisliği disiplinine özgü konularda yeterli bilgi birikimi; bu alanlardaki kuramsal ve uygulamalı bilgileri, karmaşık mühendislik problemlerinde kullanabilme becerisi. 2 Karmaşık mühendislik problemlerini saptama, tanımlama, formüle etme ve çözme becerisi; bu amaçla uygun analiz ve modelleme yöntemlerini seçme ve uygulama becerisi. 3 Karmaşık bir sistemi, süreci, cihazı veya ürünü gerçekçi kısıtlar ve koşullar altında, belirli gereksinimleri karşılayacak şekilde tasarlama becerisi; bu amaçla modern tasarım yöntemlerini uygulama becerisi. 4 Yazılım mühendisliği uygulamalarında karşılaşılan karmaşık problemlerin analizi ve çözümü için gerekli olan modern teknik ve araçları geliştirme, seçme ve kullanma becerisi; bilişim teknolojilerini etkin bir şekilde kullanma becerisi. 5 Karmaşık mühendislik problemlerinin veya yazılım mühendisliği disiplinine özgü araştırma konularının incelenmesi için deney tasarlama, deney yapma, veri toplama, sonuçları analiz etme ve yorumlama becerisi. 6 Disiplin içi ve çok disiplinli takımlarda etkin biçimde çalışabilme becerisi; bireysel çalışma becerisi. 7 Türkçe sözlü ve yazılı etkin iletişim kurma becerisi; en az bir yabancı dil bilgisi; etkin rapor yazma ve yazılı raporları anlama, tasarım ve üretim raporları hazırlayabilme, etkin sunum yapabilme, açık ve anlaşılır talimat verme ve alma becerisi. 8 Yaşam boyu öğrenmenin gerekliliği bilinci; bilgiye erişebilme, bilim ve teknolojideki gelişmeleri izleme ve kendini sürekli yenileme becerisi. 9 Etik ilkelerine uygun davranma, mesleki ve etik sorumluluk bilinci; yazılılm mühendisliği uygulamalarında kullanılan standartlar hakkında bilgi.
10 Proje yönetimi, risk yönetimi ve değişiklik yönetimi gibi, iş hayatındaki uygulamalar hakkında bilgi; girişimcilik, yenilikçilik hakkında farkındalık; sürdürülebilir kalkınma hakkında bilgi. 11 Yazılım mühendisliği uygulamalarının evrensel ve toplumsal boyutlarda sağlık, çevre ve güvenlik üzerindeki etkileri ve çağın mühendislik alanına yansıyan sorunları hakkında bilgi; mühendislik çözümlerinin hukuksal sonuçları konusunda farkındalık 12 Yazılım alternatiflerini irdeleyerek bilgisayar tabanlı sistemlerin modellenmesi ve tasarımında, algoritma prensiplerini, matematiksel temelleri ve bilgisayar bilimleri teorisini uygulama becerisi. 13 Yazılım sistemlerinin analiz, tasarım, uygulama, doğrulama, geçerleme ve bakım süreçlerini uygulayarak geliştirilmesinde mühendislik yaklaşımlarını uygulama becerisi. ECTS/İş Yükü Tablosu Aktiviteler Sayı Süresi (Saat) Toplam İş Yükü Ders saati (Sınav haftası dahildir: 16 x toplam ders saati) 16 2 32 Laboratuar 14 2 28 Uygulama Derse Özgü Staj Alan Çalışması Sınıf Dışı Ders Çalışma Süresi Sunum/Seminer Hazırlama 16 2 32
Projeler 16 2 32 Ödevler 2 2 4 Küçük Sınavlar/Stüdyo Kritiği Ara Sınavlara/Ara Juriye Hazırlanma Süresi Genel Sınava/Genel Juriye Hazırlanma Süresi 1 8 8 1 10 10 Toplam İş Yükü 146