我正在寻找用C#开发多点触控节奏游戏。到目前为止,我已经决定了必须绝对存在的游戏的几个要求:
1)Unicode文本显示,不预先知道字符(即显示的字符串在编译时未知,但由用户输入)。
2)支持显示所有常见图像格式(PNG,JPG,BMP,GIF)以及各种音频(MP3,WAV,OGG,FLAC)和视频格式的播放。
3)完全多点触控支持(我想支持与用户硬件允许的同时输入数量)。
我一直在摆弄XNA,但我发现使用SpriteFonts绘制任意Unicode文本很困难(当你尝试加载整个CJK Unified集时它讨厌它)。另外,我还没有找到一种简单的方法来加载某些格式,如XNA中的Ogg Vorbis音频。
因此,考虑到这一点,我开始考虑通过SlimDX使用DirectX 10。但是,我很迷茫,并且不确定如何从它开始,如果我需要的功能甚至存在于其中。最重要的是,SlimDX文档似乎非常缺乏,特别是在我不熟悉游戏开发的情况下。两个框架中的哪一个最适合我的目标?
编辑1 :使用SlimDX(2010年6月)开始游戏开发的任何参考都会非常有用,特别是与Direct2D有关,我最有可能使用它。
答案 0 :(得分:3)
基于您对SlimDX文档的关注以及您想要使用多点触控的事实(我无法确定是否可以从SlimDX访问 - 请参阅文档注释)我建议使用XNA。
XNA没有对OGG的直接支持,但有几个不错的转换器。如果您不想手头转换它们的麻烦,您可以创建自己的内容管道处理器来为您进行转换。假设您不想手动尝试手动读取字节并处理它们,您可能希望在独立模式下使用此工具,或者使用自定义导入器中的命令行: http://klucher.com/blog/game-development-program-of-the-week-xrecode/%20
对于字体,您可以修改XML文件以仅指定所需的字符。因此,如果您知道您只使用1/2的字符,那么您可以将其放在.spritefont xml文件中,并且只生成这些字符。
使用新的XNA Game Studio 4(仍处于测试阶段,但绝对应该开始使用),它内置了对多点触控的支持。它也有一些内置的手势,适用于Windows Phone 7.我的假设是XNA团队将在Windows 7中使用它也可以在很长时间内访问。与此同时,请查看Shawn Hargreaves的博客。他有an article under his input section on this。
有很多使用微软XNA库的例子,所以如果你刚刚开始这可能是非常宝贵的。
希望这有帮助,
乍得