2009年7月24日

[翻译]XNA 3.0 Game Programming Recipes之twelve

摘要: PS:自己翻译的,转载请著明出处 3-2 图象的旋转,缩放,和反射问题 在绘制到屏幕之前你想要旋转,缩放和反射一个副图片。解决方案 Draw方法的不同超载被SpriteBatch类所提供(见以前的章节)允许你很容易这样做。如何工作 旋转/缩放/反射一副图象 SpriteBatch.Draw方法有许多重载的方法。这里有最复杂的重载,以及可能的参数下一步将讨论: [代码] 头两个参数,以及第四个参数,... 阅读全文

posted @ 2009-07-24 09:35 一盘散沙 阅读(256) 评论(0) 推荐(1) 编辑

2009年7月23日

[翻译]XNA 3.0 Game Programming Recipes之eleven

摘要: PS:自己翻译的,转载请著明出处 3-1二维图像显示:使用SpriteBatch类加载和绘制图象问题 您想使二维图像的屏幕创建一个2D游戏或作为用户界面一个3D游戏。你想要一个简单的界面,以便您可以指定在屏幕上图象应该显示的位置。解决方案 XNA框架提供的功能,绘制图象的能力用一个很好的方式执行,以SpriteBatch类形式。 SpriteBatch类被设计成易用性,这节会显示它的性能。尽管如... 阅读全文

posted @ 2009-07-23 10:40 一盘散沙 阅读(382) 评论(0) 推荐(1) 编辑

2009年7月22日

[翻译]XNA 3.0 Game Programming Recipes之ten

摘要: PS:自己翻译的,转载请著明出处 2-14.自定义内容的输入问题 你想加载一个自定义版本的文件通过内容管道到你的XNA项目中。由于你文件的扩展名和结构与已知的XNA文件格式不同,默认的XNA内容管道不知道该如何加载和处理你的文件使它成为一个有用的游戏对象。解决方案 你要写一个可以输入的自定义内容,能阅读的文件从磁盘和有用的数据格式到一个对象里面,准备被处理器处理。因此,这一节假设你已经知道如何建立... 阅读全文

posted @ 2009-07-22 11:32 一盘散沙 阅读(366) 评论(0) 推荐(1) 编辑

2009年7月21日

[翻译]XNA 3.0 Game Programming Recipes之nine

摘要: PS:自己翻译的,转载请著明出处 2-13.创建一个模糊/发光的Post-Processing效果问题 你想在你最终的图象上添加一个模糊的效果,或者你想添加一个发光的对象在你的屏幕上。解决方案 这两个效果都是post-processing效果。在上一节中学习了怎么设置一个post-processing框架。发光效果的选择,因为它演示了如何融合更多的着色通行的输出。 您可以获取模糊效应计算每个像素的... 阅读全文

posted @ 2009-07-21 11:36 一盘散沙 阅读(313) 评论(0) 推荐(0) 编辑

2009年7月20日

[翻译]XNA 3.0 Game Programming Recipes之eight

摘要: PS:自己翻译的,转载请著明出处 2-12.安装后的处理框架问题 您要添加二维后处理影响到XNA工程的最终图像,如模糊,纹波,震动,镜头变焦,边缘增强,或其他后处理的效果。解决方案 您首先使您的二维或三维场景到屏幕上。在结束Draw阶段,之前的内容回缓冲区提交给屏幕,你准备截取后备缓冲区的内容把它用2D图象保存,如3-8节所解释。 接下来,您将促使本二维图像到屏幕,但您将通过一个自定义象素阴影,它... 阅读全文

posted @ 2009-07-20 10:57 一盘散沙 阅读(395) 评论(0) 推荐(1) 编辑

2009年7月19日

[翻译]XNA 3.0 Game Programming Recipes之seven

摘要: PS:自己翻译的,转载请著明出处 2-11.创建一个实时相机依赖于优化自适应网格(漫游)地形问题 虽然您可以使用一个四叉树的机制中所如2-10节,以确保XNA使得只有那些地形的补丁是相机看不到的,这种做法是并非最佳。远离相机的补丁仍然作出同样的与接近于相机的补丁一样的高详细绘制。在屏幕上一些三角形正被绘制,甚至占用不到单个像素。 因此,你想要使用level-Of-Detail(LOD)方法,地形远... 阅读全文

posted @ 2009-07-19 10:21 一盘散沙 阅读(309) 评论(0) 推荐(1) 编辑

2009年7月18日

[翻译]XNA 3.0 Game Programming Recipes之six

摘要: PS:自己翻译的,转载请著明出处 2-10.使用一个四叉树隐藏部分网格是看不到的问题 地形绘制是创建一个游戏一个最基本的部分。然而,这个方法在5-8也有描述,你建立一个巨大的地形可能不会注意到祯速率下降。解决方案 用四叉树您可以减轻大地形渲染工作量。这是一个类似八叉树,因为你将你的地形划分成较小的方格,直到所有这些方格不超过指定的大小。 就象在图表2-13中左边看到的进程。A16*16方格被分裂成... 阅读全文

posted @ 2009-07-18 17:09 一盘散沙 阅读(551) 评论(0) 推荐(1) 编辑

2009年7月17日

[翻译]XNA 3.0 Game Programming Recipes之five

摘要: PS:自己翻译的,转载请著明出处 2-7 使相机飞行问题 在3D世界里你想平滑的从一个位置移动到另一个位置。当然,在过渡的过程中你也想相机的目标也平滑的改变他的位置。 详细点就是,你想要一种机制,将您的相机在光滑曲线的起始位置到被定义的目标位置。这一运动应该顺利开始和结束。要能够拿起相机经常使用,并没有任何故障用它作为第一人称的相机。解决方案 这一过程将需要一个时间变量,这将是0当相机是在其起始位... 阅读全文

posted @ 2009-07-17 10:24 一盘散沙 阅读(448) 评论(1) 推荐(1) 编辑

2009年7月16日

[翻译]XNA 3.0 Game Programming Recipes之four

摘要: PS:自己翻译的,转载请著明出处 这里的相机旋转是定义个变量,这个变量定义了摄象机该如何旋转。文章中的旋转表示的定义的旋转矩阵,请细细品位。 2-4.创造一个自由风格的照相机:用四元数全三维旋转问题 您想要建立一个摄像机,以一切可能的方式可以旋转,例如,要创建飞行游戏。做到这一点您将需要约3个轴旋转,但由于万向锁(每次旋转已经影响到其他旋转) ,这已成为非常困难的,不过不是不可能的。解决方案 结合... 阅读全文

posted @ 2009-07-16 09:54 一盘散沙 阅读(445) 评论(1) 推荐(1) 编辑

2009年7月15日

XNA开发思考之3D开发中的小常识

摘要: PS:个人学习总结,转载请著明出处 在XNA的3D开发中,时常要涉及到坐标系统和摄象机的一些参数。同时还有矩阵的变化来在3维世界里的移动。 在二维世界里的坐标系统里,使用x,y坐标来表示一个点在坐标系统中的位置。电脑屏幕就是一个2维坐标系统。而在三维坐标系统中,引入了z坐标来表示物体距离的远近。下面将介绍2种三维坐标系统:左手坐标系和右手坐标系。 在左手坐标系统中,使用左手来确定三维坐标系统。如... 阅读全文

posted @ 2009-07-15 16:13 一盘散沙 阅读(1149) 评论(0) 推荐(1) 编辑

导航