2012-12-14 100 views
2

過去幾個星期,我一直在抨擊我的頭,試圖找到一個算法,可以幫助我完成,首先看看Vector3's非常簡單的任務。所以,我做出來的5個立方體的這一個對象(2個雙方,1 頂部,1 底部,1 ,(也有可能是立方體))。現在我想這樣做,當我想要Scale(2,1,1);整個對象讓我們說X軸只在頂部底部立方體將得到縮放。而一面立方體應該只改變它們的位置(所以它們的尺寸保持完全相同)。問題出在後面這邊。因爲它不能完全覆蓋背面,所以如果我是這樣的話,它會在每一面留下這個我不想要的空白。所有的軸都應該遵循同樣的原則。對於Y我會Scale();側立方體,並只移動頂部和底部的立方體,並應用這種不同的規模在背面。對於ž軸我會Scale();兩個雙方頂部底部立方體,只有移動立方體。XNA-尋找算法

下面是一個例子對象的圖片:

回到所述對象的:

http://img33.imageshack.us/img33/3125/backyd.png

側對象的:

http://img801.imageshack.us/img801/6796/fromtheside.png

接待對象:

http://img688.imageshack.us/img688/281/frontxh.png

希望能對你有所幫助,


編輯: 我很抱歉,我不是足夠多清楚,當我Scale();對象,讓說在X軸上,就像我之前說的想要Scale();只有頂部底部立方體。現在,關於方塊立方體,我想移動它們使它們像以前一樣定位,在這種情況下,在頂部底部立方體的兩端。

+0

你有沒有試過[遊戲開發](http:// gamedev。stackexchange.com/)?你更有可能在那裏找到你要找的東西。 – phadaphunk

+0

那麼,正如我所提到的,對於** X **我試圖縮放**頂部**和**底部**由一些因素。然後將**邊**移動一些因子/ 2,但是如果其中一方被定位爲負值,例如-0.4,則會出現問題,因爲它們的移動方向相同。因此,我從未真正接近過任何像樣的結果。 – user1806687

+0

@PhaDaPhunk我會嘗試,如果我不會在這裏得到答覆。 – user1806687

回答

0

對於整個數組有一個父矩陣並且縮放它會是可以接受的嗎?還是你擔心保存牆壁的厚度?