Arama

Ekran kartının yapısı nasıldır?

Güncelleme: 13 Ocak 2012 Gösterim: 10.928 Cevap: 3
Ziyaretçi - avatarı
Ziyaretçi
Ziyaretçi
22 Aralık 2008       Mesaj #1
Ziyaretçi - avatarı
Ziyaretçi
GORUNTUSU VE AÇIKLAMASI
Sponsorlu Bağlantılar
tHeBruTaLiTyOfHeLL - avatarı
tHeBruTaLiTyOfHeLL
Ziyaretçi
23 Aralık 2008       Mesaj #2
tHeBruTaLiTyOfHeLL - avatarı
Ziyaretçi
Alıntı
Başka Forumdan Alıntı adlı kullanıcıdan alıntı

Ekran Kartı Ne Görev Yapar, Nasıl Kullanılır?

Sponsorlu Bağlantılar
Bilgisayarda ekranlarının (monitör) çalışması için, makinenin içinde bir ekran kartı olmalıdır. ekran kartları, diğer bir adıyla grafik kartları, bilgisayar monitöründeki her türlü yazı, grafik, resim, film gibi şekillerin oluşturulmasında işlemci ile monitör arasında görev yapan adaptörlerdir. Yani ekran kartları bir bilgisayarın CPU’ sunda işlenen verileri monitöre anlaşılır bir şekilde iletme amacıyla kullanılır. Bilgisayarın yaptığı işlerin sonucu, ekranımızda görüntülenir. Bilgisayar tanıtılırken, elde edilen işlemlerin sonuçlarının alındığı ortam veya cihazlara çıkış ünitesi denilir. Bu itibarla, monitörlerde, yani çıkış araçlarında görülen sonuçlar, ekran kartından gelen bilgilerdir.

Ekran Kartının Çeşitleri
Ekran kartları farklı çeşitlerde ve kalitelerde üretildiklerinden, bunlarla ilgili standartlar geliştirilmiştir. Başlangıcı itibariyle bu standartlar aşağıda anlatılmaktadır.

MDA(monochromeDisplayAdapter):
720*350 Piksel çözünürlükte çalışan tek renkli bu ekran kartları grafik gösteremez. Kullanıcı ekranda sadece harfleri, sayıları, özel karakterleri ve ASCII karakter özel grafik simgelerini görebilir. Bilgisayarın ilk yıllarında kullanılan bu kartların çalışma frekansı 14.8Khz/50Hz yatay/düşeydir. Sarı- siyah veya yeşil-beyaz görünümde bir text alana sahiptir. Bu tip kartlar artık kullanılmamaktadır.
CGA (Color Graphics Adapter):
IBM’in ilk renkli grafik kartıdır.Bu kartlar çok düşük bir renk sayısı ve yok denecek kadar az renk derinliğine sahip kartlardır. 16 renk gösterir ve yazı, grafik ve renk olmak üzere üç ayrı modda çalışır. Bu kartların çalışma frekansı 15.7Khz/50Hz yatay/düşeydir Şu anda kullanılmamaktadır.
EGA (Enhanced Graphics Adapter):
CGA’nın geliştirilmiş bir sürümüdür. Fakat CGA kartlarına göre çok gelişmiş
bir yapıdadırlar. 640x350 çözünürlük ve 256 KB belleğe sahiptir. 64 renk gösterir. Şu anda kullanılmamaktadır.

Hercules mono Graphics
Tek renkli olmasına rağmen, renkleri grinin tonlarıyla gösterebilir ve grafikleri de destekler 720x348 piksellik çözünürlüğü ile CGA’ dan daha iyi görüntü gösterir. Şu andaKullanılmamaktadır

VGA (Video Graphics Array)
Yukarıda sayılan ekran kartları artık kullanılmamaktadır. Günümüzün Grafik standardı VGA kartıdır. VGA bütün görüntü modlarıyla uyumludur. VGA kart teknolojisi sayısal sinyalleri analog sinyallere dönüştürme yoluyla yukarıdaki sayılan ekran kartlarından tamamen ayrılır. İlk çıkan VGA kartlar 256 renk gösterirken şu anda64 bit veri yolu üzerinde 8 byte ve daha üzeri VRAM kullanan çok yüksek hızlı ekran kartlarıdır. VGA ekran kartıyla birlikte renkli monitörler kullanılmaya başlandı.
VGA kartının geliştirilmişidir. 800x600 çözünürlükte ve 256 renk gösterir. 4 ****byte’a kadar video belleği vardır.

SUPER VGA
Bu kartların önceleri ISA ve VESA veri yolu olanları imal edilmekteydi. Şimdi PCI VE AGP veri yolu kartlar üretilmektedir.

39so

