Unity 5.X 3D游戲開發技術詳解與典型案例-(附光盤) 版權信息
- ISBN:9787115412737
- 條形碼:9787115412737 ; 978-7-115-41273-7
- 裝幀:暫無
- 冊數:暫無
- 重量:暫無
- 所屬分類:>>
Unity 5.X 3D游戲開發技術詳解與典型案例-(附光盤) 本書特色
本書對unity 3d集成開發環境界面、腳本的編寫和眾多高級特效的實現進行了詳細介紹,內容深入淺出,是一本適合不同需求、不同開發水平讀者的技術寶典。
全書共分16章。第1章主要介紹了unity 3d的誕生、特點、開發環境的搭建及運行機制;第2章對unity 3d集成開發環境進行了詳細介紹;第3章介紹了unity 3d中腳本的編寫;第4章主要對unity 3d開發過程中經常使用的組件及對象進行了詳細介紹;第5章介紹了unity游戲開發中非常流行的第三方ui界面開發組件庫—ngui的基礎知識;第6章介紹了unity開發平臺的完整的物理引擎體系;第7章介紹了unity 3d中的著色器和著色器語言—shaderlab;第8章介紹了天空盒、虛擬按鈕與搖桿、聲音、水特效、3d拾取、重力加速度傳感器及霧特效等開發常用的技術;第9章介紹了unity中經常使用的光影效果,主要包括各種光源、光照烘焙、法線貼圖、鏡面特效、波動水面真實效果等技術;第10章介紹了unity中模型的網格概念及新舊動畫系統;第11章介紹了unity自帶的地形引擎、拖尾渲染及導航網格和尋路系統等知識;第12章介紹了assetbundle更新資源包的使用;第13章介紹了unity中的多線程技術與網絡開發;第14章介紹了unity 2d游戲開發工具;第15章介紹了unity 3d提供的profiler工具的使用方法,及斷點調試的兩種方式;第16章介紹了完整的大型3d游戲案例—指間足球。
為了便于讀者學習,本書還附贈光盤,包含了書中所有案例的完整源代碼,能夠幫助讀者快速掌握開發技術。
Unity 5.X 3D游戲開發技術詳解與典型案例-(附光盤) 內容簡介
全面講解了unity 5的新特性和新應用
講解了用unity5進行3d游戲開發的高級技術:如著色器、高級光影效果、動畫、剛體、碰撞器、粒子系統、關節、交通工具及布料、天空盒、虛擬按鈕與搖桿、聲音、水特效、3d拾取、加速度傳感器及霧特效、地形引擎、拖尾渲染及導航網格和尋路系統、光源、光照烘焙、法線貼圖、實時陰影、鏡面特效、波動水面真實效果以及立方圖紋理等高級特效
用綜合案例講解了unity 3d強大的物理引擎具體應用和ngui、shaderlab的實戰技術
Unity 5.X 3D游戲開發技術詳解與典型案例-(附光盤) 目錄
目 錄第1章 unity基礎以及開發環境的搭建 11.1 unity基礎知識概覽 11.1.1 初識unity 11.1.2 unity的誕生及發展 11.1.3 unity廣闊的市場前景 21.1.4 獨具特色的unity 31.2 unity開發環境的搭建 71.2.1 windows平臺下unity的下載及安裝 71.2.2 mac os平臺下unity的下載及安裝 111.2.3 目標平臺的sdk與unity集成 141.3 **個unity程序 171.4 本書案例的導入及運行 211.5 本章小結 25第2章 unity集成開發環境詳解 272.1 unity集成開發環境的整體布局 272.1.1 unity集成開發環境的整體布局 272.1.2 菜單欄 282.1.3 工具欄 282.1.4 場景設計面板 292.1.5 游戲預覽面板 322.1.6 游戲組成對象列表 332.1.7 項目資源列表 342.1.8 屬性查看器 352.1.9 狀態欄與控制臺 352.1.10 動畫視圖 362.1.11 動畫控制器編輯視圖 362.2 菜單欄 372.2.1 文件(file) 372.2.2 編輯(edit) 402.2.3 資源(assets) 462.2.4 游戲對象(gameobject) 522.2.5 組件(component) 552.2.6 窗口(window) 602.2.7 幫助(help) 652.3 本章小結 70第3章 unity腳本程序開發 713.1 unity腳本概述 713.2 unity中c#腳本的注意事項 713.2.1 繼承自monobehaviour類 723.2.2 類名字必須匹配文件名 723.2.3 使用awake或start方法初始化 723.2.4 unity腳本中協同程序有不同的語法規則 723.2.5 只有滿足特定情況變量才能顯示在屬性查看器中 723.2.6 盡量避免使用構造函數 723.2.7 調試 723.3 unity腳本的基礎語法 733.3.1 常用操作 733.3.2 記錄時間 743.3.3 訪問游戲對象組件 753.3.4 訪問其他游戲對象 763.3.5 向量 783.3.6 成員變量和靜態成員變量 793.3.7 實例化游戲對象 803.3.8 協同程序和中斷 803.3.9 一些重要的類 813.3.10 性能優化 853.3.11 腳本編譯 863.4 綜合案例 863.4.1 案例策劃及準備工作 873.4.2 創建項目及場景搭建 873.4.3 飛機控制腳本實現 893.4.4 攝像機跟隨腳本實現 923.5 本章小結 93第4章 unity 3d圖形用戶界面基礎 954.1 gui圖形用戶界面系統 954.1.1 圖形用戶界面組件的變量 954.1.2 圖形用戶界面中的常用控件 1024.1.3 圖形用戶界面控件綜合案例 1254.2 ugui圖形用戶界面系統 1274.2.1 創建ugui控件 1274.2.2 canvas畫布 1284.2.3 eventsystem 1294.2.4 recttransform組件 1304.2.5 panel控件 1304.2.6 button控件 1314.2.7 text控件 1344.2.8 image控件 1354.2.9 raw image控件 1354.2.10 slider控件 1364.2.11 scrollbar控件 1374.2.12 toggle控件 1384.2.13 input field控件 1394.2.14 ugui布局管理的使用及相 關組件介紹 1404.2.15 ugui中不規則形狀的按鈕 的碰撞檢測 1424.2.16 scroll view的制作 1434.2.17 ugui綜合案例—音樂播 放器的ui搭建 1454.3 預制件(prefab)資源的應用 1534.3.1 預制件(prefab)資源的創建 1534.3.2 通過prefab資源進而實例化對象 1544.4 常用的輸入對象 1554.4.1 touch輸入對象 1554.4.2 input輸入對象 1574.5 與銷毀相關的方法 1614.5.1 object.destroy方法 1624.5.2 network.destroy方法 1624.5.3 monobehaviour.ondestroy方法 1634.6 本章小結 163第5章 unity 3d 第三方2d 組件庫—ngui 1655.1 初識ngui 1655.1.1 ngui背景概述 1655.1.2 ngui的導入 1655.1.3 ui層簡介 1665.2 ngui菜單介紹 1675.2.1 “selection”菜單 1685.2.2 “create”菜單 1685.2.3 “attach”菜單 1685.2.4 “tween”菜單 1735.2.5 “open”菜單 1735.2.6 其他菜單 1755.3 控件工具的使用 1765.3.1 圖片精靈—sprite 1765.3.2 文本標簽—label 1775.3.3 圖片精靈—texture 1795.3.4 組件容器—widget 1805.3.5 錨點—anchor 1825.3.6 面板—panel 1835.3.7 滾動視圖—scroll view 1845.3.8 網格—grid 1865.3.9 表格—table 1875.4 ui庫中默認組件的制作 1875.4.1 按鈕—colored button 1875.4.2 復選框—colored checkbox 1895.4.3 水平滾動條—colored horizontal scroll bar 1925.4.4 滑塊—colored slider 1945.4.5 彈出列表—colored popup list 1975.4.6 輸入框—control - simple input field 1995.5 雜項 2005.5.1 atlas圖集制作 2005.5.2 中文字體制作 2025.5.3 動畫曲線編輯 2035.6 一個ngui的綜合案例 2045.6.1 界面一制作 2045.6.2 界面二制作 2075.6.3 界面三制作 2105.7 本章小結 212第6章 物理引擎 2136.1 剛體 2136.1.1 剛體特性 2136.1.2 物理管理器 2196.2 碰撞器 2216.2.1 碰撞器的添加 2226.2.2 碰撞過濾 2256.2.3 物理材質 2286.3 粒子系統 2296.3.1 粒子系統的簡介 2296.3.2 粒子系統的特性 2306.3.3 粒子系統的綜合使用 2386.4 關節 2436.4.1 鉸鏈關節的特性 2436.4.2 鉸鏈關節的創建 2446.4.3 固定關節的特性 2456.4.4 固定關節的創建 2456.4.5 彈簧關節的特性 2466.4.6 彈簧關節的創建 2476.4.7 角色關節的特性 2476.4.8 角色關節的創建 2486.4.9 可配置關節的特性 2496.4.10 可配置關節的創建 2506.4.11 關節綜合案例—機械手 2516.5 交通工具 2566.5.1 車輪碰撞器添加 2566.5.2 車輪碰撞器的特性 2576.5.3 車輪碰撞器的應用 2586.6 布料 2626.6.1 蒙皮網格 2636.6.2 布料特性 2636.6.3 布料的簡單案例 2646.7 力場 2656.7.1 力場組件特性 2656.7.2 力場綜合案例 2666.8 物理引擎在動畫系統中的使用 2676.8.1 場景的搭建 2676.8.2 腳本的開發 2706.8.3 運行效果 2716.9 物理引擎綜合案例 2716.9.1 場景的搭建 2716.9.2 界面的搭建 2776.9.3 腳本的開發 2776.9.4 案例開發總結 2806.10 本章小結 280第7章 著色器—shader 2817.1 初識著色器 2817.1.1 著色器概述 2817.1.2 shaderlab語法基礎 2827.1.3 著色器中涉及的各種空間概念 2877.2 著色器的3種形態 2897.2.1 固定管線著色器 2897.2.2 頂點片元著色器 2907.2.3 表面著色器 2947.3 表面著色器 2957.3.1 表面著色器基礎知識 2967.3.2 通過表面著色器實現體積霧 3007.4 渲染通道的通用指令 3057.4.1 設置lod數值 3057.4.2 渲染隊列 3077.4.3 混合模式介紹 3097.4.4 alpha測試 3107.4.5 深度測試 3127.4.6 通道遮罩 3147.4.7 面的剔除操作 3157.4.8 抓屏操作 3177.5 著色器的組織和優化 3187.5.1 著色器的組織和復用 3197.5.2 移動平臺上的優化 3227.6 綜合案例 3247.6.1 案例策劃及準備工作 3257.6.2 創建項目及場景搭建 3267.6.3 著色器及相關腳本的開發 3277.6.4 結點對象的創建及相關腳本的開發 3327.7 本章小結 335第8章 3d游戲開發的常用技術 3378.1 天空盒的應用 3378.1.1 unity天空盒資源 3378.1.2 開發實際需要的天空盒 3398.2 3d拾取技術 3408.3 視頻貼圖 3438.3.1 基礎知識 3438.3.2 視頻貼圖案例 3438.4 動態字體 3468.5 重力加速度傳感器 3478.6 playerprefs類 3498.7 虛擬按鈕與搖桿的使用 3508.7.1 下載并導入標準資源包 3518.7.2 虛擬按鈕和搖桿使用的案例 3518.8 聲音 3538.8.1 聲音類型 3538.8.2 音頻管理器—audiomanager 3548.8.3 音頻監聽器—audio listener 3548.8.4 音頻源—audio source 3558.8.5 音頻效果—audio effects 3578.8.6 音頻混響區—audio reverb zones 3608.8.7 簡單的聲音控制案例 3618.8.8 混音器—audiomixer 3628.9 水特效 3678.9.1 基礎知識 3678.9.2 案例 3688.10 霧特效 3708.10.1 案例效果與基本原理 3708.10.2 場景搭建及開發步驟 3708.11 本章小結 373第9章 光影效果的使用 3759.1 光源 3759.1.1 點光源(point light) 3759.1.2 定向光源(directional light) 3779.1.3 聚光燈光源(spot light) 3779.1.4 區域光光源(area light) 3789.1.5 發光材質 3789.2 光照貼圖的烘焙與使用 3799.2.1 對場景進行光照烘焙 3799.2.2 光照烘焙參數詳解 3809.3 法線貼圖 3839.3.1 在unity中使用法線貼圖 3839.3.2 如何在3d max中制作法線貼圖 3869.4 鏡子的開發 3879.4.1 場景的搭建 3889.4.2 鏡面著色器的開發 3919.4.3 c#腳本的開發 3919.5 真實的水面效果開發 3949.5.1 基本原理 3949.5.2 場景的搭建 3959.5.3 c#腳本的開發 3969.5.4 鏡面著色器的開發 3999.6 unity 3d光照系統中的高級功能 4019.6.1 渲染路徑與顏色空間 4019.6.2 cookies 4029.6.3 flare鏡頭光暈 4039.6.4 culling mask光照過濾 4049.6.5 陰影的設置 4049.6.6 light probes光探頭 4069.7 unity 3d 5.0中新增的光照功能詳解 4089.7.1 基于物理學的標準著色器 4089.7.2 反射探頭(reflection probe) 4119.7.3 全局光照技術詳解 415第10章 模型與動畫 41910.1 3d模型導入 41910.1.1 主流3d建模軟件的介紹 41910.1.2 unity與建模軟件單位的比 例關系 42010.1.3 將3d模型導入unity 42110.2 網格mesh 42210.2.1 網格過濾器(mesh filter) 42210.2.2 mesh屬性和方法介紹 42310.2.3 mesh的使用 42310.2.4 使用mesh使物體變形的一 個簡單案例 42410.3 第三方切割工具庫shatter toolkit 的使用 42910.3.1 shatter toolkit簡介 42910.3.2 使用shatter toolkit的一個簡單案例 43010.4 舊版動畫系統 43810.4.1 導入角色動畫資源 43810.4.2 動畫控制器(animation) 43910.4.3 動畫腳本 44010.4.4 使用舊版動畫系統的簡單 案例 44110.5 mecanim動畫系統 44410.5.1 角色動畫的配置 44410.5.2 動畫控制器的創建 44710.5.3 動畫控制器的配置 44810.5.4 角色動畫的重定向 45110.5.5 角色動畫的混合—創建動 畫混合樹 45310.5.6 角色動畫的混合—混合類 型介紹 45510.5.7 mecanim中的代碼控制 45610.5.8 案例分析 46110.6 本章小結 464第11章 地形與尋路技術 46511.1 地形引擎 46511.1.1 地形的創建 46511.1.2 灰度圖的使用 46911.2 拖尾渲染器—trail renderer 47111.2.1 背景介紹 47111.2.2 拖尾渲染器屬性介紹 47111.2.3 拖尾渲染器的使用 47211.2.4 產生汽車輪胎拖痕案例 47211.2.5 產生汽車剎車痕案例 47411.3 自動尋路技術 47611.3.1 基礎知識 47611.3.2 一個簡單的案例 47711.4 本章小結 481第12章 游戲資源更新 48312.1 assetbundle資源包 48312.1.1 assetbundle簡介 48312.1.2 創建assetbundle 48312.1.3 assetbundle的下載 48612.1.4 assetbundle的加載和 卸載 48812.1.5 關于assetbundle 48912.1.6 本節小結 49112.2 lua熱更新 49112.2.1 熱更新的基本介紹 49112.2.2 lua的基本情況介紹 49112.2.3 simpleframework框架 介紹 49212.2.4 熱更新案例 49312.2.5 本節小結 49812.3 本章小結 498第13章 多線程技術與網絡開發 49913.1 多線程技術 49913.1.1 基本知識 49913.1.2 多線程技術用于大量 計算 50113.1.3 多線程技術在網絡開發中的 應用 50313.2 www類 50613.2.1 用www類訪問網絡 資源 50613.2.2 場景搭建 50613.2.3 c#腳本的編寫 50713.3 網絡類—network 50713.3.1 靜態變量 50713.3.2 靜態方法 51013.3.3 消息發送 51513.4 基于unity network開發網絡 游戲 51613.4.1 非授權服務器和授權 服務器 51613.4.2 network view 網絡視圖 組件 51713.4.3 案例的效果預覽 51713.4.4 案例場景的搭建 51713.4.5 項目主體腳本的開發 52013.4.6 服務器和客戶端的發布 52513.5 基于socket開發unity網絡游戲 52513.5.1 網絡游戲架構簡介 52613.5.2 案例的效果預覽與資源 準備 52713.5.3 案例場景的搭建 52813.5.4 服務器端的開發 53113.5.5 客戶端的開發 53213.6 本章小結 540第14章 unity 2d游戲開發 54114.1 unity 2d基礎介紹 54114.1.1 unity 2d項目的創建 54114.1.2 unity 2d功能簡要介紹 54214.1.3 unity 2d游戲開發工作流程 的簡要介紹 54214.2 unity 2d核心功能對象—sprite 54314.2.1 sprite對象的創建和基本 用法 54314.2.2 換幀動畫的制作 54414.2.3 制作換幀動畫的具體步驟 54514.3 unity 2d中的物理引擎 54914.3.1 2d剛體 54914.3.2 2d碰撞器 55214.3.3 2d關節 55414.3.4 使用2d物理引擎制作撞冰 塊案例 55714.4 一個完整的2d游戲案例 56314.4.1 游戲玩法以及功能概述 56314.4.2 游戲的策劃及準備工作 56414.4.3 游戲的架構 56514.4.4 菜單場景 56614.4.5 游戲場景 56814.5 本章小結 574第15章 常用性能優化技術 57515.1 程序性能的分析 57515.1.1 profiler使用方法 57515.1.2 profiler的參數說明 57615.2 代碼的斷點調試 57815.2.1 通過monodevelop調試 57815.2.2 microsoft visual studio tools for unity的使用 57915.3 優化事項 58015.3.1 遮擋剔除技術 58115.3.2 批處理技術 58215.3.3 移動平臺的優化技巧 58215.4 本章小結 583第16章 綜合案例—指間足球 58516.1 背景以及功能概述 585 16.1.1 游戲背景概述 58516.1.2 游戲功能簡介 58516.2 游戲的策劃及準備工作 58716.2.1 游戲的策劃 58716.2.2 使用unity開發游戲前的準 備工作 58716.3 游戲的架構 59016.3.1 各個場景的簡要介紹 59016.3.2 游戲架構簡介 59116.4 游戲主場景 59216.4.1 場景搭建 59216.4.2 主攝像機設置及腳本開發 59616.4.3 守門員游戲對象相關腳本 開發 60216.4.4 檢測板游戲對象相關腳本 開發 60316.4.5 提示板游戲對象相關腳本的開發 60516.4.6 門框游戲對象相關腳本的 開發 60616.4.7 其他腳本的開發 60716.5 游戲界面的開發 61116.5.1 主菜單界面的搭建 61116.5.2 主菜單界面監聽腳本的 開發 61516.5.3 游戲界面的搭建 62116.5.4 游戲界面監聽腳本的開發 62216.5.5 游戲暫停界面監聽腳本的 開發 62516.6 游戲的優化與改進 626
展開全部
Unity 5.X 3D游戲開發技術詳解與典型案例-(附光盤) 作者簡介
吳亞峰,畢業于北京郵電大學,后留學澳大利亞臥龍崗大學取得碩士學位。1998年開始從事Java應用的開發,有10多年的Java開發與培訓經驗。主要的研究方向為OpenGL ES、手機游戲、Java EE以及搜索引擎。同時為手機游戲、Java EE獨立軟件開發工程師。近十年來為數十家企業培養了上千名高級軟件開發人員,曾編寫過《Unity 3D游戲開發技術詳解與典型案例》、《Unity 4 3D開發實戰詳解》、《Unity游戲案例開發大全》等多本暢銷技術書籍。2008年初開始關注Android平臺下的3D應用開發,并開發出一系列Android應用程序與3D游戲。