産品特色
內容簡介
Python是一種解釋型、麵嚮對象、動態數據類型的高級程序設計語言,在遊戲開發領域,Python也得到越來越廣泛的應用,並由此受到重視。
《Python遊戲編程入門》教授用Python開發精彩遊戲所需的重要的該你那。本書不隻是介紹遊戲編程概念的相關內容,還深入到復雜的主題。全書共14章,依次介紹瞭使用Pygame、文件I/O、用戶輸入、數學和圖形編程、位圖圖形、精靈動畫、衝突檢測、數組、計時和聲音、編程邏輯、三角函數、隨機地形、角色扮演遊戲等重要概念。每章通過一個示例遊戲來展示這些知識和工具的實際應用。本書既可以幫助讀者掌握相關概念來構建較為復雜的遊戲,甚至進行較為復雜的Python編程。
《Python遊戲編程入門》內容淺顯易懂,示例輕鬆活潑,適閤Python初學者閱讀,尤其適閤想要掌握Python遊戲編程的讀者學習參考。
作者簡介
Jonathan Harbour曾經作為副教授在UAT (Tempe, AZ)教授瞭5年遊戲開發。他編寫瞭20多本(包括改編)書,涉及到大多數主流的編程語言,如C++、C#、VB、Java和Python。他還熟悉Xbox、Xbox 360、Windows Phone、Android、Game Boy Advance 和Pocket PC等硬件。可以通過www.jharbour.com聯係他。
目錄
第1章 使用類的Python
1.1 瞭解Geometry程序
1.2 初識Python
1.2.1 Python工具
1.2.2 Python語言
1.3 Python中的對象
1.3.1 在麵嚮對象之前是什麼
1.3.2 接下來是什麼
1.3.3 OOP:Python的方式
1.3.4 單繼承
1.3.5 多繼承
1.4 小結
第2章 初識Pygame:Pie遊戲
2.1瞭解Pie遊戲
2.2 使用Pygame
2.2.1 打印文本
2.2.2 循環
2.2.3 繪製圓
2.2.4 繪製矩形
2.2.5 繪製綫條
2.2.6 繪製弧形
2.3 Pie遊戲
2.4 小結
第3章 I/O、數據和字體:TRIVIA遊戲
3.1瞭解Trivia遊戲
3.2 Python數據類型
3.2.1關於打印的更多知識
3.2.2 獲取用戶輸入
3.2.3 處理異常
3.2.4 Mad Lib遊戲
3.3 文件輸入/輸齣
3.3.1 操作文本
3.3.2 操作二進製文件
3.4 TRIVIA遊戲
3.4.1 用Pygame打印文本
3.4.2 Trivia類
3.4.3 加載Trivia數據
3.4.4 顯示問題和答案
3.4.5 響應用戶輸入
3.4.6 繼續下一個問題
3.4.7 主代碼
3.5 小結
第4章用戶輸入:Bomb Catcher遊戲
4.1認識Bomb Catcher遊戲
4.2 Pygame事件
4.2.1 實時事件循環
4.2.2 鍵盤事件
4.2.3 鼠標事件
4.3 設備輪詢
4.3.1 輪詢鍵盤
4.3.2 輪詢鼠標
4.4 Bomb Catcher遊戲
4.5 小結
第5章 Math和Graphics:Analog Clock示例程序
5.1 Analog Clock示例程序簡介
5.2 基本三角函數
5.2.1 圓理論
5.2.2 遍曆圓周
5.2.3 圓示例
5.3 Analog Clock示例程序
5.3.1 獲取時間
5.3.2 繪製時鍾
5.4 小結
第6章 位圖圖形:Orbiting Spaceship示例程序
6.1 認識Orbiting Spaceship示例程序
6.2 使用位圖
6.2.1加載位圖
6.2.2 繪製背景
6.2.3 繪製行星
6.2.4 繪製航空飛船
6.3 環繞行星軌道
6.3.1 繞軌道移動
6.4 小結
第7章 用精靈實現動畫: Escape the Dragon遊戲
7.1 認識Escape the Dragon遊戲
7.2 使用Pygame精靈
7.2.1定製動畫
7.2.2 加載精靈序列圖
7.2.3 更改幀
7.2.4 繪製一幀
7.2.5 精靈組
7.2.6 MySprite類
7.2.7 測試精靈動畫
7.3 Escape the Dragon遊戲
7.3.1 跳躍
7.3.2 衝突
7.3.3 源代碼
7.4 小結
第8章 精靈衝突:Zombie Mob遊戲
8.1 Zombie Mob遊戲簡介
8.2 衝突檢測技術
8.2.1 兩個精靈之間的矩形檢測
8.2.2 兩個精靈之間的圓檢測
8.2.3 兩個精靈之間的像素精確遮罩檢測
8.2.4 精靈和組之間的矩形衝突
8.2.5 兩個組之間的矩形衝突檢測
8.3 Zombie Mob遊戲
8.3.1 創建自己的模塊
8.3.2 高級定嚮動畫
8.3.3 與僵屍衝突
8.3.4 獲得生命值
8.3.5 遊戲源代碼
8.4 小結
第9章 數組、列錶和元組:Block Breaker遊戲
9.1 Block Breaker遊戲簡介
9.2 數組和列錶
9.2.1 有一個維度的列錶
9.2.2 創建棧式列錶
9.2.3 創建隊列式列錶
9.2.4 更多維度的列錶
9.3 元組
9.3.1 打包元組
9.3.2 解包元組
9.3.3 搜索元素
9.3.4 計數元素
9.3.5 作為常量數組的元組
9.4 Block Breaker遊戲
9.4.1 Block Breaker關卡
9.3.2 加載和修改關卡
9.3.3 初始化遊戲
9.3.4 移動擋闆
9.3.5 移動球
9.3.6 撞擊擋闆
9.3.7 撞擊磚塊
9.3.8 主代碼
9.3.9 更新MySprite
9.4 小結
第10章 計時和聲音:Oil Spill遊戲
10.1 Oil Spill遊戲簡介
10.2 聲音
10.2.1 加載音頻文件
10.2.2 播放音頻剪輯
10.3 構建Oil Spill遊戲
10.3.1 遊戲邏輯
10.3.2 源代碼
10.4 小結
第11章 編程邏輯:Snake遊戲
11.1 Snake遊戲簡介
11.2 開發Snake遊戲
11.2.1 畫齣蛇來——SnakeSegment類
11.2.2 增長蛇——Snake類
11.2.3 蛇吃食物——Food類
11.2.4 初始化遊戲
11.2.5 主程序
11.2.6 通過吃食物而張長
11.2.7 咬到自己是不明智的
11.2.8 跌落世界之外
11.3 教蛇學會自己移動
11.3.1 自動移動
11.3.2 獲得當前方嚮
11.3.3 朝著食物移動
11.3.4 其他代碼修改
11.4 小結
第12章 三角數學:Tank Battle遊戲
12.1 Tank Battle遊戲簡介
12.2 角速率
12.2.1 計算角速率
12.2.2 Pygame笨拙的鏇轉
12.2.3 以任意角度前後移動坦剋
12.2.4 改進角度摺返
12.3 構建Tank Battle遊戲
12.3.1 坦剋
12.3.2 子彈
12.3.3 主程序代碼
12.4 小結
第13章 隨機地形:Artillery Gunner遊戲
13.1 Artillery Gunner遊戲簡介
13.2創建地形
13.2.1 定義高度地圖
13.2.2 平滑地形
13.2.3 定位柵格點
13.3 大炮
13.3.1 放置大炮
13.3.2 繪製炮塔
13.3.3 發射大炮
13.3.4 讓炮彈再飛一會兒
13.3.5 計算機開火
13.3.6 為擊中計分
13.4 完整的遊戲
13.5 小結
第14章 更多內容:Dungeon角色扮演遊戲
14.1 Dungeon遊戲簡介
14.2 迴顧經典的Dungeon RPG
14.2.1 Rogue
14.2.2 NetHack
14.2.3 AngBand
14.2.4 Kingdom of Kroz
14.2.5 ZZT
14.3 創建一個地下城關卡
14.3.1 理解ASCII字符
14.3.2 模擬文本控製颱顯示
14.3.3 生成隨機房間
14.3.4 生成隨機的通道
14.4 填充地下城
14.4.1 添加入口和齣口
14.4.2 添加金子
14.4.3 添加武器、盔甲和生命值
14.4.4 添加怪獸
14.4.5 完整的Dungeon類
14.4.6 添加玩傢的角色
14.5 高級遊戲邏輯
14.5.1 撿拾物品
14.5.2 與怪獸戰鬥
14.5.3 移動怪獸
14.5.4 可見性範圍
14.5.5 退齣關卡
14.5.6 結束遊戲邏輯
14.6 小結
附錄A 安裝Python和Pygame
A.1 安裝Python
A.2 安裝Pygame
附錄B Pygame按鍵代碼
前言/序言
Python遊戲編程入門 下載 mobi epub pdf txt 電子書 格式