Grafik İşlemcisi
Güncel kartlar için grafik işlemcisi görüntü hesaplamalarını yapmak için ekran kartının üzerine oturtulmuş bir CPU`dur dersek yanlış olmaz. Son zamanlarda grafik işlemcileri yapı ve karmaşıklık bakımından CPU`ları solladılar ve işlev bakımından da görüntü üzerine yoğunlaşmış bir CPU niteliğine kavuştular. CPU`ya neredeyse hiç yük bindirmeden üç boyutlu işlemcileri tek başlarına tamamlayabiliyorlar artık. Bu yüzden de güncel grafik işlemcileri GPU (Graphics Processing Unit - Grafik İşlemci Birimi) adıyla anılıyorlar.
Görüntü Belleği
Ekran kartının üzerinde bulunur ve görüntü hesaplamalarıyla ilgili veriler burada saklanır. Sisteminizdeki ana bellek gibi çalışır, yalnız burada bu belleğin muhat tabı CPU değil görüntü işlemcisidir. Önceleri ekran kartlarının ayrı bellekleri yoktu fakat görüntü işlemcileri hızlanıp geliştikçe ekran kartları sistemden yavaş yavaş bağımsızlıklarını ilan etmeye başladılar. Bellek miktarı kadar ekran kartının sıkıştırma algoritmalarıyla bu belleği ne kadar verimli kullanabildiği de önemlidir.
Ramdac
Monitörlerdeki analog sinyallerden bahsetmiştik, işte RAMDAC (RAM Dijital-to-Analog Converter) görüntü belleğindeki verileri analog RGB (Red Green Blue, monitörde renklerin bu üç renkten türetildiğini yazmıştık) sinyallerine çevirerek monitör çıkışına verir. Monitörde kullanılan üç ana renk için de birer RAMDAC ünitesi vardır ve bunlar her saniye belirli bir sayıda görüntü belleğini tarayıp oradaki verileri analog sinyallere dönüştürürler. RAMDAC`in bu işlemi ne kadar hızlı yapabildiği ekran tazeleme hızını belirler. Bu hız Hz cinsinden belirtilir ve ekrandaki görüntünün saniyede kaç kere yenilendiğini gösterir. Örneğin monitörünüz 60 Hz`te çalışıyorsa gördüğünüz görüntü saniyede 60 kere yenilenir. Ekran tazeleme hızını mümkün olduğu kadar 85 Hz`in altına çekmemenizi öneririm, daha düşük tazeleme hızları göz sağlığınız için zararlı olabilir. Tabi bu gözünüzün ne kadar hassas olduğuna da bağlı, bazı gözler 75 ve 85 Hz arasındaki farkı hissedemezken bazıları ilk bakışta bunu anlayabilir. RAMDAC`in iç yapısı ve özellikleri hangi çözünürlükte ne kadar rengin gösterilebileceğini de belirler.

LCD ekranlar yapıları gereği dijtal olduklarından RAMDAC`ten değil de direk görüntü belleğinden görüntü bilgisini alıp kullanabilirler. Bunun için DVI (Digital Video Interface) adında özel bir bağlantı kullanırlar.
BIOS
Ekran kartlarının da birer BIOS'ları vardır. Burada ekran kartının çalışma parametreleri, temel sistem fontları kayıtlıdır. Ayrıca bu BIOS sistem açılırken ekran kartına ve onun belleğine de küçük bir test yapar.
Ekran Kartının Çalışma Prensipleri
Ekran kartları bu üç bileşenin teknolojilerine göre performans gösterirler ve bilgisayarın işlemcisine büyük oranda yardımcı olurlar. Çünkü diğer donanımlardan farklı olarak kendi üzerlerinde de işlemler yapan işlemciler vardır. Ancak yapılan işlem yalnızca CPU’ dan gelen görüntünün ekrana gönderilmesini kapsar. Yani CPU’nun yapması gereken işi üzerine alamaz ve bilgisayarın işlemcisi sinyali görmedikçe ekran kartının yapabileceği çok fazla bir şey yoktur. Öyleyse sistem performansına ne gibi katkıları olabilir? Bunu anlamak için ekran kartlarının gelişiminden bahsetmek gerekir.
İlk VGA kartlar oldukça hantal bir teknolojiye sahiptirler. CPU’ dan aldıkları bilgileri doğrudan ekrana gönderirlerdi ve ek olarak herhangi bir görev üstlenmezlerdi. CPU ekrana gönderilecek olan resmin tüm hesaplamalarını yapmak zorundaydı.
ekrana gönderilecek olan her imaj, büyük oranda bir veriydi ve CPU, RAM’ dan aldığı bu büyük veri yığınını ekran kartına gönderiyordu. Windows işletim sistemleri piyasaya çıkınca grafik görüntüler daha da arttı ve bu da CPU’ ların yetersiz kalmalarına neden oldu. Daha fazla grafiksel görüntü ekrana yansıtılıyordu ve bu sebeple, CPU zamanının büyük kısmını ekrana gönderilecek bilgiyi oluşturmak için harcıyordu. 1024x768 piksel ebatlarında ve 16 bit renk derinliğindeki bir görüntü yaklaşık olarak 1.5 MB yer tutuyor. Sürekli değişken bir ekranda aktarılan bilginin yoğunluğu CPU’yu çok yoruyordu. Tabii bütün bu bilgiler ise çok yavaş olan ISA veri yolundan gönderiliyordu. Bunun sonucu olarak hızlandırıcı kartlar geliştirilmeye başlandı.
Veri yolu olarak ise PCI kullanılır oldu. Hızlandırıcılı ekran kartlarının çıkması ile birlikte görüntü işlemlerinde büyük değişiklikler oldu.Artık ekran kartları çizgiler, pencereler ve daha değişik resimler çizebiliyorlardı. CPU ise tüm Bitmap resmi ekran kartına göndermek zorunda kalmıyordu. Yalnızca bir önceki ekran ile bir sonraki ekran arasında ne gibi değişiklikler olduğunu ekran kartına gönderiyordu. ekran kartı ise bu bilgilere dayanarak monitör üzerindeki görüntüyü değiştiriyordu. İşlemler bu şekilde yapılmaya başlanınca, CPU üzerindeki işlemlerin miktarı gittikçe hafifledi.
Günümüzde ekran kartları PCI veya AGP veri yolunu kullanıyorlar ve CPU’dan aldıkları bilgileri çok hızlı bir şekilde ekrana yansıtıyorlar. Bu da CPU’nun rahatlamasına yol açıyor. Ancak burada artık tüm iş ekran kartına kalıyor. Ekran kartının gücü ve hafızası ekrana yansıtılan görüntünün hızını ve kalitesini belirliyor. Dolayısıyla daha önceden saydığımız ekran kartının 3 unsuru grafik kalitesinde büyük önem taşıyor.
Örneğin PCI veri yolundan gelen grafik bilgileri (piksek) ekran tazeleme (refresh) belleğine yazılır. Burada grafik ile text oluşumu olarak ayrılırlar.
Textleri (yazılar) grafik kartındaki karakter jeneratörü işler. Grafik elemanlar ise grafik hızlandırıcı chip’e gönderilir. Grafik hızlandırıcı chip grafiği oluşturan tüm veri noktalarını tek tek hesaplar ve ekran tazeleme belleğine yazdırır.
Bellekteki bilgilerin ekrana yazdırılmasından RAMDAC (Random Access Memory Digital AnalogConventer)sorumludur.
Grafik kartı CRT kontroller yardımıyla ekran tazeleme belleğini adresler ve her bilgiyi tek tek okur. Resmin okunacak nokta sayısı ekran kartının o anki çözünürlüğüne bağlıdır.
Örneğin 800*600 çözünürlük 480.000 noktadan oluşur. ekrandaki bu resmin saniyedeki tazeleme hızı aynı zamanda resmin video bellekten bir saniyedeki okuma adedidir.
Eğer bu hız 70 Hertzin altında ise interlaced olarak adlandırılır. :Bu hız ergonomik değildir ve uzun süre bilgisayar başında çalışıyorsanız yorucu bir etkisi olmaktadır. ekran tazeleme hızı 70Hz’in ne kadar yukarısına çıkarsa o kadar iyidir.
ekran kartına ait bir pikselin renk derinliği 1-24 bit arasındaki bir renk bilgisiyle açıklanır. RAMDAC bu bilgiyi üzerinde taşıdığı renk paletiyle birleştirerek rengi son haline getirir.
Örneğin 256 renk modunda bir piksel 8 bitlik bir veri içerir ve renk paletindeki toplam kayıt (register) değeri 256’dır. Yani renk paleti aktif grafik moduna göre
RAMDAC’ yüklenir ve aktif grafik modu depiştiğnde uygun grafik modu tekrar yüklenir.
RAM: ekran kartları standart olarak 1, 2, 4 MB ve daha yüksek hafızalara sahiptirler. Size ne kadar gerekli? Bu sorunun cevabı aslında sisteminizi hangi amaçla kullandığınıza bağlı olarak değişiyor. Ekran kartınızda bulunan RAM miktarı sayesinde video cip’i daha büyük Bitmap dosyalarını hafızaya atabiliyor. Bu da daha yüksek çözünürlüklerde ve renk modunda çalışabilmenizi sağlıyor.

Çözünürlük
Çözünürlüğün görüntü kalitesini belirleyen en önemli faktör olduğunu söyleyebiliriz. Çözünürlük, ekrandaki görüntünün kaç pikselden oluşacağını belirler ve yatay ve dikey piksel cinsinden belirtilir (800x600,1024x768 gibi). Çözünürlük arttıkça görüntü birbirinden bağımsız olarak kontrol edilebilen daha çok pikselden oluşur ve görüntü kalitesi de yükselir.
Windows 95 ile hayatımıza giren "scaleable screen objects" teknolojisi sayesinde çözünürlük arttıkça ekrandaki kullanılabilir alan da artar. Windows ekranında çözünürlük ne olursa ekrandaki nesneleri oluşturan piksel sayısı değişmez. Çözünürlük arttıkça pikseller de küçüleceği için nesneler daha az yer kaplar ve masaüstündeki kullanılabilir alan çözünürlükle doğru orantılı olarak artar.
Çözünürlük arttıkça yükselen görüntü kalitesinin de bir bedeli var tabi ki: Çözünürlük yükseldikçe kontrol edilmesi gereken piksel sayısı ve dolayısıyla da gerekli işlem gücü, ayrıca bu piksellerin bilgilerini tutmak için gerekli bellek miktarıyla onların transferi için gereken bellek bant genişliği artar. Bu yüzden de performans düşer. Kullanmak istediğiniz çözünürlüğü hem ekran kartınız desteklemeli, hem de monitörünüz fiziksel olarak gerekli sayıda pikseli ekranda oluşturabilmeli.
RAM ve Çözünürlük

