全书由三部分组成。其中第一部分主要介绍游戏编程的基本概念;第二部分详细介绍游戏编程中的各种技术和算法;第三部分是附录,介绍游戏编程中相关技术和知识以及其他相关读物。
第1章 游戏编程时间表
1.1 第一阶段:“星球大战”之前
1.2 第二阶段:从“星球大战”到Atari
1.3 第三阶段:游戏控制台与个人计算机
1.3.1 游戏控制台与游戏开发人员
1.3.2 个人计算机
1.4 第四阶段:调整与汇总
1.5 第五阶段:游戏引擎的出现
1.6 第六阶段:手指式革命
1.7 第七阶段:移动现象
1.8 第八阶段:多方游戏
1.9 结束语
第2章 游戏体系结构
2.1 实时软件
2.2 游戏逻辑段
2.2.1 玩家更新
2.2.2 世界更新
2.3 显示段
2.3.1 世界绘制
2.3.2 NPC绘制
2.3.3 玩家
2.3.4 问题:网络游戏
2.4 编程过程关卡
2.5 结束语
第3章 数据结构与算法
3.1 类型、结构和类
3.2 数据结构
3.2.1 静态数组
3.2.2 链表
3.2.3 双向链表
3.2.4 队列
3.2.5 堆栈
3.2.6 双头队列
3.2.7 表
3.2.8 树
3.2.9 优先队列
3.2.10 图
3.3 标准模板库
3.3.1 容器
3.3.2 迭代器
3.4 结束语
第四章到第六章
第4章 设计模式
4.1 设计模式定义
4.2 一些重要编程模式
4.2.1 单体模式
4.2.2 策略模式
4.2.3 工厂模式
4.2.4 空间索引
4.2.5 复合模式
4.2.6 轻量级模式
4.3 可用性模式
4.3.1 屏蔽模式
4.3.2 状态模式
4.3.3 自动方式取消
4.3.4 磁化
4.3.5 焦点模式
4.3.6 进程模式
4.4 结束语
第5章 用户输入
5.1 键盘
5.2 鼠标
5.3 游戏杆
5.4 硬件抽象
5.5 力量反馈
5.6 结束语
第6章 基本人工智能技术
6.1 情境
6.2 人工智能系统结构
6.2.1 感知世界
6.2.2 记忆
6.2.3 分析/推理核心
6.2.4 动作/输出系统
6.3 特定技术
6.3.1 有限状态机
6.3.2 规则系统
6.3.3 规划与解题
6.3.4 生物灵感人工智能
6.4 结束语
第七章到第九章
第7章 面向动作的人工智能
7.1 动作游戏
7.2 动作设计人工智能
7.3 对象跟踪
7.3.1 眼睛接触:二维半平面测试
7.3.2 三维版本:半球
7.4 追赶
7.4.1 二维追赶:固定速度
7.4.2 预测性追赶
7.5 逃避
7.6 巡逻
7.7 隐藏与遮盖
7.8 射击
7.8.1 无限速度瞄准
7.8.2 实际瞄准
7.8.3 机关枪
7.9 综合起来
7.9.1 并行自动化
7.9.2 AI同步
7.10 结束语
7.10.1 平台游戏
7.10.2 射击游戏
7.10.3 格斗游戏
7.10.4 赛车游戏
第8章 战术性人工智能
8.1 战术性思维
8.1.1 路径寻找
8.1.2 团队活动
8.2 军事分析:影响图
8.2.1 数据结构
8.2.2 一些重要测试
8.3 表示战术
8.4 结束语
第9章 脚本
9.1 建立脚本语言
9.1.1 简单分析语言
9.1.2 分析结构化语言
9.2 嵌入语言
9.2.1 学习Lua
9.2.2 java脚本
9.3 基于套接的脚本
9.4 结束语
第十章
第10章 网络编程
10.1 Internet的实际工作
10.2 从编程人员角度看套接
10.3 客户机
10.3.1 简单TCP客户机
10.3.2 简单UDP客户机
10.4 简单TCP服务器
10.5 多客户机服务器
10.5.1 并发的面向连接服务器
10.5.2 迭代的面向连接服务器
10.6 UDP服务器
10.7 防止套接受阻
10.8 设计客户机/服务器游戏
10.9 大量用户的多方游戏
10.9.1 数据外推
10.9.2 层次消息
10.9.3 空间分割
10.9.4 只发送状态改变
10.9.5 使用服务器群集
10.9.6 动态服务器与勇士综合症
10.10 结束语
第二部分 引擎编程
第11章 二维游戏编程
11.1 旧式硬件
11.2 二维游戏的数据结构
11.3 贴图矩阵地砖表
11.4 二维游戏算法
11.4.1 屏幕游戏
11.4.2 双向与四向卷轴
11.4.3 多方引擎
11.4.4 视差卷轴
11.4.5 各向异性引擎
11.4.6 翻页卷轴
11.5 特殊效果
11.5.1 调色板效果
11.5.2 点刻效果
11.5.3 灰贴
11.5.4 火
11.6 结束语
第12章 三维管道概述
12.1 简介
12.2 基本数据类型
12.2.1 顶点
12.2.2 索引图元
12.2.3 颜色
12.2.4 纹理贴图
12.3 几何格式
12.4 一般性图形管道
12.4.1 剪取
12.4.2 挑选
12.4.3 闭合测试
12.4.4 确定分辨率
12.4.5 变换与灯光
12.4.6 光栅化
12.5 结束语
第13章 室内绘制
13.1 一般分析
13.2 基于闭合的算法
13.3 二叉空间划分算法
13.3.1 构造
13.3.2 视图相关排序
13.3.3 层次式剪取
13.3.4 闭合探测
13.3.5 绘制
13.4 门户绘制
13.5 层次式闭合图
13.6 混合方法
13.6.1 门户/八叉树混合
13.6.2 四叉树/BSP混合
13.7 硬件辅助闭合测试
13.8 结束语
第14章 户外算法
14.1 概述
14.2 户外绘制的数据结构
14.2.1 高度域
14.2.2 四叉树
14.2.3 二叉三角形树
14.3 几何贴图
14.4 ROAM
14.4.1 第一遍:构造变差树
14.4.2 第二遍:网格重构
14.4.3 优化
14.5 块LOD
14.6 以GPU为中心的方法
14.7 户外视景图
14.8 结束语
第15章 角色动画
15.1 分析
15.2 显式与隐式方法
15.3 显式动画技术
15.3.1 帧动画
15.3.2 关键帧动画
15.3.3 标记插值
15.4 隐式动画概述
15.4.1 正向动力学
15.4.2 框架动画的数学
15.4.3 硬件辅助框架动画
15.5 道具处理
15.6 关于机车
15.7 四肢分解
15.8 面部动画
15.9 逆向动力学
15.9.1 分析逆向动力学
15.9.2 循环坐标派生
15.10 混合正向与逆向动力学
15.11 结束语
第16章 制片术
16.1 第一人称视角射击游戏
16.2 处理惯性
16.3 飞行模拟器与四元数
16.4 第三人称视角镜头
16.5 制片镜头:镜头样式
16.6 制片镜头:位置算法
16.6.1 选择镜头目标
16.6.2 选择相关信息
16.6.3 选择视图角度
16.7 基于agent的方法
16.8 结束语
第17章 色档
17.1 实际照明
17.1.1 简单绘制方程
17.1.2 按顶点与按像素照明
17.2 灯光贴图
17.2.1 扩散贴图
17.2.2 镜面贴图
17.2.3 使用灯光图的全局照明
17.2.4 实现光贴图:DirectX
17.2.5 用DirectX实现灯光贴图
17.2.6 生成灯光贴图
17.3 BRDF
17.3.1 平均向量
17.3.2 阴影
17.4 非照片真实绘制
17.4.1 铅笔绘制
17.4.2 外形线绘制
17.4.3 划线外形
17.4.4 单帧色档
17.4.5 油画绘制
17.5 结束语
第18章 纹理贴图
18.1 纹理类型
18.1.1 纹理贴图
18.1.2 XYZ贴图
18.1.3 圆柱贴图
18.1.4 球形贴图
18.1.5 三角形纹理贴图
18.2 平铺与贴花
18.3 过滤
18.4 Mip贴图
18.5 纹理优化
18.5.1 纹理压缩
18.5.2 纹理缓存与分页
18.6 多遍方法
18.7 多纹理
18.8 纹理运算与组合
18.9 细节纹理
18.10 环境贴图
18.11 鼓包贴图
18.11.1 浮雕鼓包贴图
18.11.2 Dot3鼓包贴图
18.12 上光贴图
18.13 结束语
第19章 微粒系统
19.1 微粒系统剖析
19.2 微粒数据结束
19.2.1 一般性微粒系统
19.2.2 派生微粒
19.2.3 微粒行为
19.2.4 微粒消除
19.2.5 绘制微粒
19.3 关于体系结构
19.4 加速技术
19.4.1 避免内存分配与释放
19.4.2 空间索引
19.4.3 LOD微粒系统
19.4.4 基于色档的微粒系统
19.5 结束语
第20章 有机构绘制
20.1 自然与细节
20.2 树
20.2.1 告示牌
20.2.2 基于图像方法
20.2.3 平行IBR方法
20.2.4 正交IBR方法
20.3 草
20.3.1 分层草
20.3.2 统计分布算法
20.4 云
20.4.1 天框与园顶
20.4.2 招贴板云
20.4.3 容积云
20.5 海洋
20.5.1 逼真海洋几何
20.5.2 海洋外观
20.5.3 焦散性
20.6 结束语
第21章 过程性技术
21.1 过程性列表
21.2 Renderman
21.3 实时色档语言
21.3.1 当前语言
21.3.2 Cg
21.3.3 HLSL
21.3.4 GL2色档语言
21.4 色档程序类型
21.4.1 色档程序集合
21.4.2 几何效果
21.4.3 灯光
21.5 纹理贴图
21.6 微粒系统
21.7 动画
21.8 特殊效果
21.9 结束语
第22章 几何算法
22.1 点包括测试
22.1.1 球上的点
22.1.2 AABB中的点
22.1.3 凸多边形的点
22.1.4 多边形的点(凹与凸):约当法
22.1.5 曲线定理
22.1.6 凸实体的点
22.1.7 实体的点(约当曲线定理)
22.2 光束相交测试
22.2.1 光束平面
22.2.2 光三角形
22.2.3 光AABB测试
22.2.4 光球测试
22.2.5 光凸形外壳
22.2.6 光一般实体(三维DDA)
22.3 运动测试
22.4 点与三角形集合碰撞(基于BSP)
22.5 网格与网格(清扫与修剪方法)
22.6 计算凸形外壳
22.6.1 二维方案
22.6.2 三维方案
22.7 三角形简化
22.7.1 顶点重合
22.7.2 边重合
22.7.3 递进网格
22.7.4 非保守式三角形简化
22.8 结束语
第三部分 附录
附录A 性能调整
附录B OpenGL
附录C Direct3D
附录D 数学知识
附录E 更多读物
‘贰’ 算法入门的话看什么书比较好
原理 入门:《编码:隐匿在计算机软硬件背后的语言》
这是一本讲述计算机工作原理的书。
不过,你千万不要因为“工作原理”之类的字眼就武断地认为,它是晦涩而难懂的。作者用丰富的想象和清晰的笔墨将看似繁杂的理论阐述得通俗易懂,你丝毫不会感到枯燥和生硬。 更重要的是,你会因此而获得对计算机工作原理较深刻的理解。这种理解不是抽象层面上的,而是具有一定深度的,这种深度甚至不逊于“电气工程师”和“程序员”的理解。
不管你是计算机高手,还是对这个神奇的机器充满敬畏之心的菜鸟,都不妨翻阅一下《编码:隐匿在计算机软硬件背后的语言》,读一读大师的经典作品,必然会有收获。
实战 晋升:《编程珠玑》
正如自然界里珍珠出自细沙对牡蛎的磨砺,计算机科学大师 Jon Bentley 以其独有的洞察力和创造力,从磨砺程序员的实际问题中凝结出一篇篇不朽的编程“珠玑”,成为世界计算机界名刊《ACM通讯》历史上最受欢迎的专栏,最终结集为两部不朽的计算机科学经典名着,影响和激励着一代又一代程序员和计算机科学工作者。
本书为第一卷,主要讨论计算机科学中最本质的问题:如何正确选择和高效地实现算法。
永恒的经典:《代码大全》
Steve McConnell 的原作《代码大全》(第1版)是公认的关于编程的最佳实践指南之一, 在过去的十多年间,本书一直在帮助开发人员编写更好的软件。
现在,作者将这本经典着作全新演绎,融入了最前沿的实践技术,加入了上百个崭新的代码示例, 充分展示了软件构建的艺术性和科学性。 McConnell汇集了来自研究机构、学术界以及业界日常实践的主要知识, 把最高效的技术和最重要的原理交织融会为这本既清晰又实用的指南。
无论您的经验水平如何,也不管您在怎样的开发环境中工作,也无论项目是大是小, 本书都将激发您的思维并帮助您构建高品质的代码。
‘叁’ 初学python用什么书
本书循序渐进、由浅入深地详细讲解了Python3语言开发的核心技术,并通过具体实例的实现过程演练了各个知识点的具体使用流程。通过两个综合实例的实现过程,介绍了Python
3语言在综合项目中的使用流程。全书内容循序渐进,以“技术解惑”和“范例演练”贯穿全书,引领读者全面掌握Python 3语言。
书中共有900多个实例和范例、300多个正文实例、600多个拓展范例、77个课后练习、63个技术解惑、两大综合案例,每个知识点除了一个实例外,还有两个拓展范例,达到举一反三的效果。
《易学Python》采用简洁、有趣、易学的方式对Python 3编程语言进行了讲解,其风格与通篇介绍编程特性、罗列语言功能的大多数编程图书不同,而是引导读者带着好奇,带着问题去学习、掌握Python编程语言,继而编写真实而有用的程序。
无尘茄论你是零基础的Python初学人员,还让此是具有其他语言编程经验,但是想从事Python开发的人员,《易学Python》都将带领你踏上有趣的Python学习之路。
畅销经典的Python书,兼顾Python2和Python3,Python开发人员的案头常备。本书涵盖了成为一名技术全面的Python开发人员所需的一切内容。本书讲解了应用派滑察开发相关的多个领域,而且书中的内容可以立即应用到项目开发中。此外,本书还包含了一些使用Python2和Python 3编写的代码案例,以及一些代码移植技巧。有些代码片段甚至无须修改就可以运行在Python 2.x或Python 3.x上。
Python是一种强大并通俗易懂的编程语言,而且它易学又好用!但是关于学习Python语言的书大多很枯燥无趣,读起来没什么乐趣。本书把你带入一个鲜活的Python编程世界。每章后面都配有编程练习来帮助训练思维并加强理解。
‘肆’ 想要用c++做游戏,除了看c++primer和effective c++,还要看什么,比如数据结构和算法。
Beginning DirectX9
Beginning Direct3D Game Programming
Introction To Direct3D9(翁云兵版)
AI Techniques for Game Programming
Data Structures for Game Programmers
3D Game Engine Programming
Beginning Game Audio Programming
Shaders for Game Programmers and Artists
Beginning Math and Physics For Game Programmers
以上是个人看过觉得很不错的书,仅作参考
‘伍’ 游戏编程里面有哪些经典或者很酷的算法
我挑一些有趣的算法,希望尽量提及相关算法在游戏中的应用。
1、光栅化
Bresenham's line algorithm [1]:经典的绘画直线算法,后来还可以稍作修改用于绘画圆弧[2],都不用三角函数或除数,只需用整数加法、减法和乘法。
Perspective-Correct Texture Mapping [3]:透视正确的光栅化纹理贴图算法是1980才出现的。第一代Quake引擎引入后,才开始支持不垂直的墙、不水平的地面天花。
Polygon Rasterization with Edge Function [4]:Bresenham算法如果用来画多边形,两个多边形的共边会被重绘。后来发明了使用简单的edge function去解决这个问题,而且适合并行的硬件实现。现在的GPU都是使用这个算法。
2、全局光照
Precomputed Radiance Transfer (PRT) with Spherical Harmonics(SH)[5]:储存静态环境对于各个方向光源的漫反射数据,可以实现动态低频光源的全局光照效果。这种表示方式非常神奇。Halo 3也使用到这种技术[6]。
Screen-space Ambient Occlusion (SSAO)[7]:Crytek提出的首个屏幕空间环境光遮蔽算法,之后引来大量的研究及改进算法。也有用类似的概念去做近距离的反射,如SSDO[8]。
Light Propagation Volume (LPV)[9]:Crytek提出的首个动态全局光照算法,不需要预计算。但要在体积数据中计算传播,性能较慢,所以之后再优化成 Cascaded LPV [10]。
Voxel Cone Tracing [11]:也是不需要预计算的动态全局光照算法。把场景动态生成层阶式的体素数据(像mipmap那样的pre-filtering),从光源视角计算直接光照,然后逐像素追踪这组数据获取非直接光照。结果比LPV精确,也可以做到光泽反射(glossy reflection)。
3、阴影
Shadow Volume [12]:阴影体积是1977年发表的阴影技术,在屏幕空间光栅化阴影体积,可准确判断每个屏幕像素是否在阴影之内。可以处理平行光源和点光源的阴影。1991年[13]讲述如何用stencil buffer来实现此算法,适合在图形加速硬件(当时还没有所谓GPU)上使用。但很多人发现,如果摄像机在阴影体积内,就会出错。在1998至2000年有多人发现一种解决方法,需要把John Carmack在2000年的电邮[14]中提及这个想法,后来成为2004年《毁灭战士3(Doom 3)》引擎的重要特征,因他把这项技术发扬光大,即使他非首个发明人,此项技术通常被称为Carmack's Reverse。
Parallel Split Shadow Map (PSSM) [15][16] / Cascaded Shadow Map(CSM)[17]:虽然Shadow Volume很吸引,但它需要大量的内存频宽,而且通常不能实现软阴影。后来大部分游戏改为使用Shadow Map(阴影贴图),这更适合GPU,并且可以通过多次采样(Percentage Closer Filtering, PCF)来实现软阴影。然而,阴影贴图也有许多问题,例如远近景物都采用同一张纹理,就会令到近景的精度不足,出现锯齿。2006年香港中文大学的博士生Fan Zhang等人发表了一种 PSSM 算法 [15],为不同距离的场景渲染多张阴影贴图,在采样的时候按距离决定使用那一张。这个方法的变种CSM,在切割上和PSSM有点差异,被广泛使用于现时大部分游戏引擎中。
Variance Shadow Map(VSM)[18]:之前谈到用PCF做软阴影,它的坏处就是要做多次采样。那么可否把阴影贴图直接模糊化来实现软阴影?答案是否定的。但是在2006年有学者发表了VSM,它是一种用统计方式来逼近软阴影的效果。
‘陆’ 谁能提供一套相对完善的格斗游戏的算法!
是二维还是三维的?格斗游戏程序主要工作是 连贯动作画面 + 物体碰撞算法。
如果不想写程序,可以直接使用2DFM这个软件制作,比较简单快捷。
2DFM的全称是“2D格斗游戏制作工具2nd”。它是由日本OUTBACK制作、EB发行的一款2D格斗游戏制作工具,软件运行于PC平台。利用这款软件玩家可以独力制作出属于自己的格斗游戏——内地玩家morley制作的《KOF历代BOSS大乱斗》、《3Fighters》;日本玩家制作的《格斗变人》;台湾TEAM FK小组制作的《超级COSPLAY大战final02版》这些游戏都是用2DFM开发完成的!
‘柒’ 计算机软件开发的自学书籍有哪些
下面推荐的比较详细是我以前问别人的,别人整理了一个多小时,推荐给你。你可以适度看看有哪些是你需要的,我是从java学起的,《Thingking in java》是一本非常好的书,看过《游戏编程之旅》那本书,云风着。前人的经验是,先入门,再去系统的学习,《Thingking in java》就是很好的系统学习。当然基础很重要,数据结构、算法之类。
其实把下面的全掌握了,基础那就真是很厉害了,再学精一门语言就是专家了吧!
(1)数据结构:
《数据结构(C语言版),出版日期:2005-5-1,严蔚民,清华大学.---推荐!
《数据结构习题与解析(C语言版)》,李春葆.---比严老的简单点,通俗易懂
《数据结构》(用面向对象方法与C++描述)》,出版日期:1999年7月,殷人昆 王小京,清华大学出版社.
(2)算法:
《算法设计与分析(高等学校计算机教材)》,郑宗汉,清华大学出版社.
《算法导论(影印版)》(Introction to Algorithms, Second Edition
Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest and Clifford Stein MIT)高等教育出版社.
《计算机程序设计艺术》(The Art of Programming Language), 清华大学出版社
《算法设计与分析基础》(Intruction to The Design and Analysis of Algorithms (US)Anany Levitin),潘彦 译,清华大学出版社.
(3)数据库
《数据库系统概论》,1983年,萨师煊 王珊,高等教育出版社出版.
《数据库原理与方法》,1983年,郑若忠 王鸿武,湖南科学技术出版社出版.
《数据库系统原理》,1988年,俞盘祥 沈金发,清华大学出版社.
(4)操作系统原理
《现代操作系统》,孙钟秀等,高等教育出版社.
《操作系统原理》,谢青松,人民邮电出版社.
《操作系统原理教程》,张尧学主编,清华大学出版社出版.
(5)计算机体系结构
《计算机体系结构》,张晨曦等,高等教育出版社.
《计算机系统结构》,郑纬民 汤志忠,清华大学出版社出版.
《计算机组成与结构》,王爱英,清华大学出版社.
(6)计算机网络
《计算机网络(第二版)》,冯博琴,高等教育出版社.
《<计算机网络与INTERNET教程>》,张尧学,清华大学出版社.
《计算机网络》,蔡开裕等,机械工业出版社.
(7)离散数学
《离散数学》,孙吉贵 杨凤杰,高等教育出版社.
《离散数学教程》,耿素云 屈婉玲 王捍贫,北京大学出版社.
《离散数学及其应用(原书第4版)》( Discrete Mathematics and Its Applications,Fourth Edition,作者:美-Kenneth H.Rosen),袁崇义 屈婉玲 王捍贫 刘田译,机械工业出版社.
基本上每类的第一本已经可以代表当今中国大学教学用书的主流了。所以从basic角度讲,足够了,但是如果从工程角度讲,建议你可以根据某一种语言去定向的学习数据结构,比如Java或者C#。毕竟面向对象以后,数据结构的处理不像c那样麻烦。体系结构,操作系统和网络我们用的是英文教材《国外优秀信息科学技术系列教学用书》感觉写的比中文的实用,如果你英文好的话可以参考,分别较计算机组织与结构,实用操作系统概念,计算机网络(好像现在有翻译版了)。
《计算机程序设计艺术》我们老师当时强烈推荐,但是两大厚本,我一直没时间看,挺遗憾的。脱离基础学科,就语言方面 Think in C++ (Think in Java)是非常好的书。你可以到网上搜一搜就知道,Bruce.另外如果你要是学软件的话, .net 和J2EE是必须掌握其一的,否则以后的路很难走,这方面建议你上网多查资料,因为信息更新很快,那些书很多都是抄来抄去,也没什么新鲜的。CSDN网站应该知道吧,看看里面的帖子就知道了。
‘捌’ 我想学游戏编程
可以选择去机构学,也可以自己找资料自学。
主要学的内容如下:
1.游戏程序设计:C++程序设计入门;基本数据类型和输入输出;流程控制语句;数组、指针和引用、函数;程序结构和书写规;范结构体和联合体、类;继承与多态;异常处理与程序调试。
2.算法与数据结构:算法分析;数据结构;基本算法;STL的概念与使用;静态库与动态库;XML库的使用。
3.Win32程序设计:Windows程序入门;Windows消息;GDI绘图游戏工具与MFC;网络编程基础。
4.游戏数学和智能应用:游戏中的坐标系;矢量、矩阵;几何碰撞;物理模拟;人工智能与寻路算法。
5.2D游戏技术与应用:2D游戏技术概论;游戏地图系统;GUI系统;战斗系统设计;任务系统;优秀的声音引擎BASS;Cocos2D-X引擎;Box2D物理引擎。
互联网行业目前还是最热门的行业,学习IT技能之后足够优秀是有机会进入腾讯、阿里、网易等互联网大厂高薪就业的,发展前景非常好,普通人也可以学习。
想要系统学习,你可以考察对比一下开设有IT专业的热门学校,好的学校拥有根据当下企业需求自主研发课程的能力,建议实地考察对比一下。
祝你学有所成,望采纳。
‘玖’ 电脑编程买什么书好,先学习编写个小游戏
Prime C(算法), MFC程序设计(界面)
‘拾’ c++语言编程做游戏或软件的看什么书好啊
语言先要掌握 ,先拿一本C++语言程序设计 的书看吧,不管哪 个版本的,都大同小异,接下来建议你看下Windows程序设计,这个是做窗口程序的基础,这两部书你只要搞懂,接下来就可以直接看Direct游戏开发的书了,当然在做游戏过程中你肯定要用到一些算法,这个时候可以在需要的时候去看下算法书籍,游戏开发不是很容易,你要做好心理准备,C++入门也比较难,必须有耐心和毅力.