虛擬現實程序設計 (C#版)

範麗亞 謝平 吳妍萍 馬介淵 張克發 張榮

  • 出版商: 清華大學
  • 出版日期: 2025-01-01
  • 定價: $294
  • 售價: 8.5$250
  • 語言: 簡體中文
  • 頁數: 216
  • ISBN: 7302679193
  • ISBN-13: 9787302679196
  • 相關分類: C#VR/AR
  • 下單後立即進貨 (約4週~6週)

  • 虛擬現實程序設計 (C#版)-preview-1
  • 虛擬現實程序設計 (C#版)-preview-2
  • 虛擬現實程序設計 (C#版)-preview-3
虛擬現實程序設計 (C#版)-preview-1

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

商品描述

"本書融合了“C# 程序設計基礎”+“Unity 項目實戰”,給沒有C# 程序設計基礎和Unity 項目開發經驗,但又希望能快速上手開發出自己第一個作品的讀者,帶來一次友好的虛擬現實程序設計學習體驗。全書共分3 篇11 章:第1~3 章為第1 篇,是開發環境的準備,帶領讀者一步步創建自己的第1 個Untiy項目;第4~8 章為第2 篇,是虛擬現實程序設計基礎,以“基礎知識講解+ 項目實戰”形式循序漸進地學習C# 基礎概念、字符串與正則表達式、委托和事件、集合與泛型、常用接口等核心內容;第9~11 章為第3 篇,是虛擬現實程序設計進階,包括數據結構基礎、算法基礎、異常處理和調試等內容,為學有餘力的讀者提供進階學習和提升的內容。 本書內容循序漸進、深入淺出,案例開發一步一圖、條理清晰、圖文並茂、易於上手;每章知識點配有相應的習題以鞏固所學。本書適合作為高等院校虛擬現實、電腦科學與技術、軟件工程、動漫設計、數字媒體等專業教材。對於欲從事虛擬現實技術開發工作的人員,也可以使用本書快速入門和上手,零基礎輕松跨入虛擬現實開發領域。 本書封面貼有清華大學出版社防偽標簽,無標簽者不得銷售。"

目錄大綱

 

目錄

第1 篇 開發環境的準備

第1 章 安裝Unity Hub 與Unity 編輯器....................................... 3

1.1 註冊賬號與激活許可證 ................................................................................... 3

1.1.1 註冊Unity 賬號 ................................................................................... 3

1.1.2 激活許可證 .......................................................................................... 4

1.2 Unity Hub 的安裝與登錄 ................................................................................. 6

1.2.1 Unity Hub 的下載與安裝 ..................................................................... 6

1.2.2 Unity Hub 的登錄與管理 ..................................................................... 7

1.3 Unity 編輯器的下載與安裝 .............................................................................. 8

1.3.1 Unity 編輯器偏好設置 ......................................................................... 8

1.3.2 Unity 編輯器的下載 ............................................................................. 9

1.3.3 Unity 編輯器的安裝 ........................................................................... 10

1.3.4 Unity 編輯器的版本管理 .................................................................... 11

習題 ....................................................................................................................... 12

第2 章 Unity 編輯器的窗口佈局和常用視圖 .............................. 14

2.1 Unity 編輯器的窗口佈局 ............................................................................... 14

2.1.1 新建項目 ........................................................................................... 14

2.1.2 默認窗口佈局 .................................................................................... 14

2.1.3 自定義窗口佈局 ................................................................................ 15

2.2 常用窗口與視圖 ............................................................................................ 18

2.2.1 Hierarchy 窗口 .................................................................................. 18

2.2.2 Scene 視圖 ....................................................................................... 18

2.2.3 Project 窗口 ...................................................................................... 21

2.2.4 Inspector 窗口 .................................................................................. 21

目 錄

虛擬現實程序設計(C# 版)

IV

2.2.5 Game 視圖 ........................................................................................ 22

2.2.6 Console 窗口 .................................................................................... 22

習題 ....................................................................................................................... 22

第3 章 創建第1 個Unity 項目 .................................................. 25

3.1 新建Unity 項目 ............................................................................................. 25

3.1.1 新建3D 項目 ..................................................................................... 25

3.1.2 設置Unity 編輯器外觀偏好 ............................................................... 26

3.2 設置背景參數 ................................................................................................ 27

3.2.1 修改場景名稱 .................................................................................... 27

3.2.2 設置背景顏色 .................................................................................... 28

3.3 設置游戲背景 ................................................................................................ 28

3.3.1 添加游戲背景 .................................................................................... 28

3.3.2 添加材質球 ........................................................................................ 30

3.3.3 調整背景位置參數 ............................................................................. 35

3.4 UI 設計 .......................................................................................................... 36

3.4.1 添加游戲倒計時提示 ......................................................................... 36

3.4.2 添加游戲難度等級提示 ...................................................................... 38

3.4.3 添加計時器和積分提示 ...................................................................... 40

3.4.4 游戲暫停按鈕 .................................................................................... 42

3.4.5 重新開始游戲提示 ............................................................................. 43

3.5 資源包的使用 ................................................................................................ 45

習題 ....................................................................................................................... 45

第2 篇 虛擬現實程序設計基礎

第4 章 C# 基礎概念 .................................................................. 49

4.1 命名空間與程序入口 ..................................................................................... 49

4.1.1 命名空間 ........................................................................................... 49

4.1.2 Main( ) 方法 ....................................................................................... 54

4.1.3 訪問修飾符 ........................................................................................ 57

4.2 屬性 .............................................................................................................. 58

V

目 錄

4.2.1 屬性的概念 ........................................................................................ 58

4.2.2 屬性的使用 ........................................................................................ 58

4.2.3 屬性與常量 ........................................................................................ 61

4.2.4 屬性的實戰演練 ................................................................................ 64

4.3 方法 .............................................................................................................. 67

4.3.1 方法的聲明 ........................................................................................ 67

4.3.2 方法的調用 ........................................................................................ 68

4.3.3 方法的返回值 .................................................................................... 68

4.3.4 方法的參數類型 ................................................................................ 68

4.3.5 方法的種類 ........................................................................................ 72

4.3.6 方法的實戰演練 ................................................................................ 75

4.4 結構 .............................................................................................................. 77

4.4.1 結構概述 ........................................................................................... 77

4.4.2 結構的使用 ........................................................................................ 78

4.4.3 結構的實戰演練 ................................................................................ 79

4.5 類 .................................................................................................................. 82

4.5.1 類的概念 ........................................................................................... 82

4.5.2 類的聲明 ........................................................................................... 86

4.5.3 常見的關鍵字 .................................................................................... 88

4.5.4 嵌套類 ............................................................................................... 91

4.5.5 類的實戰演練 .................................................................................... 92

4.6 對象 .............................................................................................................. 95

4.6.1 對象的概念 ........................................................................................ 95

4.6.2 對象的創建和使用 ............................................................................. 97

4.6.3 this 關鍵字 ........................................................................................ 99

4.6.4 構造函數與析構函數 ....................................................................... 100

4.6.5 對象的封裝 ...................................................................................... 103

4.6.6 類與對象關系 .................................................................................. 106

4.7 綜合項目實戰1——游戲準備倒計時 .......................................................... 106

4.7.1 新建腳本文件 .................................................................................. 106

4.7.2 編輯腳本文件 .................................................................................. 108

4.7.3 掛載腳本文件 .................................................................................. 109

習題 ..................................................................................................................... 110

虛擬現實程序設計(C# 版)

VI

第5 章 字符串與正則表達式 ................................................... 116

5.1 字符串 ......................................................................................................... 116

5.1.1 字符串的創建 .................................................................................. 116

5.1.2 比較字符串 ...................................................................................... 118

5.1.3 包含字符串 ...................................................................................... 118

5.1.4 獲取子字符串 .................................................................................. 119

5.1.5 連接字符串 ...................................................................................... 120

5.1.6 字符串實戰演練 .............................................................................. 121

5.2 正則表達式 ................................................................................................. 122

5.2.1 字符類元字符 .................................................................................. 123

5.2.2 轉義字符 ......................................................................................... 123

5.2.3 定位符 ............................................................................................. 124

5.2.4 量詞 ................................................................................................ 124

5.2.5 分組和捕獲字符 .............................................................................. 124

5.2.6 零寬斷言 ......................................................................................... 125

5.2.7 正則表達式實戰演練1——匹配特定單詞 ....................................... 127

5.2.8 正則表達式實戰演練2——驗證手機號碼 ....................................... 128

5.2.9 正則表達式實戰演練3——驗證郵箱地址 ....................................... 129

5.3 綜合項目實戰2——計時器 ......................................................................... 131

5.3.1 創建腳本文件 .................................................................................. 131

5.3.2 掛載腳本文件 .................................................................................. 133

5.4 綜合項目實戰3——GUI 標簽控制 .............................................................. 134

5.4.1 創建腳本文件 .................................................................................. 134

5.4.2 掛載腳本文件 .................................................................................. 135

習題 ..................................................................................................................... 136

第6 章 委托和事件 .................................................................. 139

6.1 委托的聲明 ................................................................................................. 139

6.1.1 委托的概念 ...................................................................................... 139

6.1.2 委托的聲明結構 .............................................................................. 139

6.2 委托的實例化 .............................................................................................. 140

6.2.1 常規實例化委托 .............................................................................. 140

VII

目 錄

6.2.2 匿名方法實例化委托 ....................................................................... 140

6.2.3 使用Lambda 表達式實例化委托 .................................................... 141

6.3 委托的調用 ................................................................................................. 142

6.4 單播委托和多播委托 ................................................................................... 144

6.4.1 單播委托 ......................................................................................... 144

6.4.2 多播委托 ......................................................................................... 145

6.5 事件 ............................................................................................................ 147

6.6 委托實戰演練 .............................................................................................. 148

6.7 綜合項目實戰4——水果發射器 .................................................................. 149

6.7.1 製作預制體 ...................................................................................... 149

6.7.2 製作水果發射器 .............................................................................. 150

6.8 綜合項目實戰5——切割軌跡 ..................................................................... 155

6.8.1 添加運動軌跡組件 ........................................................................... 155

6.8.2 創建腳本文件 .................................................................................. 156

6.8.3 編輯腳本文件 .................................................................................. 156

6.8.4 掛載腳本文件 .................................................................................. 161

習題 ..................................................................................................................... 162

第7 章 集合與泛型 .................................................................. 164

7.1 集合概述 ..................................................................................................... 164

7.2 非泛型集合 ................................................................................................. 164

7.2.1 ArrayList 集合 ................................................................................. 165

7.2.2 Hashtable 集合 ............................................................................... 165

7.3 泛型集合 ..................................................................................................... 165

7.3.1 List<T> 泛型集合 ............................................................................ 166

7.3.2 Dictionary<TKey, TValue> 泛型集合 .............................................. 166

7.4 集合的實戰演練 .......................................................................................... 167

7.5 泛型集合實戰演練 ....................................................................................... 172

7.6 綜合項目實戰6——切割潑濺效果 .............................................................. 173

7.6.1 創建腳本文件 .................................................................................. 174

7.6.2 編輯腳本文件 .................................................................................. 174

7.6.3 掛載腳本文件 .................................................................................. 175

習題 ..................................................................................................................... 176

虛擬現實程序設計(C# 版)

VIII

第8 章 常用接口 ..................................................................... 178

8.1 IEnumerator 接口 ........................................................................................ 178

8.2 ICollection 接口 .......................................................................................... 178

8.3 IList 接口 ..................................................................................................... 179

8.4 接口實戰 ..................................................................................................... 179

8.5 綜合項目實戰7——關卡準備邏輯 .............................................................. 180

8.6 綜合項目實戰8——關卡結束 ..................................................................... 182

習題 ..................................................................................................................... 183

第3 篇 虛擬現實程序設計進階

第9 章 數據結構基礎 .............................................................. 187

9.1 隊列 ............................................................................................................ 187

9.1.1 隊列的概述 ...................................................................................... 187

9.1.2 隊列的使用 ...................................................................................... 187

9.1.3 隊列的實戰 ...................................................................................... 189

9.2 棧 ................................................................................................................ 190

9.2.1 棧的概述 ......................................................................................... 190

9.2.2 棧的使用 ......................................................................................... 190

9.3 鏈表 ............................................................................................................ 192

9.3.1 鏈表的概述 ...................................................................................... 192

9.3.2 鏈表的使用 ...................................................................................... 192

9.4 字典(哈希表) ............................................................................................ 193

9.4.1 字典的概述 ...................................................................................... 193

9.4.2 字典的使用 ...................................................................................... 193

習題 ..................................................................................................................... 195

第10 章 算法基礎 ................................................................... 197

10.1 排序算法 ................................................................................................... 197

10.1.1 冒泡排序算法 .............................................................................. 197

10.1.2 選擇排序算法 .............................................................................. 198

10.1.3 插入排序算法 .............................................................................. 199

IX

目 錄

10.2 查找算法 ................................................................................................... 199

10.2.1 線性查找算法 .............................................................................. 199

10.2.2 二分查找算法 .............................................................................. 200

10.2.3 字典序列查找算法 ....................................................................... 201

10.2.4 二分查找算法實戰演練 ................................................................ 201

習題 ..................................................................................................................... 202

第11 章 異常處理和調試 ......................................................... 203

11.1 預處理指令 ............................................................................................... 203

11.1.1 可為空上下文 .............................................................................. 203

11.1.2 定義字符 ..................................................................................... 204

11.1.3 條件編譯 ..................................................................................... 206

11.1.4 定義區域 ..................................................................................... 206

11.2 異常處理 ................................................................................................... 207

11.2.1 拋出異常 ..................................................................................... 207

11.2.2 捕獲異常 ..................................................................................... 207

11.2.3 finally 代碼塊 ............................................................................... 208

11.2.4 多個catch 代碼塊 ....................................................................... 209

11.2.5 自定義異常 .................................................................................. 210

11.3 文件的輸入/ 輸出 ..................................................................................... 211

11.3.1 文件讀取(Input) ........................................................................ 212

11.3.2 文件寫入(Output) ..................................................................... 214

習題 ..................................................................................................................... 215

參考文獻 .................................................................................... 217