1
我與SMFL/C++的工作做一個2D等距遊戲引擎之間不必要的空間,我得到這個當我做等距算了一筆賬:等距座標,菱形,瓷磚
這裏我的公式我在2D引擎來計算等距座標: 對於IJ座標我有:
x = (I - J) * (tileWidth/2);
y = (J + I) * (tileHeight/2);
//Totally working with classics tiles
編輯:我的問題是由於我的瓷磚形至極是立方體,但我不知道如何解決它。我真的不得不做一些複雜的數學來處理3D objetcs(我寧願避免這種情況),或者我可以稍微改變一下公式?
編輯2:解決方法:int isoY = (x + y) * (height/4);
這是等軸測投影,你說得對,現在我只用z作爲圖層的位置,我的不好。 但我仍然想知道爲什麼我的地圖不是一個完美的diamong:/ – Madz
我編輯了我的帖子。我不明白爲什麼它不工作,因爲我在互聯網上到處讀到這個公式,並且它適用於所有人... 而且錯誤不是關於我如何編碼,因爲公式是完全寫(writed?)像this:/ 'int isoX =(x-y)*(width/2); int isoY =(y + x)*(height/2);' – Madz
寬度和高度的值是多少?因爲它應該是等軸測投影中的值。 (我以這種方式編輯)。 你如何繪製你的瓷磚? – Rbtnk