Panda3D、C++、Python專業商用3D引擎 | 誠品線上

Panda3D、C++、Python專業商用3D引擎

作者 劉暉/ 林欣/ 李強
出版社 佳魁資訊股份有限公司
商品描述 Panda3D、C++、Python專業商用3D引擎:Panda3D是世界十大開放原始碼遊戲引擎中,功能最完整、效能最穩定、商業化限制最少的一款。目前,迪士尼仍在使用,世界各地的業界人

內容簡介

內容簡介 Panda3D是世界十大開放原始碼遊戲引擎中,功能最完整、效能最穩定、商業化限制最少的一款。目前,迪士尼仍在使用,世界各地的業界人員也以開放、共用全部原始程式碼方式不斷促進這款遊戲引擎的持續發展。在競爭激烈的國外遊戲引擎市場中,Panda3D始終引人注目,技術領先。本書為讀者深入、完整掌握遊戲引擎C++、Python核心,書附程式中有80多段示範效果,為Windows、Linux、Mac作業系統中的C++、Python遊戲引擎開發者提供價值無窮的資源。作者結合深入的專業知識及多年的實作開發經驗,重點針對市場、讀者技術實作需求撰寫此書,相信讀者能夠輕鬆掌握Panda3D的使用技巧,簡單快速地步入3D應用程式開發新天地。

作者介紹

作者介紹 ■作者簡介劉暉林欣李強

產品目錄

