虛幻引擎(UE4)技術基礎

姚亮

買這商品的人也買了...

商品描述

本書從虛幻引擎基礎、材質系統、藍圖、粒子系統、動畫系統、遊戲UI、光效處理、VR技術及設備8個方面詳細講解虛幻引擎及相關設備的使用方法。

項目1初識虛幻引擎,講解如何獲取並安裝虛幻引擎,以簡單模型為例講述使用虛幻引擎製作VR場景的流程。
項目2編輯材質,講解基於物理的材質及貼圖和視頻材質的製作方式。
項目3藍圖,是虛幻引擎最具特點的功能,也是本書的重點內容,從變量、流程控制節點、宏、碰撞觸發事件、組件、時間線及關卡流等方面詳細講解藍圖的使用方法。
項目4粒子系統,以下雨的粒子特效為例講述粒子編輯器常用模塊的設置方法。
項目5動畫,講解混合動畫和動畫蒙太奇的製作步驟。
項目6 UI,以製作遊戲主菜單為例講解控件、控件藍圖的使用方法。
項目7光效處理,以簡單案例的形式講述各種光源的使用方法。
項目8 VR硬件平台搭建,介紹如何使用常用的外部設備搭建虛擬現實的應用環境。

本書適用於職業院校及普通高等學校虛擬現實開發相關專業的教師和學生作為教材使用,也適用於虛擬現實相關專業技術人員參考。

作者簡介

序言
近年來,虛擬現實(Virtual Reality,VR)技術在各領域的應用日漸廣泛,其高度模擬性和交互性給各領域的展示和學習方式帶來了革命性的變化,虛擬現實技術甚至潛移默化地改變著人們的生活方式。作為開發VR產品(特別是PC端)的常用引擎,虛幻引擎(Unreal Engine)以其特有的可視化藍圖腳本系統、優質的畫面實時渲染效果、便捷的操作等優勢,得到了越來越多的VR項目製作者的青睞。
不僅是企業,職業院校也開始廣泛接觸虛幻引擎技術。目前全國職業院校技能大賽高職組“虛擬現實(VR)設計與製作”賽項(簡稱國賽)中,以Unreal Engine 4(UE4)和Unity為技術平台的“VR引擎”部分在試卷中佔據了40%的分值。
雖然大家看到了虛幻引擎的許多重要性元素,但是職業院校教師和學生對UE4引擎的學習途徑很少,適合職業院校師生學習的、自主版權的(非國外引進版權翻譯過來的)虛幻引擎中文教材幾乎沒有,網絡資源也比較匱乏,於是,北京信息職業技術學院虛幻引擎技術教學團隊決定撰寫一本針對職業院校和普通高等院校教師的入門技術參考教材。
教材編寫特點
本教材適應社會潮流,依據市場需求,提煉虛幻引擎的主要功能,採用項目教學、任務驅動的方式。每個任務都經過團隊精心設計,力求在實現簡單任務的過程中解析更多的虛幻引擎功能。針對操作步驟比較複雜的任務,教材編寫團隊製作了對應項目的電子課件和部分案例的微課視頻(視頻內容持續開發中,請掃描封底二維碼關注並學習),便於學習者使用。本教材適用於熱衷使用虛幻引擎開發項目的學習人員,尤其是初學者。
教材主要內容
本書從虛幻引擎基礎、材質系統、藍圖、粒子系統、動畫系統、遊戲UI、光效處理、VR技術及設備8個方面詳細講解了虛幻引擎及相關設備的使用方法。項目1初識虛幻引擎,講解如何獲取並安裝虛幻引擎,以簡單模型為例講述了使用虛幻引擎製作VR場景的流程。項目2編輯材質,講解基於物理的材質及貼圖和視頻材質的製作方式。項目3藍圖,是虛幻引擎最具特點的功能,也是本書的重點內容,從變量、流程控制節點、宏、碰撞觸發事件、組件、時間線及關卡流等方面詳細講解藍圖的使用方法。項目4粒子系統,以下雨的粒子特效為例講述粒子編輯器常用模塊的設置方法。項目5動畫,講解混合動畫和動畫蒙太奇的製作步驟。項目6 UI,以製作遊戲主菜單為例講解控件、控件藍圖的使用方法。項目7光效處理,以簡單案例的形式講述各種光源的使用方法。項目8 VR硬件平台搭建,介紹如何使用常用的外部設備搭建虛擬現實的應用環境。
教材適用對象
本教材適用於職業院校及普通高等學校虛擬現實開發相關專業的教師和學生使用,也適用於虛擬現實相關專業技術人員參考。

本書在編寫過程中得到武馬群教授及“虛擬現實(VR)設計與製作”賽項合作企業福建省華漁教育的支持和指導,在此一併表示感謝!由於作者水平有限,加之時間倉促,書中難免會存在一些缺點和不足,殷切希望廣大讀者批評指正。

編者

目錄大綱

目錄

序論1 

