2010-08-02 42 views
2

我很困惑的框架众多可供选择: 我想成为跨平台,甚至可能尝试为我的手机申请一个应用程序。可能是一场比赛,但可能是别的。我应该使用.NET/Mono/Tao/OpenTK/...别的东西吗?

  1. 我可以在Windows Phone上使用除Xna外的其他东西吗?上述框架之一。
  2. Tao说它是一个基于Mono的框架。 (至少,这是您在谷歌搜索Tao框架时的直接潜台词。) 但是在他们的FAQ中,它说: “Mono项目是Novell发起的一项开放式开发计划,旨在开发开源UNIX版本微软.NET开发平台“ 这意味着它是一个完全替代莫诺,对吧?
  3. OpenTK是否总是需要Mono或Tao来跨平台工作?

谢谢

+0

你可能会更好地问这些问题中的每一个作为一个单独的问题。 – Oded 2010-08-02 09:46:35

+0

我不知道你的问题的答案,只是为了澄清abotu Tao,它不是Mono的替代品,它是一个基于Mono/.NET开发的游戏开发框架:“Tao框架是一个绑定和库的集合利用Mono和.NET平台促进跨平台游戏相关的开发。“ – 2010-08-02 09:48:17

+1

@Oded那么单独的每个问题都不会让你听到你的意见选择什么。 – Blub 2010-08-02 10:00:56

回答

9

据我所知,WinPhone7只支持XNA,即.NET类库的CF子集,加上XNA图形/音频/输入/等等的API。

Tao和OpenTK都是与OpenGL等绑定的。他们可以在.NET或Mono上使用,但只能在OpenGL等存在的平台上使用。 OpenTK基本上是Tao的更好版本 - 你不会同时使用这两种版本。

可移植性的关键是像所有大型游戏引擎一样 - 抽象出音频和视频渲染器以及输入系统。该渲染器对象将使用平台的API将您的场景图形渲染到屏幕上。所以在WinPhone和Xbox上你可以使用XnaRenderer;在Windows上,您可以使用XnaRenderer,OpenTKRenderer或DirectXRenderer;在Linux,Mac,iPhone(通过MonoTouch),Android(通过MonoDroid)你可以使用OpenTkRenderer。

你可能想看看开源的C#Axiom3d图形引擎,它已经做到了。