我想用DirectX制作一个2D桌面图形用户界面应用程序,但我不知道该使用哪个版本。我一开始尝试过Direct2D,但它从未真正流行起来,因此与DirectX的其他部分相比,它没有太多的社区支持或文档支持,所以它不是一种选择。
所以我有三个选择:
我的一位博学的朋友强烈鼓励DirectX 9.0c说这是我所需要的,但我对使用一个8岁的平台非常谨慎。微软在很大程度上是遗留支持的巅峰,但我认为它们一定有一定的局限性。我不知道DX10和DX11之间的区别。
请记住,我是一个新手程序员,所以这主要是一个学习项目。
如有任何建议,敬请谅解!
编辑:我也希望就版本之间在功能或编程范式方面的任何显著差异提供建议。
发布于 2012-04-08 17:42:00
我应该使用什么版本的DirectX来制作一个2D桌面GUI应用程序?
DirectX 9,因为你会得到更多的用户。
是我的一位博学的朋友,他极力鼓励DirectX 9.0c说这是我所需要的,但我对使用一个8岁的平台非常谨慎。
许多DirectX 7和DirectX 5游戏仍然运行良好,更不用说使用DirectDraw的游戏了。所以8岁的平台没有问题。使用新版本(超过9版)可能对您没有好处,因此盲目使用更高的版本号并不是个好主意。
根据您的情况,您也可以考虑使用OpenGL,但只有当您的应用程序必须跨平台时,这种选择才有意义。如果您知道应用程序只适用于windows,那么选择DirectX 9是有意义的。
发布于 2012-04-08 17:11:47
微软的主要承诺是对其Windows客户。他仍然运行着15年前的游戏,使用的是当时使用的任何DirectX版本。IDirectDraw活得很好。显然,作为一名二次开发人员,您将从中受益。当然,DX 9是最广泛的硬件支持,所以这是一个很好的选择。如果您的游戏在旧硬件上表现不佳,请考虑更高的问题,DX版本是一个自动选择器。
发布于 2012-04-10 19:14:34
你写这个是为了工作还是为了好玩?
如果这是为了工作,那么你必须遵循商业或市场营销人员所定义的最低系统要求。如果您的最低操作系统可以是Win7或Vista SP2 w/ Platform,那么Direct2D是一个可行的选择。否则,DX9就是你必须走的路。
如果这是你个人时间的乐趣,那么做任何你认为最有趣的事情:)如果你只想做2D图形的话,Direct2D肯定会容易得多。我不太担心“它还没有得到流行/社区支持”的角度,特别是因为现在所有主要的桌面应用程序(火狐、Internet,甚至下一个版本的Paint.NET)都在使用它。此外,Win8还将使用大量有趣的新特性更新Direct2D (据我所知,此更新也适用于Win7 )。
Direct2D一开始使用起来可能很笨拙,但这主要是因为所有的COM功能。一旦你习惯了它,并建立了你自己的小工具战箱,它实际上并不比GDI+更复杂。事实上,我已经能够将一堆旧的GDI+代码移植到使用Direct2D/DirectWrite,而且通常它只是逐行替换,例如SolidBrush -> SolidColorBrush (这是在Paint.NET 4.0代码库中)。
https://stackoverflow.com/questions/10064542
复制相似问题