预购商品
书目分类
特别推荐
本書是『遊戲設計與開發系列』的第一本書,主要教導新手與初階使用者之讀者熟悉使用Python進行程式開發,配合Pygame套件進入遊戲設計與開發的實際應用,主要目的是提供初學者可以一步一步安裝好Python程式開發環境,安裝與設定Pygame套件的遊戲開發與設定等等。 目前已經有許多Pygame遊戲開發的網路教學影片與許多文章與討論,由於Pygame遊戲開發充分使用到Python物件導向程式設計與開發的許多技巧,對於學習高階的Python物件導向程式攥寫有許多助益,PyGame是一個用於開發2D遊戲的Python套件模組,它為遊戲開發者提供了簡單易用的API。 PyGame這個套件建立在SDL(Simple Direct Media Layer)之上,並且能夠處理多種多媒體任務,如音頻、視覺效果、輸入控制等,適合用來創建遊戲、模擬器或其他多媒體應用,雖然目前遊戲設計與開發仍是以C與C++語言為主,但是由於C與C++語言入門雖不難,但是要深入C與C++語言後,可以進行遊戲開發,其門檻對許多專業程式開發人員仍然需要多年的訓練與多年不懈的努力才能有基本遊戲開發的程式攥寫技能,然而遊戲設計除了開發工具熟悉與專業之外,對於遊戲設計的領域知識與獨門技巧,尤其對於圖片、影音、人機介面操控與遊戲繪圖時脈與禎數整合與各種程序分時多工的設計技巧,更是C與C++語言之更深入的高階技巧,致使使用C與C++語言開發遊戲成為及少數專業程式開發人員可以進入的領域。 本書是Python之Pygame遊戲設計中基礎入門書,後續筆者會針對不同遊戲,單獨針對每一種不同類型與獨特的遊戲開發例子,會獨立設計專書來帶領讀者進入遊戲專業開發的殿堂。
自序 自序 自序 目錄 圖目錄 表目錄 遊戲設計與開發系列 Python 介紹 Python 起源與創始 發展階段 近期發展 現代發展 關鍵特性 主要用途 內建常數 Python 內建函式 Python 編譯器安裝 測試Python 是否安裝成功 安裝PyCharm 整合工具安裝 測試PyCharm 是否安裝成功 建立開發基本專案環境 安裝套件 Python 環境安裝PyGame 套件 Python 環境安裝cocos2d 套件 Python 環境安裝numpy 套件 PyCharm環境安裝PyGame套件 章節小結 PyGame基本介紹 如何使用PyGame套件 如何建立繪圖視窗介面 設定視窗介面屬性 建立視窗大小 建立視窗背景顏色 透過畫布建立視窗背景顏色 pygame.display相關函式介紹 使用圖片繪製視窗背景 載入圖片 繪製圖片到視窗 繪製文字到視窗背景 系統字型 載入系統字型 載入字型 設定字型屬性 產生字型內容 繪製文字內容到視窗上 產生結束圖示與正確離開系統 缺乏結束程序產生之系統錯誤 捕抓所有滑鼠相關動作引發的事件 判斷是否是按下系統結束按鈕 確認常在狀態與系統離開狀態 章節小結 PyGame 繪圖功能介紹 Surface 對象: 基本繪圖功能 處理顏色 渲染圖像 繪製文字 更新顯示 性能優化 如何繪製線條 建立與視窗大小一致畫布 直接在pygame 視窗繪製X 的直線 直接在pygame 視窗繪製一個格盤 如何繪製矩形 建立與視窗大小一致畫布 直接在pygame 視窗繪製三分之一的矩形框 直接在pygame 視窗繪製連續縮小的矩形框 如何繪製圓形 建立與視窗大小一致畫布 直接在pygame 視窗繪製中心圓形框 直接在pygame 視窗繪製連續縮小的圓形框 如何繪製橢圓形 建立與視窗大小一致畫布 直接在pygame 視窗繪製中心橢圓形框 直接在pygame 視窗繪製連續縮小的橢圓形框 如何繪製圓弧 建立與視窗大小一致畫布 直接在pygame視窗繪製10個20分之一的弧形框 直接在pygame視窗繪製連續縮小的弧形框 如何繪製多邊形 建立與視窗大小一致畫布 直接在pygame視窗繪製四邊形之多邊形框 直接在pygame視窗繪製連續縮小的矩形框 章節小結 PyGame精靈功能介紹 如何使用PyGame套件 如何建立繪圖視窗介面 設定視窗介面屬性 建立視窗大小 建立視窗背景顏色 透過畫布建立視窗背景顏色 建立一個基本Sprite 物件 Pygame 中的 Sprite 類別 Sprite 的基本特性 Sprite 的基本操作 Group 和 GroupSingle 建立最後迴圈程序 離開遊戲 最後整合程式 控充Sprite 物件邊界問題 擴充 Sprite 類別所處視窗 在擴充 Sprite 類別所處方向與位置資訊 擴充邊界之整合程式 擴充Sprite 物件考慮範圍問題 在擴充 Sprite 類別所處二軸方向與位置資訊 擴充全方位邊界之整合程式 擴充Sprite 物件內建屬性設定問題 在擴充 Sprite 類別離動距離資訊為屬性 建立距離屬性對應方法 在程式之中設定距離屬性 擴充亂數設定移動距離之整合程式 產生兩個物件在畫面上同時移動 主程式中加入第二個精靈角色 加入角色名字 加入碰撞反彈處理方法 在主程序中加入檢查是否碰撞 兩物件碰撞之整合程式 章節小結 PyGame 音效功能介紹 背景音樂基本介紹 music 用途 music 原理 music 基本用法 載入音樂文件 檢查是否音樂播放中 卸載音樂文件 播放音樂 暫停與繼續播放 重新播放音樂 播放中等待一些時間後停止 設定播放音樂位置 取得播放音樂位置 設置音量 取得目前音量大小 建立一個簡單的背景音樂 設定視窗介面屬性 建立視窗背景顏色 載入音樂文件 播放音樂 播放科學小飛俠主題曲之整合程式 加入鍵盤控制的背景音樂 讀取使用者按下鍵盤資訊 辨識使用者按下鍵盤資訊進行處理 加入鍵盤控制的背景音樂整合 背景音效基本介紹 Sound用途 Sound原理 Sound基本用法 加入鍵盤控制的音效 載入音效 讀取使用者按下鍵盤資訊 辨識使用者按下鍵盤資訊進行處理 加入鍵盤控制的音效 以球在平面移動撞壁產生音效 初始化pygame 建立視窗大小 建立視窗抬頭 建立視窗背景顏色 建立一個Ball 的Sprite 類別 Ball 的基本操作 Ball 的初始化 Ball 的屬性讀寫方法 Ball 的更新方法 建立精靈群組來處理更新與繪製機制 建立最後迴圈程序 離開遊戲 最後產生一個球碰掉牆壁會發出音效整合程式 章節小結 PyGame 操控功能介紹 鍵盤操控介紹 鍵盤檢測用途 鍵盤檢測原理 鍵盤基本用法 常見按鍵常用變數 檢測鍵盤判斷按鍵常用變數 建立一個以方向鍵移動的角色 內部變數部分: 初始化部分: 屬性部分: 類別公開方法部分: 類別使用方法: 建立一個小精靈(吃豆人)可以上下左右鍵移動的角色 Import匯入套件部分: 系統初始化部分: 精靈設計部分: 精靈群組設計部分: 遊戲主程序設計部分: 遊戲主程序迴圈控制部分: 遊戲主程序檢測鍵盤操控部分: 畫面更新部分: 最後程序: 滑鼠操控介紹 滑鼠操控原理 滑鼠操控基本用法 滑鼠操作基本用法 常見按鍵常用變數 建立一個打地鼠可以移動游標與按鍵改變圖片的角色 內部變數部分: 初始化部分: 屬性部分: 類別公開方法部分: 類別使用方法: 建立一個打地鼠可以畫面移動游標與按鍵改變圖片 Import匯入套件部分: 建立程式中使用的函數: 系統初始化部分: 精靈設計部分: 精靈群組設計部分: 遊戲主程序設計部分: 遊戲主程序迴圈控制部分: 遊戲主程序檢測滑鼠位置部分: 畫面更新部分: 最後程序: 章節小結 本書總結 作者介紹 附錄 參考文獻
作者簡介 曹永忠 (Yung-Chung Tsao) 國立中央大學資訊管理學系博士,目前在國立暨南國際大學電機工程學系兼任助理教授、國立高雄大學電機工程學系兼任助理教授,專注於軟體工程、軟體開發與設計、物件導向程式設計、物聯網系統開發、Arduino開發、嵌入式系統開發。長期投入資訊系統設計與開發、企業應用系統開發、軟體工程、物聯網系統開發、軟硬體技術整合等領域,並持續發表作品及相關專業著作。 並通過台灣圖霸的專家認證。 目前也透過Youtube在直播平臺www.youtube.com/@dr.ultima/streams,不定期分享系統設計開發的經驗、技術與資訊工具、技術使用的經驗 Email:[email protected] Line ID:dr.brucetsao WeChat:dr_brucetsao 作者網站:ncnu.arduino.org.tw/brucetsao/myprofile.php 臉書社群(Arduino.Taiwan):https://www.facebook.com/groups/Arduino.Taiwan/ Github網站:github.com/brucetsao/ 原始碼網址:github.com/brucetsao/CloudingDesign 直播平檯www.youtube.com/@dr.ultima/streams: 蔡英德 (Yin-Te Tsai) 國立清華大學資訊科學系博士,目前是靜宜大學資訊傳播工程學系教授、靜宜大學資訊學院院長,主要研究為演算法設計與分析、生物資訊、軟體開發、視障輔具設計與開發。 Email:[email protected] 作者網頁:www.csce.pu.edu.tw/people/bio.php?PID=6#personal_writing 許智誠 (Chih-Cheng Hsu) 美國加州大學洛杉磯分校(UCLA) 資訊工程系博士,曾任職於美國IBM等軟體公司多年,現任教於中央大學資訊管理學系專任副教授,主要研究為軟體工程、設計流程與自動化、數位教學、雲端裝置、多層式網頁系統、系統整合、金融資料探勘、Python建置(金融)資料探勘系統。 Email: [email protected] 作者網頁:www.mgt.ncu.edu.tw/~khsu/
最近浏览商品
客服公告
热门活动
订阅电子报