游戏编程入门(第4版)

游戏编程入门(第4版) pdf epub mobi txt 电子书 下载 2026

出版者:人民邮电出版社
作者:Jonathan S. Harbour
出品人:
页数:350
译者:李军
出版时间:2015-7
价格:0
装帧:平装
isbn号码:9787115390417
丛书系列:
图书标签:
  • 游戏编程
  • 游戏开发
  • 编程
  • 游戏编程
  • 游戏开发
  • C++
  • DirectX
  • 入门
  • 教程
  • 第4版
  • 图形学
  • 编程基础
  • 计算机游戏
想要找书就要到 本本书屋
立刻按 ctrl+D收藏本页
你会得到大惊喜!!

具体描述

本书是游戏编程经典入门读物的最新版。

全书共分14章,包含两个附录。本书首先介绍Windows和DirectX编程,然后快速介绍游戏编程的工具箱,包括使用C++和DirectX开发游戏所需的所有基础知识。读者将学习到把思想转化为现实所需的技术,比如2D、3D图形的绘制、背景卷动、处理游戏输入、音效、碰撞检测等。在每章结束时,给出了测验题和项目以便帮助读者实践新学到的技能。本书配套网站提供了所有示例代码和项目的下载。

本书自第1版出版至今已经长达十年,深受广大读者欢迎。本书有志于进入游戏编程世界且有一定C++编程基础的初学者阅读,也适合作为社会培训机构的培训教材。

作者简介

Jonathan S. Harbour编写了19本游戏开发方面的书,有针对PC、Mac、Linux、Android、Windows Phone和游戏控制台的。他在University of Advancing Technology(www.uat.edu)教了5年课程,在那里,他和学生一起使用PlayStation 2 TOOL开发工具包、Nintendo Dolphin SDK、Xbox 360 XNA SDK、人工智能、数据库、DirectX等工具和技术。他还教授了C++、Java、VB、C#、LUA、Python和SQL课程。他的个人站点是jharbour.com。

目录信息

