C语言课程设计与游戏开发实践教程

书名:C语言课程设计与游戏开发实践教程
作者:童晶
译者:
ISBN:9787302472407
出版社:清华大学出版社
出版时间:2017-8
格式:epub/mobi/azw3/pdf
页数:
豆瓣评分:

书籍简介:

C语言是一门重要的基础课程,但传统教材一般偏向于语法规则的介绍,实例偏数学算法,过于抽象、趣味性不强。针对这些问题,本书把游戏开发实践应用于C语言课程设计教学,课程设计中尽量站在初学者的角度,降低开发游戏的难度,不超出所学知识范围,逐步提高读者对编程的兴趣和能力。本书的授课方法已在实际教学中验证,大一学生普遍能写出数千行代码的复杂游戏,编程能力显著提升。

作者简介:

书友短评:

@ 歧路花火 书里有不少技巧性的内容,搭配 EasyX 图形库,适合掌握 C 语言基础的人写一些有意思的东西。说说缺点。书的内容其实没多少,大多数都是代码。这代码还是增量式的,白呼两三句就又重新贴一遍,我寻思凑页数也不是这么凑的啊。另外看到书上还有递归和链表的案例,实现起来效果并不是特别理想,看起来太鸡肋了。只能说不是所有的概念都能用 C 语言游戏化来解决… @ 君子豹变 写的很棒,是网上搜到飞机大战游戏代码的开山鼻祖。其中的startup,show,updatewithoutinput,updatewithinput四步走的结构非常简洁,令人赏心悦目! @ #!?!# 内容选题是入门级的,很适合有一定基础,但不知道如何应用,想做点程序练手的读者。但是通篇都是程序,基本没做什么分析,很多内容作者都默认你懂了。太简陋了。但是我没有接触过类似的书,觉得这书挺适合我这种初级入门的。给我一种感觉,程序就是在堆积木,一点点写枯燥乏味的代码。跟我现在的工作好像没啥区别,只是换了种形式。 @ 航同学提不起劲 看着有两百多页,其实大多数代码都是增量表示,内容不多。难度很浅,具备C的基础就能看懂。前后关联性也不太大,前两章稍微看看可以直接跳到EasyX的使用部分。给初学者练手入门还是不错的,比很多砖头书友好得多。 @ #!?!# 写的很棒,是网上搜到飞机大战游戏代码的开山鼻祖。其中的startup,show,updatewithoutinput,updatewithinput四步走的结构非常简洁,令人赏心悦目! @ 全权单纯集 拉,代码质量太差,设计太乱,甚至还不如我们老师24学时的课。 @ 航同学提不起劲 看着有两百多页,其实大多数代码都是增量表示,内容不多。难度很浅,具备C的基础就能看懂。前后关联性也不太大,前两章稍微看看可以直接跳到EasyX的使用部分。给初学者练手入门还是不错的,比很多砖头书友好得多。 @ 歧路花火 书里有不少技巧性的内容,搭配 EasyX 图形库,适合掌握 C 语言基础的人写一些有意思的东西。说说缺点。书的内容其实没多少,大多数都是代码。这代码还是增量式的,白呼两三句就又重新贴一遍,我寻思凑页数也不是这么凑的啊。另外看到书上还有递归和链表的案例,实现起来效果并不是特别理想,看起来太鸡肋了。只能说不是所有的概念都能用 C 语言游戏化来解决…

书籍目录

目录

第1章C语言游戏开发快速入门

1.1弹跳的小球

1.1.1显示静止的小球

1.1.2小球下落

1.1.3上下弹跳的小球

1.1.4斜着弹跳的小球

1.1.5控制小球弹跳的速度

1.1.6小结

1.2最简单的飞机游戏

1.2.1scanf控制飞机移动

1.2.2getch控制飞机移动

1.2.3显示复杂的飞机图案

1.2.4发射激光

1.2.5打靶练习

1.2.6小结

1.3程序调试方法

1.3.1语法错误

1.3.2逻辑错误

1.3.3常用技巧

第2章函数封装的游戏开发

2.1飞机游戏

2.1.1代码重构

2.1.2新式子弹

2.1.3静止的敌机

2.1.4敌机移动

2.1.5击中敌机

2.1.6清屏功能

2.1.7小结

2.2用函数实现反弹球消砖块

2.2.1代码重构

2.2.2显示边框

2.2.3显示移动挡板

2.2.4反弹小球

2.2.5消砖块

2.2.6小结

2.3flappy bird

2.3.1下落的小鸟

2.3.2显示小鸟和障碍物

2.3.3让障碍物移动

2.3.4判断是否碰撞

2.3.5障碍物循环出现

2.3.6小结

第3章应用数组的游戏开发

3.1生命游戏

3.1.1游戏的初始化

3.1.2繁衍或死亡

3.1.3小结

3.2用数组实现反弹球消砖块

