當前位置:首頁 >教程首頁 > Unreal Engine >Unreal地形高級材質之根據斜率分配材質

Unreal地形高級材質之根據斜率分配材質

發布時間:2020-09-21 10:13:47

Hello . 大家好,今天即興給大家分享一些關於Unreal地形高級材質之根據斜率分配材質,我是木偶心沒。

關於unreal的地形以及基本的材質,之前各大佬已經很詳細的介紹過,大都主要基於基本的地形創建分層材質。現在設想,如果我們做好了一片草地,後麵還想用工具刷出帶有一定坡度的小山,而實際上刷的時候如果坡度達到一定的值,泥土和草是會剝落露出裏麵的岩石的,所以我們就可以用高級一點的地形材質來根據斜率的變化自動加載不同的材質。

首先,我們隨便新建一個landscape,任意大小。然後創建我們的基本材質球,如下圖;

1.jpg

然後按照規矩添加Layerblend節點。然後給layerblend添加三層材質分別代表泥土,草地和湖泊。Blend模式直接默認weight blend,然後給簡單的輸入一個純色作為貼圖。(除了輸入純色做貼圖以外,如果我們更改layerblend屬性中ConstLayerInout的值,在默認沒有輸入的情況下,材質就會直接計算這個參數的值,比如當x=y=0,z=1的時候,就是藍色)

2.webp.jpg

現在我們把這個簡單的材質先賦給地形,並創建weight-blended layer

3.jpg

我們現在隨意將三種材質刷到地形中。如果我現在在三種顏色交界的地方用sculpt增加一座有坡度的小山

4.jpg

我們會發現得到的結果並不自然,因為在自然狀態下,這種接近九十度的坡度,泥土和草根本是不可能存在的。所以需要我們添加另外一種材質,岩石的材質。

重新進入到我們的材質球,首先需要添加一個材質混合節點叫做MatLayerBlend_StandardWithDisplacement,

5.png

此節點用於混合兩個材質球,類似於blend節點。Topmaterial輸入的則是我們的三層混合材質。Basematerial輸入我們的基本材質,也就是我們要添加的岩石的材質,這裏給一個灰色。但是當我們把三維的灰色直接給連到basematerial的input裏麵的時候,發現連不上,因為這邊需要輸入的是一個材質球,現在隻是一個數據,還算不得一個material,所以我們還需要用MakeMaterialAttributes節點來進行轉化,效果如下;

6.webp.jpg

接著我們在把混合後的材質節點連接到basecolor的時候,發現也無法連入,是因為我們不能夠用默認定義好的材質屬性,需要勾選上Use Material Attribute來自定義我們的材質。

7.webp.jpg

現在我們保存一下,然後進入到地形中觀察,發現所有的地形都變成了我們定義的岩石灰色,是因為我們還沒有給alpha添加數值,所以默認應用的是basematerial。

8.webp.jpg

現在我們開始來給alpha添加數值,也就是我們要進行的斜率算法。

首先我們需要用VertexNormalWS獲取地形中每一個頂點的世界法線坐標,因為我們的貼圖映射是根據Z軸來映射的,所以斜率的換算就是每個點z軸的換算,所以我們用ComponentMask(提取通道)獲取世界法線的z值(隻勾選B通道)

9.webp.jpg

然後為我們的坡度定義一個範圍gradient(default value:0, Slider Min:0, Slider Max:1),並將z軸的值減去坡度,即得到我們想要漏出岩石的那一部分斜率範圍;

10.jpg

此時的過渡是很生硬的過渡,所以我們需要給不過度邊緣添加細節漸變,除以自定義漸變值roughness(default value:0.5, Slider Min:0, Slider Max:1)

11.webp.jpg

由於materialblend需要輸入的是一個alpha值,所以我們需要用saturate將值限定在0-1的範圍,然後連入materialblend的alpha輸入中,保存;

12.webp.jpg

為方便調節,我們給mat_landscape創建一個材質實例,然後將材質實例給地形,調節gradient的值和roughness的值發現,如果增加gradient的值,就會得到更多的岩石材質,如果增加roughness的值,邊緣的分界線就會更加明顯,漸變更少。

13.jpg

以上就是完成的最後效果圖,有興趣可以將純色貼圖換成正經材質球,效果會更好。

來源:Thepoly公眾號

华体会hth体育网 賞析
  • 2101期學員李思庭作品

    2101期學員李思庭作品

  • 2104期學員林雪茹作品

    2104期學員林雪茹作品

  • 2107期學員趙淩作品

    2107期學員趙淩作品

  • 2107期學員趙燃作品

    2107期學員趙燃作品

  • 2106期學員徐正浩作品

    2106期學員徐正浩作品

  • 2106期學員弓莉作品

    2106期學員弓莉作品

  • 2105期學員白羽新作品

    2105期學員白羽新作品

  • 2107期學員王佳蕊作品

    2107期學員王佳蕊作品

專業問題谘詢

你擔心的問題,火星幫你解答

微信掃碼入群領福利

掃碼領福利最新AI資訊

點擊谘詢
添加老師微信,馬上領取免費課程資源

1. 打開微信掃一掃,掃描左側二維碼

2. 添加老師微信,馬上領取免費課程資源

×

同學您好!

您已成功報名0元試學活動,老師會在第一時間與您取得聯係,請保持電話暢通!
確定