第1部分 Windows和DirectX游戏编程引言
第1章 Windows初步
1.1 Windows编程概述
1.1.1 "获取"Windows
1.1.2 理解Windows消息机制
1.1.3 多任务
1.1.4 多线程
1.1.5 事件处理
1.2 DirectX快速概览
Direct3D是什么
1.3 Windows程序基础
1.3.1 创建第一个Win32项目
1.3.2 理解WinMain
1.3.3 完整的WinMain
1.4 你所学到的
1.5 复习测验
1.6 自己动手
第2章 侦听Windows消息
2.1 编写一个Windows程序
2.1.1 理解InitInstance
2.1.2 理解MyRegisterClass
2.1.3 晒一晒WinProc的秘密
2.2 什么是游戏循环
2.2.1 老的WinMain
2.2.2 WinMain和循环
2.3 GameLoop项目
GameLoop程序的源代码
2.4 你所学到的
2.5 复习测验
2.6 自己动手
第3章 初始化Direct3D
3.1 Direct3D初步
3.1.1 Direct3D接口
3.1.2 创建Direct3D对象
3.1.3 第一个Direct3D项目
3.1.4 全屏模式的Direct3D
3.2 你所学到的
3.3 复习测验
3.4 自己动手
第2部分 游戏编程工具箱
第4章 绘制位图
4.1 表面和位图
4.1.1 主表面
4.1.2 从的离屏(off-screen)表面
4.1.3 Create Surface示例
4.1.4 装载位图
4.1.5 Load_Bitmap程序
4.1.6 代码回收利用
4.2 你所学到的
4.3 复习测验
4.4自己动手
第5章 从键盘、鼠标和控制器获得输入
5.1 键盘输入
5.1.1 DirectInput对象和设备
5.1.2 初始化键盘
5.1.3 读取键盘按键
5.2 鼠标输入
5.2.1 初始化鼠标
5.2.2 读取鼠标
5.3 Xbox 360控制器输入
5.3.1 初始化XInput
5.3.2 读取控制器状态
5.3.3 控制器振动
5.3.4 测试XInput
5.4 精灵编程简介
5.4.1 一个有用的精灵结构
5.4.2 加载精灵图像
5.4.3 绘制精灵图像
5.5 Bomb Catcher游戏
5.5.1 MyWindows.cpp
5.5.2 MyDirectX.h
5.5.3 MyDirectX.cpp
5.5.4 MyGame.cpp
5.6 你所学到的
5.7 复习测验
5.8 自己动手
第6章 绘制精灵并显示精灵动画
6.1 什么是精灵
6.2 加载精灵图像
6.3 透明的精灵
6.3.1 初始化精灵渲染器
6.3.2 绘制透明的精灵
6.4 绘制动画的精灵
6.4.1 使用精灵表
6.4.2 精灵动画演示
6.5 你所学到的
6.6 复习测验
6.7 自己动手
第7章 精灵变换
7.1 精灵旋转和缩放
7.1.1 2D变换
7.1.2 绘制变换了的精灵
7.1.3 Rotate_Scale_Demo程序
7.1.4 带有变换的动画
7.2 你所学到的
7.3 复习测验
7.4 自己动手
第8章 检测精灵碰撞
8.1 边界框碰撞检测
8.1.1 处理矩形
8.1.2 编写碰撞函数
8.1.3 新的精灵结构
8.1.4 为精灵的缩放进行调整
8.1.5 边界框演示程序
8.2 基于距离的碰撞检测
8.2.1 计算距离
8.2.2 编写距离计算的代码
8.2.3 测试的碰撞
8.3 你所学到的
8.4 复习测验
8.5 自己动手
第9章 打印文本
9.1 创建字体
9.1.1 字体描述符
9.1.2 创建字体对象
9.1.3 可重用的MakeFont函数
9.2 使用ID3DXFont打印文本
9.2.1 使用DrawText打印
9.2.2 文本折行
9.3 测试字体输出
9.4 你所学到的
9.5 复习测验
9.6 自己动手
第10章 卷动背景
10.1 卷动
10.1.1 背景和布景
10.1.2 从图片单元创建背景
10.1.3 基于图片单元的卷动
10.2 动态渲染的图片单元
10.2.1 图片单元地图
10.2.2 使用Mappy创建图片单元地图
10.2.3 Tile Dynamic Scroll项目
10.3 基于位图的卷动
10.3.1 基于位图的卷动理论
10.3.2 位图卷动演示
10.4 你所学到的
10.5 复习测验
10.6 自己动手
第11章 播放音频
11.1 使用DirectSound
11.1.1 初始化DirectSound
11.1.2 创建声音缓冲区
11.1.3 装载波形文件
11.1.4 播放声音
11.2 测试DirectSound
11.2.1 创建项目
11.2.2 修改"MyDirectX"文件
11.2.3 修改MyGame.cpp
11.3 你所学到的
11.4 复习测验
11.5 自己动手
第12章 学习3D渲染基础
12.1 3D编程简介
12.1.1 3D编程的关键组成部分
12.1.2 3D场景
12.1.3 转移到第三个轴
12.1.4 掌握3D管线
12.1.5 顶点缓冲区
12.1.6 渲染顶点缓冲区
12.1.7 创建四边形
12.2 带纹理的立方体示例
12.3 你所学到的
12.4 复习测验
12.5 自己动手
第13章 渲染3D模型文件
13.1 创建以及渲染后援网格
13.1.1 创建后援网格
13.1.2 渲染后援网格
13.1.3 编写着色器代码
13.1.4 Stock Mesh程序
13.2 装载并渲染模型文件
13.2.1 装载.X文件
13.2.2 渲染纹理模型
13.2.3 从内存中删除一个模型
13.2.4 Render Mesh程序
13.3 你所学到的
13.4 复习测验
13.5 自己动手
第14章 Anti-Virus(反病毒)游戏
14.1 Anti-Virus游戏
14.1.1 游戏玩法
14.1.2 游戏源代码
14.2 你所学到的
14.3 复习测验
14.4 自己动手
第3部分 附 录
附录A 配置Visual Studio 2013
A.1 安装
A.2 创建一个新的项目
A.3 修改字符集设置
A.4 修改VC++路径
附录B 各章测验答案
· · · · · · (收起)

读后感

评分

翻译很生硬, 还有点错误, 内容算游戏入门, 但前提你得了解Directx9.0, 不了解Directx9.0到后面你就不知道作者在讲什么, 作者前面讲的还是很细, 每个API什么的都讲解下, 介绍下, 到后面就省略了很多, 所以建议大家了解Directx在看吧, 里面的几个游戏例子还是不错, ...

评分

翻译很生硬, 还有点错误, 内容算游戏入门, 但前提你得了解Directx9.0, 不了解Directx9.0到后面你就不知道作者在讲什么, 作者前面讲的还是很细, 每个API什么的都讲解下, 介绍下, 到后面就省略了很多, 所以建议大家了解Directx在看吧, 里面的几个游戏例子还是不错, ...

评分

翻译很生硬, 还有点错误, 内容算游戏入门, 但前提你得了解Directx9.0, 不了解Directx9.0到后面你就不知道作者在讲什么, 作者前面讲的还是很细, 每个API什么的都讲解下, 介绍下, 到后面就省略了很多, 所以建议大家了解Directx在看吧, 里面的几个游戏例子还是不错, ...

评分

翻译很生硬, 还有点错误, 内容算游戏入门, 但前提你得了解Directx9.0, 不了解Directx9.0到后面你就不知道作者在讲什么, 作者前面讲的还是很细, 每个API什么的都讲解下, 介绍下, 到后面就省略了很多, 所以建议大家了解Directx在看吧, 里面的几个游戏例子还是不错, ...

评分

为什么这本书会是评价最少的呢,类似的游戏开发入门的书翻了不少,只发现有这一本才是作者真正从入门的角度,一步一步带着读者探索游戏开发世界的奥秘的。比起国内的一些明显是东拼西凑起来的书,读这本书的时候,字里行间真的有一种跟作者在交流的感觉··  

