1. İki ve üç boyutlu bilgisayar grafiklerinin temel kavramlarını, matematik ve yazılım altyapısını öğrenmek; üç boyutlu düşünme yeteneği kazanmak.
2. Günümüzde çok kullanılan grafik API’lerini kullanabilme yeteneği kazanmak. Projelerinde iki ve üç boyutlu grafikler içeren birer ürün yani grafik yazılımı (eğitim/simülasyon yazılımı veya oyun) geliştirebilmek.
3. Hızlı ve kaliteli animasyon ve grafiklerin oluşturulmasında gerekli veri yapılarını etkin ve doğru bir şekilde tasarlayabilme ve kullanabilme yeteneğini kazanmak.
4. Bilgisayar grafikleri alanında gelişen araştırma konularını takip edebilir duruma gelmek; Bu konuda kısa seminerler hazırlayarak sunum yapabilmek.
Amaç
Temel dönüşümlerden gerçekçi kaplama tekniklerine kadar üç boyutlu ve vektörel grafikler ağırlıklı olarak bilgisayar grafiklerindeki temel kavramları öğretmek.
Öğrencilere, verilen projelerle iki ve OpenGL gibi üç boyutlu grafik API'lerini ve kullanıcı arayüzlerini etkin kullanabilme yeteneğini kazandırmak.
Hızlı ve kaliteli animasyon ve grafiklerin oluşturulmasında gerekli veri yapılarını etkin ve doğru bir şekilde tasarlayabilme ve kullanabilme yeteneğini kazandırmak.
Öğrencileri 2 & 3 boyutlu oyun programlama ile tanıştırmak.
Dersin İçeriği
1. Bilgisayar Grafiklerine Giriş : Bilgisayar Grafikleri Kavramı. Bilgisayar Grafiklerinin Önemi. Grafik Yazılımları. Uygulama ve İş Alanları.
2. İki ve Üç Boyutlu Dönüşümler : Taşıma, Döndürme, Ölçeklendirme. Bileşik Dönüşümler. Dönüşüm Örnekleri.
3. İki Boyutlu Arayüzlerin Temelleri (GDI+ ve Java 2D)
4. Üç Boyutlu Grafik API’leri (OpenGL) : OpenGL Nedir? OpenGL’in Kurulumu. OpenGL Komut ve Sabit Yapısı. Koordinat Sistemi. Üç Boyutlu Görüntüleme. İki ve Üç Boyutlu Şekillerin Çizdirilmesi. Etkileşim (Fare ve Klavye ile). Animasyon. Matris Modları.
5. Aydınlatma ve Güneş Sistemi Oluşturulması. İki ve Üç Boyutlu Grafik Arayüzleri ile, Eğitim, Oyun ve Simülasyon Yazılımlarının Geliştirilmesi.
6. Spline Eğrileri, Görünür Yüzeyleri Belirleme Yöntemleri. Aydınlatma Modelleri ve Yüzey Kaplama Yöntemleri. Işın İzleme. Bilgisayar Animasyonu.
Önşartlar
C/C++/Java/C# dillerinden herhangi birisinde yazılım geliştirmiş olmak.
Ders Kitabı
§ Hearn, D. and Baker, M.P., Carithers, W., 2010, Computer Graphics with Open GL (4th Edition), Prentice-Hall, USA, 888 p (Textbook).
Başvuru Kitapları
Edward Angel, 2009, Interactive Computer Graphics: A Top-Down Approach Using OpenGL (5/E), Addison Wesley, 828 p.
Burger, P. and Gillies, D., 1989, Interactive Computer Graphics (Functional, Procedural and Device Level Methods), Addison Wesley, Great Britain, 504 p.
Foley, J.D., Dam, A., Feiner, S.K. ve Hughes, J.F., 1996, Computer Graphics Principles and Practice 2nd edition in C, AW, 1175 p.