Çözünürlük 16 bit’te Bitmap büyüklüğü Gerekli RAM Miktarı

640x480 614,000 byte 1 MB

800x600 960,000 byte 1,5 MB

1024x768 1.572.864 byte 2 MB

1152x864 1.990.656 byte 2,5 MB

1280x1024 2.621.440 byte 3 MB

1600x1200 3.840.000 byte 4 MB




“RAM ve Çözünürlük” isimli yukarıdaki tablo, 16 bit renk modunda çalışırken kaç MB hafızaya ihtiyaç duyduğunuzu görebilirsiniz. 16 bit renk modu en popüler modlardan biridir. Eğer kullandığınız programlar özel olarak 24 veya 32 bit renk modunda çalıştırmayı gerektirmiyorsa, mümkün olduğunca 16 bit’te çalışmaya özen göstermek gerekir.
Eğer büyük bir monitöre sahipseniz muhtemelen yüksek çözünürlükte çalışmanız gerekecektir. Bunun için daha yüksek RAM’ e ihtiyaç duyacaksınız. Ancak işin bir de ilginç bir püf noktası var. RAM’ların hepsi bir hücreden oluşur. Eğer 1024x768 piksel çözünürlükte ve 16 bit renk derinliğinde çalışacaksanız, 2 MB ekran kartı sizin için yeterli olacaktır. Ancak her görüntünün tazelenmesinde RAM boşaltılacak ve tekrar doldurulacaktır. Bunun yerine 4 MB’lık bir ekran kartı kullanacak olursanız, aynı çözünürlükte ekranda bir görüntü varken halen 2 MB’lık RAM boş olacaktır. Diğer görüntü gönderilirken, bu boş olan 2 MB kullanılırken bir sonraki işlem için diğer 2 MB boşaltılacaktır. Bu grafik performansını artıracaktır
Renk Derinliği
Piksellerin kendilerine ait renklerinden bahsetmiştik, piksellerin alabileceği renkler kırmızı, yeşil ve maviden türetilir. İşte renk derinliği bu renklerin miktarını belirler. Renk derinliği ne kadar artarsa her pikselin alabileceği renk sayısı artar, renkler gerçeğe daha yakın olur. Renk derinliği bit cinsinden belirtilir, işlemcilerle ilgili yazımızda bitlere kısaca değinmiştik. Her bit 1 ve 0 olarak iki değer alabilir. 8 bit kullanıldığında bu bitlerden 28 = 256 kombinasyon üretilir. Aynı şekilde 8 bit renk derinliğinde de her piksel için 256 renk kullanılabilir. İnsan gözünü aldatıp ekrandaki görüntüyü gerçek gibi göstermek için kullanılan üç rengin de (kırmızı, yeşil ve mavi) 256`şar tonu gereklidir, bu da renk başına 8 bitten 24 bit yapar. Bu moda True Colour (Gerçek Renk) adı verilir. Fakat çoğu güncel ekran kartı görüntü belleğini kullanma yöntemleri yüzünden pikselleri bu modda göstermek için 32 bite ihtiyaç duyarlar. Kalan 8 bit alpha kanalı (piksellerin saydamlık bilgisini tutar) için kullanılır.
High Colour (16 bit) modunda ise yeşil için altı ve maviyle kırmızı için de beşer bit kullanılır. Yeşil için 64, maviyle kırmızı için de renk başına 32 farklı yoğunluk vardır bu modda. Renk kalitesinde 32 bite göre çok az fark olsa da piksel başına 4 yerine 2 byte (8 bit = 1 byte) hafıza gerekeceğinden 32 bite göre performans avantajı sağlar.
256 renk (8 bit) modu ilk duyuşta size renk fakiri izlenimi verebilir fakat renk paleti denen bir yöntemle bu 8 bit olabilecek en verimli şekilde kullanılarak renk kalitesi biraz arttırılır. Renk paletinin mantığı şöyledir: Kullanılacak 256 renk gerçek renk modundaki 3 bytelık renklerden seçilir ve bu renklerden bir renk paleti oluşturulur. Her program ilgili paletteki 256 renkten istediğini seçip kullanabilir. Böylece örneğin kırmızı için iki, mavi ve yeşil için de üçer bit kullanılarak elde edilen renklerden daha canlı renkler elde edilebilir ve elimizdeki 8 bit en verimli şekilde kullanılmış olur. En çok kullanılan üç renk modunu tanıdık, peki ekran kartımız üretemediği renklere ne yapıyor? Sistemimizin 256 renge ayarlı olduğunu fakat 16 bitlik bir resim dosyası açtığımızı varsayalım. Bu durumda hazırdaki renklerin değişik kombinasyonları kullanılarak üretilemeyen renge yakın bir renk oluşturulur ve bu renk üretilmesi gereken rengin yerine gösterilir. Buna dithering denir. Tabi ki dithering yöntemiyle elde edilmiş bir resmin kalitesi orijinal resme göre göre çok daha düşüktür

.

Alıntı
Başka Bir Forum'dan Alıntı adlı kullanıcıdan alıntı


Ekran Kartları Nasıl Çalışır?
Hemen hepimizin bilgisayar almaya kalktığımızda ilk seçtğimiz parçalardan biri de ekran kartıdır ama sadece işlemci, bellek ve sabit diske bakarak bilgisayar seçtiğimiz günlerin üzerinden o kadar da uzun yıllar geçmedi. Şimdi yeri geldiğinde bir bilgisayar parası verebildiğimiz ekran kartlarına biraz yakından bakalım.
Ekran kartının yapısı nasıldır?
Standart bir ekran kartının görünüşü.

Ekrandaki Görüntü Nasıl Oluşur?
Monitörünüze yeteri kadar yakından bakarsanız görüntünün çok küçük noktalardan oluştuğunu görürsünüz. İşte bu noktlara görüntünün en küçük birimi olan piksel diyoruz. Her pikselin kendine ait renk ve yoğunluk bilgileri vardır. Daha genel bir tanımla piksel için ekranın bağımsız olarak kontrol edilebilir en küçük parçası olduğunu söyleyebiliriz. İşte bu piksellerden binlercesi bir araya gelerek ekrandaki görüntüyü oluşturuyor.
Çözünürlük
Çözünürlüğün görüntü kalitesini belirleyen en önemli faktör olduğunu söyleyebiliriz. Çözünürlük, ekrandaki görüntünün kaç pikselden oluşacağını belirler ve yatay ve dikey piksel cinsinden belirtilir (800x600,1024x768 gibi). Çözünürlük arttıkça görüntü birbirinden bağımsız olarak kontrol edilebilen daha çok pikselden oluşur ve görüntü kalitesi de yükselir.
Windows 95 ile hayatımıza giren "scaleable screen objects" teknolojisi sayesinde çözünürlük arttıkça ekrandaki kullanılabilir alan da artar. Windows ekranında çözünürlük ne olursa ekrandaki nesneleri oluşturan piksel sayısı değişmez. Çözünürlük arttıkça pikseller de küçüleceği için nesneler daha az yer kaplar ve masaüstündeki kullanılabilir alan çözünürlükle doğru orantılı olarak artar.
Çözünürlük arttıkça yükselen görüntü kalitesinin de bir bedeli var tabi ki: Çözünürlük yüseldikçe kontrol edilmesi gereken piksel sayısı ve dolayısıyla da gerekli işlem gücü, ayrıca bu piksellerin bilgilerini tutmak için gerekli bellek miktarıyla onların transferi için gereken bellek bant genişliği artar. Bu yüzden de performans düşer. Kullanmak istediğiniz çözünürlüğü hem ekran kartınız desteklemeli, hem de monitörünüz fiziksel olarak gerekli sayıda pikseli ekranda oluşturabilmeli.
Renk Derinliği
Piksellerin kendilerine ait renklerinden bahsetmiştik, piksellerin alabileceği renkler kırmızı, yeşil ve maviden türetilir. İşte renk derinliği bu renklerin miktarını belirler. Renk derinliği ne kadar artarsa her pikselin alabileceği renk sayısı artar, renkler gerçeğe daha yakın olur.
Renk derinliği bit cinsinden belirtilir, işlemcilerle ilgili yazımızda bitlere kısaca değinmiştik. Her bit 1 ve 0 olarak iki değer alabilir. 8 bit kullanıldığında bu bitlerden 28 = 256 kombinasyon üretilir. Aynı şekilde 8 bit renk derinliğinde de her piksel için 256 renk kullanılabilir.
İnsan gözünü aldatıp ekrandaki görüntüyü gerçek gibi göstermek için kullanılan üç rengin de (kırmızı, yeşil ve mavi) 256`şar tonu gereklidir, bu da renk başına 8 bitten 24 bit yapar. Bu moda True Colour (Gerçek Renk) adı verilir. Fakat çoğu güncel ekran kartı görüntü belleğini kullanma yöntemleri yüzünden pikselleri bu modda göstermek için 32 bite ihtiyaç duyarlar. Kalan 8 bit alpha kanalı (piksellerin saydamlık bilgisini tutar) için kullanılır.
High Colour (16 bit) modunda ise yeşil için altı ve maviyle kırmızı için de beşer bit kullanılır. Yeşil için 64, maviyle kırmızı için de renk başına 32 farklı yoğunluk vardır bu modda. Renk kalitesinde 32 bite göre çok az fark olsa da piksel başına 4 yerine 2 byte (8 bit = 1 byte) hafıza gerekeceğinden 32 bite göre performans avantajı sağlar.
256 renk (8 bit) modu ilk duyuşta size renk fakiri izlenimi verebilir fakat renk paleti denen bir yöntemle bu 8 bit olabilecek en verimli şekilde kullanılarak renk kalitesi biraz arttırılır. Renk paletinin mantığı söyledir: Kullanılacak 256 renk gerçek renk modundaki 3 bytelık renklerden seçilir ve bu renklerden bir renk paleti oluşturulur. Her program ilgili paletteki 256 renkten istediğini seçip kullanabilir. Böylece örneğin kırmızı için iki, mavi ve yeşil için de üçer bit kullanılarak elde edilen renklerden daha canlı renkler elde edilebilir ve elimizdeki 8 bit en verimli şekilde kullanılmış olur.
En çok kullanılan üç renk modunu tanıdık, peki ekran kartımız üretemediği renklere ne yapıyor? Sistemimizin 256 renge ayarlı olduğunu fakat 16 bitlik bir resim dosyası açtığımızı varsayalım. Bu durumda hazırdaki renklerin değişik kombinasyonları kullanılarak üretilemeyen renge yakın bir renk oluşturulur ve bu renk üretilmesi gereken rengin yerine gösterilir. Buna dithering denir. Tabi ki dithering yöntemiyle elde edilmiş bir resmin kalitesi orjinal resme göre göre çok daha düşüktür.
Görüntü Arayüzleri
Önceleri ekrandaki piksellerin adreslenmesi için bir standart olmadığından üreticiler de programcılar da (dolayısıyla son kullanıcılar da) sorun yaşıyorlardı. Bu sorunu çözmek için üreticiler VESA (Video Electronics Standarts Association) adında video protokollerini standartlaştırmayı amaçlayan bir konsorsiyum oluşturdular. VGA ile beraber geriye uyumluluk da sağlanarak çözünürlük sürekli arttı. VGA öncesindekiler de dahil standartlara kısaca bir göz atalım:
  • MDA (Hercules): Monochrome Display Adapter, 1981 yılındaki ilk IBM PC`deki ekran kartı. Ekranda yerleri önceden belirlenmiş olan 256 özel karakteri gösterebilyordu sadece. 80 kolona 25 satırlık bir ekranda gösterebildiği yazı karakterlerinin boyutları da önceden belirlenmişti ve grafik görüntülemek mümkün değildi. IBM, bu kartlara ekstra slot masrafından kurtulmak için bir de yazıcı bağlantı noktası eklemişti.
  • CGA: Bu arayüzde ekran kartları RGB monitörlerle çalışıp ekranı piksel piksel kontrol edebiliyorlardı. 320x240 çözünürlüğündeki bir ekranda 16 renk üretilebiliyor fakat aynı anda bunlardan sadece 4 tanesi kullanılabiliyordu. 640x200`lük bir yüksek çözünürlük modu vardır ama bu modda sadece 2 renk gösterilebiliyordu. Görüntü kalitesi kötü olsa bile en azından grafik çizilebiliyordu. Zaman zaman piksellerin gidip gelmesi ve ekranda rastgele noktalar oluşmasına rağmen bu standart çok uzun bir süre kullanıldı.
  • EGA: CGA`dan birkaç yıl sonra sırada Enhanced Graphics Adapter vardı. CGA ile VGA arasındaki bu kartlar 1984`ten IBM`in ilk PS/2 sistemlerini ürettiği 1987`ye kadar kullanıldı. EGA monitörle kullanıldığında üretilen 64 renkten aynı anda 16 tanesi kullanılabiliyordu. Yüksek çözünürlük ve monochrome modları da vardı ,ayrıca eski CGA ve monochrome monitörlerle de uyumluydu. Bu kartlardaki bir yenilik de bellek genişletme kartlarıydı. 64K bellekle satılan bu kartları bellek genişletme kartıyla 128K`ya upgrade etmek mümkündü. Ek olarak satılan IBM bellek kitiyle bir 128K daha eklemek de mümkündü. Sonraları bu kartlar standart olarak 256K bellekle üretilmeye başlandı.
  • PGA: IBM`in 1984`te piyasaya sürdüğü Professional Graphics Array adını hitap ettiği pazardan alıyordu. 5000 dolara satılıyor ve entegre 8088 işlemcisiyle mühendislik ugulamarıyla diğer alanlardaki bilimsel çalışmalar için 640x480 çözünürlükte 256 renkte saniyede 60 kare hızla 3 boyutlu animasyonları çalıştırabiliyordu. Fiyatı yayılmasını engelledi ve fazla kullanılamadan piyasadan kalktı.
  • MCGA: 1987`de piyasaya sürülen MultiColor Graphics Array standardındaki ekran kartları teknolojide büyük bir sıçrama yaparak VGA ve SVGA`ya kadar gelen bir gelişimi başlattı. IBM`in Model 25 ve Model 30 PS/2 PC`lerinde anakarta entegre halde geliyordu. Uygun bir IBM monitörle kullanıldığında bütün CGA modlarını da destekliyordu fakat TTL yerine analog sinyallerle çalıştığından daha önceki standartlarla uyumlu değildi. TTL (Transistor – to –Transistor Logic) mantığında voltaj seviyesine göre transistörler açılıp kapanır ve sadece 1 ve 0 değerleri oluşur bunu sonucunda. Analog sinyallerdeyse bu kısıtlama yoktur. Analog sinyalleşmenin de sağladığı avantajla MCGA arayüzüyle 256 renk üretilebiliyordu. Bu arayüzle beraber 9 pinlik monitör bağlantısından halen kullanılmakta olan 15 pinlik bağlantıya geçildi.
  • 8514/A: IBM`in MCA veriyoluyla kullanmak için ortaya attığı bu arayüz zamanla yüksek tazeleme hızlarına çıktı. VGA ile aynı monitörü kullanmasına rağmen VGA`dan farklı çalışıyordu. Bilgisayar ekran kartına ne yapması gerektiğini söylüyordu ama ama ekran kartı onu nasıl yapacağını kendisi ayarlıyordu. Örneğin ekrana bir çember çizileceği zaman VGA`daki gibi işlemci görüntüyü piksel piksel hesaplayıp ekran kartına yollamıyordu. Bunun yerine ekran kartına çember çizileceğini söylüyordu ve ekran kartı da çemberi çizmek için piksel hesaplarını kendisi yapabiliyordu. Bu yüksek seviyeli komutlar standart VGA ile komutlarından çok farklıydı. Bu standart çıktığı zamanın daha ilerisindeydi ve VGA`dan daha kaliteli görüntü sonuyordu ama fazla destek bulamadığı için yayılma imkanı bulamadan piyasan kalktı. IBM üretimi durdurup aynı daha daha fazla renk gösterebilen XGA üzerine yoğunlaştı. XGA 1990`da piyasaya çıktıktan sınra MicroChannelplatformları için standart oldu.
  • VGA: 2 Nisan 1987`de, MCGA ve 8514/A ile aynı günde IBM tarafından tanıtılan Video Graphics Array aradan sıyrılarak masaüstü için standart olmayı başardı. IBM yeni bilgisayarlarında bu chipleri anakarta entegre ederken eski bilgisayarlarda da kullanılabilmeleri için 8 bitlik bir arayüzle anakarta bağlanabilen bir ayrı bir kart halinde de geliştirdi. IBM üretimi durdurduktan sonra bile değişik firmalar üretime devam ettiler. VGA ile 262144 renklik bir paletten seçilen 256 renk aynı anda kullanılabiliyordu. 640x480`lik standart çözünürlükte aynı anda 16 renk gösterilebiliyordu. Ayrıca 64 renk gri tonlama ile siyah beyaz monitörlerde renk siğmilasyonu yapabiliyordu.
  • SVGA: Super VGA ilk SVGA kartlardan güncel kartlara kadar çok fazla kartı kapsayan geniş bir standart. SVGA ile birlikte ekran kartları için aygıt sürücüsü kavramı ortaya çıktı. Kartların yanında verilen sürücülerle ilşetim sistemleri kartların tüm özelliklerini kullanabiliyorlardı. SVGA ile milyonlarca renk değişik çözünürlüklerde gösterilebiliyor fakat bunun sınırları karta ve üreticiye bağlı. SVGA değişik şirketler tarafından kullanılan ortak bir kavram olduğundan başlarda eski standartlar gibi çok katı sınırları yoktu. Bunun üzerine VESA bir SVGA standardı belirledi. VESA BIOS Extension adında standart bir arayüz belirlendi ve bu sayede programcılar her kart için ayrı kod yazma zahmetinden kurtuldular. Üreticiler bu arayüzü benimsemek istemediler ve başlarda kartların yanında verilen ve her boot işleminden sonra çalıştırılan bir programla kartlarını bu BIOS uzantılarıyla uyumlu hale getirdiler fakat sonunda bunu kartların BIOS`larına entegre ettiler. SVGA ile 800x600 çözünürlüğe çıkıldı.

Ekran kartının yapısı nasıldır?
SVGA'dan sonra IBM XGA ile 1024x768 çözünürlüğe geçerken sonraki basamak olan 1280x1024`e de bir VESA standardı olan SXGA ile geçildi. Sonra da UXGA ile de 1600x1200 çöznürlüğe geçildi. Çözünürlükteki 4:3 oranı sadece SXGA ile bozuldu, bu standartta oran 5:4`tür.

En Temel Bileşenleriyle Bir Ekran Kartı
Ekran kartının yapısı nasıldır?
Bir ekran kartı temel olarak 3 bileşenden oluşur: Grafik işlemcisi, bellek ve RAMDAC.
  • Grafik İşlemcisi: Güncel kartlar için grafik işlemcisi görüntü hesaplamalarını yapmak için ekran kartının üzerine oturtulmuş bir CPU`dur dersek yanlış olmaz. Son zamanlarda grafik işlemcileri yapı ve karmaşıklık bakımından CPU`ları solladılar ve işlev bakımından da görüntü üzerine yoğunlaşmış bir CPU niteliğine kavuştular. CPU`ya neredeyse hiç yük bindirmeden üç boyutlu işlemcleri tek başlarına tamamlayabiliyorlar artık. Bu yüzden de güncel grafik işlemcileri GPU (Graphics Processing Unit - Grafik İşlemci Birimi) adıyla anılıyorlar.
  • Görüntü Belleği: Ekran kartının üzerinde bulunur ve görüntü hesaplamalarıyla ilgili veriler burada saklanır. Sisteminizdeki ana bellek gibi çalışır, yalnız burada bu belleğin muhattabı CPU değil görüntü işlemcisidir. Önceleri ekran kartlarının ayrı bellekleri yoktu fakat görüntü işlemcileri hızlanıp geliştikçe ekran kartları sistemden yavaş yavaş bağımsızlıklarını ilan etmeye başladılar. Bellek miktarı kadar ekran kartının sıkıştırma algoritmalarıyla bu belleği ne kadar verimli kullanabildiği de önemlidir.
  • RAMDAC: Monitörlerdeki analog sinyallerden bahsetmiştik, işte RAMDAC (RAM Dijital-to-Analog Converter) görüntü belleğindeki verileri analog RGB (Red Green Blue, monitörde renklerin bu üç renkten türetildiğini yazmıştık) sinyallerine çevirerek monitör çıkışına verir. Monitörde kullanılan üç ana renk için de birer RAMDAC ünitesi vardır ve bunlar her saniye belirli bir sayıda görüntü belleğini tarayıp oradaki verileri analog sinyallere dönüştürürler. RAMDAC`in bu işlemi ne kadar hızlı yapabildiği ekran tazeleme hızını belirler. Bu hız Hz cinsinden belirtilir ve ekrandaki görüntünün saniyede kaç kere yenilendiğini gösterir. Örneğin monitörünüz 60 Hz`te çalışıyorsa gördüğünüz görüntü saniyede 60 kere yenilenir. Ekran tazeleme hızını mümkün olduğu kadar 85 Hz`in altına çekmemenizi öneririm, daha düşük tazeleme hızları göz sağlığınız için zararlı olabilir. Tabi bu gözünüzün ne kadar hassas olduğuna da bağlı, bazı gözler 75 ve 85 Hz arasındaki farkı hissedemezken bazıları ilk bakışta bunu anlayabilir. RAMDAC`in iç yapısı ve özellikleri hangi çözünürlükte ne kadar rengin gösterilebileceğini de belirler.

    LCD ekranlar yapıları gereği dijtal olduklarından RAMDAC`ten değil de direk görüntü belleğinden görüntü bilgisini alıp kullanabilirler. Bunun için DVI (Digital Video Interface) adında özel bir bağlantı kullanırlar. Bu konuya ileride "Monitörler Nasıl Çalışır?" yazısında detaylı olarak değineceğiz.
  • BIOS: Ekran kartlarının da birer BIOS'ları vardır. Burada ekran kartının çalışma parametreleri, temel sistem fontları kayıtlıdır. Ayrıca bu BIOS sistem açılırken ekran kartına ve onun belleğine de küçük bir test yapar.

3. Boyuta Geçiyoruz...
Bazılarımız 3B uygulamalar için ekran kartlarına tomarla para döküyoruz. 3B bir görüntü 3 temel adımda oluşturulur:
  1. Sanal bir 3B ortam yaratılır
  2. Ekranda bu ortamın hangi bölümünün gösterileceğine karar verilir.
  3. Görüntüyü mümkün olduğu kadar gerçeğe yakın gösterebilmek için her pikselin nasıl görüneceği belirlenir.

Sanal bir 3B ortamı o sadece o ortamın bir resmi belirleyemez. Gerçek dünyadan küçük parçayı alarak konuyu açalım. Elimizi ve onun altında duran bir masayı düşünelim, bu bizim 3B ortamımız olsun. Elimizle dokunduğumuzda masanın sert olduğunu anlayabiliriz. Masaya elimizle vurduğumuz zaman da masa kırlımaz ya da elimiz masanın içinden geçemez. Bu ortamın ne kadar çok resmine bakarsak bakalım masanın sertliğini ve elimize vereceği tepkiyi sadece o resimlerle anlayamayız. Sanal 3B ortamlar da böyledir. Bu ortamlardaki nesneler sentetiktir, bütün özellikleri onlara yazılım yoluyla verilir. Programcılar sanal bir 3B dünya tasarlarken büyük bir özenle bütün bu detaylara dikkat ederler ve bu işler için özel araçlar kullanırlar.
Belirli bir zamanda oluşturulan bu 3B dünyanın ancak belirli bir bölümü ekranda gösterilir. Ekrandaki görüntü dünyanın nasıl tanımlandığına, sizin nereye gitmek istediğinize ve nereye baktığınıza göre değişir. Hangi yöne hareket ederseniz edin etrafınızdaki sanal dünya o an bulunduğunuz pozisyonu ve nereye baktığınızı değerlendirerek ekranda ne görmeniz gerektiğine karar verir. Bu farklı sahneler de kendi içlerinde tutarlı olmalıdır,örneğin bir nesne ona baktığınız her açıdan ve uzaklıktan aynı yükseklikteymiş hissi vermelidir. 3. adıma geçmeden önce sabit bir görüntünün nasıl oluşturulduğuna bakıp sonra da bir 3B görüntünün nasıl hareket kazandığına bakacağız.
Şekiller
3B nesneler ilk başta wireframe denen bir yapı ile oluşturulurlar. Şeklin iskeleti de diyebilceğimiz bu tel örgü en basit haliyle nesnenin şeklini belirler. Wireframe denen bu yapı için bir yüzey tanımlanması şarttır.
Ekran kartının yapısı nasıldır?
Bu el modeli 862 poligondan oluşuyor.
Ekran kartının yapısı nasıldır?
Aynı model 3444 poligonla gerçeğe çok daha yakın.

Yüzey Kaplamaları
Sanal bir 3B ortamda nesneleri elleme şansımız olmadığından onların hakkında sadece onlara bakarak fikir edinebiliriz. Bu yüzden sanal 3B ortamlarda nesnelerin dış görünüşleri çok önemlidir. Dış görünüşü şunlar belirler:
  • Renk: Nesnenin rengi.
  • Kaplama: Tel örgünün üzerine yapılan kaplamayla nesnenin yüzeyi düz, çizgili veya girintili çıkıntılı görünebilir.
  • Yansıma: Nesneye etkiyen ışığa ve etrafındaki diğer nesnelere göre cismin üzerinde yansımalar oluşturulur.

Bir nesneyi gerçek gibi göstermek için bu üç özellik de dengeli bir biçimde nesnenin değişik yüzeylerine uygulanmalıdır. Örneğin bir 3B ortamda bir klavyeyle bir masa ışığı aynı oranda yansıtmaz. Bu üç parametreyi değiştirerek nesnelere sert veya yumuşak hissi verilebilir.
Ekran kartının yapısı nasıldır?
Tel örgümüz, kaplanınca gerçek bir ele benzedi.


Lighting (Işıklandırma)
Karanlık bir odaya girdiğimizde ışığı açarız ve ışık kaynağından her yöne doğru yayılan ışık sayesinde odadaki bütün nesnelerin görüntüsü değişir. Bu ışığın odaya nasıl yayıldığını düşünmeyiz ama 3B grafiklerle uğraşanlar bunu düşünmek zorundalar. Tel örgüleri kaplayan kaplamalar (texturelar) bir yerden aydınlatılmalıdırlar. Ray tracing denilen bir yöntemle ışık ışınlarının alacağı yol çizilir ve bu ışınlar çarptıkları nesnelerden farklı yoğunluk ve açılarla yansır. Çoklu ışık kaynaklarını düşündüğünüzde bu hesaplamar oldukça karışık bir hal alabilir.
Işıklandırma cisme ağırlık ve katılık etkisi veririken en çok kullanılan iki efektte önemli rol oynar: Shading ve gölgeler. Shading, bir nesne üzerindeki parlayan ışığın bir tarafında diğer tarafından daha güçlü olmasıdır. Ancak shading sayesinde bir top yuvarlak veya buruşmuş bir battaniye yumuşak görünebilir. Parlaklıktaki bu fark nesnelere derinlik, uzunluk ve genişlik kazandırır.

Ekran kartının yapısı nasıldır?
Işıklandırma, nesneye sadece derinlik katmakla kalmayıp onu üzerinde bulunduğu yüzeye de bağıyor.

Katı nesneler üzerlerinden ışık parladığında gölgeler yaratırlar. Gözlerimiz gerçek nesneleri görmeye alışık olduğundan ekranda gölge gördüğümüz zaman matematiksel olarak üretilmiş şekillere değil de bir pencereden gerçek bir dünyaya bakıyormuş gibi hissederiz.

Perspektif
Perspektif kulağa biraz teknik gelebilir ama günlük yaşamımızda çok sık gördüğümüz bir etkidir. Bir yolun kenarında durup ufuk çizgisine doğru baktığınızda yolun iki kenarı da birleşiyormuş gibi görünür. Yol kenarında ağaçlar varsa da bu ağaçlar birleşme noktasına yaklaştıkça da daha küçük görünür. Nesnelerin bir noktada birleşiyormuş gibi görünmesini sağlayan bu efekt perspektiftir. Değişik çeşitleri vardır fakat 3B çizimlerde genelde tek noktalı perspektif kullanılır.
Ekran kartının yapısı nasıldır?

Şekildeki eller ayrı duruyor fakat çoğu sahnede nesneler birbirlerinin önünde dururlar ve birbirlerini kısmen kapatırlar. Bu durumda bunların büyüklüklerinin hesaplanması dışında hangisinin önde olduğu da bilinmelidir. Bunun için Z Buffering denilen teknik kullanılır. Z buffera her poligon için bir sayı atanır ve bu sayı o poligona sahip nesnenin sahnenin ön tarafına yakınlığını belirler. Öneğin 16 bitlik bir Z bufferekrana en yakın poligon için -32768 ve en uzak poligon için de 32767 değerlerini atar.
Gerçekte bir nesnenin arkasındaki diğer nesneleri göremediğimiz için ne görüyor olmamız gerektiğini düşünmeyiz. Sanal 3B ortamlarda da bu sıkça olur ve çok düz bi mantıkla çözülür. Nesneler yaratıldıkça x ve y ekseninde aynı değere sahip olanlarının Z bufferdaki değerleri karşılaştırılır ve en düşük Z değerine sahip nesne tamamen görüntülenir. Daha yüksek Z değerindekilerinse tamamı görüntülenen nesneyle kesişen bölgeleri görüntülenmez. Nesneler tamamen oluşturulmadan önce Z değerleri belirlendiği için görünmeyecek bölgeler tamamen hesaplanmaz ve bu da performansı arttırır.
Derinlik (Depth of Field)
Yol ve ağaçlar örneğimizi hatırlayalım ve o örnekte oluşabilecek başka bir ilginç olayı düşünelim. Yakınınızdaki bir ağaca bakarsanız uzaktaki ağaçların netliklerini kaybettiklerini görürsünüz.
Filmlerde ve bilgisayar ortamında sık kullanılan bu efekt iki amaca hizmet eder. İlki sahnedeki derinlik hissini güçlendirmektir. İkincisi ise dikkatinizi bir nesneye çekmektir.
Ekran kartının yapısı nasıldır?

Anti-aliasing
Bu teknik de gözü aldatarak görüntünün doğal görünmesini amaçlar. Dijital görüntü sistemleri aşağıya ve yukarıya doğru düz çizgiler çizmekte son derece başarılıdırlar fakat iş eğrilere ve çapraz çizgileri çizmeye gelince basamak efekti oluşur ve çizgilerin kenarları yumuşak değil de daha çok bir merdiven gibi gözükür. İşte bu nokada devreye anti-aliasing girer ve çizginin kenarlarındaki piksellere onlara yakın gir tonlardaki renklerle shading uygulayarak kenarları biraz bulanıklaştırır. Bu sayede basamak efekti ortadan kaybolmuş gibi gözükür. Anti-aliasingde doğru pikselelleri çin doğru renkleri seçmek de başka bir karmaşık işlemdir ve sisteme oldukça yük bindirir.
Ekran kartının yapısı nasıldır?
Sadece düz çizgilerdeki pikseller kullanıldığında basamak efekti oluşur.
Ekran kartının yapısı nasıldır?
Kenarlardaki piksellerin etrafındakiler de kullanılarak basamak efekti azaltılır.

Görüntüleri Hareketlendirme Zamanı
Durağan 3B sahnelerin nasıl yaratıldığını gördükten sonra bunların nasıl hareket kazandığını öğrenebiliriz. Şu ana kadar anlattığımız işlemlerin hiçbiri donanımı yaratılan bu durağan görütülere hareket kazandırmaktan daha fazla zorlayamaz. Üçgenlerden ve poligonlardan olşuan tel örgülerimizi hareket ettirmek için ekrandaki her piksel saniyede belirli sayıda hesaplama yapılmalıdır.
Yüksek çöznürlük denince aklımıza en az 1024x768 gelir, daha düşük çözünürlükleri adam yerine koymayız pek. Bu çözünürlükte 786.432 adet piksel kulllanır, her piksel için 32 bit renk kullanıldığında 25.165.824 bit sadece durağan görüntü için gereklidir. Görüntünün 60 FPS hızda çalışması için her saniye 1.509.949.440 bit veri aktarılmalıdır ve bu sadece görüntüyü ekrana yansıtmak için yeterlidir. Bunun yanında bilgisayar görüntü içeriğini, renkleri, şekilleri, ışıkları ve diğer efektleri de hesaplamak zorundadır. Bütün bunlar görüntü işlemcilerinin çok hızlı gelişmesine sebep oluyor çünkü CPU`nun alabileceği her türlü yardıma ihtiyacı var.
Transform (Dönüşüm) İşlemleri
Durağan görüntüler dönüşüm denen matematiksel bir işlem sonucunda hareket kazanırlar. Bakış açımızı her değiştirdiğmizde bir dönüşüm olur. Bir arabanın bize yaklaştıkça daha büyük görünmesi gibi, büyüklüğün her değişiminde bir dönüşüm olur. Bir 3B oyunun her karesinde kullanılan dönüşüm işlemine matematiksel olarak şu şekildedir:
Dönüşümde ilk etapta sanal dünyamızı tanımlayan önemli değişkenler kullanılır:
  • X = 758 – baktığımız sana dünyanın yüksekliği
  • Y = 1024 – bu sanal dünyanın genişliği
  • Z = 2 – bu da sanal dünyamızın derinliği
  • Sx - sanal dünyaya baktığımız pencerenin yüksekliği
  • Sy – pencerenin genişliği
  • Sz = hangi nesnelerin diğerleinin önünde göründüğünü belirten derinlik dğeişkeni
  • D = .75 – gözümüzle sanal dünyamıza açılan pencere arasındaki uzaklık