用户评价

评分

阅读这本书的过程,更像是一次与一位耐心且经验丰富的工程师进行一对一辅导。语言风格非常平易近人,没有那种高高在上的学术腔调。尤其是在处理调试和错误排查这部分内容时,作者分享了很多自己开发中遇到的“坑”,以及如何运用工具(比如调试器)来定位问题。这对我这个在早期开发中经常陷入“不知所措”状态的新手来说,简直是雪中送炭。它教会我的不仅是“怎么做”,更是“遇到问题该如何思考和解决”。这种注重思维训练和问题解决能力的培养,远比单纯的知识传递更有价值。读完后,我感觉自己不仅掌握了一套技术栈,更重要的是,建立了一套应对未来复杂项目挑战的系统性思考框架。

评分

坦白说,市面上的很多入门书往往会过度简化某些复杂主题,以求“简单易懂”,结果是读者最终对底层原理一知半解。然而,这本书在保持入门友好度的同时,对核心机制的深度把握得恰到好处。比如,它对向量数学在3D空间中的应用,不仅仅是停留在公式层面,而是深入探讨了矩阵变换如何影响摄像机视角和物体的定向。这种不回避难点,但又用清晰逻辑进行解构的做法,让我感觉自己是在真正地学习“工程”,而不是简单的“搭积木”。它成功地搭建了从基础语法到专业领域知识的桥梁,让我有信心在掌握了这本书的内容后,能够自信地去阅读更专业、更深层次的引擎源码或技术文档,而不再感到畏惧。

评分

这本书的结构设计非常巧妙,它仿佛为我量身定制了一份学习蓝图。它不像某些教材那样,只是堆砌知识点,而是将整个游戏开发的流程,从概念设计、引擎基础、渲染管线到用户交互,都串联成一个完整的故事线。在讲解图形渲染部分时,作者没有陷入过深的数学细节,而是聚焦于“如何让物体出现在屏幕上”这一核心目标,通过对DirectX或OpenGL(具体取决于版本侧重点,这里做泛指)基础API的讲解,让我对现代图形API的工作原理有了初步的认识。这种自上而下的教学方法,极大地帮助我建立起了全局观。每当学到一个新模块,我都能清楚地知道它在整个游戏框架中所处的位置,以及它如何与其他部分协作。这种清晰的脉络感,极大地提升了我的学习效率,让我不再感到知识点的零散和无序,而是感受到一种系统化的力量。

评分

初次接触这个领域时,面对市面上琳琅满目的书籍,我希望能找到一本既能打下坚实基础,又不至于太过枯燥的入门指南。这本书恰好满足了我的期待。它没有一上来就抛出复杂的算法和晦涩的理论,而是循序渐进地引导读者进入游戏开发的奇妙世界。作者在讲解核心概念时,总是能用非常直观的例子来辅助说明,比如如何模拟物理世界的碰撞,或者如何让角色动起来。我尤其欣赏它对C++语言特性的剖析,不是生硬地罗列语法,而是结合游戏开发的实际场景,展示了面向对象编程在构建复杂系统时的强大威力。读完前几章,我感觉自己像是被领进了一间装备齐全的工作室,虽然还不能独立完成大作,但至少明白了工具的用途和基本操作流程。对于一个渴望从零开始、亲手搭建自己第一个可玩原型的新手来说,这种温和而扎实的引入方式,无疑是最高效的学习路径。它让我体会到了编程的乐趣,而不是被初期的挫折感击垮。

评分

作为一名有一定编程基础,但对游戏开发知之甚少的“半路出家”者,我最看重的是实战性。这本书在这方面做得非常出色。它提供的代码示例不仅仅是孤立的小片段,而是逐步构建一个可运行的小游戏的集合。这种“边做边学”的过程,远比单纯阅读理论要来得实在。我记得在实现一个简单的场景管理系统时,书中对内存管理和对象生命周期的处理方式,让我深刻体会到了在资源受限的游戏环境中,如何写出高效且健壮的代码。作者在代码注释中提供的陷阱提示和性能考量,更是如同经验老道的导师在耳边指点迷津。这种将理论与实践紧密结合的编排方式,让我能够立即将学到的知识应用于实际项目中,从而加深理解,并快速获得成就感。

评分

最好有C++和DirectX编程基础,不然还是有些函数的参数看不懂。最后一章的程序太长了,都没仔细看完。

评分

最好有C++和DirectX编程基础,不然还是有些函数的参数看不懂。最后一章的程序太长了,都没仔细看完。

评分

最好有C++和DirectX编程基础,不然还是有些函数的参数看不懂。最后一章的程序太长了,都没仔细看完。

评分

书写的还行,适合入门,就是翻译的太烂

评分

最好有C++和DirectX编程基础,不然还是有些函数的参数看不懂。最后一章的程序太长了,都没仔细看完。

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2026 onlinetoolsland.com All Rights Reserved. 本本书屋 版权所有