跨平台 3D (C#)

3

我正在开发一款游戏,希望能在尽可能多的平台上运行。请问是否有任何好的3D库可以在Windows Phone 7和Mono(Windows和Linux)上运行?我本来想使用OpenTK,但它依赖于OpenGL,而Windows Phone只支持托管DirectX(XNA)。是否至少有一些不错的包装器可用?

7个回答

2

通常,在为Windows Phone 7编写代码时,您只能使用XNA和Silverlight,这是由于其与DirectX的关系。目前,Windows Phone 7不支持OpenGL。


我想问的是,是否有任何库可以提供“通用”的3D函数,并且可以根据设备运行情况使用XNA或OpenGL。虽然我的期望可能有点过高。 - bbosak
目前我不知道有任何能在Windows Phone 7上运行的程序。 - Den

2

你实际上尝试过使用它吗?似乎没有实际的WP7支持 - 只是主页上的一种说法。 - Den
它只针对其他平台,而不针对WP7,因为那是微软的地盘。 - Lex Li
2
确实,它并不针对WP7,但这并不是它的重点。它的想法是为Mono提供一个完整(或者几乎完整)的Xna实现。因此,理论上,大多数游戏代码都可以编译成MonoGame库,而不是Xna库。如果MonoGame编译为WP7,那就没有意义了,因为Xna已经做到了 :) - Aranda
作为对Aranda的更新评论,XNA现在不再计划用于Windows 8设备,除了桌面设备外,因此Mono将为Windows移动设备构建。 - scape

1

我相信目前还没有支持Xna和Mono(即Open GL)后端的托管3D库。我认为你最好的选择是在Xna之上编写自己的最小抽象层(只完成你需要的功能),然后在Mono + Open GL中实现它。

或者你可以开始在MonoGame或ExEn中实现Xna的3D API。我记得在MonoGame论坛上有一个关于某人正在运行非常基本的VertexBuffer初始实现的帖子。不过这显然需要相当不错的OpenGL知识。


1

我刚刚制作了自己的3D库,可以在所有平台上运行-- Sourceforge 源代码在这里


0

Axiom 3D渲染引擎支持多种平台和各种图形API,包括Windows Phone 7、Windows、iPhone、Android、Linux和Mac OSX,使用OpenGL、OpenGL ES、DirectX和XNA。


0
上周发布了MonoGame的v2.5版本。
现在所有的注意力都集中在即将推出的v3.0版本,它将拥有3D功能。develop3d分支已经有了一个可用的3D实现,我们只需要整理一下并确保2D不会出问题。如果有人仍在寻找MonoGame中的3D功能,请查看我们的develop3d分支,并帮助我们使其更加完善。
D.

0

顺便提一下,MonoGame的v2.0版本将在iOS和Android上添加OpenGL ES 2.0支持,并且默认着色器来自WP7,但除此之外,它还允许您使用自定义着色器,这与WP7上的XNA不同。当MonoGame的v3.0版本发布时,您可以期望3D支持更加强大。

希望这可以帮到您。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接