3.2.1反弹球

3.2.2增加挡板

3.2.3消砖块

3.2.4小结

3.3空战游戏

3.3.1飞机的显示与控制

3.3.2发射子弹

3.3.3击中敌机

3.3.4多台敌机

3.3.5发射散弹

3.3.6小结

3.4贪吃蛇

3.4.1构造小蛇

3.4.2小蛇的移动

3.4.3玩家控制小蛇移动

3.4.4判断游戏失败

3.4.5吃食物增加长度

3.4.6小结

3.5版本管理与团队协作

3.5.1SVN简介

3.5.2开发实践

3.5.3小结

第4章简单绘图游戏的开发

4.1EasyX快速入门

4.1.1EasyX的介绍与安装

4.1.2简易绘图

4.1.3简单动画

4.1.4小结

4.2多球反弹

4.2.1多个反弹球和墙壁碰撞

4.2.2反弹球之间相互碰撞

4.2.3小结

4.3实时钟表

4.3.1绘制静态秒针

4.3.2秒针的转动

4.3.3根据实际时间转动

4.3.4添加时针和分针

4.3.5添加表盘刻度

4.3.6小结

4.4结合游戏开发框架和EasyX绘图实现反弹球消砖块

4.4.1游戏框架代码的重构

4.4.2绘制静态挡板

4.4.3控制挡板接球

4.4.4消砖块

4.4.5小结

4.5鼠标交互

4.5.1鼠标交互基础

4.5.2用鼠标控制挡板移动

4.5.3按鼠标左键初始化小球位置

4.5.4小结

第5章应用图片与声音素材的游戏开发

5.1使用图片与声音

5.1.1图片的导入与使用

5.1.2遮罩图的使用

5.1.3flappy bird初步

5.1.4声音的导入与使用

5.1.5带音效的flappy bird

5.1.6小结

5.2飞机大战

5.2.1用鼠标控制飞机移动

5.2.2发射子弹

5.2.3增加敌机

5.2.4判断胜败

5.2.5增加音效

5.2.6小结

5.3复杂动画效果

5.3.1小人原地行走

5.3.2控制小人移动

5.3.3构建动态地图

5.3.4小结

5.4双人游戏

5.4.1双人输入的问题

5.4.2异步输入函数

5.4.3双人反弹球

5.4.4小结

第6章其他语法知识在游戏开发中的应用

6.1指针

6.1.1减少不必要的全局变量

6.1.2动态二维数组

6.1.3小结

6.2字符串

6.2.1得分的转换与输出

6.2.2音乐播放函数的封装

6.2.3静态字符阵列的创建

6.2.4一场字符雨

6.2.5字符雨动画

6.2.6小结

6.3结构体

6.3.1静止小球的初始化与显示

6.3.2小球的运动与反弹

6.3.3小球运动的规范化

6.3.4鼠标的吸引力

6.3.5鼠标的击打斥力

6.3.6鼠标的扰动力

6.3.7绝对延时

6.3.8小结

6.4文件

6.4.1工作目录的设定

6.4.2多画面显示

6.4.3游戏的读档和存档

6.4.4小结

第7章游戏化学习C语言的知识难点

7.1递归

7.1.1传统汉诺塔

7.1.2可视化汉诺塔

7.1.3小结

7.2链表

7.2.1单个结点数据结构的定义

7.2.2两个结点的串联

7.2.3多个结点的初始化

7.2.4链表的输出

7.2.5删除结点

7.2.6小结

第8章游戏开发实践案例

8.1挖地小子

8.1.1主体功能描述

8.1.2主要实现步骤

8.2台球

8.2.1主体功能描述

8.2.2主要实现步骤

8.3太鼓达人

8.3.1主体功能描述

8.3.2主要实现步骤

8.4扫雷

8.4.1主体功能描述

8.4.2主要实现步骤

8.5蓝色药水

8.5.1主体功能描述

8.5.2主要实现步骤

8.6Rings

8.6.1主体功能描述

8.6.2主要实现步骤

8.7猪小弟

8.7.1主体功能描述

8.7.2主要实现步骤

8.8俄罗斯方块

8.8.1主体功能描述

8.8.2主要实现步骤

8.9通天魔塔

8.9.1主体功能描述

8.9.2主要实现步骤

8.101010

8.10.1主体功能描述

8.10.2主要实现步骤

8.11炸弹人

8.11.1主体功能描述

8.11.2主要实现步骤

8.12口袋妖怪

8.12.1主体功能描述

8.12.2主要实现步骤

8.13大鱼吃小鱼

8.13.1主体功能描述

8.13.2主要实现步骤

8.14小结
· · · · · ·

添加微信公众号:好书天下获取

添加微信公众号:“好书天下”获取书籍好书天下 » C语言课程设计与游戏开发实践教程
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

添加微信公众号:“好书天下”获取书籍

好书天下