Okulda z ekseninin yukarıda olduğunu öğrendim. Blender gibi modelleme yazılımlarında da aynıdır. Ancak birçok oyunda y ekseni yukarı kalmıştır.
Sebebi nedir?
Okulda z ekseninin yukarıda olduğunu öğrendim. Blender gibi modelleme yazılımlarında da aynıdır. Ancak birçok oyunda y ekseni yukarı kalmıştır.
Sebebi nedir?
Yanıtlar:
Bence koordinat eksenlerinin yönü, kritik düzlemin farklı olduğu farklı alanlardan tutuculardır ve X / Y bu kritik düzlemle hizalanmıştır. Bazı uygulamalarda zemin düzlemi en önemlisiydi, bu nedenle X / Y zemindi ve Z buna dik olarak sona erdi. Bununla birlikte, oyunlar için kritik düzlem genellikle ekran (özellikle de 2D olduklarında ve 3D'ye geçmeye başladığında) ekran.
En büyük iki 3D sanat aracı olan 3ds max ve Maya arasında bu tür bir ayrım görebilirsiniz. Z ekseni maksimum 3ds, çünkü bu mimari araçlardan büyürken, Y ekseni Maya'da yukarı, çünkü bu film yapım araçlarından büyüdü.
Herhangi bir aracı okulda öğrendiklerinizle karşılaştırırken fark etmeniz gereken önemli olan şey, bunların tamamen keyfi olmasıdır. Her şeyi tutarlı tuttuğunuz ve farklı koordinat sistemleri arasında doğru bir şekilde çevirdiğiniz sürece eksenlerin hangi yöne yönlendirildiği gerçekten önemli değil.
Çoğunlukla, 3D ile yapılabilecek her şeyin bir ekran alanı dönen küp veya paralaks kaydırma veya benzeri bir şey olduğu zamanlardan daha eski. Bu tür uygulamalarda Z, "derinlik" idi çünkü X ve Y, ekran düzleminin eksenleriydi. Demolar daha da geliştikçe, orijinal sözleşmeler kaldı çünkü çalışan hiçbir şeyi değiştirmemek daha kolay.
Bugünün oyunlarının neden dikey eksen olarak Y'ye sahip olduğuna gelince - farkı açıklamayan birçok kötü yazılmış öğretici var. Genellikle birincil hareket düzleminin X ve Y eksenleri üzerinde olması en yararlıdır (böylece çoğu 2D hesaplamanın kodda takas eksenleri gerektirmez). Çoğu yan kaydırıcı için, ekran düzlemine (X / Y) oldukça doğal olarak rastlanır. Macera oyunları ve benzerleri için, X / Y yatay düzlem kadar iyi çalışır (yerçekimi yönüne dik), çünkü oyun içi haritalara, gamepad kontrollerine, arazi yükseklik haritalarına ve diğer birçok şeye mükemmel şekilde eşleşir.
Y = yukarı / aşağı eğildiğim kadarıyla ve Z = derinliği, yerçekiminin her zaman (-Y) yönünde olduğu fizik üzerine dayanır ve daha sonra 3D eklemek , temel bir şeyi değiştirmek istemediğiniz anlamına gelir , böylece derinlik yapıldı.
Z = yukarı / aşağı yönteminde bu matematikçilere bir atış olduğunu. çünkü Z / ekseni uzatıldığında X / Y masanın üzerinde düz olan kağıda çizildiğinden, kağıttan çıkıyordu ve bu nedenle yukarı çıkıyordu. mühendislerinizin çoğu da bu sözleşmeyi kullanacaktır.
verilen araç tarafından kullanılan sözleşmeyle ilgili olarak: Maya ve Unity'nin Y-up'ı var (muhtemelen fizik geçmişi olan biri tarafından tasarlandı). 3DsMax ve Unreal ise Z-up'a sahiptir (muhtemelen matematikçiler / mühendisler tarafından tasarlanmıştır). bununla birlikte, tutarlı bir sistemin kullanılması gerektiğinden, bunların sadece bir gün alınan bölünmüş bir karar olabileceği de söylenebilir.
çünkü bu soru bir modelleme aracına odaklanıyor ve bir oyun geliştirme Soru-Cevap sitesine yerleştiriliyor. hangi koordinat sistemine vereceğinizi incelemek ve buna uyduğunuzdan emin olmak isteyebilirsiniz.
ayrıca bazı sistemin eksen sisteminin sert ve kalıcı olduğunu ve diğerlerinin değiştirilebileceğini (Blender ve Unreal'da değiştirilebileceğini düşünün, ancak yanlış olabilir)
Çünkü oyunlarda kullanılan koordinat sistemi monitörün boyutuna dayanmaktadır. Bilgisayar herhangi bir şey oluşturduğunda, [0, 0] 'ın x ve y koordinatını veren sol üst köşeden başlar. Görüntü oluşturma ekranın sağ tarafına doğru ilerledikçe, görüntü oluşturma aşağı hareket ettiğinde sırasıyla x değeri artar, y değeri artar. Koordinat sistemi temel olarak 2B boşluğudur, ancak başlangıç noktası ekranınızın ortasında değil sol üst köşede bulunur.
3DsMax ve Maya gibi 3D paketlerde, kendileri için önemli olan şeylere dayanarak kendi x ve y koordinatları tanımlarına sahiptirler. 3DsMax mimari tasarıma dayanıyordu, eğer 2B düzlemde bir şematik çizerseniz, y yukarıda. Esas olarak animasyon için kullanılan Maya'da zemin x, y ve yükseklik z'dir.