⚡ C 编程 · 游戏实战
30章
从引擎到发布
01
C语言与游戏开发
从《DOOM》到《我的世界》,C语言基石
02
开发环境搭建
VS / GCC + CMake,SDL2/GLFW 第一个窗口
03
数据结构基础
数组/链表/栈/队列 · 背包系统、命令历史
04
游戏循环与时间控制
固定步长 vs 可变步长,FPS & deltaTime
05
二维图形渲染入门
SDL2 精灵、背景、动画帧
06
输入系统设计
键盘/鼠标事件,按键映射与缓冲区
07
碰撞检测基础
AABB、圆形碰撞,像素级取舍
08
游戏对象管理
ECS 简单实现,对象池技术
09
音频系统
SDL_mixer 音效/音乐,音量控制
10
状态机与游戏状态
菜单、进行中、暂停、结束切换
11
文件 I/O 与存档系统
二进制读写,JSON/XML 集成
12
粒子系统
粒子发射器,火焰、爆炸效果
13
摄像机系统
2D 跟随、缩放、视口裁剪
14
寻路算法
BFS / Dijkstra / A*,NavMesh 简介
15
网络编程基础
Socket,TCP/UDP 多人游戏
16
游戏数学
向量/矩阵/四元数,物理数学
17
内存管理
手动分配/释放,内存池,防泄漏
18
多线程与并发
pthread / Windows Thread,渲染分离
19
脚本语言集成
Lua / Python 作为游戏脚本
20
性能分析与优化
Profiler 定位瓶颈,CPU/GPU 策略
21
UI 系统设计
按钮/文本框/列表,事件冒泡
22
动画系统
骨骼动画/帧动画,插值算法
23
物理引擎入门
刚体、重力、摩擦力,碰撞响应
24
资源管理器
纹理/音频/模型加载,异步缓存
25
游戏测试与调试
单元测试,日志,断言与断点
26
跨平台开发
Windows/Linux/macOS 编译适配
27
游戏打包与分发
安装包、数字签名、自动更新
28
实战项目一:2D 平台跳跃
从设计到发布
29
实战项目二:网络对战
帧同步 vs 状态同步
30
课程总结与未来展望
C++/Rust 对比,学习路径