產品目錄 01遊戲引擎大比拼1.1 國內熱門網路遊戲引擎類型統計1.2 PANDA3D 的前世今生1.3 遊戲引擎的發展1.3.1 抽象硬體1.3.2 軟體抽象1.4 開放原始碼遊戲引擎整體比較1.5 知名遊戲引擎及代表遊戲1.6 遊戲引擎的成本與收益1.7 選擇遊戲引擎的尺度1.8 十大開放原始碼遊戲引擎深入比較1.9 開放原始碼遊戲引擎授權比較1.10 安裝PANDA3D1.10.1 WINDOWS 中的安裝1.10.2 LINUX 中的安裝1.11 小結02 遊戲引擎的開發環境2.1 選擇開發環境2.2 安裝ECLIPSE CDT & PYDEV 1.6.32.3 在PYTHON 中執行第一個程式2.4 在LINUX C++ 中執行第一個程式2.5 在VISUAL C++ 中執行第一個程式2.6 小結03 設定PANDA3D 遊戲引擎3.1 PANDA3D 設定檔3.2 PANDA3D 1.7 設定變數清單3.3 用C++ 存取設定變數3.4 用PYTHON 存取設定變數3.5 附帶工具3.6 用PVIEW 檢視模型3.7 小結04 管理遊戲資產4.1 EGG 檔案格式4.2 動畫模型的約定結構4.3 場景瀏覽器4.4 導演工具快速鍵4.5 管理AUTODESK 3DS MAX 資產4.6 管理AUTODESK MAYA 資產4.7 管理LINUX+BLENDER 資產4.8 BAM 與EGG 模型4.9 示範資源4.10 小結05 場景處理5.1 場景節點公共基礎類別5.2 節點類別NODEPATH5.3 場景預設節點及場景基本處理5.4 場景的主要狀態5.5 檢索場景5.6 場景層次化管理技巧5.7 遊戲引擎視窗及框架5.8 用PYTHON 處理場景5.9 開發實戰——C++ 版太陽系5.10 小結06 模型、地形與角色6.1 模型載入及載入路徑6.2 載入角色及動畫6.3 以框為基礎的動畫的公共介面及控制6.4 角色與動畫的自動綁定6.5 播放動畫6.6 動畫的混合6.7 角色的多個組成部分6.8 用PYTHON 處理模型與角色6.9 地形6.10 用PYTHON 處理地形6.11 細節節點6.12 開發實戰——C++ 版拳擊機器人6.13 開發實戰——C++ 版看看抓抓6.14 小結07 繪製特性與效果7.1 繪製屬性概覽7.2 燈光7.3 材質7.4 景深緩衝器7.5 霧7.6 ALPHA 測試7.7 色彩寫入隱藏7.8 反鋸齒7.9 重新配色7.10 前後表面揀選7.11 燈光漸變7.12 輔助位平面7.13 模版測試及寫入7.14 繪製效果7.15 指南針效果7.16 公告欄效果7.17 開發實戰——C++ 版迪斯可燈光7.18 開發實戰——C++ 版無底洞7.19 小結08 紋理8.1 基本紋理8.2 紋理尺寸8.3 換行模式8.4 紋理篩檢程式8.5 紋理取代8.6 多紋理8.7 多紋理的模式8.8 紋理組合8.9 紋理轉換8.10 自動紋理8.11 投影紋理8.12 環境對映8.13 3D 紋理8.14 立方體對映8.15 動畫紋理8.16 視訊紋理8.17 透明與混合8.18 紋理管理8.19 紋理壓縮8.20 開發實戰——C++ 版凹凸貼圖8.21 開發實戰——C++ 版紋理交換8.22 小結09 著色器9.1 著色器概覽9.2 著色器輸入9.3 著色器空間座標9.4 著色器產生器9.5 相機控制9.6 鏡頭與視野9.7 著色器實戰——初始程式9.8 著色器實戰——變形與變色9.9 著色器實戰——GPU 互動控制9.10 著色器實戰——燈光漫遊初始程式9.11 著色器實戰——CG 燈光漫遊程式9.12 著色器實戰——可衰減的CG 燈光漫遊9.13 開發實戰——C++ 版卡通著色9.14 開發實戰——C++ 版發光濾鏡9.15 小結10 幕與情節的自動處理10.1 全域時脈10.2 幕與幕管理員10.3 幕的自動內插10.4 角色的混合效果10.5 情節10.6 幕的本質10.7 符合重力規律的彈道曲線幕10.8 函數幕10.9 非同步工作10.10 工作鏈10.11 多執行緒10.12 事件10.13 C++ 程式主循環10.14 PYTHON 程式主循環10.15 開發實戰——C++ 版小行星10.16 開發實戰——C++ 版旋轉木馬10.17 開發實戰——C++ 版電視機中的茶壺10.18 小結11 音訊11.1 音訊系統的結構11.2 循環控制11.3 音訊管理員11.4 DSP 音訊效果11.5 3D 音訊效果11.6 音訊自動化幕11.7 開發實戰——C++ 版播放多媒體11.8 開發實戰——C++ 版場景扭曲11.9 開發實戰——C++ 版螢火蟲11.10 小結12 進階互動元件12.1 文字字元集12.2 字型12.3 文字節點12.4 文字節點PYTHON 擴充12.5 段落屬性多樣化12.6 C++ 互動元件公有基礎類別12.7 C++ 互動元件12.8 PYTHON 互動元件12.9 按鈕12.10 核取按鈕12.11 選項按鈕12.12 交談視窗12.13 輸入框12.14 框架12.15 選單12.16 捲動列表12.17 進度指示器12.18 滑桿12.19 捲軸12.20 捲動框架12.21 開發實戰——C++ 版音樂盒12.22 小結13 遊戲引擎內部建構13.1 頂點資料的組成13.2 頂點資料的格式13.3 簡單幾何形體13.4 幾何形體13.5 幾何形體節點13.6 幾何形體邊界13.7 矩陣13.8 自行定義頂點資料格式13.9 產生頂點資料13.10 產生簡單幾何形體13.11 設定場景13.12 讀取幾何形體13.13 修改幾何形體13.14 網格繪製器13.15 頂點資料讀寫器13.16 修改紋理影像13.17 儲存模型13.18 開發實戰——C++ 版立方體控制13.19 小結14 繪製的處理過程14.1 實現繪製過程的主要類別14.2 圖形管線14.3 圖形輸出視窗與緩衝器14.4 顯示區域14.5 2D 顯示區域14.6 圖形引擎14.7 圖形狀態監控14.8 管理圖形輸出物件14.9 繪製次序14.10 繪製產生的紋理14.11 PYTHON 篩檢程式動態管理14.12 動態立方體環境對映14.13 繪製產生紋理的低層API14.14 立體顯示區域14.15 多通道繪製14.16 開發實戰——C++ 版影子處理14.17 開發實戰——PYTHON 篩檢程式14.18 小結15 粒子15.1 粒子繪製器15.2 粒子發射器15.3 粒子工廠15.4 各種粒子15.5 粒子系統15.6 PYTHON 粒子面板15.7 力場與力場節點15.8 粒子實戰——塵土飛揚15.9 粒子實戰——雲蒸霧繞15.10 粒子實戰——噴泉15.11 粒子實戰——煙霧15.12 粒子實戰——煙圈15.13 粒子實戰——火炬15.14 在PYTHON 中使用粒子15.15 在C++ 中產生粒子15.16 開發實戰——C++ 版分枝樹15.17 小結16 碰撞檢測16.1 碰撞形體16.2 碰撞處理器16.3 碰撞實體16.4 碰撞檢查器16.5 碰撞隱藏16.6 高速移動的物體16.7 碰撞檢測實戰——碰撞推處理器16.8 碰撞檢測實戰——碰撞處理器事件16.9 碰撞檢測實戰——碰撞隱藏及碰撞射線16.10 碰撞檢測實戰——點擊3D物體16.11 開發實戰——C++ 版漫遊者16.12 小結17 物理系統17.1 啟動物理系統17.2 力場17.3 ODE 的基本特徵17.4 ODE 的遊戲世界、物體與品質17.5 ODE 關節17.6 ODE 碰撞檢測17.7 NVIDIA PHYSX 的基本特徵17.8 開發實戰——C++ 版迷宮滾球17.9 小結18 人工智慧與有限狀態機18.1 系統基本特徵18.2 人工智慧實戰——尋找18.3 人工智慧實戰——逃離18.4 人工智慧實戰——追逐18.5 人工智慧實戰——逃避18.6 人工智慧實戰——遊逛18.7 人工智慧實戰——羊群18.8 人工智慧實戰——避障18.9 人工智慧實戰——路徑追蹤18.10 人工智慧實戰——最短尋徑18.11 在C++ 中實現AI18.12 人工智慧C++ 類別18.13 PYTHON 有限狀態機18.14 帶輸入的FSM18.15 FSM 技巧18.16 開發實戰——C++ 版國際象棋18.17 小結19 進階開發其它19.1 鍵盤19.2 滑鼠19.3 資料封包協定基礎類別19.4 建立客戶- 伺服器連接19.5 傳遞資料封包19.6 下載檔案19.7 分散式網路物件19.8 多媒體檔案套件19.9 更新19.10 非標準檔案源19.11 跨語言衍生子類別19.12 偵錯記錄檔19.13 指令碼語言程式質詢19.14 開發實戰——C++ 版建構FPS相機19.15 小結20 分散式應用20.1 以P3D 檔案為基礎的分散式應用20.2 以WEB 為基礎的分散式應用20.3 分散式應用程式的數位簽章20.4 設定分散式應用20.5 自安裝的分散式應用20.6 PANDA3D 執行函數庫軟體套件20.7 PANDA3D 執行函數庫軟體套件組成20.8 建構系統套件宿主機20.9 系統更新20.10 進階指令稿技術——檢測外掛程式20.11 進階物件標籤及外掛程式執行視窗標籤20.12 進階指令稿技術——外掛程式的通告與回呼20.13 進階指令稿技術——全域啟動物件20.14 進階指令稿技術——源安全及執行安全20.15 系統套件安裝類別20.16 開發實戰——C++ 版運動軌跡20.17 小結21 效能最佳化21.1 框速測量與場景分析21.2 效能測量21.3 效能測量機制分析21.4 剛體組合器21.5 效能最佳化問題分析——網格過多21.6 效能最佳化問題分析——文字過頻21.7 效能最佳化問題分析——著色器指令過長21.8 效能最佳化問題分析——幾何形體過多21.9 效能最佳化問題分析——PYTHON 計算過難21.10 效能最佳化問題分析——其他問題簡述21.11 小結22 編譯遊戲引擎原始程式碼22.1 原始程式碼編譯的基本相依22.2 原始程式碼編譯的目錄結構及相依22.3 原始程式碼編譯的設定變數22.4 UNIX 及LINUX 系統原始程式碼編譯基本步驟22.5 WINDOWS 與CYGWIN 組合環境原始程式碼編譯基本步驟22.6 WINDOWS 非CYGWIN 環境原始程式碼編譯基本步驟22.7 測試PPREMAKE 編譯結果22.8 編譯PYTHON 介面的步驟細節22.9 快速編譯原始程式碼的方法22.10 小結

