1

我正在嘗試創建一個程序化的行星生成工具。我已經像這樣一個立方體映射到一個球體開始了:將立方體貼圖映射到球體的問題

alt text

下一頁我使用Libnoise使用3D Perlian噪聲高度貼圖立方體。我能夠生成一個無縫的cubmap。我已經在photoshop中檢查了這一點,儘管我必須旋轉高度圖圖像以使它們適合網絡,但我認爲它們是正確的方向。

我曾嘗試讓於共同座標。柏林值它們映射到一個球體和前後,但我無法使邊緣匹配:

alt text

在我的那一刻在-0.8和+0.8之間創建幾何圖形,然後添加0.2 *高度圖百分比。

要麼我錯誤地使用高度圖數據,要麼heightmaps定向不正確(我懷疑它是兩者中的一小部分)。

回答

2

我發現了這個問題。繪製一個從-1到1的立方體,將其映射到一個球體,然後一旦它是一個球體,將每個座標乘以1 +(百分比*高度圖值),例如,如果您想要高度圖添加或取消球體的20%:

x *= 1 + (0.2 * heightmapValue); 
y *= 1 + (0.2 * heightmapValue); 
z *= 1 + (0.2 * heightmapValue); 

尋找somethign像這樣:

cube