Python游戏开发从入门到精通作者: 张有菊 出版时间:2021年版内容简介 《Python 游戏开发从入门到精通》循序渐进地讲解了使用Python语言开发游戏程序的核心知识,并通过具体实例的实现过程演练了游戏开发的方法和流程。全书共12章,主要内容有使用Python内置函数开发游戏,Pygame游戏开发基础,字体、图形图像和多媒体,Sprite和碰撞检测,使用AI技术,当Python遇到Cocos2d,Cocos2d进阶,Cocos2d高级应用,使用PyOpenGL开发3D游戏,使用Panda3D开发3D游戏,综合实战—AI人机对战版五子棋游戏(Pygame实现),综合实战—水果连连看游戏(Cocos2d实现)。本书简洁而不失技术深度,内容丰富全面。以极简的文字介绍了复杂的案例,是学习Python游戏开发的实用教程。《《Python 游戏开发从入门到精通》》适合已经了解Python语言基础语法、希望进一步提高自己Python开发水平的读者阅读,还可以作为大中专院校相关专业和培训学校师生的学习用书。目录前言第1章 使用Python内置函数开发游戏11.1 猜数游戏11.1.1 使用条件语句11.1.2 使用for循环语句21.1.3 具体实现31.2 龙的世界51.2.1 使用while循环语句51.2.2 使用函数61.2.3 实现“龙的世界”61.3 Hangman游戏81.3.1 项目介绍81.3.2 具体实现91.4 破解恺撒密码141.4.1 实例介绍141.4.2 具体实现141.5 Reversi黑白棋游戏161.5.1 笛卡儿坐标系161.5.2 实例介绍171.5.3 具体实现17第2章 Pygame游戏开发基础232.1 安装Pygame232.2 Pygame开发基础242.2.1 Pygame框架中的模块242.2.2 开发个Pygame程序252.3 事件处理272.3.1 事件检索272.3.2 处理鼠标事件282.3.3 处理键盘事件302.3.4 事件过滤322.3.5 产生事件322.4 移动的小蘑菇33第3章 字体、图形图像和多媒体353.1 显示模式353.1.1 设置显示模式353.1.2 在全屏显示模式和非全屏显示模式之间进行转换363.2 设置字体并显示文本内容363.2.1 设置字体363.2.2 使用属性Rect设置文本位置383.2.3 在游戏窗口中显示闪烁的文字393.3 设置像素和颜色403.3.1 颜色介绍403.3.2 设置透明度423.3.3 实现一个三原色颜色滑动条效果433.4 绘制图像443.4.1 使用Surface绘制对象453.4.2 使用pygame.draw绘图473.5 使用动画493.5.1 Pygame动画493.5.2 帧速率513.5.3 多彩小球动画513.6 为游戏添加音效533.6.1 Pygame声音533.6.2 播放不同的声音特效54第4章 Sprite和碰撞检测574.1 Sprite的概念574.2 Pygame中的Sprite584.2.1 pygame.sprite模块中的内置方法和变量584.2.2 创建个精灵594.2.3 创建一个“古灯笼”精灵604.2.4 创建精灵组:3辆赛车604.2.5 创建移动的精灵组:疯狂赛车游戏634.3 碰撞检测654.3.1 游戏中的碰撞检测664.3.2 Pygame中的碰撞检测694.4 3个游戏项目754.4.1 简易跑酷游戏754.4.2 吃苹果游戏794.4.3 Pygame官网的坦克大战游戏82第5章 使用AI技术945.1 游戏中常用的AI算法945.1.1 有限状态机算法945.1.2 蒙特卡洛树搜索算法955.1.3 A Star寻路算法965.1.4 电势矩阵寻路算法975.1.5 Dijkstra单源短路径搜索算法975.2 贪吃蛇游戏975.2.1 普通版的贪吃蛇游戏985.2.2 AI版的贪吃蛇游戏103第6章 当Python遇到Cocos2d1116.1 Cocos2d介绍1116.1.1 Cocos2d的家族成员1116.1.2 Cocos2d-Python1126.2 Cocos2d-Python的基本应用1136.2.1 锚点和坐标系1136.2.2 使用Director1156.2.3 创建层1166.2.4 使用精灵1186.2.5 设置背景音乐和音效1226.3 使用事件1236.3.1 使用键盘事件1236.3.2 使用鼠标事件1256.4 使用菜单1286.4.1 Cocos2d中的菜单1286.4.2 使用文本菜单1296.4.3 使用图像菜单1336.5 Cocos2d-Python版本的贪吃蛇游戏1346.5.1 设置背景音效1356.5.2 实现游戏界面135第7章 Cocos2d进阶1407.1 动作、转换和效果1407.1.1 动作1407.1.2 基本动作1437.1.3 特殊动作1497.1.4 组合和修改动作1517.1.5 Effects1557.1.6 创建自己的动作1627.2 场景切换1647.2.1 使用导演实现场景切换1647.2.2 使用过渡动画实现场景切换166第8章 Cocos2d高级应用1748.1 瓦片地图1748.1.1 两种格式1748.1.2 cell单元格和tile图块属性1818.1.3 地图滚动1828.1.4 地图查询1868.2 地图碰撞器1868.2.1 地图碰撞器介绍1878.2.2 检测碰撞的方法1888.2.3 3种地图碰撞器1888.2.4 使用RectMapCollider碰撞器1888.2.5 使用TmxObjectMapCollider碰撞器1918.3 CocosNode1938.3.1 CocosNode的主要功能1948.3.2 常用的CocosNode子类2028.4 碰撞处理2068.4.1 碰撞模型2068.4.2 基于地图的碰撞处理2078.4.3 基于碰撞管理器的碰撞处理210第9章 使用PyOpenGL开发3D游戏2169.1 PyOpenGL基础知识介绍2169.2 OpenGL的内置函数2179.2.1 创建个PyOpenGL程序2179.2.2 OpenGL API的常用内置函数2189.3 绘制基本的图形2209.3.1 绘制一条直线2209.3.2 绘制点线面图形2219.3.3 绘制平滑阴影三角形2239.3.4 绘制平方曲线2269.4 使用GLFW2279.4.1 个GLFW程序2279.4.2 模拟钟表指针的转动2289.4.3 模拟钟表指针转动的三角形2309.4.4 使用键盘按键移动三角形2329.5 开发一个3D游戏2349.5.1 渲染游戏场景和纹理2349.5.2 监听用户的鼠标和按键动作236第10章 使用Panda3D开发3D游戏23910.1 Panda3D基础23910.1.1 Panda3D的优点23910.1.2 安装Panda3D24010.1.3 创建个Panda3D程序24310.2 Panda3D的内置成员24410.2.1 加载游戏场景24410.2.2 任务处理:移动3D摄像机24810.2.3 使用Actor添加动画模型25410.2.4 使用间隔和序列25710.3 开发常见的3D游戏程序26310.3.1 迷宫中的小球游戏26310.3 上一篇: Python深度学习入门:从零构建CNN和RNN [美]韦德曼 2021年版 下一篇: Swift机器学习:面向iOS的人工智能实战 [乌]索诺夫 2021年版