商品規格

書名 / Panda3D、C++、Python專業商用3D引擎
作者 / 劉暉 林欣 李強
簡介 / Panda3D、C++、Python專業商用3D引擎:Panda3D是世界十大開放原始碼遊戲引擎中,功能最完整、效能最穩定、商業化限制最少的一款。目前,迪士尼仍在使用,世界各地的業界人
出版社 / 佳魁資訊股份有限公司
ISBN13 / 9789863792376
ISBN10 / 9863792373
EAN / 9789863792376
誠品26碼 / 2681241522001
頁數 / 1008
開數 / 18K
注音版 /
裝訂 / P:平裝
語言 / 1:中文 繁體
級別 / N:無

試閱文字

內文 : 導讀
當英文討論區上還在招募志願者整理C++ 文件、偵錯C++ 實例時,中文讀者已經可以「先天下之閱而閱」,深入Panda3D 遊戲引擎C++/Python 核心內幕,了解、學習、使用、分析、訂製、擴充這款娛樂巨頭麾下的開放原始碼商業化遊戲引擎了。
Panda3D 遊戲引擎是US News 排名中電腦第一的美國著名學府「卡內基美隆大學」為娛樂巨頭「華特迪士尼」研發的產品。目前,迪士尼仍然使用這款遊戲引擎,而卡內基美隆娛樂技術中心也不斷以開放原始碼方式吸引在校學生及世界各地的業界人員共同促進這款遊戲引擎的持續發展。因此,如果讀者靜下心來掌握Panda3D 遊戲引擎,無疑會使自己能夠駕馭的3D 技術與娛樂巨頭的3D 技術並肩,具世界第一的水準。更重要的是,讀者可以毫無遺漏地獲得全部原始程式碼!
Panda3D 遊戲引擎是所具有名開放原始碼遊戲引擎中最為完整、商業化運作幾乎沒有限制的一款,是一個無比豐富的金礦。既可以直接拿來開發各種3D 應用,又可以作為產品原型系統進行客戶訂製。目前,除了官方網站上的英文資源外,主要圖書包含Panda3D 1.6 Game Engine Beginner’s Guide(《Panda3D 1.6遊戲引擎初學指南》) 及Panda3D 1.7 Game Developer’s Cookbook(《Panda3D 1.7 遊戲引擎開發者實作》)兩本,分別於2011年2月、3月出版。而本書是第一本關於Panda3D遊戲引擎的中文圖書。
Panda3D 遊戲引擎支援Unix、Linux、Windows、Mac 等作業系統,採用C++ 開發,與Python 指令碼語言進行了有效綁定。因此,開發者既可以使用C++,也可以使用Python;既可以選用Unix/Linux 作業系統,也可以選用Windows 作業系統。為了滿足開發者多元化的需求,本書選用Panda3D 1.7.x 版本,相關開發實例可執行於Windows、Fedora(Linux) 作業系統, 推薦的開發環境是Windows
+ Visual Studio C++ 2008、Fedora + Eclipse、Fedora + g++、Windows +
Eclipse PyDev(Python)、Fedora + Eclipse PyDev(Python)。當然,如果開發者喜歡Ubuntu、Debian、Mac OS X,除了需要自行安裝適當設定以外,有關開發指南同樣有效。本書推薦使用Autodesk 3ds Max 2010、Autodesk Maya 2009、Blender 處理遊戲資產,對如何與Panda3D 遊戲引擎進行資產整合有很清楚的說明。

活動