T.C. Ýstanbul Ticaret Üniversitesi
Bilgisayar Mühendisliði Bölümü
Bilgisayar Grafiklerine Giriþ (Introduction to Computer Graphics)
Dersi Veren: Þadi Evren ÞEKER (Yük. Müh.)
Dersin Web Sitesi: www.sadievrenseker.com/graf
Dersin Öðrenci Ýletiþim Sitesi : www.sesders.com
Email Adresi:graf [at] sesders.com
Dersin Amacý:
Bu dersin amacý 3 boyutlu bilgisayar grafiklerine tatbiki ve nazari bir giriþ yapmak ve derste uygulama yapabilecek edinimleri kazandýrmaktýr. Dersi alan öðrencilerin bu ders sayesinde 3 boyutlu etkileþimli grafik uygulamalarýný yapabilecek seviyeye gelmeleri beklenmektedir. Derste iþlenecek konular kabaca grafik modelleri ve sistemleri, geometrik gösterimler, transformasyonlar (þekil deðiþtirme), grafik programlama, giriþ çýkýþ ve etkileþim özellikleri, görüntüleme teknikleri (viewing and projections), aydýnlatma ve renklendirme, gölgelendirme ve kaplama teknikleri, animasyonlar ve nesne yönelimli modelleme olarak sayýlabilir.

Yukarýdaki görüntü bilgisayar grafikleri ile ilgili çok sayýda yazý içeren http://collgran.wordpress.com/ adresindeki blog’dan alýnmýþtýr.
Olasý Ders Ýçeriði
· Bilgisayar Grafiklerine giriþ ve temel kavramlar
· Basit bilgisayar grafiði algoritmalarý ve þekil çizme yöntemleri
· OpenGL (Lütfen aþaðýdaki örnek kodlara bakýnýz)
· Çokgenler (polygons)
· Kullanýcý Ýletiþim (User Interaction)
· Þekil Deðiþtirmeler (Transformations)
· Geometrik nesneler (Geometric objects )
· Ýzdüþüm (projection) ve yansýmalar
· Kamera, Perspektif ve görüntü iþlemleri
· Fog ve Backface uygulamalarý (Visible Surface Detection)
· Gölgelendirme (Shading)
· 3B model inþasý (Building 3D models)
· Hafýzalama ve Desen giydirme (Buffers & Texture mapping)
· Birleþtirme ve bütünleme (Compositing and blending)
· API uygulama örnekleri (API implementation examples)
· Hiyerarþik ve nesne yönelimli modelleme (Hierachical and object-oriented modeling)
Örnek OpenGL kodlarý
Sýnýf Çalýþmalarý
Classwork 1 Çözümü (öðle) [line_sayisi isimli deðiþkeni deðiþtirerek deneyebilirsiniz]
Örnek kullanýcý iletiþim programý
Örnek transformation matrix kullanan (Birden fazla kere push eden) kod. Daha detaylý bilgi için Çoklu þekil deðiþtirmeler baþlýklý yazýyý okumanýzý tavsiye ederim.
Kamera Dolaþmasýna ilave olarak Fog ve Backface uygulamasý
Kaplama (Texture) ve aydýnlatma örneði Iþýk kaynaðýný tam olarak anlayamayanlar Bu örneðe bakabilirler
Ödevler
| Sabah Grubu Ödev Güncellemesi | Öðle Grubu Ödev Güncellemesi |
| 3. Ödev ve açýklamasý Robot Kol Odevi Rubiks Cube Odevi ( basitçe bir rubiks küpünü ekranda gösterin ve istediðiniz kullanýcý kontrolleri ile rubiks küp üstünde yapýlan iþlemleri kullanýcýnýn yapmasýna izin verin. (Kullanýcý rubiks küp üstüne yapýlamayan iþlemleri sizin kodunuzda da yapamayacak) |
3. Ödev ve açýklamasý Robot Kol Odevi Rubiks Cube Odevi ( basitçe bir rubiks küpünü ekranda gösterin ve istediðiniz kullanýcý kontrolleri ile rubiks küp üstünde yapýlan iþlemleri kullanýcýnýn yapmasýna izin verin. (Kullanýcý rubiks küp üstüne yapýlamayan iþlemleri sizin kodunuzda da yapamayacak) |
| Tarih 02 Aralýk 2008 olarak deðiþtirilmiþ, teslimler vizeden sonraki haftaya ertelenmiþtir. | |
Dersin Projesi
Kaynaklar
Derste aþaðýdaki kitap esas alýnacaktýr:
Edward Angel, Interactive Computer Graphics : A Top-Down Approach With
OpenGL (4th Edition), Addison-Wesley 2006.
Ayrýca,
• OpenGL Programming Guide, The Official Guide to Learning OpenGL, Woo,
Neider, Davis, and Shreiner
• 3D computer graphics, Alan Watt, Addison-Wesley, 2000.
• Computer Graphics with Java, G.W. Rowe, 2001.
Kitaplarý da ders içeriðine uygun kaynak kitaplardýr.
Bunun dýþýnda OpenGL için The OpenGL Programming Guide - The Redbook Kitabýný öðrencilerin okumasý önemle tavsiye edilmektedir
Uygulama Gereksinimleri
Dersin tatbiki kýsmý için OpenGL üzerinde kod geliþtirilecektir. Kod geliþtirme ortamý olarak DEV C++ kullanýlacaktýr. Ayrýca bazý örnekler için Visual Studio ve JAVA üzerinde de kod geliþtirme ile ilgili bilgi verilecektir.
Bu ortamýn kurlumu ve kullanýmý konusunda derslerde bilgi verilecektir ancak öðrenciler farklý ortam ve dilleri ve geliþtirme ortamlarýný kullanabilirler. Bu farklý ortam ve dillerin ve ortamlarýn ödev veya proje gibi not karþýlýðý olan teslimler sýrasýnda kullanýlmasý için ise önceden izin alýnmasý gerekmektedir.
Ders saati ve yeri
Salý günleri saat 10-13.00 arasý ve yine Salý günleri 14-17.00 arasý 224 numaralý derslik.
Dersin deðerlendirmesi:
· Ödevler %10
· Quizler&Classwork %10
· Arasýnav %20
· Dönem Projesi %20
· Final %40
Uyulmasý gereken önemli kurallar:
1. Öðrencilerin dersin web sitesini takip etme zorunluluðu vardýr. Ders ile ilgili duyurular, ders notlarý ve gerekli olan materyaller bu site üzerinden saðlanacaktýr.
2. Öðrencilerin ödev, proje ve sunum teslimi ve bu teslimler sýrasýnda gereken saatlerin belirlenmesi gibi dersin iþletilmesine iliþkin iþlemler, dersin öðrenci iletiþim sitesi üzerinden yapýlacaktýr. Her öðrenci derse geldiði ilk günden itibaren bu site üzerinden bir kullanýcý oluþturmak ve ders boyunca yapacaðý teslimleri bu site üzerinden yapmak zorundadýr.
3. Teslim edilen çalýþmalar veya öðrencinin baþarý notu ile sonuçlanacak herhangi bir çalýþmada dersi alan diðer öðrenciler veya internet üzerindeki herhangi bir kaynak veya basýlý herhangi bir kaynak ile akademik kurallar çerçevesinde uygun atýf verilmediði taktirde teslim edilen bu çalýþma kopya kapsamýnda deðerlendirmeye alýnacak ve ilgili disiplin maddesi iþletilecektir.