Çizim için bir Renk
Belirleme
Opengl de çizim yaparken her objeye ayrı bir renk atama ihtiyacı duyulmaktadır ,nasılki pencere için renk belirliye biliyorsak aynı şekilde geometrik nesneler içinde bir renk belirlenmektedir.Bu işlem için glColor3f komutu kullanmaktadır ,komutu parcalara ayırarak incelersek
glColor3f
gl opengl ön ekidir opengl komutları bu ekle belirtilmektedir.
Color renk anlamına gelmektedir ve opengl renk yönergesini temsil eder
3 sayısı üç parametreli bir komut oldugunu belirtir
f paremetrelere verilecek degerlerin floating-point olarak belirtir kayan noktalı sayı ,bu nedenden dolayı glColor3f için atayacagımız parametreler 0.0 ile 1.0 arasında bir deger alır.Bu üç parametre Kırmızı,Yeşil,Mavi,(RGB) renk bileşenini temsil eder ,Bu parametreye verilen degerler ile istenilen renk ataması gercekleşir.
Örnek olarak kullanımı şu şekildedir
glColor3f(0.0,0.0,0.0);
Komutun ilk degeri (R)Kırmızı rengi temsil eder ikinci degeri (G)Yeşil rengi temsil eder üçüncü degeri(B)mavi rengi temsil eder
glColor3f(R,G,B);
bunların hepsine 0.0 verdigimiz için siyah renk ile çizim işlemi devam eder ,daha iyi kavraya bilmek için diger renkleride inceleyelim, belirlemek istedigimiz renk degerini yuksek tutarsak o renk ile çizim yapabiliriz.
Bir kaç örnek renk kombinasyonu
glColor3f(1.0, 0.0, 0.0); //kırmızı
glColor3f(0.0, 1.0, 0.0); //yeşil
glColor3f(1.0, 1.0, 0.0); //sarı
glColor3f(0.0, 0.0, 1.0); //mavi
glColor3f(1.0, 0.0, 1.0); //magenta
glColor3f(0.0, 1.0, 1.0); //cyan
glColor3f(1.0, 1.0, 1.0); //beyaz
yukarıdaki kombinasyondan iki rengi incelersek az çok bu işlemin nasıl gercekleştigini anlaya biliriz
örnegin kırmızı
glColor3f(1.0, 0.0, 0.0); //kırmızı
bu komutun renk degerlerine bakılınca sadece kırmızı renk degerinin 1.0 oldugunu görüyoruz digerleri en alt seviyede buda kırmızı rengi en üst seviyede elde etmemizi saglar kırmızının daha acık tonlarını kullanmak istersek
glColor3f(0.8, 0.0, 0.0); // az açık kırmızı
glColor3f(0.5, 0.0, 0.0); // açık kırmızı
glColor3f(0.3, 0.0, 0.0); // çok açık kırmızı
aynı şekilde diger renkler içinde aynı işlemi yapa biliriz
sarı renk i elde etmek için iki renk degerine birden deger veriyoruz
glColor3f(1.0, 1.0, 0.0); //sarı
kırmızı ve yeşil bu şekilde bu degerleride azaltarak açık daha açık vs şekilde daha ince sarıyı elde ede biliriz.Yüzeysel olarak normal hayatta oldugu gibi resim boyalarını bir birine karıştırmaya benzer.
Hiç yorum yok:
Yorum Gönder