3 Boyutlu tasarım ve yazılım sistemleri klasik x,y ve z eksenlerinden oluşan koordinat sistemleri üzerine inşa edilmiştir. Eksenlerin yönleri ise sistemden sisteme farklılıklar göstermektedir. Objeler üzerinde yapılan işlemlerin aritmatiği koordinat düzlemine göre oluşturulduğu için eksen sistemi 3 boyutlu tasarımda önem arz etmektedir.

 

EKSENLERİNE GÖRE SİSTEMLER

Günümüz monitörleri gerçekte iki boyutlu birer çizim alanıdır. 2 boyutlu bir çizimde alan bilindiği üzere x ve y eksenlerinden oluşmaktadır. 3D yazılım ve tasarım yapabilmek için bunlara 3. bir eksen olarak z ekseninin eklenmesi gerekir. Z ekseni 2 boyutlu görünüme derinlik kazandırır.

X ekseninin sağa doğru, y ekseninin ise yukarı doğru gittiğini kabul edelim. Buna derinlik kazandırmak için 3. eksen olarak z eksenini ekleyeceğiz. Ancak z ekseni ileri doğru mu geri doğru mu bakacak. İşte bu seçim koordinat sistemlerinin temel olarak 2'ye ayrılmasına neden olmuştur: right-handed (sağ ele göre) ve left-handed (sol ele göre). Sistemlerin bu şekilde isimlendirilmesi çalışma kolaylığı sağlamasından kaynaklanmaktadır.

Sağ elimizi karşımıza getirelim. Parmaklarımızı kapatıp baş parmağımızı (x eksenini temsilen) sağ tarafa bakacak şekilde açalım. İşaret parmağımızı da y eksenini temsilen yukarı bakacak şekilde açalım. Sağ elimiz bu konumdayken orta parmağımızı (z ekseni) açtığımızda orta parmak geri yönü gösterir. Şimdi sol elimizin baş parmağını sağa işaret parmağını yukarı bakacak şekilde alalım. Bu durumda orta parmağımızı açtığımızda ise orta parmak karşı yönü gösterir. Koordinat sistemi üzerinde çalışırken eller eksenleri bu şekilde temsil ederek rotasyonları sembolize etmekte ve anlamakta kullanılır.

Right-handed koordinat sisteminde z (derinlik) ekseni geriye doğru ilerlerken left-handed koordinat sistemlerinde z ekseni ileri doğru bakar. Koordinat sisteminin right-handed mı yoksa left-handed mı olacağı tamamen sistemin ilk dizaynı sırasında sistemi hazırlayanlar tarafından tercih edilecek bir konu olup iki sistemin birbirine herhangi bir üstünlüğü yoktur. Sistemi dizay ederken bir tanesini seçip ona göre dizayn yapılır.

OpenGL, 3d Max ve Blender right-handed sistemlerdir. OpenGL'de y ekseni yukarı z ekseni ise geriye doğru bakar. 3d Max ve Blender'da ise z ekseni yukarı doğru y ekseni ise ileri doğru bakar.

3d Max'in z-yukarı right-handed koordinat sistemi

 

ROTASYON İŞLEMLERİ

OpenGL'nin y-up konumundan tasarım programlarının z-up konumuna geçmek için koordina sistemi x ekseni etrafında -90 derece döndürülür. Z-up sistemden y-up sisteme dönüştürmek yapmak için ise x ekseni etrafında 90 derece rotasyon yapmak gerekir. Eksenler hangi yöne bakarsa baksın right-handed sistemler arasında dönüştürme işlemleri rotasyon aracılığıyla yapılır. Right-handed sistemden left-handed sisteme dönüştürme yapmak için ise rotasyon yapmak yeterli değildir. Ayrıca mirror işlemi de yapmak gereklidir.

Eksenlerin rotasyon yönleri

Aksların artı dönüş yönü saat yönündedir. Örneğin right-handed bir koordinat sistemini z-up (3d Max) yönünden y-up (OpenGL) yönüne döndürmek için sistem x ekseni etrafında 90 derece döndürülür.