虛擬現實交互設計(基於Unity引擎)(微課版)
內容描述
本書面向虛擬現實應用開發相關的讀者,利用通俗易懂的語言、循序漸進的項目,
詳細介紹了虛擬現實應用開發工作中交互功能的實現技術。
全書共分6章,
第1章介紹了Unity軟件的用途、下載安裝方法,以及項目資源的獲取方法,
第2至6章用5個翔實的案例,介紹了Unity項目開發流程、基本3D場景的創建、
角色控制和道具拾取功能的實現、利用粒子特效和音效模擬真實效果、
利用交互界面與角色互動的功能實現、角色動畫的應用、
角色之間的行為交互功能實現等技術內容。
本書以項目驅動方式組織教學內容,採用大量的圖片對操作步驟進行詳細說明,
所有知識點都有機融合在項目實現過程中。
全書內容豐富、系統性和應用性強,
融入了作者多年教學和實踐的經驗及體會,能夠使讀者較快的上手,
跟隨本書介紹的實踐過程循序漸進的掌握虛擬現實交互功能的實現技術。
本書既可作為高職高專、高等教育院校電腦及相關專業的教材,
也可作為廣大虛擬現實內容開發者自學的中級進階教材,
還可作為從事虛擬現實項目開發的工程技術人員學習和應用的參考書。
目錄大綱
第 1章 走進Unity的世界
1.1 Unity可以做什麽
1.2 Unity的下載、安裝和激活
1.2.1 Unity的下載
1.2.2 Unity的安裝
1.2.3 Unity的激活
1.3 獲取資源的途徑
1.3.1 什麽是資源
1.3.2 從Unity的Assets Store獲取資源
1.3.3 直接從Unity資源包文件導入資源
1.3.4 將自己創作的3D模型導出為適合在Unity中使用的“fbx”文件
1.4 本章小結
第 2章 通過一個小游戲認識Unity——星際冒險
2.1 項目和場景的創建
2.1.1 “項目”和“場景”的概念
2.1.2 項目和場景的創建
2.2 項目資源的導入和使用
2.2.1 資源的導入和管理
2.2.2 製作玩家控制的飛船
2.2.3 製作游戲場景的“背景畫面”
2.2.4 調整游戲畫面的大小比例
2.2.5 設置整玩家的視角
2.2.6 製作障礙物對象
2.3 交互功能的實現
2.3.1 查看已經導入的腳本文件
2.3.2 背景畫面的滾動效果
2.3.3 飛船的控制
2.3.4 隕石的隨機旋轉和平移
2.3.5 隕石的隨機生成
2.3.6 隕石的碰撞和回收
2.3.7 爆炸效果
2.3.8 刪除場景中的隕石對象並保存項目
2.4 本章小結
第3章 基本3D場景的創建——湖光山色
3.1 創建工程和場景
3.2 創建地形
3.2.1 創建地形對象及其對應的文件
3.2.2 查看“Terrain”組件
3.2.3 設置地形大小規模
3.2.4 設置地形的基準高度
3.2.5 繪制地形
3.2.6 地形平滑
3.2.7 “修整”平地
3.2.8 美化地形
3.3 添加光源和陰影
3.4 添加靜態物體
3.4.1 創建基本幾何體
3.4.2 添加外部模型
3.5 添加漫游功能
3.5.1 添加第 一人稱控制器
3.5.2 添加碰撞檢測功能
3.6 添加環境和效果
3.6.1 添加水效果
3.6.2 更改天空盒
3.6.3 添加霧效果
3.6.4 添加音效
3.7 本章小結
第4章 角色控制和道具拾取——坦克大戰
4.1 創建玩家控制的坦克
4.1.1 創建工程和場景並載入坦克模型
4.1.2 坦克移動和旋轉控制功能的實現
4.2 坦克炮塔的轉動控制
4.2.1 調整坦克模型
4.2.2 炮塔旋轉功能的實現原理
4.2.3 載入炮擊位置和瞄準器對象
4.2.4 炮塔旋轉功能的代碼實現
4.2.5 設置“可炮擊對象層”
4.2.6 運行並測試炮塔轉動功能
4.3 坦克的開炮控制
4.3.1 開炮功能的實現原理
4.3.2 載入爆炸粒子特效
4.3.3 開火效果的代碼實現
4.4 道具的創建和拾取
4.4.1 Unity中對象之間相互接觸的兩種處理方式
4.4.2 道具游戲物體的創建
4.4.3 道具的拾取
4.5 本章小結
第5章 粒子系統和音效——消防演練
5.1 本章內容概述
5.2 創建新工程和場景
5.3 游戲場景的設計
5.3.1 游戲場景模型的載入
5.3.2 音頻資源的導入和全局報警聲的製作
5.4 製作火焰和煙霧效果
5.4.1 導入火焰和煙霧粒子特效並使用
5.4.2 添加火焰音效
5.4.3 設計火勢控制腳本
5.4.4 火焰音效控制和火勢大小界面顯示
5.5 滅火功能的實現
5.5.1 導入滅火器相關資源
5.5.2 實現滅火器噴射功能
5.5.3 設計以滅火器為武器的第 一人稱游戲控制器
5.5.4 利用粒子碰撞實現滅火交互功能
5.6 游戲管理功能的設計
5.6.1 游戲管理相關界面的設計
5.6.2 界面控制器類的設計和實現
5.6.3 游戲控制器的設計和實現
5.6.4 游戲運行與驗證
5.7 本章小結
第6章 交互界面、角色動畫及戰鬥交互——異星獵手
6.1 創建工程和場景
6.2 游戲換裝交互界面的設計和功能實現
6.2.1 交互界面的設計
6.2.2 探索游戲主角模型從而確定換裝思路
6.2.3 設計換裝功能所需的類及其游戲對象
6.2.4 將交互界面與換裝功能關聯
6.3 角色動作及角色控制的實現
6.3.1 帶骨骼動畫的人物角色模型
6.3.2 導入第三人稱角色控制資源並應用到游戲主角對象上
6.3.3 更新換裝交互界面的設置
6.3.4 控制角色動作變化的原理
6.4 游戲角色戰鬥功能的實現
6.4.1 添加攝像機跟隨腳本並更新UI設置
6.4.2 添加瞄準與開槍的人形動畫
6.4.3 添加瞄準與開槍動作的腳本
6.4.4 激光束及其擊中效果的添加和功能實現
6.4.5 更新UI設置、運行測試並調整激光束參數
6.5 敵人角色的加入及其交互功能的實現
6.5.1 導入敵人角色
6.5.2 自動尋路功能的實現
6.5.3 敵人被摧毀功能的實現
6.5.4 敵人自爆並對主角造成傷害的實現
6.5.5 試運行並驗證本節功能
6.6 游戲管理功能的設計
6.6.1 游戲規則
6.6.2 敵人出生點的設計
6.6.3 游戲管理器的設計
6.6.4 運行游戲驗證功能
6.7 本章小結
作者介紹
李永亮
中國科學技術大學博士,Unity國際認證講師;Unity國際認證開發者;
開發作品《膽機組裝實訓虛擬仿真係統》參加2018年廣東省職業院校信息化教學大賽獲一等獎;
指導學生參加2018-2019年度廣東省職業院校學生專業技能大賽“虛擬現實(VR)設計與製作”賽項獲一等獎;
指導學生參加2018一帶一路暨金磚國家技能發展與技術創新大賽虛擬現實(VR)產品設計與開發競賽全國選拔賽獲二等獎。