制作地形方法很多,今天給大家分享一種原創野套路。此方法特點是将現實中的地形于UE4中呈現,而不是手動繪制地形。首先從地理空間資料雲獲得指定區域的地理資料,然後使用GlobalMapper更準确選出區域并把資料轉換成WorldMachine可識别的格式,通過WorldMachine生成準确地形,最後導入UE4修改細節并添加材質。
目錄
- 獲得DEM資料
- 選取指定區域并轉換格式
- World Machine地形處理
- 導入UE4制作地形
1. 獲得DEM資料
通過政府網站獲得準确的地形高程資料,世界任意位置可以通過www.usgs.gov 擷取相關資料。但是國内項目基本隻需要中國的地理資料,是以推薦地理空間資料雲獲得國内任意位置的DEM高程資料(USGS同樣可以獲得國内的DEM資料但是精度不高)。打開網頁之後可以選擇很多種搜尋資源的方式,此處推薦進階檢索,較為直覺。
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsICM38CXlZHbvN3cpR2Lc1TPB10QGtWUCpEMJ9CXsxWam9CXwADNvwVZ6l2c052bm9CXUJDT1wkNhVzLcRnbvZ2LcVzYq1keJRVTyUkeYhnRzwEMW1mY1RzRapnTtxkb5ckYplTeMZTTINGMShUYvwFd4VGdvwlMvw1ayFWbyVGdhd3PxgjNzADMxIDOygDM4EDMy8CX0Vmbu4GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.jpg)
位置選擇方式有幾種,選擇适合你的方式。此處使用地圖選擇,框選出吉林長白山的區域并點選搜尋。左側顯示的清單是此區域所占的資料格。因為資料格是經緯度0.5 * 0.5 的格子,我們框選的區域恰恰在橫向豎向分别跨了兩個格子。是以我們需要下載下傳四個檔案。
2. 選取指定區域并轉換格式
可以下載下傳GlobalMapper讀取下載下傳好的DEM資料,并截取我們想要的區域,切轉換成World Machine可以識别的檔案格式。此處使用的是GlobalMapper 10.0(連結:http://pan.baidu.com/s/1eRXSnOA 密碼:jrf4)。打開此軟體,将之前下載下傳的dem資料解壓,并且把名字字尾為dem的檔案依次拖入GlobalMapper,并選擇Yes to all。
四張圖拼合之後的中心區域便是我們之前選擇的長白山
左上角點選File選擇導出elevation,并且格式選擇HF2/HFZ
頁籤中第三個分頁導出邊界範圍選擇draw a box
按住SHIFT左鍵拖拽選擇指定區域可以拉出長寬1:1的區域
點選确定之後選擇導出位置。然後把此檔案拖進GlobalMapper,點選Tools—Configure,修改顯示機關
然後打開control center,點選選擇最後導出的hfz檔案,之後點選左下角選擇Metadata,顯示該區域的資料,三個資料需要記下來。面積,最低海拔高度,最高海拔高度。
3. World Machine(以下簡稱WM)地形處理
下載下傳安裝WM (連結:http://pan.baidu.com/s/1i5e7J8p 密碼:5wo7)
打開WM, 選擇項目設定,地形的寬和高是之前面積開根号 √7482 ≈ 86.499 ,右側分辨率可以給1024作為預覽的分辨率。分辨率越高建構速度越慢精度越高
第三個選項頁的最大高度給一個512的倍數(由于機關換算,導入UE4時,Z軸縮放100倍相當于512米,此處給512倍數友善後續操作)并且高于之前測出的高度2743.145m。 于是此處給3072。
面闆中添加file input節點
輕按兩下節點加載 .hfz檔案,并且修改寬高與上面一緻,下面的elevation調整與實際相同(最低海拔和最高海拔)
為了梳理流程,此處不進行複雜的修改和雕琢。直接連接配接一個Basic Coverage
輕按兩下進入,給R G B三種顔色表示三種不同區域,調整一下HEIGHT CUTOFF和SLOPE CUTOFF到你滿意的效果。
将輸出的RGB通道拆成單獨通道的灰階圖
連接配接heightmap output輸出灰階圖
最終地形後面需要連接配接一個height output輸出高度圖用于UE4中生成地形
同樣還需要連接配接一個法線轉換節點,并且連接配接bitmap output輸出這個法線圖
最終連接配接圖如下
導出之前需要進行最終建構,是以進入項目設定把分辨率調成UE4支援的最大精度(UE4建議如下)
項目設定面闆,修改分辨率8129*8129,下面勾選conserve memory,記憶體大的也可以不勾選。具體差別先不詳解。
點選建構
如果記憶體夠大,可以修改項目設定中第二個分頁,然後選擇最後面綠色的Tiled build
因為沒有添加過多新節點,是以計算建構時間較短。計算結束後。分别選擇不同輸出節點選擇輸出路徑和檔案名。先選擇格式,然後添加路徑,最後選擇write output to disk。注意高度圖格式RAW16!
BITMAP導出格式為PNG 8 bit
單通道灰階圖導出PNG格式
4. 導入UE4制作地形
首先建立一個地圖,然後建立一個初始材質,不用太細節。貼圖細分由landscape coord控制,數值越大,細分越少。Landscape blend細節面闆中添加三層,分别給不同的名字。
建立地形,從檔案導入,檔案選擇raw16格式的Heightmap,材質連接配接剛剛建立的材質。Layers右側點選+加号選擇第一個權重,并且連接配接不同的對應的灰階圖。Scale這裡 X和Y值是我們實際的尺寸86499 / 8129 * 100 = 1064, Z值是之前WM輸入的最大高度3072 / 512 * 100 = 600,最下面的alpha type選擇 layered。
如果沒有顯示正确,可以在地形的細節面闆中重新添加一下此材質,有時會遇到顯示錯誤的BUG。如果覺得天池中應該是雪不是岩石,可以用筆刷進行修改。
如果想要達到下圖這種效果,需要在WM中對地形進行很細節的刻畫,以及對UE4中材質進行複雜的處理如貼圖混合,法線混合等等。
另外有的小夥伴發現地面貼圖重複度太高,很不真實,那麼可以與平鋪次數較低的貼圖lerp一下解決。下面是對比圖。