400-650-7353
您所在的位置:首頁 > IT干貨資料 > unity > 【Unity基礎(chǔ)知識】UE4動態(tài)改變物體顏色

【Unity基礎(chǔ)知識】UE4動態(tài)改變物體顏色

  • 來源:Unity干貨資料
  • 2021-07-07 17:40:30
  • 閱讀()
  • 分享
  • 手機端入口

我們在使用或者開發(fā)虛擬仿真軟件的時候經(jīng)常會遇到這樣的需求:點擊某個按鍵讓物體改變顏色。那么面對這樣的需求時我們應(yīng)該從哪些方面著手呢?

通過分析可以得知,我們需要準備以下內(nèi)容:1)可以變色的材質(zhì);2)可以接受用戶輸入的藍圖(如果使用按鍵)。

第一步:準備可以變色的材質(zhì)。

在UE4中材質(zhì)的動態(tài)改變需要借助參數(shù)來實現(xiàn)。我們首先在內(nèi)容瀏覽器中點擊右鍵選擇Material創(chuàng)建一個基本材質(zhì),雙擊打開。

打開之后創(chuàng)建一個Const Vector3節(jié)點和兩個Float節(jié)點,前者控制顏色,后者控制Metallic和Roughness,連接如下圖所示。

接下來,需要將顏色變?yōu)閰?shù),直接在Const Vector3節(jié)點右擊選擇Convert to Parameter,并且設(shè)置參數(shù)名稱為Color(后面會用到這個參數(shù))。

第二步:接受用戶輸入。

我們需要創(chuàng)建一個藍圖類,在藍圖類中集中處理輸入和變色的邏輯。直接在內(nèi)容瀏覽器中點擊右鍵選擇Blueprint Class,在彈出的選擇父類窗口中選擇Actor作為基類,重新命名為BP_ColorChanger,創(chuàng)建好之后如下圖所示。

接下來,雙擊打開新創(chuàng)建的BP_ColorChanger藍圖。在左上角的組件面板中點擊AddComponent按鈕,添加一個Static Mesh組件,添加完成之后選擇這個組件,在屬性面板中找到Static Mesh,設(shè)置該屬性為Material Sphere,并將Materials分類下Element0設(shè)置為第一步中創(chuàng)建的材質(zhì)球,效果如下圖所示。

切換到Construction Script標簽,將Static Mesh組件從組件面板中拖拽到節(jié)點視圖面板中。搜索Create Dynamic Material Instance,并創(chuàng)建變量,命名為DynMat,如下圖所示。

切換到EventGraph標簽,刪除所有節(jié)點,我們這個案例中暫時用不到。我們需要按下R鍵變成紅色,按下G鍵變成綠色,按下B鍵變成藍色。

在節(jié)點視圖中點擊右鍵搜索R發(fā)現(xiàn)有很多符合要求的節(jié)點,為了方便快速的找到鍵盤上的r鍵,這里推薦給大家一個小技巧,搜索keyboard r可以過濾掉很多節(jié)點。

創(chuàng)建R鍵的點擊事件,將上一步中創(chuàng)建的DynMat變量拖拽到節(jié)點視圖中并搜索Set Vector Parameter Value節(jié)點,將其參數(shù)設(shè)置為Color和紅色,如下圖連接。

默認的Actor藍圖類是不接受用戶輸入的,需要簡單設(shè)置一下。點擊Class Defaults,在屬性面板中搜索input,設(shè)置Auto Receive Input為Player0即可。

點擊Compile,將新創(chuàng)建的藍圖類拖拽到關(guān)卡中,點擊Play,模型變成紅色,說明我們的效果基本實現(xiàn)。

用同樣的方式和思路可以實現(xiàn)變成綠色和藍色的操作。我們小案例到此就結(jié)束了。

文章“【Unity基礎(chǔ)知識】UE4動態(tài)改變物體顏色”已幫助

>>本文地址:http://nfbqydst.cn/zhuanye/2021/69179.html

THE END  

聲明:本站稿件版權(quán)均屬中公教育優(yōu)就業(yè)所有,未經(jīng)許可不得擅自轉(zhuǎn)載。

1 您的年齡

2 您的學(xué)歷

3 您更想做哪個方向的工作?

獲取測試結(jié)果
  • 大前端大前端
  • 大數(shù)據(jù)大數(shù)據(jù)
  • 互聯(lián)網(wǎng)營銷互聯(lián)網(wǎng)營銷
  • JavaJava
  • Linux云計算Linux
  • Python+人工智能Python
  • 嵌入式物聯(lián)網(wǎng)嵌入式
  • 全域電商運營全域電商運營
  • 軟件測試軟件測試
  • 室內(nèi)設(shè)計室內(nèi)設(shè)計
  • 平面設(shè)計平面設(shè)計
  • 電商設(shè)計電商設(shè)計
  • 網(wǎng)頁設(shè)計網(wǎng)頁設(shè)計
  • 全鏈路UI/UE設(shè)計UI設(shè)計
  • VR/AR游戲開發(fā)VR/AR
  • 網(wǎng)絡(luò)安全網(wǎng)絡(luò)安全
  • 新媒體與短視頻運營新媒體
  • 直播帶貨直播帶貨
  • 智能機器人軟件開發(fā)智能機器人
 

快速通道fast track

近期開班時間TIME