没有合适的资源?快使用搜索试试~ 我知道了~
XNA 3.0 Game Programming Recipes(中文版)
5星 · 超过95%的资源 需积分: 4 25 下载量 107 浏览量
2010-01-17
00:48:01
上传
评论
收藏 4.9MB PDF 举报
温馨提示
试读
592页
XNA3.0GameProgrammingRecipes XNA 游戏开发
资源推荐
资源详情
资源评论
译者的话
继一年前翻译了《Professional XNA Game Programming》(以下简称《ProXNA》)
之后,近段时间终于把《XNA 3.0 Game Programming Recipes》(以下简称
《XNARecipes》)也翻译完成了,这的确是一本好书,作者深入浅出,把问题解
释得非常清楚,以前中《ProXNA》看不懂的地方几乎都解决了,《ProXNA》的确
对得起书名中的“Professional”,对一些作者认为基础的东西一笔带过,如果
学习 XNA 看的第一本书就是它的话,很多东西是一知半解的,至少我是如此。所
以推荐应该两本书一起看。
读完了《XNARecipes》中1.1 安装XNA Game Studio 3.0,1.2 开始第一个XNA 3.0
项目,3.1 显示 2D图像:使用SpriteBatch类加载和绘制图像,3.2 旋转,缩放
和镜像一张图像,3.3 使用层绘制透明图像,3.4 使用SpriteBatch类时的性能
考虑,7.3 通过Xact播放简单的.wav文件后,就可以开始学习制作《ProXNA》中
的第一个游戏Pong了。这个游戏使用GameState枚举进行场景管理,创建了一个
SpriteToRender 类将要绘制的图像进行封装,体现了面向对象编程的思想。为
了能自动适应分辨率的改变,此游戏的图像位置都是基于 1024*768 的,而使用
一个技巧让游戏可以随着分辨率的改变自动调整图像的位置,当然XNA帮助文件
中有一个例子用的是SpriteBatch.Draw的一个重载方法的第四个参数,我觉得更
简单,可以参考一下。
《ProXNA》 第二个游戏 Breakout 中创建了几个辅助类,像 Pong 游戏一样将所
有的代码都放在一个文件中通常是不可取的。辅助类中最重要的就是
SpriteHelper,它的作用就是管理一个 SpriteToRender 的集合,真正体现了面
向对象编程的思想。
第三个游戏《Tetris》中提及了GameComponent,你应该看一下1.7 使用
GameComponents了解相关知识。此游戏还编写了绘制文本的TextureFont类,而
在XNA1.0Refresh版本中已经提供了SpriteBatch.DrawFont方法绘制文字,使用
起来更简单,但是好像还是用图像表示文字更漂亮,当然如果是中文系统就另当
别论了。
《ProXNA》 的第五章涉及 3D编程,应该先看一下4.1 使用BasicEffect类载入
模型,4.2 对不同对象设置不同的世界矩阵,组合世界矩阵,4.6 缩放模型,5.2
在三角形上添加纹理,谈及相机时看一下2.1 创建一个相机:Position,Target
和View Frustum,2.2 指定相机的目标,2.3 创建一个第一人称射击游戏(FPS)
的相机:Quake风格的相机。
《ProXNA》 的第六章应参考《XNARecipes》第五章、第六章的前面几个教程。
《ProXNA》 的第七章应参考《XNARecipes》中的 5.13 凹凸映射:固定法线,5.14
通过切线空间的凹凸映射添加逐像素细节。
《ProXNA》 的第八章Post-Screen Shaders应参考3.8 将场景绘制到纹理,2.12
创建一个Post-Processing Framework,2.13 创建一个BlurGlow
Post-Processing Effect。
《ProXNA》 的第九章处理声音可参考7.3 通过Xact播放简单的.wav文件。
《ProXNA》 的第十章场景管理使用了堆栈,可参考3.6 创建 2D菜单界面,
spaceCamera可参考2.4 创建一个Freelancer风格的相机:使用四元数的 3D旋转。
《ProXNA》 的第十一章中的爆炸效果是使用动画纹理实现的,你可以使用粒子
系统产生同样的效果,可参见3.11 Billboarding:在 3D世界绘制 2D图像使它们
总是面向相机,3.12 创建一个 3D爆炸效果/简单的粒子系统。这个游戏使用的
地形并不需要自己定义顶点和索引,而是直接在 3DSMAX做好的,但仍需用到高
度图。
《ProXNA》 的第十二章的赛车游戏的场景仍是在 3DSMAX中做好,表面贴了一张
很大的纹理并添加了一些细节。赛道使用了Collada格式,但是构思和5.16 在
3D空间中使用Catmull-Rom插值生成额外的顶点,5.17 为赛道创建顶点是类似
的。车辆与赛道的碰撞检测比较简单,并没有《XNARecipes》第四章中的几个高
级。游戏中的阴影映射比较复杂,我还不太懂,与6.11 在Deferred Shading引
擎中添加阴影能力还是有区别的,推荐去看《XNARecipes》作者的网站中3D
Series 3: HLSL中的相关文章。
最后祝玩得愉快,本电子书的word版本可以在上海市第八中学物理组网站下载。
PS:一转眼儿子已经要 3 岁了,不过现在已经天天缠着要玩电脑上的《WaWaYaYa》
儿童学习软件了,这么小就开始上瘾了!
1 / 589
1.1 安装 XNA Game Studio 3.0
问题
你想开始编写自己的游戏。
解决方案
在开始编写自己的游戏前,你首先应该按照开发环境。XNA Game Studio 3.0 让你可以使
用一个单一的环境开发整个游戏项目。而且它是免费的。
首先需要 Visual Studio 2008 让你可以开发 C#程序,因为 XNA 使用的是 C#语言。
安装好 Visual Studio 2008 才能安装 XNA Game Studio 3.0。
工作原理
安装 Visual Studio 2008
XNA Game Studio 3.0 需要 Visual Studio 2008 安装在 PC 上。如果没有,你可以免费下载
Visual C# 2008 Express Edition。
可至
www.microsoft.com/express/download/找到Visual C# 2008 Express Edition(确保选择
C#版本,用绿色显示)。选择语言,点击Download按钮。这会下载一个小文件,需要之后运
行。
在运行 setup 时,使用默认选项点击 Next 直到程序开始下载和安装。
注意:你也可以在我的网站(www.riemers.net)找到这个安装包的更新链接。
安装 XNA Game Studio 3.0
至 http: //creators. xna. com/en-US/downloads,点击 DOWNLOADS XNA STUDIO 3.0 链接 ,
在打开的页面中,点击 DownLoad 按钮(就在“Quick Details”上方)开始下载 XNA Game Studio
3.0。
下载和运行了文件后,安装包会检查你是否已经安装了 Visual C# Express Edition 2008。
如果按照前面的指示,你不会碰到任何错误信息。
在安装过程中会弹出防火墙设置页面。请选择第一个选项,并允许两个子选项。如果不
是这样选择,当连接 Xbox360 或测试多人游戏时会碰到麻烦。当你将游戏连接到其他 PC 或
Xbox360 时失败,往往是第三方防火墙的错误设置。
最后,点击 Install 按钮安装 XNA Game Studio 3.0。
2 / 589
1.2 开始第一个 XNA 3.0 项目
问题
你想编写一个新的 XNA 3.0 游戏。此外,默认的初始代码已经包含了一些方法,你想知
道这些方法是做什么用的。
解决方案
打开一个新项目和大多数 Windows 程序是相同的。在 XNA Game Studio 3.0 中,打开 File
菜单,选择 New→Project。
工作原理
打开 XNA Game Studio 3.0
通过点击 Start 按钮并选择 Programs 打开 XNA Game Studio 3.0,找 到 Microsoft XNA Game
Studio 3.0,点击,选择 Microsoft Visual Studio 2008 (或 Microsoft Visual C# 2008 Express
Edition,如果你安装的是免费版本)。
打开一个新 XNA 3.0 项目
在 XNA Game Studio 3.0 中 ,打开 File 菜单并选择 New→Project。在左边的列表中,Visual
C#下面的 XNA Game Studio 3.0 默认是高亮的,如图 1-1 所示。在右边,选择 Windows Game
(3.0),给你的项目起一个好听的名称,点击 OK 按键。
剩余591页未读,继续阅读
资源评论
- sauteegg2014-02-19非常不错的教程
huadingjin
- 粉丝: 53
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- tensorflow-rocm-2.13.1.600-cp39-cp39-manylinux2014-x86-64.whl
- tensorflow-gpu-2.7.0-cp39-cp39-manylinux2010-x86-64.whl
- tensorflow-gpu-2.7.0-cp38-cp38-manylinux2010-x86-64.whl
- 电子科大 电路分析与模拟电路 实验报告.pdf
- 各位大佬哥哥可以帮我看一下吗
- image-gradients.zip
- 5G频点频率计算方法.xlsx
- 5G网优案例:在室内5G手机占用到宏站信号优化案例.docx
- python 企业编码管理 计算机毕业设计.zip
- vue-基于vue2+vuex+axios实现的天气预报小项目.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功