Bilgisayar Grafikleri

Bilgisayar GrafikleriC++ |

Bilgisayarların hayatımıza kattığı önemli yeniliklerden biri dijital grafiklerdir. Yalnızca komut satırında birşeyler yazdığınızı düşünün. Saate bakmak için bunu yazardınız:

user@cmd$ # time ?
Time is 10:00 AM

Ama bilgisayarlarımız ekran denen ve piksellerden oluşan bir aygıta sahip. Bu küçük pikseller bize sanal gerçekliği çoktan yaşattılar.

Ekran teknolojisi prensip olarak oldukça kolay anlaşılırdır. Şuan 32-bit renk modunu destekleyen bir ekran kullanmaktayım. Ekran bir matris şeklinde düşünülürse, bu yazıyı yazdığım bilgisayar 1366 satır 768 sütundan oluşan bir \(M_{1366x768}\) matrisi şeklinde gösterilebilir. Bu matrisin her bir elemanı 32 bit olarak düşünülebilir. Bunun ilk 24 bitlik kısmı kırmızı, yeşil ve mavi renkleridir -RGB-. Son 8 bit ise alfa kanalını ifâde etmektedir. Kırmızı, yeşil, mavi renkleri 8'er bitten oluşmaktadır. Yani 0-255 arasında toplam 256 değerden biri olabilir. Bu da \(256 x 256 x 256 x 256 = 4 294 967 296\) adet kombinasyon, yani 4.3 milyar renk demektir.

Ekrana görüntü sağlamak için geliştirilmiş çeşitli çiplerin yaptığı işlem, yalnızca matrisin eleman değerlerini ekranın çipine göndermektir. Bunu ne sıklıkla yaptığına göre de tazeleme süresi belirlenir. Tazeleme sıklığının birimi Hertz'dir (Hz). 1 Hz, tekrar eden bir olayın, saniyede bir kere gerçekleştiğini belirtir. 50 Hz lik bir ekran, bir saniyede en fazla 50 kere matrisini yenileyebilir. Bunun yanı sıra FPS (frame per second) kavramı da ekranda çizdirdiğimiz grafikteki animasyonun hangi hızda akacağını belirten bir kavramdır. Saniyede kaç çerçeve göstereceğimizin ölçüsü olan FPS, ekranın maksimum tazeleme hızından yüksek olduğu takdirde, en fazla ekran tazeleme hızında görebiliriz. Yani ekran kartınız 60 FPS bilgi gönderiyor fakat monitörünüzün tazeleme sıklığı 50 Hz bu durumda saniyede en fazla 50 kare görüntüleyebileceksiniz.

LCD ekran üzerindeki bir piksel
LCD ekran üzerindeki bir piksel