我正在做一個幕後3D模擬,同時在我的2D等距引擎中渲染世界。我之前從未做過等距引擎,而且我的矩陣數學一般都很生鏽,所以我遇到了問題。將屏幕上的點投影回等軸投影的世界
我有一個投影矩陣,在其最簡單的形式是這樣的:
0.7 0.35 0
0 -0.87 0
-0.71 0.35 1
一對夫婦的跡象彈起,因爲我的發動機座標系是在左上角0,0,與+ X到向右/向東和+ Z向南。現在
,那反是:
1.4080 0.5670 0.0000
0.0000 -1.1490 0.0000
1.0000 0.8050 1.0000
現在,這些矩陣大多工作。
例如
WC: 500,0,500 = 屏幕: -1.44,350,500(X和Y是正確的)
WC: 0,0,500 = 屏幕: -355,175,500(X和Y是正確再次)
但是,現在如果你需要走另一條路,你不再有方便的Z值,所以
屏幕: -1.44,350,0 = WC: -2,-402.97,0(。所以,垃圾)
及其它更多 - 只要我不再有Z值,我無法從屏幕座標中找回世界座標。
這裏有什麼解決方法?
編輯
我要指出的是,unproject的一點是要獲得鼠標選擇一個射線..
看起來這只是我自己在做什麼這是擰的誤解我在這裏。
任何有關你如何到達這裏的參考將他非常有幫助!我試圖找出一些與我自己相似的東西 - 幕後3D渲染,同時呈現2D。 – 2012-04-16 20:20:18