图书介绍

C++游戏与图形编程基础 第2版【2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载】

C++游戏与图形编程基础 第2版
  • (美)加迪斯(GaddisT.)著;周靖译 著
  • 出版社: 北京:清华大学出版社
  • ISBN:9787302362784
  • 出版时间:2014
  • 标注页数:543页
  • 文件大小:66MB
  • 文件页数:573页
  • 主题词:C语言-程序设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

C++游戏与图形编程基础 第2版PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第Ⅰ部分 标准C++入门3

第1章 计算机和编程概论3

1.1 概述3

1.2 硬件3

1.2.1 CPU4

1.2.2 主内存5

1.2.3 辅助存储设备6

1.2.4 输入设备6

1.2.5 输出设备7

知识检查点7

1.3 计算机如何存储数据7

1.3.1 存储数字8

1.3.2 存储字符9

1.3.3 负整数10

1.3.4 实数10

1.3.5 其他类型的数据11

知识检查点11

1.4 程序如何工作11

1.4.1 从机器语言到汇编语言14

1.4.2 高级语言14

1.4.3 关键字、运算符和语法:概述16

1.4.4 编译器和解释器17

知识检查点18

1.5 C++和App Game Kit库18

1.5.1 核心语言和库19

1.5.2 需要使用的软件19

综合测验29

编程练习31

第2章 C++基础知识33

2.1 C++程序的组成部分33

分号35

知识检查点35

2.2 显示屏幕输出35

2.2.1 使用endl运算子37

2.2.2 \n转义序列38

知识检查点40

2.3 深入#include指令41

2.4 变量初探41

2.4.1 数据类型42

2.4.2 变量名称42

2.4.3 常用数据类型43

2.4.4 int,float和double数据类型44

2.4.5 在函数中声明变量45

2.4.6 变量要先声明再使用45

2.4.7 变量初始化46

2.4.8 一个语句声明多个变量46

2.4.9 数值文字常量47

2.4.10 int变量和赋值兼容性47

2.4.11 double变量和赋值兼容性48

2.4.12 变量一次容纳一个值48

2.4.13 作用域49

2.4.14 重复的变量名称49

2.4.15 float数据类型49

知识检查点49

2.5 读取键盘输入50

提示消息52

知识检查点52

2.6 注释、空行和缩进52

2.6.1 单行注释53

2.6.2 多行注释54

2.6.4 用空行和缩进增强可读性54

知识检查点55

2.7 执行计算和处理数字55

2.7.1 运算顺序56

2.7.2 用圆括号进行分组58

2.7.3 整数除法58

2.7.4 取余运算符58

2.7.5 复合赋值运算符60

2.7.6 混合类型表达式和数据类型转换61

知识检查点65

2.8 命名常量65

知识检查点67

2.9 标准库的数学函数67

2.10 使用字符串69

知识检查点72

2.11 char数据类型72

综合测验74

编程练习76

第3章 判断结构和布尔逻辑78

3.1 控制结构78

伪代码79

知识检查点80

3.2 用if语句写判断结构80

3.2.1 布尔表达式和关系运算符82

3.2.2 综合运用84

知识检查点87

3.3 if-else语句88

知识检查点92

3.4 嵌套判断结构和if-else-if语句92

3.4.1 测试一系列条件97

3.4.2 if-else-if语句100

知识检查点101

3.5 逻辑运算符102

3.5.1 运算符&&103

3.5.2 运算符‖103

3.5.3 短路求值104

3.5.4 运算符!104

3.5.5 逻辑运算符的优先级105

3.5.6 用逻辑运算符检查数值范围105

知识检查点106

3.6 switch语句106

知识检查点111

3.7 bool变量111

知识检查点112

3.8 比较字符串112

综合测验115

编程练习118

第4章 重复结构120

4.1 重复结构120

条件控制和计数控制的循环121

知识检查点121

4.2 条件控制的循环:while和do-while循环121

4.2.1 while循环121

4.2.2 while循环是先测试循环125

4.2.3 无限循环127

4.2.4 do-while循环是后测试循环128

知识检查点129

4.3 递增和递减运算符130

知识检查点130

4.4 计数控制的循环:for循环131

4.4.1 在初始化表达式中声明计数器变量134

4.4.2 在循环主体中使用计数器变量135

4.4.3 其他形式的更新表达式136

4.4.4 让用户控制迭代次数138

