[www.ed2k.online]下載基地為您提供軟件、遊戲、圖書、教育等各種資源的ED2K電驢共享下載和MAGNET磁力鏈接下載。
設為首頁
加入收藏
首頁 圖書資源 軟件資源 游戲資源 教育資源 其他資源
 電驢下載基地 >> 图书资源 >> 計算機與網絡 >> 《游戲編程精粹1》(Game Programming Gems 1)掃描版[PDF]
《游戲編程精粹1》(Game Programming Gems 1)掃描版[PDF]
下載分級 图书资源
資源類別 計算機與網絡
發布時間 2017/7/11
大       小 -
《游戲編程精粹1》(Game Programming Gems 1)掃描版[PDF] 簡介: 中文名 : 游戲編程精粹1 原名 : Game Programming Gems 1 別名 : 游戲編程精粹系列, 游戲編程, 游戲開發 作者 : (美)Mark DeLoura 譯者 : 王淑禮 張磊 圖書分類 : 軟件 資源格式 : PDF 版本 : 掃描版 出版社 : Posts&Telecom Press 書號 : 711512587X 發行時間 : 2004年
電驢資源下載/磁力鏈接資源下載:
全選
"《游戲編程精粹1》(Game Programming Gems 1)掃描版[PDF]"介紹
中文名: 游戲編程精粹1
原名: Game Programming Gems 1
別名: 游戲編程精粹系列, 游戲編程, 游戲開發
作者: (美)Mark DeLoura
譯者: 王淑禮
張磊
圖書分類: 軟件
資源格式: PDF
版本: 掃描版
出版社: Posts&Telecom Press
書號: 711512587X
發行時間: 2004年10月
地區: 大陸
語言: 簡體中文
簡介:

內容介紹:
  
  本書是由40多位國外游戲開發行業最為優秀的程序員撰稿的技術文集。每篇文章都針對游戲編程中的某個特定問題,不僅提供了解決思路,還給出了能立即應用到代碼中的算法和源碼。全書分為通用編程技術、數學技巧、人工智能、多邊形技術和像素特效五章;附錄部分提供了兩個非常有用的工具庫,矩陣工具庫和文本工具庫;隨書附帶光盤中包含有全書所有的源程序、演示程序、附錄中的兩個工具庫以及glSet叩和GLUT等開發工具。
  
  本書適合游戲開發專業人員閱讀。專家級開發人員可以立刻應用書中介紹的技巧,而初中級程序員通過閱讀本書將增強其技能和知識。本書是游戲程序員必備的參考資料。
作者介紹:
  姚勇, 1998年從清華大學畢業並留校工作, 從那時起開始研究RealtimeRendenng和游戲引擎技術. 2000年他組建H3DStudio, 開始正式研發3D游戲引擎. 經歷了4年多的起伏跌宕, H3D由當初2、3人的小組發展成今天的大型游戲軟件開發公司, 組建起了一支技術強勁的引擎開發及游戲產品制作隊伍, 並立志成為中國游戲制作的HARDCORE. 如今姚勇帶領下的H3D正在用歷經4年研發的H3D大型3D網絡游戲引擎平台,1制作一款重型3D網絡游戲.
H3D公司的網址:http://www.hardcore3d.net
姚勇的Email地址:[email protected]
內容截圖:

目錄:
第1章 通用編程技術
1.0 神奇的數據驅動設計(Steve Rabin)
1.0.1 點子1——基礎
1.0.2 點子2——最低標准
1.0.3 點子3——杜絕硬編碼
1.0.4 點子4——將控制流寫成腳本
1.0.5 點子5——什麼時候不適合使用腳本?
1.0.6 點子6——避免重復數據
1.0.7 點子7——開發工具來生成數據
1.0.8 結論
1.1 面向對象的編程與設計技術(James Boer)
1.1.1 代碼風格
1.1.2 類設計
1.1.3 類層次結構設計
1.1.4 設計模式
1.1.5 總結
1.1.6 參考資料
1.2 使用模板元編程的快速數學方法(Pete Isensee)
1.2.1 斐波納契數
1.2.2 階乘
1.2.3 三角學
1.2.4 實際世界中的編譯程序
1.2.5 重訪三角學
1.2.6 模板和標准C++
1.2.7 矩陣
1.2.8 總結
1.2.9 參考文獻
1.3 一種自動的Singleton工具(Scott Bilas)
1.3.1 定義
1.3.2 優點
1.3.3 問題
1.3.4 傳統的解決方法
1.3.5 較好的方法
1.3.6 更好的方法
1.3.7 參考文獻
1.4 在游戲編程中使用STL(James Boer)
1.4.1 STL的類型和術語
1.4.2 STL概念
1.4.3 向量(Vector)
1.4.4 鏈表(List)
1.4.5 雙隊列(Deque)
1.4.6 映射表(Map)
1.4.7 堆棧(Stack),隊列(Queue)和優先隊列(Priority Queue)
1.4.8 總結
1.4.9 參考文獻
1.5 一個通用的函數綁定接口(Scott Bilas)
1.5.1 要求
1.5.2 關於平台
1.5.3 第一次嘗試
1.5.4 第二次嘗試
1.5.5 部分解決方法
1.5.6 調用約定
1.5.7 調用函數
1.5.8 完備解決方案
1.5.9 結論
1.5.10 參考文獻
1.6 通用的基於句柄的資源管理器(Scott Bilas)
1.6.1 方法
1.6.2 Handle類
1.6.3 HandleMgr類
1.6.4 使用示例
1.6.5 注意
1.6.6 參考文獻
1.7 資源和內存管理(James Boer)
1.7.1 資源類
1.7.2 資源管理類
1.7.3 句柄如何工作
1.7.4 可能的擴展和改進
1.7.5 結論
1.8 快速數據載入技巧(John Olsen)
1.8.1 預處理你的數據
1.8.2 保存你的數據
1.8.3 使用簡單方法載入你的數據
1.8.4 更安全地載入你的數據
1.9 基於幀的內存分配(Steven Ranck)
1.9.1 常規內存分配的挑戰
1.9.2 介紹基於幀的內存
1.9.3 分配和釋放內存
1.9.4 例子
1.9.5 結論
1.10 簡單快速的位數組(Andrew Kirmse)
1.10.1 概述
1.10.2 位數組
1.10.3 其他數組
1.10.4 應用
1.10.5 參考文獻
1.11 在線游戲的網絡協議(Andrew Kirmse)
1.11.1 定義
1.11.2 篡改報文
1.11.3 報文重放
1.11.4 其他技術
1.11.5 逆向工程
1.11.6 實現
1.11.7 參考文獻
1.12 最大限度地利用Assert(Steve Rabin)
1.12.1 Assert基礎
1.12.2 Assert技巧 #1:嵌入更多信息
1.12.3 Assert技巧 #2:嵌入更多更多信息
1.12.4 Assert技巧 #3:使之更好用一些
1.12.5 Assert技巧 #4:編寫自己的assert宏
1.12.6 Assert技巧 #5:無價之寶
1.12.7 Assert技巧 #6:給“超級鐵桿”
1.12.8 Assert技巧 #7:讓它更簡單——復制和粘貼
1.12.9 參考文獻
1.13 Stats:實時統計和游戲內調試(John Olsen)
1.13.1 Why:需求驅動的技術
1.13.2 How:一個進化過程
1.13.3 What:一個基於C++類的系統
1.13.4 Where:可用性
1.13.5 小結
1.14 實時的游戲內建剖析(Steve Rabin)
1.14.1 開始考慮細節
1.14.2 剖析器將告訴你什麼?
1.14.3 增加剖析器調用
1.14.4 剖析器的實現
1.14.5 ProfileBegin的細節
1.14.6 ProfileEnd的細節
1.14.7 處理剖析數據的細節
1.14.8 後期增強
1.14.9 將它們組合起來
1.14.10 參考文獻
第2章 數學技巧
2.0 可預測隨機數(Guy W. Lecky-Thompson)
2.0.1 可預測隨機數
2.0.2 替換算法
2.0.3 無限宇宙算法
2.0.4 結論與展望
2.0.5 參考文獻
2.1 插值方法(John Olsen)
2.1.1 使用浮點數學的幀速相關ease-out
2.1.2 使用整型數學的幀速相關ease-out
2.1.3 幀速無關線性內插
2.1.4 幀速無關ease-in和ease-out
2.1.5 危險地帶
2.2 求剛體運動方程的積分(Miguel Gomez)
2.2.1 運動學:平移和旋轉
2.2.2 動力學:力與旋轉力矩(torque)
2.2.3 剛體的特性
2.2.4 求運動方程的積分
2.2.5 參考文獻
2.3 三角函數的多項式逼近(Eddie Edwards)
2.3.1 多項式
2.3.2 定義域和值域
2.3.3 偶多項式和奇多項式
2.3.4 泰勒級數
2.3.5 截斷的泰勒級數
2.3.6 拉格朗日級數
2.3.7 不連續性處理
2.3.8 結論
2.4 為數字穩定性而利用隱式歐拉積分(Miguel Gomez)
2.4.1 求初值問題的積分及穩定性
2.4.2 顯式的歐拉方法
2.4.3 隱式歐拉方法
2.4.4 不准確性
2.4.5 尋找隱式解
2.4.6 結論
2.4.7 參考文獻
2.5 小波:理論與壓縮(Lo?c Le Chevalier)
2.5.1 原理
2.5.2 一個實例
2.5.3 應用
2.5.4 參考文獻
2.6 水面的交互式模擬(Miguel Gomez)
2.6.1 二維波動方程
2.6.2 邊界條件:島嶼和海岸線
2.6.3 實現問題
2.6.4 與水面交互
2.6.5 渲染
2.6.6 參考文獻
2.7 游戲編程四元數(Jan Svarovsky)
2.7.1 將四元數當作矩陣替換物
2.7.2 為什麼不使用歐拉角
2.7.3 X、Y、Z和W代表什麼
2.7.4 源自什麼數學基礎
2.7.5 四元數如何表示旋轉
2.7.6 參考文獻
2.8 矩陣和四元數之間的轉換(Jason Shankel)
2.8.1 四元數旋轉
2.8.2 四元數到矩陣的轉換
2.8.3 矩陣到四元數的轉換
2.8.4 參考文獻
2.9 四元數插值(Jason Shankel)
2.9.1 四元數計算
2.9.2 四元數插值
2.9.3 示例代碼
2.9.4 推導
2.10 最短弧四元數(Stan Melax)
2.10.1 動機
2.10.2 數值不穩定性
2.10.3 穩定公式的推導
2.10.4 殘存不穩定性條件
2.10.5 源代碼
2.10.6 虛擬跟蹤球
2.10.7 參考文獻
第3章 人工智能
3.0 設計一個通用、健壯的AI引擎(Steve Rabin)
3.0.1 事件驅動與輪詢的對比
3.0.2 消息概念
3.0.3 狀態機
3.0.4 一個使用消息的事件驅動狀態機
3.0.5 交待時間(Confession Time)
3.0.6 另一個小交待
3.0.7 狀態機構建單元
3.0.8 狀態機消息路由選擇
3.0.9 發送消息
3.0.10 發送延遲的消息
3.0.11 刪除游戲對象
3.0.12 增強:定義消息的范圍
3.0.13 增強:記錄所有的消息活動和狀態變遷
3.0.14 增強:交換狀態機
3.0.15 增強:多狀態機
3.0.16 增強:一個狀態機隊列
3.0.17 代碼外部腳本化行為
3.0.18 結論
3.0.19 參考文獻
3.1 一個有限狀態機類(Eric Dybsand)
3.1.1 FSMclass和FSMstate
3.1.2 定義FSMstate
3.1.3 定義FSMclass
3.1.4 為FSM創建狀態
3.1.5 使用FSM
3.1.6 參考文獻
3.2 博弈樹(Jan Svarovsky)
3.2.1 極小極大算法的負極大改進算法
3.2.2 α-β剪枝
3.2.3 走步排序方法
3.2.4 求精
3.2.5 參考文獻
3.3 A*路徑規劃基礎(Bryan Stout)
3.3.1 問題
3.3.2 方法概述
3.3.3 A*的特性
3.3.4 將A*應用到游戲路徑規劃
3.3.5 A*的弱點
3.3.6 進一步的工作
3.3.7 參考文獻
3.4 A*審美優化(Steve Rabin)
3.4.1 直路徑
3.4.2 多邊形搜索空間中的直路徑
3.4.3 平滑路徑
3.4.4 預先計算的Catmull-Rom公式
3.4.5 改進分級路徑的直接性
3.4.6 空曠區域上的分級尋徑
3.4.7 在分級搜尋過程中減少停頓
3.4.8 最大化響應率
3.4.9 結論
3.4.10 參考文獻
3.5 A*速度優化(Steve Rabin)
3.5.1 搜索空間優化
3.5.2 算法優化
3.5.3 結論
3.5.4 參考文獻
3.6 簡化的3D運動和使用導航網格進行尋徑(Greg Snook)
3.6.1 簡述
3.6.2 構造
3.6.3 滾動骰子並且移動鼠標
3.6.4 到此僅完成一半
3.6.5 它是有效的,但不是那麼完美
3.6.6 結論
3.6.7 參考文獻
3.7 Flocking:一種模擬群體行為的簡單技術(Steven Woodcock)
3.7.1 實現
3.7.2 代碼
3.7.3 局限性與可能的改進
3.7.4 資源與致謝
3.8 用於視頻游戲的模糊邏輯(Mason McCuskey)
3.8.1 模糊邏輯如何工作
3.8.2 模糊邏輯運算
3.8.3 為模糊控制而剎車
3.8.4 模糊邏輯的其他應用
3.8.5 結論
3.8.6 資源
3.9 神經網絡初探(André LaMothe)
3.9.1 生物學仿真
3.9.2 對游戲的應用
3.9.3 神經網絡101
3.9.4 純邏輯,Mr. Spock
3.9.5 分類與“圖像”識別
3.9.6 Hebbian的Ebb
3.9.7 運行Hopfield
3.9.8 結論
第4章 多邊形技術
4.0 為OpenGL優化頂點提交(Herbert Marselas)
4.0.1 即時模式
4.0.2 交叉存取數據
4.0.3 步數據和流數據
4.0.4 編譯過的頂點數組
4.0.5 取消數據復制廠家指定擴展
4.0.6 數據格式
4.0.7 一般建議
4.0.8 結論
4.0.9 參考文獻
4.1 調整頂點的投影深度值(Eric Lengyel)
4.1.1 考察投影矩陣
4.1.2 矯正深度值
4.1.3 選擇一個適當的
4.1.4 實現
4.1.5 源代碼
4.2 矢量攝像機(David Paull)
4.2.1 矢量攝像機初步
4.2.2 本地空間優化
4.2.3 結論
4.3 攝像機控制技術(Dante Treglia II)
4.3.1 一種基本的第一人稱攝像機
4.3.2 腳本攝像機
4.3.3 攝像機技巧
4.4 一種快速的圓柱稜台相交測試算法(Eric Lengyel)
4.4.1 視域稜台
4.4.2 計算有效半徑
4.4.3 算法
4.4.4 實現
4.5 3D碰撞檢測(Kevin Kaiser)
4.5.1 算法概述
4.5.2 包圍球碰撞檢測
4.5.3 三角形對三角形的碰撞檢測
4.6 用於交互檢測的多分辨率地圖(Jan Svarovsky)
4.6.1 使用柵格
4.6.2 對象大小變化的問題
4.6.3 多分辨率地圖
4.6.4 源代碼
4.7 計算到區域內部的距離(Steven Ranck)
4.7.1 問題
4.7.2 算法描述
4.7.3 應用
4.8 對象阻塞剔除(Tim Round)
4.8.1 可視稜台裁剪
4.8.2 阻塞剔除
4.8.3 總結
4.9 永遠不要讓他們看到你的“抖動”——幾何體細節層次選擇問題(Yossarian King)
4.9.1 LOD選擇
4.9.2 放大率因子
4.9.3 滯變阈值
4.9.4 實現
4.9.5 其他問題
4.10 八叉樹構造(Dan Ginsburg)
4.10.1 八叉樹概述
4.10.2 八叉樹數據
4.10.3 建立樹
4.10.4 多邊形重迭
4.10.5 相鄰節點
4.10.6 應用
4.10.7 結論
4.10.8 參考文獻
4.11 松散的八叉樹(Thatcher Ulrich)
4.11.1 四叉樹
4.11.2 包圍體
4.11.3 劃分物體
4.11.4 使它松散
4.11.5 比較
4.11.6 結論
4.12 獨立於觀察的漸進網格(Jan Svarovsky)
4.12.1 漸進網格概述
4.12.2 關於這個主題的變種
4.12.3 邊緣選擇函數
4.12.4 難處理的邊
4.12.5 實現
4.12.6 源代碼
4.12.7 參考文獻
4.13 插值的3D關鍵幀動畫(Herbert Marselas)
4.13.1 線性插值
4.13.2 對頂點和法線進行插值
4.13.3 Hermite樣條插值
4.13.4 對頂點進行樣條插值
4.13.5 為什麼用Hermite樣條
4.13.6 總結
4.13.7 參考文獻
4.14 一種快速而簡單的皮膚構造技術(Torgeir Hagland)
4.14.1 為什麼對低多邊形有價值
4.14.2 方法
4.14.3 總結
4.14.4 參考文獻
4.15 填充間隙——使用縫合和皮膚構造的高級動畫(Ryan Woodland)
4.15.1 縫合
4.15.2 皮膚構造(Skinning)
4.15.3 進一步的問題
4.15.4 參考文獻
4.16 實時真實地形生成(Guy W. Lecky-Thompson)
4.16.1 風景設計
4.16.2 建築物
4.16.3 命名算法
4.16.4 參考文獻
4.17 分形地形生成——斷層構造(Jason Shankel)
4.17.1 斷層構造
4.17.2 減少dHeight
4.17.3 生成隨機直線
4.17.4 腐蝕(erosion)
4.17.5 示例代碼
4.17.6 參考文獻
4.18 分形地形生成——中點置換(Jason Shankel)
4.18.1 一維中點置換
4.18.2 二維中點置換——菱形正方形算法
4.18.3 高地中的菱形——正方形算法
4.19 分形地形生成——粒子沉積(Jason Shankel)
4.19.1 MBE模型
4.19.2 粒子沉積
4.19.3 倒置火山口
4.19.4 示例代碼
4.19.5 參考文獻
第5章 像素特效
5.0 2D鏡頭光暈(Yossarian King)
5.0.1 方法
5.0.2 實現
5.0.3 源代碼
5.1 將3D硬件用於2D子畫面特效(Mason McCuskey)
5.1.1 進入3D
5.1.2 建立3D場景
5.1.3 建立紋理
5.1.4 繪制3D子畫面
5.1.5 添加特效
5.1.6 結論
5.2 基於運動的靜態光照(Steven Ranck)
5.2.1 傳統的靜態光照
5.2.2 基於運動的靜態光照
5.2.3 結論
5.3 使用定點顏色插值模擬實時光照(Jorge Freitas)
5.3.1 光照方法
5.3.2 美工創作
5.3.3 插值光照
5.3.4 結論
5.4 衰減圖(Sim Dietrich)
5.4.1 講解
5.4.2 比較衰減圖與光照圖
5.4.3 CSG效果
5.4.4 基於范圍的霧
5.4.5 其他形狀
5.4.6 結論
5.5 使用紋理坐標生成技術的高級紋理(Ryan Woodland)
5.5.1 簡單紋理坐標動畫
5.5.2 紋理投影
5.5.3 反射映射
5.5.4 參考文獻
5.6 硬件凹凸貼圖(Sim Dietrich)
5.6.1 如何將凹凸圖應用於對象上
5.6.2 為法線選擇一個空間
5.6.3 另一種方法:使用正切空間凹凸貼圖
5.6.4 解決方案:紋理空間凹凸貼圖
5.6.5 紋理空間問題
5.6.6 結論
5.6.7 參考文獻
5.7 底面陰影(Yossarian King)
5.7.1 陰影數學
5.7.2 實現
5.7.3 擴展
5.8 復雜對象上的實時陰影(Gabor Nagy)
5.8.1 介紹
5.8.2 光源、遮擋物體和接收物體
5.8.3 本文的目的
5.8.4 創建陰影圖
5.8.5 在接收物體上投影陰影圖
5.8.6 渲染接收物體
5.8.7 對基本算法的擴展與改進
5.8.8 參考文獻
5.9 使用光滑預過濾和Fresnel項改善環境映射反射(Anis Ahmad)
5.9.1 第一個不正確的假設
5.9.2 第二個不正確的假設
5.9.3 結論
5.9.4 致謝
5.9.5 參考文獻
5.10 游戲中玻璃的效果(Gabor Nagy)
5.10.1 介紹
5.10.2 透明物體
5.10.3 光柵化程序、幀緩沖、Z緩沖和像素混合
5.10.4 不透明物體與透明物體
5.10.5 繪制不透明物體
5.10.6 繪制透明物體
5.10.7 反射
5.10.8 有色玻璃
5.10.9 將它們放到一起
5.10.10 實現
5.10.11 參考文獻
5.11 用於容器中液體的折射貼圖(Alex Vlachos,Jason L. Mitchell)
5.11.1 介紹
5.11.2 折射項
5.11.3 反射項
5.11.4 Fresnel項
5.11.5 使用硬件渲染
5.11.6 該技術的擴展
5.11.7 結論
5.11.8 參考文獻
第6章 附錄
6.0 矩陣工具庫(Dante Treglia II,Mark A. DeLoura)
6.1 文本工具庫(Dante Treglia II)
6.2 關於隨書光盤(Mark A. DeLoura)
作者索引 
相關資源:

免責聲明:本網站內容收集於互聯網,本站不承擔任何由於內容的合法性及健康性所引起的爭議和法律責任。如果侵犯了你的權益,請通知我們,我們會及時刪除相關內容,謝謝合作! 聯系信箱:[email protected]

Copyright © 電驢下載基地 All Rights Reserved