OpenGL® Derinliği için En İyi İpuçları Nelerdir?
OpenGL® derinlik tamponu, üç boyutlu (3D) bir grafik
programcısında bulunan daha yanlış anlaşılan, karmaşık ve sonuçta faydalı
araçlardan biridir . Tamponun optimize edilebilmesinin birkaç yolu vardır,
böylece bir programın kare hızı, yakın ve uzak kırpma düzlemlerini düzgün bir
şekilde ayarlayarak arttırılabilir. Diğer ipuçları, render'ler arasındaki
tamponun temizlenmesi ve nesneleri birbirine çok yakın yerleştirerek derinliğin
bir sorun olmasına neden olabilecek sahne kompozisyonlarından kaçınmayı içerir.
OpenGL® derinlik tamponu kredi notum düşük nasıl kredi çekerimkullanılarak
bazı iki boyutlu (2D) grafik püf noktaları kolayca ve verimli bir şekilde
gerçekleştirilebilir. Kullanılmakta olan grafik kartı bazen derinlikle ilgili
bir sorun olabilir, bu nedenle doğru ayarın kullanılması hızın artırılmasına ve
gereksiz işlem döngülerinin azaltılmasına yardımcı olabilir.
Geleneksel olarak Kartezyen derinlik düzlemini işaretleyen
harfin ardından Z tamponu olarak da adlandırılan OpenGL® derinlik tamponunun
performansını etkileyebilecek ilk sorunlardan biri, yakın ve uzak kırpma
düzlemlerinin yerleştirilmesidir. Bu düzlemler, bir sahnede neyin yapılması ve
yapılmaması gerektiği sınırlarını tanımlar ve değerleri, kırpma işleminin
sırasıyla başlaması ve sonlanması gereken görüntüleyiciden uzaklığı gösterir.
Sezgisel bir düşünce, izleyicinin sıfır noktasına yakın bir düzleme ayarlandığı
noktada renderlemeye başlamak olabilir, ancak bu aslında doğru değildir.
Aslında OpenGL®, yakın düzlemin sıfıra ayarlanmasına izin vermez. Yakın
düzlemin değeri çok küçükse, örneğin bir kesirse, render oluşturucu hiç bir şey
göstermeyebilir veya derinlik arabelleğini doğru bir şekilde sıralayamaz.
Bunun nedeni, bir nesnenin izleyiciye ne kadar yakın
olduğudur, daha doğru bir şekilde OpenGL® nesnenin konumunu hesaplar.
İzleyiciye olan mesafe sıfıra yaklaştıkça, hesaplanan doğruluk katlanarak
artar. Bu, oluşturma zamanını yavaşlatır ve hesaplanan doğruluk düzeyinin
nadiren gerek duyulmasından başka, tekil grafik resimlere ve diğer sorunlara
yol açabilir.
2D grafikler oluştururken, OpenGL® derinlik tamponu bazı
işlemleri kolaylaştırır. Bir kompozisyonda fayans olarak kullanılmakta olan
dortları dengelemek için derinlik tamponunu kullanmak, döşemeli bir sahnenin
elemanlarının, aynı düzlemde birbiri üzerine binen iki çokgen tarafından
oluşturulan görüntüde garip etkiler yaratmadan, düzgün bir şekilde hareket
etmesine yardımcı olabilir. Benzer şekilde, hazırlanan elemanlar görüş alanının
dışına ya da uzak kırpma düzleminin arkasına gizlenebilmeleri için, sahneye
hızlı bir şekilde getirilebilmeleri, hatta özel bir soluk verme ya da
etkisizleştirme sağlamak için gelir belgesiz kredi veren bankalardönüşümler ve dönmelerden faydalanabilmeleri de mümkündür.
Son olarak, OpenGL® derinlik tamponu arabellek için farklı
donanım boyutlarını desteklerken, 16 bitlik sürümü kullanmak en iyisidir. Bunun
nedeni, çoğu sahnede, 32 bitlik bir arabellek kullanılması oluşturma süresini
yavaşlatabilir. Ayrıca, tüm grafik kartları 32 bit derinlikli tamponları
desteklemez, bu nedenle en düşük ortak paydaya düşmek, daha fazla insanın 3D
programını yazılırken çalıştırabileceği anlamına gelir.
Yorumlar
Yorum Gönder