Nibiru Studio三維引擎開發與實踐

方振宇,曹俊,鄭江濱

  • 出版商: 電子工業
  • 出版日期: 2026-04-01
  • 定價: $479
  • 售價: $478
  • 語言: 簡體中文
  • 頁數: 332
  • ISBN: 712152631X
  • ISBN-13: 9787121526312
  • 相關分類: 遊戲引擎 Game-engine
  • 下單後立即進貨 (約4週~6週)

商品描述

本書是高等院校本科教材。本書將知識點和案例融合,詳細介紹了如何使用 Nibiru Studio 進行三維開發工作。本書首先介紹了三維引擎、Nibiru Studio 與開發環境的基礎內容。接著介紹了編輯器和腳本系統。然後深入探討了 Nibiru Studio 的用戶界面、渲染系統、物理系統、網絡系統、跨平臺協同開發、事件系統和音頻系統。最後講解了一個案例——模擬太陽系,以及擴展現實開發。 本書適合具備一些 C++語言基礎,並且想快速入門,使用 Nibiru Studio 進行開發的人員閱讀。

目錄大綱

第1章 三維引擎概述 1
1.1 三維引擎的概念 1
1.1.1 三維引擎的發展 2
1.1.2 三維引擎與硬件的關系 3
1.1.3 三維引擎的模塊 4
1.2 三維引擎的作用 5
1.3 三維引擎中的基本概念 6
本章小結 7
第2章 Nibiru Studio與開發環境基礎 8
2.1 Nibiru Studio簡介 8
2.1.1 Nibiru Studio的誕生與發展 8
2.1.2 Nibiru Studio的特性 9
2.1.3 Nibiru Studio帶來的革新 10
2.2 三維引擎的組成 11
2.2.1 編輯器 12
2.2.2 開發環境及插件 12
2.3 編輯器的安裝 12
2.3.1 推薦環境配置 12
2.3.2 安裝流程 13
2.3.3 登錄 13
2.4 Nibiru Studio Hub簡介 15
2.4.1 Nibiru Studio Hub的安裝與登錄 15
2.4.2 Nibiru Studio Hub的使用說明 16
2.5 項目設置和打包 20
2.5.1 項目設置 21
2.5.2 應用打包 22
2.6 目錄結構說明 23
2.6.1 項目目錄 23
2.6.2 開發者資源目錄 23
本章小結 24
第3章 編輯器介紹 25
3.1 菜單欄 25
3.1.1 “文件”菜單 25
3.1.2 “編輯”菜單 26
3.1.3 “視圖”菜單 26
3.1.4 “構建”菜單 26
3.1.5 “調試”菜單 27
3.1.6 “工具”菜單 27
3.1.7 “組件”菜單 28
3.1.8 “幫助”菜單 28
3.2 視圖導航及工具欄 28
3.3 “資源”窗口 30
3.4 場景窗口 34
3.5 “控件”窗口 34
3.6 “場景管理”窗口 36
3.7 “屬性”窗口 36
3.8 “控制臺”窗口 37
3.9 快捷鍵 38
本章小結 39
第4章 腳本系統 40
4.1 腳本系統介紹 40
4.1.1 代碼開發環境的配置 40
4.1.2 面向組件開發 41
4.1.3 創建自定義腳本組件 42
4.2 事件函數的執行順序 44
4.2.1 腳本生命周期流程圖 45
4.2.2 腳本生命周期函數 46
4.2.3 事件函數 47
4.3 基本對象和類 48
4.3.1 基本對象 48
4.3.2 對象管理器 50
4.3.3 變換組件 51
4.3.4 UI變換組件 53
4.3.5 課程練習:通過代碼控制模型 54
4.4 應用管理系統 61
4.5 資產管理 62
4.5.1 資產管理系統 62
4.5.2 資源管理系統 63
4.5.3 資源內存數據 65
4.5.4 預制體 66
4.6 時間和頻率 68
4.6.1 時間系統 68
4.6.2 幀率和更新頻率 69
4.7 反射系統 69
4.8 序列化系統 70
4.8.1 場景的序列化保存 70
4.8.2 腳本屬性序列化 72
4.9 構建系統 74
4.9.1 熱重載 74
4.9.2 導入第三方庫 74
4.9.3 CMake配置 79
4.10 調試系統 83
本章小結 84
第5章 用戶界面 85
5.1 畫布 85
5.2 面板 87
5.3 文本 88
5.3.1 字體資源管理 90
5.3.2 課程練習:實現倒計時 91
5.4 圖片 96
5.4.1 2D矩形遮罩組件 98
5.4.2 課程練習:實現影視標簽卡 100
5.5 按鈕 104
5.6 滾動視圖 113
5.6.1 滾動條 116
5.6.2 網格布局組件 117
5.6.3 課程練習:實現菜單列表 119
5.7 滑塊 123
5.8 輸入框 129
5.9 動圖 136
5.10 組 137
本章小結 137
第6章 渲染系統 139
6.1 相機 139
6.1.1 相機的相關屬性 139
6.1.2 相機的常用接口 140
6.1.3 鏡頭光暈 142
6.1.4 課程練習:實現俯視小地圖 143
6.2 環境系統 147
6.2.1 天空盒 147
6.2.2 大氣系統 150
6.2.3 天氣系統 152
6.2.4 課程練習:實現根據時間的大氣變化 155
6.3 光照 168
6.3.1 平行光 168
6.3.2 點光源 169
6.3.3 環境光 170
6.3.4 光照探針 172
6.4 粒子系統 173
6.4.1 粒子系統的主模塊 174
6.4.2 粒子系統的子模塊 175
6.4.3 粒子系統的接口 177
6.5 模型與網格 179
6.5.1 網格介紹 179
6.5.2 模型資產 186
6.5.3 網格組件 187
6.5.4 動畫控制組件 189
6.5.5 課程練習:控制車輛移動 190
6.6 材質與著色器 194
6.6.1 創建材質 194
6.6.2 創建材質著色器 195
6.6.3 基於物理的渲染 198
6.6.4 課程練習:實現綠幕摳圖著色器 199
6.7 圖像管理系統 205
6.8 渲染管線 206
6.8.1 前向渲染管線 206
6.8.2 延遲渲染管線 207
6.8.3 可編程渲染管線 208
6.9 屏幕後處理 210
6.9.1 添加屏幕後處理 210
6.9.2 編寫屏幕後處理腳本 211
6.9.3 課程練習:實現畫面調色後處理 211
6.10 其他渲染特性 217
6.10.1 動態分辨率 217
6.10.2 多實例渲染 219
本章小結 219
第7章 物理系統 220
7.1 基本組件 220
7.1.1 剛體組件 220
7.1.2 碰撞器組件 222
7.1.3 課程練習:實現射擊木箱 222
7.2 反動力學 227
7.3 射線檢測 232
本章小結 240
第8章 網絡系統 241
8.1 網絡管理工具 241
8.2 NSocket 242
8.3 服務端組件 243
8.4 客戶端組件 245
8.4.1 NHttpClient 245
8.4.2 NTcpClient 246
8.4.3 NUdpClient 248
8.5 JSON文件解析 249
本章小結 258
第9章 跨平臺協同開發 259
9.1 協同開發介紹 259
9.2 Android系統 260
9.2.1 配置環境 260
9.2.2 構建聯調項目 261
9.3 Linux系統 262
9.3.1 安裝依賴環境 262
9.3.2 檢查CMake的版本 262
9.3.3 配置遠程服務器 262
9.4 OpenHarmony系統 264
9.4.1 安裝DevEco Studio 264
9.4.2 安裝OpenHarmony SDK API 10 265
9.4.3 配置OpenHarmony SDK路徑 267
本章小結 269
第10章 事件系統 270
10.1 事件處理 270
10.1.1 事件管理系統 270
10.1.2 事件監聽系統 271
10.1.3 自定義事件 271
10.1.4 課程練習:實現事件驅動粒子爆炸效果 273
10.2 輸入模塊 282
10.2.1 內置輸入接口 282
10.2.2 自定義輸入接口 285
本章小結 285
第11章 音頻系統 286
11.1 音頻組件 286
11.2 課程練習:實現應用背景音樂播放及切換 287
本章小結 292
第12章 模擬太陽系 293
12.1 搭建太陽系場景 293
12.2 實現腳本邏輯 296
第13章 擴展現實開發 300
13.1 Nibiru OS 300
13.2 OpenXR 300
13.3 XR API 301
13.4 三維應用開發案例——XR launcher 303
13.4.1 開發環境配置 303
13.4.2 項目開發 303
本章小結 321
參考文獻 322