知识检查点139

4.5 计算累加值140

知识检查点142

4.6 嵌套循环142

综合测验149

编程练习150

第5章 函数153

5.1 函数简介153

void函数和返回值的函数154

5.2 void函数155

5.2.1 函数头155

5.2.2 函数主体155

5.2.3 调用函数156

5.2.3 函数原型157

5.2.4 自顶向下设计159

知识检查点159

5.3 局部变量159

5.3.1 作用域和局部变量160

5.3.2 重复的变量名称161

知识检查点161

5.4 向函数传递实参161

5.4.1 参数变量(形参)的作用域165

5.4.2 传递多个实参165

5.4.3 以传值方式传递实参166

5.4.4 以传引用方式传递实参168

知识检查点169

5.5 全局变量和全局常量169

5.5.1 全局变量169

5.5.2 全局常量170

知识检查点173

5.6 返回值的函数173

5.6.1 自己写返回值的函数173

5.6.2 bool函数178

5.6.3 从函数返回字符串180

知识检查点181

5.7 调用string类的成员函数181

综合测验183

编程练习185

第6章 数组188

6.1 数组基础188

6.1.1 数组元素和下标189

6.1.2 向数组元素赋值190

6.1.3 输入和输出数组内容190

6.1.4 数组初始化192

6.1.5 使用循环来遍历数组192

6.1.6 C++不执行数组边界检查195

6.1.7 警惕相差1错误195

6.1.8 处理数组元素196

知识检查点197

6.2 顺序搜索数组198

搜索字符串数组201

知识检查点202

6.3 处理数组内容203

6.3.1 复制数组203

6.3.2 比较数组203

6.3.3 累加数组中的值205

6.3.4 计算数组平均值206

6.3.5 找出数组中的最大和最小值207

6.3.6 将数组作为实参传给函数210

6.3.7 部分填充的数组212

知识检查点219

6.4 平行数组219

知识检查点221

6.5 二维数组221

6.5.1 声明二维数组222

6.5.2 访问二维数组中的元素223

6.5.3 向函数传递二维数组226

知识检查点227

6.6 多维数组228

知识检查点229

综合测验230

编程练习232

第Ⅱ部分 C++和AGK游戏编程基础237

第7章 通过App Game Kit进行C++编程237

7.1 App Game Kit和游戏程序的结构237

7.1.1 典型游戏程序的结构237

7.1.2 记住,app::Loop函数是自动循环的240

7.1.3 创建使用Visual C++的AGK项目240

7.1.4 App Game Kit联机文档243

知识检查点244

7.2 屏幕坐标系统244

设置虚拟分辨率245

知识检查点246

7.3 显示精灵247

7.3.1 位图图像247

7.3.2 精灵247

7.3.3 图形文件的位置247

7.3.4 理解后台缓冲区和同步248

7.3.5 精灵作为背景使用250

7.3.6 显示多个精灵252

7.3.7 精灵深度253

7.3.8 设置精灵位置255

7.3.9 获取精灵的X和Y坐标257

7.3.10 获取精灵的宽度和高度257

7.3.11 缩放精灵257

7.3.12 旋转精灵258

7.3.13 翻转精灵259

7.3.14 使精灵可见或不可见259

7.3.15 克隆精灵260

7.3.16 精灵的透明背景260

7.3.17 黑色透明背景261

7.3.18 删除精灵264

7.3.19 组织template文件夹中的图片265

知识检查点267

7.4 使用游戏循环267

7.4.1 更改同步频率272

7.4.2 游戏状态272

知识检查点277

7.5 处理颜色和透明度277

7.5.1 RGB颜色系统277

7.5.2 向精灵应用颜色和透明278

7.5.3 获取精灵的颜色和alpha值279

知识检查点280

7.6 在AGK窗口中显示文本280

7.6.1 打印string对象283

7.6.2 在窗口标题栏显示标题285

知识检查点285

7.7 生成随机数285

知识检查点289

综合测验290

编程练习292

第8章 输入、动画和声音293

8.1 鼠标293

8.1.1 获取鼠标坐标293

8.1.2 显示和隐藏鼠标指针295

8.1.3 检测鼠标输入295

8.1.4 用agk::GetSpriteHit函数判断鼠标指针是否碰到精灵297

8.1.5 综合运用298

知识检查点300

8.2 虚拟按钮301