項目1初識虛幻引擎4 
1.1獲取並安裝虛幻引擎4 
1.1.1獲取虛幻引擎4 
1.1.2安裝虛幻引擎6 
1.2製作第一個關卡7 
1.2.1創建項目7 
1.2.2虛幻引擎界面8 
1.2.3創建新關卡11 
1.2.4放置對象12 
1.2.5光效處理17 
1.2.6運行關卡20 
1.3創建山地地形20 
1.3.1創建地形21 
1.3.2地形造型23 
1.4為場景添加植被25 
1.4.1植被靜態網格物體26 
1.4.2編輯植被27 
1.5使用靜態網格物體28 
1.5.1外部資源導入29 
1.5.2放置靜態網格物體30 
1.5.3靜態網格物體移動屬性設置31 
1.5 .4靜態網格物體的引用32 
1.5.5靜態網格物體的材質33 
1.6使用體積34 
1.6.1簡單體積35 
1.6.2特殊用途體積36 

項目2編輯材質38 
2.1初識材質38 
2.1.1材質編輯器38 
2.1.2主材質節點42
2.1.3編輯顏色44 
2.1.4應用材質46 
2.2編輯基於物理的材質47 
2.2.1基礎顏色47 
2.2.2金屬性49 
2.2.3高光49 
2.2.4粗糙度50 
2.3使用貼圖紋理創建材質52 
2.3 .1貼圖及紋理52 
2.3.2貼圖及紋理的應用54 
2.4製作視頻材質55 
2.4.1媒體框架55 
2.4.2製作視頻材質56 
2.5使用材質實例63 
2.5.1材質實例63 
2.5.2材質實例的應用65 

項目3藍圖69 
3.1認識藍圖69 
3.1.1藍圖類型69 
3.1.2可視化腳本71 
3.1.3關卡藍圖與藍圖類72 
3.1.4藍圖編輯器的常用操作75 
3.2使用變量77 
3.2.1創建變量77 
3.2.2變量的使用79 
3.2.3特殊類型變量的拆分80 
3.3實現流程控制80 
3.3.1 Branch節點81 
3.3.2 FlipFlop節點81 
3.3.3 Do Once節點82 
3.3.4 Do N節點82
3.3.5 DoOnce_MultiInput節點82 
3.3.6 ForLoop節點83 
3.3.7 Gate節點83 
3.3.8 MultiGate節點83 
3.3.9 Sequence與Delay節點84 
3.4使用函數與宏實現距離計算85 
3.4.1構造函數85 
3.4.2函數的應用85 
3.4.3宏的應用88 
3.5實現碰撞觸發事件89 
3.5.1可毀壞網格物體89 
3.5.2觸發器91 
3.5.3碰撞事件93 
3.6認識Actor的組件95 
3.6.1 Actor組件的獲取與設置95 
3.6.2函數的目標96 
3.6.3組件的應用97 
3.7使用TimeLine時間軸控制物體移動97 
3.7.1 TimeLine節點98 
3.7.2 TimeLine的數據曲線98 
3.7.3設置移動邏輯100 
3.8關卡流101 
3.8.1關卡流的創建101 
3.8.2關卡流的加載與卸載105 

項目4粒子系統112 
4.1熟悉粒子系統使用的術語112 
4.1.1模塊112 
4.1.2參數114
4.1.3細節級別115 
4.1.4 Distribution數據類型115 
4.2認識粒子編輯器115 
4.2.1粒子系統資源案例115 
4.2.2粒子編輯器116 
4.3製作下雨粒子特效120 
4.3.1製作粒子的材質120 
4.3 .2創建GPU粒子發射器122 
4.3.3編輯粒子系統模塊及參數124
 
項目5動畫130 
5.1為角色創建混合動畫130 
5.1.1外部動畫資源導入設置130 
5.1.2外部輸入映射133 
5.1.3混合動畫134 
5.1.4動畫藍圖136 
5.1.5角色藍圖140 
5.1.6遊戲模式的設定143 
5.2實現動畫的交互行為145 
5.2.1動畫蒙太奇145 
5.2.2動畫蒙太奇的調試149 

項目6 UI 151 
6.1認識虛幻引擎動態圖形UI設計器151 
6.1.1虛幻動態圖形UI設計器151 
6.1.2控件152 
6.1.3創建控件155 
6.1.4輸入模式157 
6.1.5錨點158 
6.2製作遊戲主菜單159 
6.2.1創建主菜單控件159
6.2.2製作主菜單外觀160 
6.2.3設置主菜單按鈕跳轉功能162 

項目7光效處理166 
7.1認識虛幻的光源166 
7.1.1定向光源166 
7.1.2點光源169 
7.1.3聚光源171 
7.1 .4天空光源172 
7.2照亮環境174 
7.2.1光效術語174 
7.2.2應用光效180 

項目8 VR硬件平台搭建188 
8.1認識VR品牌設備188 
8.1.1虛擬現實技術概述188 
8.1.2 VR品牌設備189 
8.2 HTC Vive設備安裝及配置192 
8.2.1 HTC Vive設備192 
8.2.2 HTC Vive設備安裝193 
8.2.3軟件安裝與調試195 

參考文獻199