unity 通過 灰度圖創建地形


創建自然的高度圖,可以是一個挑戰。有很多周圍的程序,可以幫助通過模擬自然過程,如侵蝕,但你仍然需要某種形式的基礎開始。一種常用方法是使用某種程序創建谷山狀結構的Perlin噪聲的噪聲算法、像。獲取的噪音自然的侵蝕算法的外觀,可以是困難的。當然,你也可以手工雕刻高度圖的程序如ZBrush、Mudbox、但是這需要一些藝術技巧,不是每個人都有。

我會向你展示如何使用DEM數據為基礎,然后將標准的侵蝕算法。如果你想知道什么DEM數據是,它代表了數字高程模型。DEM數據來自於2000年推出航天飛機雷達地形測繪任務(SRTM)。它使用特殊的設備映射的地球表面的海拔。這里的wiki 。

使用DEM數據有一些巨大的優勢。你可以得到非常逼真的地形,因為它是一個真實的地形。這是一個巨大的節省時間,只需要很少的藝術技巧。您可以隨時手動編輯的地圖或混合不同的地圖自定義外觀。然而,它的缺點是數據本身是使用低解析度為的就是讓你將需要添加一些額外的細節如何。

所以,讓我們開始。

首先,你將需要一個程序來打開數據。我使用的是免費的,在這里可以找到程序調用MicroDEM的。

接下來,您將需要的數據。美國航空航天局向公眾發布了90米分辨率的數據,可以發現一些地方在網絡上。他們也發布了幾個地方,如美國的分辨率為30米。我建議使用30m的數據,如果你能找到它,但90米的數據會工作得很好。

我得到了全球覆蓋站點 的數據。所有的數據這里是90米的分辨率。您也可以找到一個隨機選擇的數據,包括瑞士的阿爾卑斯山在這里一些偉大的30米的分辨率數據。

全球覆蓋站點應該是這個樣子。

只需點擊一個正方形,你將能夠下載該區域的數據。在本教程中我使用的是大峽谷的部分,可以發現在廣場J12。

現在打開MicroDEM。轉到文件 - >打開 - >打開DEM。然后選擇一個你剛剛下載的zip文件。我使用的文件N36W112.hgt。它應該是這個樣子。

這種看起來像一個高度地圖,但它不是。它的反射率圖。要查看的高度地圖,用鼠標右鍵單擊該圖像,請單擊“顯示參數 - >抬高,然后選擇”灰度“。現在看起來應該是這樣的。

現在,您需要選擇區域的出口。從工具欄中有一個被稱為“子集和放大”,第8次從右邊的圖標。點擊,然后選擇區域,放大的圖像。你會看到大小的區域中,你選擇了在底部的工具欄。在本教程中,我選擇一個16公里的方形區域。它應該是這個樣子。

現在,你需要增加圖像的分辨率。從工具欄中選擇“放大”圖標,從右側11日。系統將提示您選擇量的放大。我輸入4。這應該添加更多的細節圖像。在這個例子中,我沒有注意到大部分的增加,並有可能放大太遠。如果使用的是30米的數據,你會看到一個更大的變化。

現在,右鍵點擊圖片並選擇“保存圖像”。這應該給你一個8位的BMP文件約3300由3300像素大小。如果您使用此文件是在一場比賽中你會發現地圖的高度圖是非常嘈雜的零距離接觸。這是因為,該文件僅具有8個位的信息,需要16良好的高度圖。這就是為什么你需要進一步細化的高度圖中的一個程序,如世界機床。

如果你沒有一個地形創建程序,你可以使用的Photoshop。如果你只打算進一步只有在Photoshop處理的文件,我將建議調整其大小戰俘的2大小(如4096),將其轉換為16位,並進行高斯平滑在最低限度。

這應該給你一個良好的基礎,開始在一個地形創建程序。是你把它從這里真的給你。

這是一個什么樣的高度地圖上看起來像在世界機床的例子。

 

 
 
打開Photoshop CS4,新建一個畫布,按如下設置:

<ignore_js_op>

從網上任意找一張彩圖.

 

<ignore_js_op>
由於我建的畫布只有灰度的,所以圖拖到畫布上也就只顯示灰度.<ignore_js_op>
對這張圖進行保存:

 

<ignore_js_op>
選擇RAW格式存貯

 

<ignore_js_op>
打開 unity3d,並創建一個地形

 

<ignore_js_op>

導入這張圖

 

<ignore_js_op>
找到它
<ignore_js_op>
設置Y軸的高度,改低一點

<ignore_js_op>


大功告成

<ignore_js_op>

看看效果吧,哈哈

<ignore_js_op>

10.jpg (80.41 KB, 下載次數: 200)

下載附件  保存到相冊

2013-1-2 23:46 上傳

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM