我正在开发一款游戏,希望能在尽可能多的平台上运行。请问是否有任何好的3D库可以在Windows Phone 7和Mono(Windows和Linux)上运行?我本来想使用OpenTK,但它依赖于OpenGL,而Windows Phone只支持托管DirectX(XNA)。是否至少有一些不错的包装器可用?
我正在开发一款游戏,希望能在尽可能多的平台上运行。请问是否有任何好的3D库可以在Windows Phone 7和Mono(Windows和Linux)上运行?我本来想使用OpenTK,但它依赖于OpenGL,而Windows Phone只支持托管DirectX(XNA)。是否至少有一些不错的包装器可用?
通常,在为Windows Phone 7编写代码时,您只能使用XNA和Silverlight,这是由于其与DirectX的关系。目前,Windows Phone 7不支持OpenGL。
我相信目前还没有支持Xna和Mono(即Open GL)后端的托管3D库。我认为你最好的选择是在Xna之上编写自己的最小抽象层(只完成你需要的功能),然后在Mono + Open GL中实现它。
或者你可以开始在MonoGame或ExEn中实现Xna的3D API。我记得在MonoGame论坛上有一个关于某人正在运行非常基本的VertexBuffer初始实现的帖子。不过这显然需要相当不错的OpenGL知识。
Axiom 3D渲染引擎支持多种平台和各种图形API,包括Windows Phone 7、Windows、iPhone、Android、Linux和Mac OSX,使用OpenGL、OpenGL ES、DirectX和XNA。
顺便提一下,MonoGame的v2.0版本将在iOS和Android上添加OpenGL ES 2.0支持,并且默认着色器来自WP7,但除此之外,它还允许您使用自定义着色器,这与WP7上的XNA不同。当MonoGame的v3.0版本发布时,您可以期望3D支持更加强大。
希望这可以帮到您。