fbpx

實作的藝術:使用 Python 和 Pygame 製作視訊遊戲

從使用單個圖像的簡單遊戲到使用 classes 和 100 個精靈( Sprites )的複雜遊戲,本課程將涵蓋所有內容!

從這 17.5 小時的課程,你會學到

  • Pygame 程式庫( library )和整體視訊遊戲設計的基礎知識。
  • 使用 Classes 和繼承使複雜的程式碼更有條理和高效。
  • 如何創建表面、blit 圖像、渲染文本、處理用戶輸入和檢測碰撞。
  • 如何使用精靈( Sprites )、精靈組( Sprite Group )和更強大的碰撞方法。
  • 如何創建我們自己的瓦片地圖並讀取瓦片地圖來設計遊戲關卡。
  • 如何使用二維向量來處理複雜的平台運動,例如在重力和摩擦力下的奔跑和跳躍。
  • 如何使用 Sprite 表添加自訂的角色動畫以幫助讓我們的遊戲真正栩栩如生。
  • 如何在需要時使用碰撞遮罩進行像素完美碰撞。
  • 總共創建 7 個很棒的遊戲! 4 個非常適合初學者,2 個中級,1 個高級。

要求

  • 基本的 Python/電腦科學理解。
  • 學生應該了解變數、列表、迴圈和條件等基本知識,因為我不會真正花時間教授這些概念,而是展示如何在更大的專案中使用它們。
  • 在課程的後半部分,我們將轉向廣泛使用 classes。 我將花一些時間複習和教授 classes 和繼承的主題,但先前的知識可能會有所幫助。

課程說明

你有沒有學過 Python 的基礎知識,然後問問自己; 下一步是什麼?

如果是這樣,請考慮學習這門課程,這將開啟你使用 Python 和 Pygame library 製作自己的可玩、有趣且相當令人上癮的視訊遊戲的旅程。

很多時候,當學生徵求意見時,他們被告知“去建造一些東西”或“參與一個專案”,但不知道要建造或參與什麼專案。

本課程將助你一臂之力! 在本課程中,我將逐步指導你如何設計 7 種獨特、引人入勝且最重要的是有趣的遊戲的佈局和功能。 到本課程結束時,我保證你將提出自己的遊戲創意,並對自己的創造能力充滿信心。

根據我教授計算機科學的經驗,學生往往在基礎知識下表現出色,但在我們進行物件導向程式設計時卻碰壁了。 轉向使用 classes 作為建構程式碼的一種方式是困難的,而且學生常常沒有足夠的機會接觸到有關如何使用 classes 來幫助提高複雜程式碼效率的有意義的示例。 我相信在本課程結束時,你將了解如何使用 classes。

本課程的設計方式無需任何課程知識即可開始! 我們將從學習 Pygame library 的基礎知識和視訊遊戲設計概念開始,然後繼續製作 4 款非常有趣的街機風格遊戲。

  • 餵龍:使用你的箭頭鍵,上下移動龍,盡可能多地吃掉金幣。 你吃的硬幣越多,你移動得越快!
  • 單擊小丑:使用鼠標單擊螢幕上隨機移動的小丑。 每按一下,他的動作就會越來越快!
  • :通過經典的 Snake 風格遊戲重溫 2000 年左右手機遊戲的輝煌歲月!
  • 漢堡狗:給飢餓的小狗餵食從天而降的漢堡。 將你的速度提升的時間恰到好處,以抓住那些遙不可及的漢堡!

然後,我們將回顧/教授 Python 中 classes 和繼承的概念,因為它們是幫助我們使用精靈( Sprites )和精靈組( Sprite Group )將遊戲提升到新水平的重要工具。 在製作 2 個中級遊戲時,我們將花一些時間學習更多中級概念,例如如何使用精靈、精靈組和各種精靈碰撞檢測方法。

  • 怪物牧者:英勇的騎士必須在螢幕上與各種怪物爭鬥。 小心收集正確類型的怪物; 收集錯誤的一個,你會受到懲罰!
  • 太空入侵者:誰不喜歡太空入侵者???? 在經典的《太空入侵者》動作中,一波又一波即將來臨的外星人慢慢地 ( 然後很快地 ) 在螢幕上爬來爬去,拯救文明!

本課程的第三部分將側重於更高級的主題,例如創建瓷磚地圖並使用/閱讀它來建立更複雜的關卡設計,使用二維向量來幫助更複雜的玩家運動,例如在摩擦力下奔跑和跳躍 和重力,並添加角色動畫,讓我們的遊戲真正栩栩如生! 我們將使用這些更高級的概念以及我們以前的所有知識來製作最後一款遊戲,最終你將有很有看頭的專案,值得拿來展示給朋友和潛在雇主/客戶!

  • 殭屍騎士 : 天黑了,陰森森的,殭屍復活了!!! 在這款經典風格的平台遊戲中,作為一名值得信賴的騎士,你必須在一夜又一夜的在殭屍襲擊中倖存下來。 從一個平台跳到另一個平台。 使用門戶空間傳送跨級。 用你可信賴的劍攻擊殭屍,殺死他們……但是,你必須記住; 喪屍總能死而復生! 用劍殺死他們後,踩踏他們,永遠結束他們! 最重要的是,收集有價值的紅寶石,防止更多殭屍崛起!

我真的為這堂課感到驕傲。我真的相信這不僅是一次很棒的學習經歷,而且還非常有趣!很歡迎你考慮加入並參與學習。

目標受眾

  • 初學者 Python 開發人員對視訊遊戲設計和 Pygame library 感到好奇。
  • 希望加強對 classes 以及如何在大型專案中使用它們的理解的初學者 Python 開發人員。
  • 熱愛經典風格街機遊戲的 Python 初學者開發者。

講師簡介

Michael Eramo 教育家、碩士教師、自學成才的程式設計師

你好,我叫 Michael Eramo。 我是終身學習者、自學成才的程式設計師和經驗豐富的教育家。 我擁有音樂、教育和物理學的官方學士學位,以及數學碩士學位。 我還持有 Microsoft 的軟體開發證書。

我有多年的高中物理教師、計算機科學教師和大學數學教師的經驗。 我是紐約州碩士教師計劃的成員,該計劃由全州 800 多名傑出的公立學校教師組成,他們對自己的 STEM 學習充滿熱情,並與同事合作以激勵下一代 STEM 領導者。

我熱衷於學習新事物,並以一種引人入勝、有意義且有目的的方式向周圍的人傳授我所知道的知識。

英文字幕:有

  • 想要了解如何將英文字幕自動翻譯成中文? 請參考這篇 How-To

🙌 如何有效率地管理 ChatGPT 輸出與整理自己的 ChatGPT 提示( prompts )使用情境?LN+ for Web 已經針對 ChatGPT 的整合做最佳化

🙌 讓 Notion AI 成為你線上學習的得力助手,詳細操作請參考 – 使用 Notion AI 功能來為 udemy 的課程做摘要總結



報名參加課程

Sponsored by Udemy


也許你會有興趣

不受 FB 演算法影響,歡迎透過 e-mail 訂閱網站更新

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料

Powered by WordPress.com.

Up ↑

%d 位部落客按了讚: