2012-11-19 175 views
0

我有四個網格,在xz平原上有4個點(-8.0f,0.0f,-8.0f),(8.0f,0.0f,-8.0f),(8.0f,0.0f, 8.0f),( - 8,0.0f.0f,8.0f)。如果我要求用戶選擇任意數量的維度,例如2x2或64x64,那麼我需要做的是創建頂點數組並存儲這些座標,因爲我需要創建許多四邊形網格。我不能拿出解決這個問題的簡單解決方案。我還需要使用頂點創建四邊形,所以它會被用來創建四是頂點,以創建重要後來網格頂點座標的生成

所以這是我的工作就可以了

功能無效initializeMesh(浮動originX,浮originZ,浮xWidth,浮法zWidth) { // originX和Z移動沿邊界的邊緣上,掃描方式

}

它看起來像一個體面想法? x和z寬度根據用戶輸入尺寸(16.0f/dimX和16.0f/dimY)計算,我需要確定何時停止遍歷。

+0

顯示您的「不清楚」的解決方案或說出什麼是您的問題。這裏的Ppl將幫助您找到解決方案。但他們不會爲你找到它。 – JAre

+1

感謝您的建議。我剛開始研究一個功能,我只是想讓自己走向正確的方向。 – user1830954

回答

0

如果維數是2的冪(就像你是2x2,64x64的例子),你可以用循環來完成。每次迭代將每個邊緣(相鄰頂點之間的垂直或水平空間)分成兩半。新的頂點位置將是相鄰頂點的算術平均值。重複它直到達到所需的尺寸。我建議列出我們的數據結構,因爲您需要在其中注入新的節點(頂點),並且列表比數組更快,並且更快。

它不會搞亂頂點順序,你可以擴展它以支持頂點屬性(如紋理座標),它們也將是算術平均值。