我应该使用.NET/Mono/Tao/OpenTK/......还有其他什么?

Blu*_*lub 2 .net mono tao-framework opentk

我对可供选择的众多框架感到困惑:我希望能够跨平台,甚至可以尝试为我的手机制作应用程序.可能是游戏,但也可能是其他东西.

  1. 除了Xna和Windows Phone,我可以使用其他东西吗?上述框架之一.
  2. 陶说这是一个基于Mono的框架.(至少,当您在Google中搜索Tao框架时,这是直接的潜台词.)但在他们的常见问题解答中,它说:"Mono项目是由Novell赞助的一项开放式开发计划,旨在开发一个开源的UNIX版本的Microsoft. NET开发平台"这意味着它是Mono的完全替代品,对吗?
  3. OpenTK总是需要Mono或Tao来跨平台工作吗?

谢谢

Mik*_*son 9

AFAIK,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的),安卓(通过MonoDroid的),你coudl使用OpenTkRenderer.

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