Öncelikle sanal 3B dünyamıza açılan pencerelerimizin genişliği hesaplanır:
Ekran kartının yapısı nasıldır?
Daha sonra perspektif dönüşümü yapılır, bu aşamada yeni değişkenler de işin içine girer:
Ekran kartının yapısı nasıldır?
Sonunda (X, Y, Z, 1.0) noktası aşağıdaki işlemcler sonucunda (X', Y', Z', W') noktasına dönüşür:
Ekran kartının yapısı nasıldır?
Görüntü ekrana yansıtılmadan önce son bir dönüşüm daha yapılmalıdır, bu kadarı bile bu işlemin karmaşıklığı hakkında size fikir vermiştir. Üstelik bütün bu işlemler tek bir vektör, yani basit bir çizgi için. Aynı işlemlerin görüntüyü olşturan bütün nesnelere saniyede 60 kere uygulandığını düşünün...
Ekran Kartları Bu İşlemlere Ne kadar Yardım Edebiliyor?
Önceleri ekran kartları sadece işlemciden gelen sinyalleri monitörün anlayabileceği şekle çeviriyorlardı ve bundan başka bir görevleri yoktu. Görüntü kalitesi yükseldikçe ve işlemcinin sırtına binen diğer yükler de arttıkça bu yöntem zamanla geçerliliğini yitirdi.
Gördüğümüz gibi öncelikle üçgenlerden ve poligonlardan tel örgü denilen iskelet oluşturuluyor ve bu yapı 2 boyutlu bir ekranda gösterilmek için dönüşüme uğruyor. Dönüşen nesneler kaplanıp aydınlatılıyor ve sonunda da monitöre aktarılıyor. GeForce öncesi TNT 2 ve Vodoo 3 gibi ekran kartları dönüşüm işleminden sonra devreye girip kalan işlemleri CPU'nun üzerinden alıyorlardı ve CPU`yu bir miktar rahatlatıyorlardı.
GeForce ile hayatımıza GPU kavramı girdi. T&L (Transform & Lighting) destekli bu kartlar dönüşüm ve ışıklandırma işlemlerini de CPU`nun üzerinden alarak sistemi önemli ölçüde rahatlattılar. Bu iki işlemde aynı hesaplamalar üst üste defalarca yapıldığından bunlar donanımsal hızlandırma için çok uygundu. Her iki işlemde de kayar nokta hesapları yapıldığından bunlar CPU`nun üzerinde çok ağır bir yük oluşturuyorlardı. Bu sayede CPU da başka işlere yoğunlaşabilecekti (yapay zeka gibi).

