Unity數字孿生開發入門與實戰/數字孿生前沿開發和應用系列
內容大鋼
本書首先介紹了在實際數字孿生項目開發中,經常會用到的Unity基礎知識,包括:3D場景構建、模型導入、常見模型格式轉換、材質系統、UI系統以及C#腳本編程等。接著通過一個完整的實戰案例,介紹了數字孿生項目中的常見功能,包括:UI彈窗、攝像機視角切換、換物交互、網路數據接入與呈現、物聯網硬體數據接入與物聯網硬體控制、項目打包等。
本書可以幫助初學者全面了解數字孿生開發的相關知識,並培養其數字孿生研發能力。本書分享的所有經驗,都是作者在實際項目開發中總結出來的,可以幫助讀者提高學習效率,解決實際開發中遇到的問題。
本書適合智能建造、智慧城市、智慧交通、智慧水利、智慧林業、智慧農業、智慧能源、數字媒體等專業的在校學生、高校教師,新能源、低空經濟、建築、土木、水利、農業、林業、航空、製造業等行業從業人員,以及數字孿生開發、IT開發、Unity開發、GIS開發等人員閱讀使用。
作者介紹
編者:胡唯哲|責編:陳守平
胡唯哲,四川大學碩士,從事工程數字化相關開發工作,曾就職於世界500強企業並擔任數字化研發負責人。
目前已為300多家科技公司、海外名校、國內雙一流高校、傳統工程企業提供過工程數字化咨詢及解決方案,幫助3萬多名傳統工程人員學習編程。
目錄
第1章 Unity的安裝與基本認識
1.1 Unity軟體安裝
1.1.1 Unity安裝
1.1.2 個人版激活
1.1.3 注意事項
1.2 項目創建
1.2.1 新建項目
1.2.2 打開項目
1.2.3 保存項目
1.3 基本界面認識
1.3.1 菜單欄視圖
1.3.2 Hierarchy視圖
1.3.3 Scene視圖
1.3.4 Game視圖
1.3.5 Inspector視圖
1.3.6 Project視圖
1.3.7 Console視圖
1.3.8 實用技巧
1.4 C開發環境搭建
1.4.1 Visual Studio下載
1.4.2 Unity開發模塊安裝
1.4.3 Unity開發環境配置
1.4.4 實例:寫出第一行代碼「Hello Unity Digital Twin」
第2章 基礎知識篇之3D場景構建
2.1 渲染管線介紹
2.1.1 內置渲染管線(BRP)
2.1.2 通用渲染管線(URP)
2.1.3 高清渲染管線(HDRP)
2.2 模型導入
2.2.1 Unity支持的常見模型格式
2.2.2 3ds Max模型如何導入Unity
2.2.3 SketchUp模型如何導入Unity
2.2.4 BIM模型如何導入Unity
2.2.5 官方資源包模型如何導入Unity
2.2.6 如何使用Unity自帶建模工具創建常規模型
2.2.7 注意事項
2.3 場景渲染
2.3.1 光源
2.3.2 天空盒
2.3.3 后處理
2.4 綜合實例1:完成一個場景的照明設置
第3章 基礎知識篇之材質
3.1 材質系統介紹
3.2 PBR材質的製作
3.2.1 材質的創建
3.2.2 PBR材質的選擇
3.2.3 PBR材質中常用參數介紹
3.2.4 實例:製作牆的表面材質
3.3 發光材質的製作
3.3.1 材質的選擇
3.3.2 發光材質的參數設置
3.3.3 實例:發光材質的製作
3.4 綜合實例2:多種類型材質的探索與使用
第4章 基礎知識篇之C腳本基礎
4.1 Unity開發方式的選擇
4.1.1 C編程語言
4.1.2 可視化編程語言
4.2 Unity默認腳本介紹
4.2.1 命名空間
4.2.2 類
4.2.3 Start函數
4.2.4 Update函數
4.2.5 實例:控制台輸出Start函數和Update函數運行的結果
4.3 C常見變數類型及使用
4.3.1 變數類型
4.3.2 變數的使用
4.3.3 實例:用鍵盤輸出定義變數的值
4.4 C常見語句類型
4.4.1 判斷語句
4.4.2 循環語句
4.5 綜合實例3:用鍵盤控制物體的移動
第5章 基礎知識篇之UI的製作
5.1 UI的製作
5.1.1 UI製作軟體介紹
5.1.2 實例:用Photoshop繪製一張按鈕圖片
5.2 UGUI系統
5.2.1 UGUI系統介紹
5.2.2 畫布
5.2.3 可視化組件
5.2.4 交互組件
5.2.5 實例:將按鈕圖片放到UGUI系統
5.3 綜合實例4:數字孿生大屏原型製作
第6章 數字孿生實戰之「項目介紹」功能的實現
6.1 場景資源導入
6.1.1 選擇對應的渲染管線
6.1.2 導入準備好的項目模板
6.1.3 攝像機視角移動腳本
6.1.4 讓場景動起來
6.2 「項目介紹」功能的實現
6.2.1 按鈕事件的添加
6.2.2 圖片彈窗效果的實現
6.3 鏡頭移動功能的實現
6.3.1 攝像機位置確定
6.3.2 DOTween插件的安裝
6.3.3 鏡頭移動腳本
6.3.4 完成鏡頭的移動
第7章 數字孿生實戰之「今日天氣」功能的實現
7.1 網路的基本組成
7.1.1 客戶端
7.1.2 服務端
7.1.3 HTTP協議
7.2 Unity網路編程
7.2.1 天氣數據API獲取
7.2.2 C解析天氣數據
7.2.3 UGUI呈現解析數據
7.2.4 注意事項
第8章 數字孿生實戰之「構件交互」功能的實現
8.1 使用射線法擊中物體
8.1.1 射線法原理
8.1.2 射線法腳本的創建
8.1.3 添加碰撞器
8.1.4 物體擊中測試
8.1.5 注意事項
8.2 物體高亮效果的實現
8.2.1 導入高亮材質
8.2.2 單擊后顯示高亮效果
8.3 彈窗的顯示與關閉
8.3.1 攝像機視角移動
8.3.2 單擊物體后彈出物體信息
8.3.3 單擊退出按鈕關閉彈窗與高亮
8.3.4 構件交互完整代碼示意
第9章 數字孿生實戰之「物聯控制」功能的實現
9.1 Arduino的認識與使用
9.1.1 Arduino基本介紹
9.1.2 Arduino硬體選擇
9.1.3 Arduino開發軟體
9.1.4 實例:Arduino對燈泡的控制
9.2 Unity對Arduino的開發支持
9.2.1 Ardity插件介紹
9.2.2 Ardity的安裝與配置
9.3 Arduino控制Unity燈泡狀態
9.3.1 在Unity中添加燈泡
9.3.2 Unity連接Arduino開發板
9.3.3 燈泡同步Arduino數據
9.4 Unity控制Arduino燈泡狀態
9.4.1 Unity控制Arduino燈泡狀態腳本
9.4.2 物聯網控制完整代碼示意
9.4.3 Unity物聯網UI界面控制
9.5 Unity項目打包
9.5.1 Windows平台打包設置
9.5.2 程序運行
後記
[an error occurred while processing this directive]