游戏开发

Pygame 游戏开发

从贪吃蛇到 2D RPG,用 Python 做游戏。学习游戏引擎原理和图形编程。

📚 48 课时 ⏱ 22 小时 🎮 趣味编程
课程章节

48 课时,从零做游戏

01

Pygame 基础与环境搭建

安装 Pygame,创建第一个游戏窗口,理解 Surface 和 Display 机制,掌握坐标系统与颜色管理。

6 课时
1.1Pygame 安装与配置pip install、依赖库、开发环境配置
1.2创建游戏窗口pygame.display.set_mode、窗口标题、图标
1.3Surface 与 DisplaySurface 对象、blit 绘制、flip/update
1.4坐标系统详解像素坐标、原点位置、坐标变换
1.5颜色管理 RGBRGB/RGBA 颜色、透明度、颜色常量
1.6第一个 Pygame 程序完整游戏框架:初始化→循环→退出
02

游戏循环与事件处理

深入理解游戏主循环原理,学习事件监听、键盘鼠标输入处理,掌握帧率控制与 Delta Time。

6 课时
2.1游戏主循环原理事件处理→更新状态→渲染画面 循环架构
2.2事件监听系统pygame.event、事件类型、事件队列
2.3键盘输入处理get_pressed/KEYDOWN、持续按键检测
2.4鼠标输入处理MOUSEBUTTONDOWN/UP/MOTION、光标控制
2.5帧率控制 FPSClock.tick()、目标帧率、性能监控
2.6Delta Time 时间步帧率无关移动、dt 计算、平滑运动
03

图形绘制与动画

绘制几何图形、加载与渲染图片,实现帧动画、精灵表切割和过渡效果。

6 课时
3.1几何图形绘制rect/circle/polygon/line 基础图形
3.2图片加载与渲染image.load/convert、缩放旋转、透明度
3.3帧动画实现动画帧列表、帧率切换、循环动画
3.4精灵表切割Sprite Sheet 解析、Rect 区域提取
3.5过渡与渐变效果淡入淡出、画面切换、Alpha 通道动画
3.6动画系统设计状态机、动画混合、可复用动画类
04

精灵与碰撞检测

使用 Pygame Sprite 模块管理游戏对象,实现矩形碰撞、圆形碰撞与像素级碰撞检测。

6 课时
4.1Sprite 精灵模块Sprite 基类、update 方法、自定义精灵
4.2精灵组管理Group/GroupSingle、批量更新与绘制
4.3矩形碰撞检测colliderect、spritecollide、groupcollide
4.4圆形碰撞检测距离计算、圆形判定、自定义碰撞函数
4.5像素级碰撞mask.from_surface、精确碰撞检测
4.6碰撞响应处理碰撞回调、物理反弹、伤害计算
05

游戏音效与音乐

加载播放音效与背景音乐,实现音量控制、声道管理,为游戏添加沉浸式声音体验。

6 课时
5.1音效文件加载Sound 对象、WAV/OGG 格式、预加载
5.2背景音乐播放mixer.music、循环播放、暂停恢复
5.3音量与声道控制set_volume、多声道、声道优先级
5.4音效触发系统事件触发音效、音效管理器、防重复播放
5.5音乐淡入淡出场景切换音乐过渡、fadeout/fadein
5.63D 空间音效音量衰减、左右声道平衡、距离感模拟
06

关卡设计与地图系统

使用 Tile Map 设计游戏地图,学习 Tiled 编辑器集成,实现地图滚动与关卡切换逻辑。

6 课时
6.1Tile Map 基础瓦片地图概念、地图层级、碰撞层
6.2Tiled 编辑器使用地图编辑、图层管理、对象标注
6.3地图数据加载JSON/TMX 格式解析、瓦片索引映射
6.4地图渲染与滚动视口跟随、平滑滚动、大地图优化
6.5关卡切换逻辑传送门/触发器、关卡数据管理、过渡动画
6.6存档与读档系统JSON 存档、游戏状态序列化、自动保存
07

2D RPG 游戏开发

综合所学知识构建完整 RPG 游戏,包含角色系统、NPC 对话、背包道具和战斗机制。

6 课时
7.1角色属性系统HP/MP/攻击力/防御力、升级经验值
7.2NPC 对话系统对话树、分支选项、任务触发
7.3背包道具系统物品管理、装备穿戴、道具使用效果
7.4战斗机制设计回合制战斗、技能系统、伤害计算公式
7.5任务系统主线/支线任务、任务追踪、奖励发放
7.6剧情脚本引擎事件触发、过场动画、剧情分支
08

发布与性能优化

打包发布游戏为可执行文件,学习性能分析与优化技巧,适配不同分辨率与平台。

6 课时
8.1PyInstaller 打包单文件/单目录模式、资源文件打包、图标
8.2性能分析工具cProfile/timeit、帧率监控、瓶颈定位
8.3内存优化技巧图片缓存、对象池、内存泄漏检测
8.4分辨率适配可伸缩 UI、逻辑分辨率/渲染分辨率
8.5跨平台兼容Windows/macOS/Linux 兼容、路径处理
8.6发布与分发流程itch.io 发布、版本管理、更新机制
在线练习

动手试一试

game_demo.py
输出结果
点击 "运行" 查看结果...

创造你的游戏世界

48 课时,从零开始做游戏

← 返回课程列表