所以我在研究是否有办法解决微软为Windows Phone 7设置的XNA / Silverlight锁定问题,因为我可以使用SFML(.net绑定)进行应用程序开发和其他库我已经知道了。
我找不到.....
现在我想知道为什么Windows手机和其他类似设备不允许使用某些语言和OpenGL等非托管库,特别是因为我刚刚发现了平台调用/外部链接/其他双语技巧。
要理解这一点,我想我需要理解语言和机器硬件之间的关系:像OpenGL这样的c / c ++库如何与屏幕/图形卡通信?
奖励问题: XNA不使用OpenGL / DirectX,所以它是完全独立的图形API吗?
答案 0 :(得分:3)
操作系统使用相同的API封装所有硬件。在OS内部,它使用硬件io地址来控制它。
OpenGL / DirectX / XNA封装了所有操作系统的系统API,并为其上的所有程序提供了一个简单易用的界面。
如下所示:
Hardware <- HAL <- DirectX / OpenGL <- XNA <- Your Program
希望这有用:)
杰森
答案 1 :(得分:3)
扩展管道看起来像:
Hardware <- Vendor Drivers <- HAL (Operating System) <- OS Native Methods (DirectX/OpenGL) <- Managed Wrappers (XNA / .Net Frameworks / Java) <- Your Program
供应商锁定设备有几个不同的原因。
我对这些中的任何一个都不是特别兴奋,但他们只是浮现在脑海中。