400-650-7353

精品課程

您所在的位置:首頁 > IT干貨資料 > unity > 【Unity基礎知識】UE4晝夜循環制作

【Unity基礎知識】UE4晝夜循環制作

  • 來源:Unity干貨資料
  • 2021-01-08 14:38:19
  • 閱讀()
  • 分享
  • 手機端入口

我們現實世界中是24小時的晝夜循環機制,所以很多生存類的游戲中也會模擬這種晝夜循環,白天和夜晚會有不一樣的機制,可以給玩家帶來更刺激的體驗。接下來就交給大家如何在UE4中制作一個簡單的晝夜循環效果。

首先我們需要創建新工程,您也可以在現有工程中創建一個新場景。在新建場景時選擇“Default”模板,因為這個模板自帶天空盒和燈光,這正是我們所需要的。

創建完成之后我們根據自己的需要對場景進行微調。選擇Floor,將其縮放調整為(100,100,1),其他保持默認。在正式制作晝夜循環之前我們首先分析一下思路。場景中的LightSource和SkySphere兩個物體比較關鍵,LightSource為場景中的主光源,本質是Directional Light。SkySphere是場景中默認的天空盒,這個天空盒比較強大,自帶朝陽、正午、夕陽和夜晚等各個時段的效果。稍微仔細觀察就會發現兩個物體之間還是有關聯的。點擊SkySphere的Directional Light Actor屬性旁邊的放大鏡圖標可以定位到LightSource物體,這說明天空盒的燈光來源是LightSource。

通過上面的分析可以得知,我們只需要控制LightSource的旋轉,之后刷新SkySphere即可。接下來我們按照這個思路去實現。

因為需要實時刷新,所以需要借助Tick函數,這個函數每幀調用。首先將LightSource和SkySphere引入到關卡藍圖中。然后在Tick函數中控制LightSource的旋轉,通過測試會發現,沿著Y軸旋轉是我們想要的效果,所以我們需要調用LightSource的AddActorWorldRotation函數,修改Y軸的旋轉,每幀增加1度的旋轉,目前的關卡藍圖如下所示。

如果此時運行會發現場景中的燈光并沒有改變方向,并且在停止運行之后還會報錯,如下圖所示。

大體意思是如果想對燈光進行變換,那么必須將燈光設置為 Movable 類型。

修改完之后運行游戲,發現場景中陰影和亮度已經有效果了,但是天空盒并沒有刷新,依然是白天的樣子,所以接下來我們需要刷新天空盒。SkySphere中有一個函數叫Update Sun Direction可以根據燈光朝向刷新天空盒的材質球。完善之后的關卡藍圖如下

做完上面的步驟,運行游戲可以發現已經初步實現了晝夜交替的效果。



這只是最簡單的晝夜變換,您還可以繼續完善,例如晝夜變換時燈光的亮度不一樣等等功能。

學習疑問申請解答
您的姓名
您的電話
意向課程
 

中公優就業

IT小助手

掃描上方二維碼添加好友,請備注:599,享學習福利。

>>本文地址:
注:本站稿件未經許可不得轉載,轉載請保留出處及源文件地址。

推薦閱讀

優就業:ujiuye

關注中公優就業官方微信

  • 關注微信回復關鍵詞“大禮包”,享學習福利
QQ交流群
在線疑問解答
(加群備注“網站”)
IT培訓交流群 加入群聊 +
軟件測試 加入群聊 +
全鏈路UI/UE設計 加入群聊 +
Python+人工智能 加入群聊 +
互聯網營銷 加入群聊 +
Java開發 加入群聊 +
PHP開發 加入群聊 +
VR/AR游戲開發 加入群聊 +
大前端 加入群聊 +
大數據 加入群聊 +
Linux云計算 加入群聊 +
優就業官方微信
掃碼回復關鍵詞“大禮包”
享學習福利

測一測
你適合學哪門IT技術?

1 您的年齡

2 您的學歷

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

獲取測試結果
 
課程資料、活動優惠 領取通道
 
 
聚星注册-聚星登陆