沿袭前文风格,本节将探讨游戏开发的各个方面,以及微软为完善这些环节所构建的配套基础设施。
开发生态
在开发环节,我们看到了一个持续了半个世纪的行业传统:游戏机制造商向游戏工作室提供尖端的开发工具包和库,而工作室则需要为此支付高昂的费用。 随着越来越多的小型公司投身游戏产业,一种新的独立游戏开发者(Indy)群体应运而生。他们虽然与大型游戏工作室拥有同样的热情和才华,但由于预算限制,他们必须在资源有限的情况下进行创作。
因此,微软针对不同类型的开发者推出了两种开发工具包:
- 传统游戏工作室在支付全额许可费后,可以获得官方的Xbox开发工具包(Xbox Development Kit,XDK)。 这个套装包含了完整的软件开发工具包(SDK)、多种开发硬件,以及根据他们与微软的关系,可能还包括原型设备。
- 而对于独立游戏开发者,微软提供了另一种选择:Microsoft XNA套装。它同样包含了多种开发硬件,但使用的是不同的软件开发工具包(XNA)。
为了进一步支持开发者,微软还推出了游戏开发者网络(Game Developer Network,GDN)和XNA创作者俱乐部,这两个在线平台为开发者提供了丰富的文档和工具资源。
可用的工具和套件
使用价格较高的XDK的开发者会注意到,它在很大程度上继承了前代的特性。 提供的API主要基于DirectX的例程,这有助于那些已经在Windows平台上熟悉DirectX的PC开发者更快上手。 XDK实现了DirectX 9.0c版本(标识为"9_3"),并加入了Xbox特有的扩展功能。
这个开发套件包含了多种库和工具,例如:
- 它包含了现有的Visual C和C++ 2005前端编译器(微软的C和C++版本),以及一个新的后端,用于生成PowerPC机器代码。 此外,还包括PowerPC、xvs_3_0和xps_3_0汇编器(后两者是Xenos的微码着色语言)。 前端编译器后来升级到了2010版。
- 微软的Visual Studio 2005作为集成开发环境(IDE)。 后来版本的XDK附带了2008版,最后是2010版。 还包括用于Xbox 360开发工具包的调试器。
- Xbox 360开发套件的调试工具。
- 知名的Direct3D图形API, 尽管它与Windows版本有所不同。 例如,着色器编译器现在在编译时生成微代码,而Windows版本则是在运行时完成这一过程(这是因为Windows游戏需要支持多种图形卡)。 API还进行了扩展,以支持程序化合成、条件渲染等多种情况。 这些变动已被Xenia模拟器的开发团队详细记录。
- Windows 2000时代的Win32 API中的一些熟悉功能,现在被重新用于支持Xbox 360的内核操作,例如多线程操作的
CreateThread()标准程序。 - 一些旧有的、即将被更新的API,比如DirectSound,在XDK的后续版本中很快被XAudio2所取代。 XAudio2的开发旨在充分利用Xbox 360的独特音频处理能力,并与Windows的DirectX API保持语法一致性。
- 此外,还有非DirectX的API,如用于控制Kinect的自然用户界面,它提供了与Kinect设备的交互方式;以及Xbox 360统一存储API,它旨在提供一个抽象层,以简化对多种存储介质的访问和管理。
现在轮到使用XNA的低预算工作室了。 XNA被设计用于简化跨平台开发,其适用于Windows XP和Xbox 360 。 XNA作为DirectX的封装器,因此低级功能被抽象为在Windows和Xbox 360上都能运行的例程。 尽管仍然需要额外的代码来适应这两个不平等平台之间的小差异 ,但该平台使许多开发者受益,他们希望在不付出太多努力或成本的情况下将他们的游戏移植到Xbox 360。 对于熟悉Windows开发生态系统的人来说,XNA是旧的"Managed DirectX"平台的继任者,它包含了.NET Compact Framework的一个子集 。
在随后的几年里,将看到XNA框架的新版本支持新设备(如Windows Phone 7),但它逐渐与现在已过时的Xbox 360硬件疏远,直到微软在2013年完全放弃了XNA 。
作为最后的说明,对于家庭开发者来说,libXenon是一个免费的第三方库,它提供了对硬件的低级访问,且不受版权限制 ,尽管它的可执行文件只能在禁用了签名验证的被破解的Xbox 360上运行。
存储介质
现在让我们来看看内容分发是如何工作的。
零售游戏
这可能听起来难以置信,但对于微软来说,用于初代Xbox的同一种双层DVD光盘在他们的新游戏机上也能正常工作。 我推测这是一种成本效益策略,因为DVD光盘的生产成本变得更低,而且其读取器可以外包给最便宜、最方便的制造商。 在整个游戏机的生命周期中,微软依赖日立、LG、东芝、三星、飞利浦、明基和Lite-ON等公司,包括两个团队,来生产他们的DVD驱动器。
作为提醒,双层DVD(也称为DVD-9)的理论容量为8.5 GB。 与PlayStation 3的新蓝光光盘相比,这是一个大优势,因为Xbox 360得益于其12倍速光驱,能享受更快的读取速度,这也是将硬盘从要求中排除的另一个原因。
另一方面,游戏的可用容量受到了很大的限制,那8.5 GB的容量由于一个名为Xbox游戏光盘2或"XGD2"的安全文件系统而进一步受限。 这是微软用来防止未经授权复制的原始格式的继任者。 游戏实际可用的容量减少到了6.8 GB(总容量的80%)。 2011年,在许多第三方工具成功破解保护后,Xbox游戏光盘3或"XGD3"被提供给开发者。 在其中,微软设法更新了安全技巧,并减少了用于反盗版机制的空间,为游戏留下了总共7.9 GB的容量。
在线商店
微软开始尝试的一个新兴领域,直到它成为零售商店的全面竞争对手,就是在线市场。
最初它名为Xbox Live Marketplace,这个门户在2006年作为初代仪表板中的一个新刀片页/类别"市场"推出。 用户然后会发现一部分零售游戏可供购买,以及免费的演示版可供尝试。 在随后的几个月里,一次更新增加了一个名为"Arcade"的新组,其中包括在线商店独有的游戏,这些通常是小游戏。 随着时间的推移,更多的更新将会到来,以扩大Xbox Live Marketplace的领域,现在它还销售电视节目、电影和原创Xbox游戏。
此外,在另一次更新中,微软推广了一个专门为独立开发者设立的部分,这被称为"Xbox Live社区游戏",并将使用XNA平台的开发者与已经拥有零售空间的大型工作室区分开来。
在Xbox 360的的最后几年,以及其他媒体平台(智能手机、智能电视、Xbox One和在线流媒体)的巩固期间,微软重新品牌化了市场的一部分,以提供可以从其他设备(不一定是Xbox 360)使用的内容。
蓝光竞争者
与游戏本身关系不大,但电影行业对这个游戏机也有着不同寻常的影响(或者反过来说? 我们很快就会看到)。 当微软强制游戏使用DVD格式时,该公司也在推动一种新的格式,以争夺电影货架上的空间与蓝光光盘竞争。 我说的是HD-DVD,它恰好足够方便地使用了微软拥有的API来实现互动功能(如菜单等)。
因此,微软的目标导致了被称为Xbox 360 HD DVD播放器的一个独立配件的诞生,这是一个外置读取器,放置在游戏机旁边,并且需要自己的电源供应(所以可以预期所有随之而来的麻烦)。 无论如何,这个读取器通过USB连接,并附带一个"HD DVD安装光盘",在游戏机上安装了一个额外的媒体播放器。 然而,它的行为取决于仪表板版本:在Blades仪表板上,HD-DVD播放器与用户界面集成在一起。 在较新的仪表板上,它作为一个单独的应用程序出现。
在内部,HD DVD以比传统DVD更高的密度存储凹坑和平地,如果是一层的话可以存储多达15 GB的数据,如果是双层的话则可以存储30 GB的数据。 虽然蓝光和HD-DVD都依赖于蓝光二极管,但后者的坑分布更为稀疏;其激光的焦点比蓝光的要大。 因此,HD-DVD无法达到竞争对手的25 GB/50 GB的里程碑。
在货架上卖了两年之后,HD-DVD及其播放器在2008年被逐步淘汰。 如果你问我,那我会说HD-DVD和蓝光之间的这种二元对立只是版权费、制造成本和分销商之间的分歧之战。 这些对终端用户来说都不重要,然而他们不得不为这种实验性技术支付高昂的价格,而这种技术很快就会被分销商认为"不值得"
网络服务
在这个低成本游戏机的核心,是其大力推广的在线功能,这些功能以一种名为Xbox Live的付费订阅服务的形式实现(这个名字还包括市场、软件更新和其他基于互联网的服务)。
由于Xbox Live在初代Xbox上的使用取得了成功,其继任者也不会陌生于跟随脚步,甚至提供更多的商品来吸引用户加入在线游戏。 我推测这个游戏机的低成本点和持续的市场营销努力——包括微软发货的所有配件(网络摄像头、耳机等)——意味着微软的主要利润来源依赖于付费订阅和市场购买。 随着3D头像的出现,公司也找到了利用头像定制化盈利的方法。

有趣的是,游戏机为用户的Xbox Live个人资料计算了一个分数,这个分数基于解锁的成就的数量和类型。 想要达到顶级排名吗? 那就多玩一些。 游戏玩完了? 那就买更多!
从开发者的角度来看,Xbox Live服务器提供了进行多人游戏、语音聊天、个人资料管理等功能所需的基础设施。 Xbox 360游戏使用REST API(在SDK上有文档记录)与每个端点进行通信。 为了与这些服务器进行身份验证,开发者接收了一个定制的"Xbox安全令牌服务",将其嵌入到他们的REST请求中。


