Unreal Engine 5與二維游戲設計 ( 簡體 字) |
作者:林華 主編、鐘景浩 副主編 | 類別:1. -> 多媒體 -> 遊戲引擎 -> UnReal |
譯者: |
出版社:清華大學出版社 | 3dWoo書號: 56389 詢問書籍請說出此書號!【有庫存】 NT售價: 545 元 |
出版日:4/1/2024 |
頁數: |
光碟數:0 |
|
站長推薦: |
印刷:黑白印刷 | 語系: ( 簡體 版 ) |
|
加入購物車 │加到我的最愛 (請先登入會員) |
ISBN:9787302660323 |
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 序 |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證) |
作者序: |
譯者序: |
前言:什么是數字游戲和數字游戲設計 從文明史和文化史的宏觀角度來看,游戲是人類文明和藝術起源的一個分支,因此游戲具有十分重要的意義。人類的社會實踐不僅包含對物質生產的需求,還包含對精神生活的需求,而游戲和娛樂活動也是人類精神生活需求的一個重要組成部分。游戲是人類的本性之一,不同時代的人們玩著不同的游戲。計算機圖形學的出現,為人與計算機之間的交流與互動開辟了新的天地。隨著它的發展,使得藝術漸漸與計算機結合在了一起,并與其他計算機技術一同在 20 世紀 70 年代為人類帶來了一個全新的娛樂方式—數字游戲,也被稱為第九藝術。 我認為數字游戲是兩個或多個游戲對手之間,在以計算機科學技術為平臺的特定環境中(數字游戲環境中)進行一種有規則的、以試圖贏得勝利或者獲取娛樂為目標的,自愿地、并在快樂中學會某種本領的交互式游戲活動。數字游戲設計則是以計算機硬件和軟件為平臺,通過策劃、設計、編程、制作和測試等環節,來完成和實現數字游戲的過程和結果。 數字游戲可以給玩家帶來快樂,是深受年輕人喜歡的一種娛樂方式,隨著全球互聯網的發展以及電腦、智能手機、平板電腦等電子設備的更新換代,游戲載體和類型不斷豐富,游戲品質不斷提高,各種游戲類型均有龐大的受眾群體,全球游戲市場迅速崛起,市場規模逐步擴大。數字游戲已發展為一個巨大的產業,在全球范圍內,十年前就已經超過了電影票房和音樂演唱會的收入,在我國同樣如此。 數字游戲設計教育 隨著數字游戲產業的發展壯大,與游戲設計和制作相關人才的需求越來越急迫,對人才的素質要求也越來越高,數字游戲產業面臨人才的饑荒。數字游戲產業和游戲市場的需求,必然會影響學校的教育和人才培養的方向。但是到目前為止,中國高等院校的數字游戲設計教育還十分落后。 數字游戲是計算機科學和藝術與設計的結合,它融合了文學、美術、建筑、景觀、藝術設計、音樂、電影、動畫、人工智能、計算機技術等許多方面的技術和藝術。數字游戲與影視和動畫不同,游戲是通過雙向或多向實時交互闖關進行的,因而游戲的情節是不固定和非線性的。數字游戲是跨科學和藝術的,它集最新的計算機技術與最前衛的視覺藝術和藝術設計于一體,且數字游戲的設計和制作難度遠高于電影和動畫。 什么是游戲引擎 在游戲開發的早期,基本上都是由一個或者幾個程序員從頭到尾完整地開發一個游戲。隨著數字游戲開發的發展,游戲開發者們看到,不同的游戲軟件中有很多功能相同的代碼,為了減少重復勞動,程序員們把在多個游戲中一樣的功能、一些已經編寫好的、能夠重復使用的代碼封裝在一起,這些能實現特定功能的通用程序庫就成了早期游戲引擎的原型。所以,游戲引擎就是指一些已編寫好的、可編輯電腦游戲系統或者一些交互式實時圖像應用程序的核心組件。這些系統為游戲設計者提供編寫游戲所需的各種工具,其目的在于讓游戲設計者能容易和快速地寫出程序,而不用每個游戲都從零開始開發。 大多數游戲引擎包含以下系統:二維圖像和三維圖像的渲染引擎、物理引擎和碰撞檢測系統、用戶界面鍵映射和其他界面組件、音頻引擎、腳本引擎、動畫引擎、照明、著色器、陰影、對象材質和其他視覺組件、虛擬現實工具、人工智能、網絡引擎以及場景管理等。這些工具中的每一個都可以實現快速開發,它使游戲設計師專注于游戲設計和制作,而無須高超的技術和專業的編程技能,甚至幾個人的小團隊都可以進行數字游戲的開發,從而大大加速了數字游戲設計與制作的進程。 關于本系列圖書 正是由于上述原因,我們選擇 Unreal Engine 游戲設計引擎編撰了基于 Unreal Engine 5(UE5)引擎的系列圖書。本系列圖書的特點是,擺脫了傳統軟件教材以“菜單”“命令”為主的介紹,轉而基于常見的游戲項目進行寫作。本書第 7 ∼ 9 章一步一步地詳細介紹三個比較典型的和常用的二維游戲設計方法;第 10 章加以拓展,跨出游戲設計,介紹“數字二維交互藝術設計”,因為 Unreal Engine 引擎不僅可以設計和制作數字游戲,而且還可以兼顧建筑設計、景觀設計、室內設計、產品設計以及 AR、VR 等領域的設計和制造。同時,影視制作行業、廣播行業以及 AI 駕駛和 AI 訓練等領域都可以使用 Unreal Engine 引擎,甚至在軍事、醫學、工業、教育、科研、科普、培訓等諸多領域的嚴肅游戲設計中也有廣泛應用,并可以實現和獲得超出預期的效果。 鑒于此,希望讀者不要局限于圖書所教授的數字二維游戲設計、數字三維游戲設計、影視動畫設計與制作和虛擬現實設計等領域,一定要把基于游戲引擎所學習到的設計和制作方法拓展開來,向軍事、醫學、工業、教育、科研、科普、培訓等諸多領域進行跨學科的應用。這樣,在更好地服務于上述更加廣大應用領域的同時,也會為自己找到更加廣闊的就業空間。 林華 2024 年 1 月于清華園 |
內容簡介:本書主要講解使用 UE5(Unreal Engine 5)引擎開發 2D 游戲,介紹 UE5 制作 2D 內容所需要的全部技術知識。 全書內容包括:使用 UE5 開發 2D 游戲需要掌握的基礎知識(第 1 ∼ 6 章),包括 UE5 的安裝、項目結構分析、界面布局,也包括針對 2D 項目的特殊設置;2D 游戲項目實例(第 7 ∼ 9 章),每章都是一個完整的 2D 游戲,從易到難地介紹 2D 內容制作的各技術方向;最后第 10 章介紹使用 UE5制作 2D 交互藝術作品,以及游戲之外的交互內容。書中的實例都提供配套的資源和源代碼。 本書適合 UE5 引擎的初學者、獨立游戲開發者和有興趣使用 UE5 引擎制作交互內容的讀者,也適合學校作為交互藝術設計、游戲開發等專業的初級課程。 |
目錄:第1章?UE5介紹…1 1.1什么是游戲引擎····1 1.1.1實時渲染器···1 1.1.2物理引擎···2 1.1.3人工智能引擎···2 1.1.4網絡引擎···3 1.1.5聲音渲染器···3 1.1.6腳本引擎···4 1.2UE的發展歷史·····5 1.2.1第一代UE····5 1.2.2UE2∼UE2.5···6 1.2.3UE3···7 1.2.4UDK·····8 1.2.5UE4···8 1.2.6EpicGamesStore····11 1.2.7UE5·····11 1.3UE在其他領域的應用···12 1.3.1建筑設計、景觀設計、室內設計等設計行業···12 1.3.2影視制作行業·····13 1.3.3廣播行業·····13 1.3.4產品設計和制造領域·····14 1.3.5AI駕駛、AI訓練等領域···14 1.3.6AR、VR領域·····15 1.4UE5游戲引擎的功能····15 1.4.1Lumen·····16 1.4.2Nanite···16 1.4.3VirtualShadowmaps···16 1.5UE5的特點·····16 1.5.1高品質全功能·····16 1.5.2工作流功能強大,耦合性低·····17 1.5.3頂級的視覺效果,最高端的圖形渲染技術···17 1.5.4友好的社區,良好的文檔及技術支持···18 1.5.5強大的跨平臺能力·····18 1.5.6靈活的授權模式·····19 1.6使用UE5的軟件和硬件需求····19 1.6.1安裝UE5的軟件需求····19 1.6.2硬件需求·····20 1.6.3關于用筆記本計算機學習使用UE5···21 總結···22 問答···22 思考···22 練習···22 第2章?UE5的安裝與使用……23 2.1注冊Epic官方賬號····23 2.2下載安裝EpicGameLauncher·····25 2.2.1下載EpicGameLauncher·····25 2.2.2安裝EpicGameLauncher·····26 2.2.3登錄EpicGameLauncher·····26 2.3安裝UE5·····27 2.4EpicGameLauncher的主要功能·····29 2.4.1News····29 2.4.2示例·····29 2.4.3虛幻商城·····30 2.4.4庫·····31 2.5修改EpicGameLauncher設置·····31 2.5.1修改EpicGameLauncher語言·····31 2.5.2修改EpicGameLauncher緩存目錄··32 總結···32 問答···32 思考···32 練習···32 第3章?第一個UE5項目及項目結構分析…………33 3.1開啟UE5項目瀏覽器····33 3.2虛幻項目瀏覽器界面介紹·····34 3.2.1“最近打開的項目”·····34 3.2.2“游戲”標簽·····36 3.2.3“影視與現場活動”標簽·····37 3.2.4“建筑”標簽·····37 3.2.5“汽車、產品設計和制造”標簽·····38 3.3創建項目·····38 3.3.1選擇模板類型·····38 3.3.2設置項目默認設置·····39 3.3.3項目默認配置說明·····39 3.3.4設置項目名稱和項目位置·····40 3.4UE5項目結構分析····42 3.4.1什么是UE5項目····42 3.4.2項目目錄結構·····42 3.5改變UE5項目版本····43 3.5.1查看引擎版本·····43 3.5.2版本字符串不可用的情況·····44 3.5.3切換引擎版本·····44 3.6UE5插件管理·····45 3.6.1打開插件管理器·····45 3.6.2插件分類·····45 3.6.3uproject文件控制插件功能···47 3.7編輯器設置·····47 3.7.1改變編輯器默認語言·····47 3.7.2改變編輯器默認自動保存的行為·····49 3.7.3還原編輯器設置·····50 總結···50 問答···50 思考···50 練習···50 第4章?UE5引擎界面布局與基礎操作………51 4.1UE5界面布局·····51 4.1.1UE5默認界面布局····51 4.1.2UE5自定義界面布局····52 4.1.3保存已調整好的布局·····54 4.1.4讀取保存的布局文件·····55 4.1.5加載默認布局·····55 4.2菜單·····55 4.2.1“文件”菜單·····55 4.2.2“編輯”菜單·····57 4.2.3“窗口”菜單·····58 4.2.4“工具”菜單·····59 4.2.5“構建”菜單·····59 4.2.6“選擇”菜單·····60 4.2.7“幫助”菜單·····60 4.3工具欄·····60 4.3.1編輯器模式·····61 4.3.2快速添加到項目按鈕·····61 4.3.3藍圖按鈕菜單·····62 4.3.4過場動畫按鈕菜單·····62 4.3.5播放控制按鈕·····62 4.3.6平臺按鈕菜單·····63 4.4視口面板·····63 4.4.1視口操作·····63 4.4.2視口的視圖類型·····65 4.4.3視口布局·····65 4.4.4快速切換視圖類型·····66 4.4.5視口顯示模式·····66 4.4.6視圖中Actor的操作·····66 4.5大綱面板·····68 4.5.1對Actor進行重命名·····68 4.5.2通過名稱搜索物體·····68 4.5.3通過文件夾管理項目結構·····68 4.5.4創建父子關系·····69 4.6內容瀏覽器·····69 4.6.1顯示內容瀏覽器·····70 4.6.2內容資源管理·····70 4.6.3保存新建或修改過的資產·····70 總結···71 問答···71 思考···71 練習···72 第5章?UE5引擎Paper2D插件…………73 5.1為什么用UE5開發2D游戲·····73 5.1.12D游戲的發展···73 5.1.22D游戲的優點···74 5.1.3學習2D游戲開發的優點·····76 5.1.4使用UE5開發2D游戲的優點····76 5.2Paper2D插件介紹···77 5.2.1打開Paper2D插件·····77 5.2.2Paper2D插件提供的內容·····78 5.2.3Paper2D插件提供的基礎材質·····79 5.3Sprite····80 5.3.1UE5中的Sprite·····80 5.3.2圖片與紋理·····80 5.3.3創建Sprite···82 5.4Sprite設置···83 5.4.1Sprite大小···83 5.4.2自定義Sprite渲染形狀·····84 5.4.3自定義Sprite碰撞·····85 5.5使用單張紋理創建多個Sprite···88 5.6圖像序列·····90 5.7瓦片與瓦片集·····93 5.7.1創建瓦片集·····93 5.7.2設置瓦片碰撞區域·····94 5.7.3使用瓦片集創建瓦片貼圖·····94 總結···96 問答···96 思考···96 練習···96 第6章?UE52D開發初始設置………97 6.1Sprite模糊···97 6.2后處理自動曝光····100 6.2.1通過后處理體角色關閉自動曝光···100 6.2.2通過視口工具菜單關閉自動曝光···102 6.2.3使用項目設置的自動曝光控制亮度103 6.3導入UE5后的Sprite變色···103 6.3.1UE5顏色矯正工具·····103 6.3.2顏色產生變化的原因···106 6.3.3解決色彩改變···106 6.4UE52D攝影機設置·····109 6.5UE5瓦片貼圖縫隙處理···112 6.6Sprite透明排序·····113 6.6.12D層捕捉····113 6.6.2透明渲染順序···114 總結·····115 問答·····115 思考·····115 練習·····115 第7章?用UE5開發《俄羅斯方塊》休閑游戲……116 7.1游戲玩法分析····116 7.1.1簡單描述《俄羅斯方塊》玩法···117 7.1.2詳細總結《俄羅斯方塊》玩法···117 7.2創建項目····117 7.2.1項目設置···117 7.2.2創建2D空關卡···118 7.2.3創建關鍵游戲藍圖···118 7.2.4設置UE5使用新創建的玩法類·····120 7.2.5創建游戲相關類···122 7.2.6導入資源···122 7.3裝飾場景····124 7.3.1設置后處理自動曝光···124 7.3.2設置色調映射器···124 7.3.3其他后處理設置···125 7.3.4添加背景音樂···125 7.4設置攝影機····126 7.4.1設置玩家使用的Pawn角色···126 7.4.2添加玩家Pawn的攝影機組件·····126 7.4.3設置攝影機組件參數···127 7.5創建背景網格····128 7.5.1添加網格到關卡···128 7.5.2為背景網格添加的長度和寬度···128 7.5.3創建背景方塊···129 7.6BP_Grid創建方塊····135 7.7添加BP_Tetris自動下落功能·····136 7.7.1添加預覽模型···136 7.7.2讓BP_Tetris向下移動····137 7.8完成BP_Tile功能····139 7.8.1設置BP_Tile的基礎組件和屬性···139 7.8.2BP_Tetris的不同類型·····139 7.8.3使用枚舉區分類型···139 7.8.4為BP_Tile添加類型變量···140 7.8.5根據類型設置顏色···140 7.9隨機生成不同類型的BP_Tetris···143 7.9.1添加SetTetrisType事件函數···143 7.9.2添加子角色組件···144 7.9.3根據類型設置BP_Tile顏色···145 7.9.4轉換圖表為函數···147 7.9.5根據類型設置BP_Tile位置···148 7.9.6BP_Grid創建隨機類型的BP_Tetris····150 7.10輸入設置·····154 7.10.1設置“輸入”····154 7.10.2藍圖響應“輸入”事件····154 7.10.3通過BP_Tetris_PlayerPawn控制BP_Tetris···156 7.11控制Tetris移動旋轉和加速···160 7.11.1控制Tetris加速下落·····160 7.11.2判斷Tetris是否結束·····161 7.11.3BP_Tetris降落到底部····163 7.11.4控制BP_Tetris左右移動···167 7.11.5控制BP_Tetris旋轉···168 7.12BP_Tetris落地后的相關邏輯·····169 7.12.1管理BP_Grid中的BP_Tile·····169 7.12.2往BP_Grid中添加BP_Tile·····170 7.12.3檢查游戲是否結束····170 7.12.4查找BP_Grid中BP_Tile滿了的行···171 7.12.5移除滿行的行中所有BP_Tile·····172 7.12.6把刪除行之上的Tile順序下移····174 7.12.7實現方塊落下之后的所有邏輯····175 7.12.8完善方塊移動旋轉····178 7.13細化完成游戲·····180 7.13.1添加得分記錄····180 7.13.2添加UI···184 7.13.3添加音效····196 7.14打包為Windows平臺可執行文件···197 7.14.1設置Windows平臺打包環境···197 7.14.2Windows平臺打包····200 總結·····202 問答·····202 思考·····202 練習·····202 第8章?用UE5開發2D平臺游戲…………203 8.12D平臺游戲介紹·····203 8.1.12D平臺類游戲的優點····203 8.1.22D平臺類游戲代表作品····203 8.2創建2D平臺游戲項目·····204 8.2.1創建項目···205 8.2.2項目配置···205 8.2.3創建基礎游戲玩法類···205 8.3實現2D平臺游戲角色·····207 8.3.1導入資源···207 8.3.2創建Flipbooks動畫····209 8.3.3設置玩家圖像序列···210 8.3.4添加玩家攝影機···210 8.3.5添加玩家基礎移動···211 8.4使用精靈創建關卡····217 8.4.1自定義捕捉間距···217 8.4.2設置精靈碰撞形狀···218 8.4.3創建完整關卡···220 8.4.4添加背景···221 8.4.5設置跳躍高度···222 8.5使用瓦片地圖創建關卡····223 8.5.1使用瓦片制作地圖的優點···223 8.5.2創建瓦片集···223 8.5.3創建瓦片貼圖···224 8.5.4編輯瓦片貼圖···224 8.5.5在關卡中使用瓦片貼圖···226 8.5.6設置瓦片碰撞···226 8.5.7設置背景方法2···227 8.6創建可拾取金幣····228 8.6.1創建金幣藍圖···228 8.6.2準備精靈資源···228 8.6.3設置金幣藍圖···229 8.6.4創建金幣邏輯···230 8.7設置藍圖類圖標····232 8.7.1自定義藍圖Icon···232 8.7.2自定義關卡文件圖標···232 8.8添加陷阱····233 8.8.1創建設置陷阱藍圖···233 8.8.2添加玩家受傷邏輯···233 8.8.3陷阱觸發玩家受傷···234 8.8.4處理玩家角色死亡···235 8.8.5實現玩家受傷效果···236 8.9添加移動平臺····238 8.9.1創建設置平臺藍圖···238 8.9.2設置移動目標···240 8.9.3移動平臺···240 8.9.4設置TimeLine播放時間····242 8.10添加不可見死亡觸發器·····244 8.10.1添加設置死亡觸發器藍圖····244 8.10.2設置角色死亡事件····245 8.10.3在關卡中配置死亡觸發角色····245 8.11添加過關藍圖·····247 8.11.1創建過關藍圖····247 8.11.2準備過關藍圖圖像序列····247 8.11.3設置過關藍圖····248 8.12GameHUD···250 8.12.1創建UI藍圖·····250 8.12.2創建生命欄····250 8.12.3完成生命欄邏輯····253 8.12.4顯示游戲UI···255 8.12.5添加金幣UI···255 8.12.6完成金幣顯示····257 8.13移動平臺輸入·····260 8.13.1添加布局輸入控制器UI···260 8.13.2添加控制器UI到視口·····263 8.13.3準備動作事件····264 8.13.4UI觸發事件···265 8.14Android平臺游戲打包····269 8.14.1安裝AndroidStudio···269 8.14.2安裝AndroidSDK·····271 8.14.3UE5更新AndroidSDK版本····274 8.14.4項目打包配置····276 8.14.5處理打包錯誤····278 8.14.6安裝到真機····280 總結·····282 問答·····282 思考·····282 練習·····282 第9章?在UE5中用2D骨骼動畫技術制作塔防游戲…283 9.12D骨骼動畫簡介及制作方法·····283 9.2SpineUnrealEngine插件···287 9.2.1下載SpineRuntime源代碼····287 9.2.2編譯SpineUE插件·····288 9.2.3安裝spineUE4插件····290 9.3準備項目資產····291 9.3.1Spine動畫介紹····291 9.3.2導入spine資產····291 9.3.3播放Spine動畫···293 9.3.4準備游戲資源并搭建背景關卡···300 9.3.5關閉流式紋理解決紋理模糊問題···302 9.4創建角色類····302 9.4.1創建玩家攝影機角色···302 9.4.2設置角色基類···303 9.4.3創建設置玩家英雄類···304 9.4.4創建設置敵人類···306 9.4.5敵人向前移動···307 9.5實現游戲攻擊邏輯····308 9.5.1敵人攻擊玩家英雄···308 9.5.2玩家英雄攻擊敵人···312 9.5.3Enemy生成器·····314 9.6添加金幣系統····317 9.6.1在BP_Player中添加金幣···317 9.6.2創建BP_Coin金幣藍圖類·····317 9.6.3設置金幣響應單擊事件···318 9.6.4設置金幣掉落···319 9.6.5金幣生成器···321 9.7購買放置英雄····323 9.7.1HUD顯示金幣····323 9.7.2創建購買英雄圖標···325 9.7.3英雄角色生成點···329 9.7.4購買后顯示英雄圖標···331 9.7.5管理角色生成點···333 9.8添加守護入口····337 總結·····340 問答·····341 思考·····341 練習·····341 第10章?基于UE5的數字二維交互藝術設計………342 10.1數字二維交互藝術設計的概念·····342 10.2當代常見的交互藝術形式·····343 10.3UE5如何制作交互藝術·····345 10.4基于UE5的數字二維交互藝術設計案例·····347 總結·····355 思考·····355 練習·····355 |
序: |