在做c++ 和directx 編程的時候,我們需要從3dmax 裏面導出模型到程序裏面,但是不幸的是,他們的座標並不統一,3dmax使用的生活中的長度單位,如cm mm dm m,但是,我們程序中是不認識這些座標的,程序中的座標是,像素,那麼他們之間的關係到底是怎麼樣子的呢,他們是怎麼轉換的呢??
我在網絡上查了好多資料,竟發現沒有這方面的內容,只好自己實驗,通過在3dmax裏邊設好座標單位,建立了幾個模型,然後用directx的API,中那些繪圖接口,我做了好幾次實驗,發現:3dmax中的1m*1m*1m的立方體,和directx中的繪製立方體的接口繪製出來的1*1*1的大小相仿,但是並不完全一致,我想這個需要統一一個標準,遺憾的是,現在還沒有這個標準,估計做引擎的公司都是自己定的標準,但是,同過我的實驗得出的結論是:
使用3dmax建模的文件座標每一米對應着directx中的一個單位長度,但是,不是完全的相等,只是大致相當!