AGP
VLB, ISA, PCI erken sonunda ekran kartlarının da işlemciyle direk haberleşmek için kullanabilecekleri yüksek bant genişliğine sahip slotları oldu. PCI 2.1 spesifikasynlarıyla belirlenen AGP, PCI gibi 33 değil daha yüksek bant genişliği için 66 MHz`te çalışır.
AGP de tıkpkı PCI gibi 32 bit genişliğindedir ama 66 MHz`te çalıştığı için en en düşük hız modunda bile 254.3 MB/s bant genişliğine sahiptir. Bunun dışında kendine özel bir sinyalleşmeye 2X, 4X ve 8X hızlarında bu bant genişliği 2`ye, 4`e ve 8`e katlanır. Bu slotun başka bir avantaji da PCI veriyolundaki gibi bant genişliğinin paylaşılmaması, AGP`nin bütün bantgenişliği ekran kartına aittir.
Bu değerler kulağa hoş gelebilir ama uygulamalarda CPU, ekran kartı dışında pekçok parçaya daha ulaşmak zorundadır. AGP bantgenişliği yüksek olsa bile pratikte değişik AGP modları arasında sistemdeki diğer darboğazlar yüzünden beklenilen performans farkı olmaz çoğu zaman.
AGP, pipeliningi(İş bölümü) de desteklediği için sistem kaynaklarını daha verimli kullanabilir, pipeliningin ne olduğunu merak edenler İşlemcilerle ilgili yazımıza göz atabilirler. AGP'nin bir diğeravantajı da ana belleği görüntü belleğiyle paylaşabilmesidir. Bu sayede çok yüksek miktarda görüntü belleğine ihtiyaç duyulmadan gerektiğinde ana bellek görüntü belleği olarak kullanılabilir.
API Kavramı
Ekran kartları büyük bir hızla gelişiyor ve hemen her kartın farklı özellikleri var. Programcıların da her kart için ayrı kod yazmaları mümkün olmadığına göre bütün kartların ve yazılımın anlaşabileceği ortak bir platforma ihtiyaç var.
İşte bu boşluğu API (Application Programming Interface, Uygulama Programlama Arayüzü) dolduruyor. API, uygulamalarla onları çalıştıran donanımın anlaşmasını sağlıyor. Programlar kodlarını direk donanıma aktarmadan standart biçimde API`ye aktarıyorlar. Ekran kartının sürücü yazılımı da API`den aldığı bu standart kodları kartın kullanabilceği şekle çevirip karta ulaştırıyor. Oyunlarda en sık kullanılan iki API OpenGL ve Direct3D`dir.
OpenGL
1992`de Unix tabanlı X terminaller için genel bir CAD ve 3B API`si olarak Silicon Graphics`in IrisGL kütüphanesinden türettiği OpenGL önceleri sadece iş uygulamalarıyla kıstılanmıştı (mekanik tasarım ve bilimsel analiz gibi). 1996`da Windows versiyonunun geliştirlimesinden sonra oyun yapımcıları tarafından çok tutuldu ve halen yaygın olarak kullanılıyor.
OpenGL gelişmiş pekçok tekniği destekler, texture mapping (yüzeyleri bir grafik dosyasıyla kaplamaya yarar), antialiasing, saydamlık, sis, ışıklandırma, smooth shading (bir yüzeyden yansıyan ışık yüzey boyunca farklı etkilerde bulunsa bile shading yapılabilmesini sağlar), motion blur (hareket eden görüntü arkasında iz bırakır) ve modelling transformation (nesnelerin sanal uzaydaki büyüklüklerini, yer ve perspektiflerini değiştirmeye yarar) gibi.
Özellikleri bakımından Direct3D`ye benzese de 3B bir sahnenin basit elemanları ve bunlara uygulanacak efekler üzerinde çok etkili bir kontrol sağlar.
OpenGL, donanım tarafından iki seviyede desteklenebilir. ICD (installable client drivers) ışıklandırma, dönüşüm ve rasterizationı (bakış açımıdaki pikselleri tanımayı sağlayan bir algoritma) desteklerken MCD (mini client drivers) sadece rasterization desteği vardır. MCD sürücüleri yazmak daha kolaydır ama performans konusunda ICD çok daha üstündür.
Direct 3D
Direct3D`nin donanımdan bağımsız yazılım geliştirilmesine izin veren kısmı HAL`dır (Hardware Abstraction Layer). HAL, genel olarak desteklenen özellikler için bir arayüz oluşturur ve sürücülerin kendisi üzerinden donanıma erişmesinze izin verir.
Ekran kartının yapısı nasıldır?
Direct3D, OpenGL`e denk sayılabilecek bir düşük seviye moduna sahip olmasına rağmen çoğu zaman OpenGL kadar esnek olmamakla eleştirilir.
Direct3D işhattında ekran kartı devreye girmeden önce geometri hesaplamalarını işlemci yapar. DirectX 6.0`da birlikte rendering işlemleri iyileştirildi multitexturing (bu özelliğe sahip kartlar tek geçişte birden çok dokuyu işleyeiblirler) desteği eklendi. Ayrıca görüntü kalitesini arttıran anisotropic filtering (nesneler uzaklaştıkça düşen görüntü kalitesini iyileştirir) ve bump mapping (düz yüzeyler üzerinde gerçek kaplama ve ışık efekti yapılmasını sağlar).
DirectX 7.0 bize donanımsal T&L hızlandırması desteğini getirdi,8.0 versiyonuyla ise hayatımıza hem piksel hem de geometri seviyesinde programlanabilir shaderlar girdi. Bu programlanabilir shaderlar sayesinde görüntüler gerçeğe daha da yaklaştı. DirectX 9.0 ile bu shaderlar daha da geliştirildi.
Kaynaklar:
- Howstuffworks "How AGP Works"
- HardwareCentral - Your source for in-depth computer hardware info.
- HowStuffWorks "How Graphics Cards Work"
- Guides/Multimedia/Graphics Cards - PC Technology Guide
- http://www.themeter.com/articles/3DBasics.shtml
- 3D Pipeline - ExtremeTech 3D Pipeline Tutorial - 3D Graphics, Audio & HDTV by Extreme

.

Umarım Yeterlidir Msn Happy

Son düzenleyen tHeBruTaLiTyOfHeLL; 23 Aralık 2008 03:01 Sebep: Mesajlar Otomatik Olarak Birleştirildi
Keten Prenses - avatarı
Keten Prenses
Kayıtlı Üye
29 Aralık 2008       Mesaj #3
Keten Prenses - avatarı
Kayıtlı Üye
test
Quo vadis?
Misafir - avatarı
Misafir
Ziyaretçi
13 Ocak 2012       Mesaj #4
Misafir - avatarı
Ziyaretçi
Grafik İşlemcisi Yandı Sadece o Kısmı Tamir Ettirebilirmiyim

Benzer Konular

22 Ocak 2018 / Misafir Cevaplanmış
1 Mart 2016 / Ziyaretçi Soru-Cevap
4 Ekim 2011 / MelekBeyza Soru-Cevap
4 Ekim 2012 / BayanAcemi Soru-Cevap
24 Ağustos 2009 / yusufak92 Soru-Cevap