2013-04-06 151 views
1

我想将一个桌面C#项目移植到Windows Phone(8),但我的问题是它在某些部分使用OpenTK来显示一些3D模型。经过一番研究,我确定OpenTK是一种.NET或单一的OpenGL绑定。我知道Windows Phone不支持OpenGL,只支持XNA和Direct3D。OpenTK C#Windows Phone(8)

我现在的问题是,我能做些什么来使这段代码工作。 Windows Phone上是否有某种OpenTK的端口?一些OpenTK的端口可以直接连接到WP,但我不确定我是否可以从C#访问Direct3D;我将不得不以某种方式弄清楚如何将OpenTK代码转换为XNA代码(即使(实际上)也可以);或者还有其他一些希望更简单的方法。

回答

1

恐怕没有简单的方法将您的OpenTK代码自动转换为DirectX。

我会将代码移植到http://www.monogame.net/,它使用Windows,Android,iOS和Linux下的OpenTK以及Windows Phone8和Windows 8 Store/Metro上的SharpDX。

这样你的代码变得与目标平台无关,但是让OpenTK转向monogame还是有一些工作要做。 所以这可能不是你想听到的,对不起。

+0

我也想到了这一点,但这是相当敏感的,因为我试图端口的应用程序已经支持所有其他平台。这将是相同数量的移植工作。 – Gerharddc 2013-04-16 18:16:38

+0

除非OpenTK - > MonoGame比OpenTK - > SharpDX更简单,是吗? – Gerharddc 2013-04-16 18:17:20

+1

好吧,最终你会得到一个适用于所有平台(monoGame)的代码库,而不必在之后维护两个代码库(OpenTK和SharpDX)。我并不是简单的,可能取决于你的DirectX技能。对我个人而言,monoGame路线可能会更容易,因为我对XNA的直接使用经验比XNA更多。 – 2013-04-16 18:31:18