8.2.1 在屏幕上添加虚拟按钮301

8.2.2 更改虚拟按钮的位置301

8.2.3 更改虚拟按钮的大小302

8.2.4 在虚拟按钮上显示文本302

8.2.5 更改虚拟按钮的颜色302

8.2.6 更改虚拟按钮的透明度302

8.2.7 显示和隐藏虚拟按钮303

8.2.8 启用或禁用虚拟按钮303

8.2.9 更改虚拟按钮的图像303

8.2.10 响应按下虚拟按钮的事件304

知识检查点306

8.3 虚拟手柄306

8.3.1 添加虚拟手柄307

8.3.2 设置虚拟手柄的位置307

8.3.3 设置虚拟手柄的大小307

8.3.4 设置虚拟手柄的透明度308

8.3.5 设置禁用或启用虚拟手柄308

8.3.6 设置虚拟手柄的可见性308

8.3.7 更改虚拟手柄的图像309

8.3.8 判断虚拟手柄是否存在309

8.3.9 删除虚拟手柄309

8.3.10 设置虚拟手柄的死亡区域309

8.3.11 获取虚拟手柄的输入310

知识检查点313

8.4 键盘313

8.4.1 用键盘按键移动物体313

8.4.2 响应按键315

8.4.3 判断按下的最后一个键315

知识检查点317

8.5 动画317

8.5.1 用纹理图集简化动画320

8.5.2 用AGK播放精灵动画321

8.5.3 停止和恢复精灵动画323

知识检查点323

8.6 音乐和声音324

8.6.1 加载声音文件324

8.6.2 播放声音324

8.6.3 音乐文件328

8.6.4 加载音乐文件328

8.6.5 播放音乐328

8.7 Bug Zapper游戏330

综合测验339

编程练习341

第9章 文本、碰撞和“坏秃鹰”游戏343

9.1 文本对象343

9.1.1 创建文本对象343

9.1.2 删除文本对象343

9.1.3 判断文本对象是否存在344

9.1.4 设置文本对象大小344

9.1.5 获取文本对象大小344

9.1.6 设置文本对象位置344

9.1.7 设置文本对象X坐标345

9.1.8 获取文本对象X坐标345

9.1.9 设置文本对象Y坐标345

9.1.10 获取文本对象Y坐标345

9.1.11 设置文本对象对齐349

9.1.12 更改文本对象字母间距352

9.1.13 设置文本对象的内容355

9.1.14 获取文本对象的总宽度355

9.1.15 获取文本对象的总高度355

9.1.16 显示或隐藏文本对象355

9.1.17 更改文本对象颜色355

9.1.18 检测与文本对象的碰撞356

知识检查点359

9.2 精灵碰撞检测359

知识检查点369

9.3 模拟物体坠落369

模拟两个方向的运动375

知识检查点378

9.4 “坏秃鹰”游戏378

综合测验411

编程练习412

第10章 在AGK中使用文件和数组414

10.1 文件输入和输出414

10.1.1 文件名416

10.1.2 文件编号416

10.1.3 打开输出文件416

10.1.4 向现有文件追加数据417

10.1.5 向输出文件写入数据417

10.1.6 关闭输出文件418

10.1.7 打开输入文件419

10.1.8 从输入文件读取数据419

10.1.9 关闭输入文件420

10.1.10 判断文件是否打开420

知识检查点436

10.2 在AGK程序中使用数组437

数组排序449

10.3 Tile Map457

10.4 遇到障碍物473

知识检查点482

综合测验483

编程练习485

第11章 面向对象编程487

11.1 过程式编程和面向对象编程487

11.1.1 对象重用489

11.1.2 日常生活中的对象489

11.1.3 面向对象编程术语489

知识检查点490

11.2 类和对象490

11.2.1 声明类492

11.2.2 赋值函数和取值函数492

11.2.3 构造器492

11.2.4 析构器493

11.2.5 设计Sprite类493

11.2.6 定义成员函数495

11.2.7 根据同一个类创建多个对象502

11.2.8 重载构造器和成员函数505

11.2.9 创建对象数组512

11.2.10 对象作为实参传给函数515

知识检查点517

11.3 继承518

11.3.1 常规化和特殊化518

11.3.2 继承和“属于”关系518

知识检查点535

综合测验536

编程练习537

附录 下载和安装必要的软件539

热门推荐