Cam*_*tin 5 .net graphics mono fallback hardware-acceleration
据我所知,如果可能的话,WPF会进行硬件加速绘图,如果用户没有DirectX 9+,则会回退到软件渲染.这是一个非常有趣的想法,我甚至喜欢XAML的想法.
我不喜欢它的原因,以及为什么我甚至不打算学习它,是因为Windows Forms是一种微软技术,并且不如WPF,它是通过Mono的跨平台,这对于WPF来说是不正确的,而且可能永远不会.围绕Linux/OS X的.NET WinForms包装器是否会在未来打入专利砖墙
存在争议,但这超出了这个问题的范围.
是否有任何图书馆为.NET 和 单声道,这将让我使用基本的硬件加速(认为alpha合成,快速的像素处理等)与软件后备的系统没有所需的图形处理器/驱动程序?
简而言之:非古代台式机和现代笔记本电脑上的快速图形,但低端上网本和类似设备上的可用图形.这不适用于游戏开发.
有几个技巧可以让GDI +更快.原始指针访问大大改善了Set/GetPixel .
使用的像素格式可以极大地改善渲染,32bppPArgb(32位,8位Alpha和RGB值预先乘以alpha).
还有其他 技巧可以获得更快的速度,但是管理的GDI +在某些方面仍然很慢.
我目前的选择是 尝试Irrlicht,但仅仅因为我看不到其他选择.在那儿?
此外,即使它似乎支持软件渲染,我不知道它的.NET/Mono包装器的状态如何,它的支持链接是一个论坛帖子.
目前没有.
此外还有一个问题:我不知道如何围绕图形库"抽象".如果我进一步意识到我做出了错误的选择,我将不知道该怎么做.
请原谅这个问题的长度.
编辑:由于这个问题有两个非常有建设性的答案,我会等几天,并将最受欢迎的答案作为接受的答案.
在另一则新闻中,似乎OpenGL是由软件实现的,由OS供应商和第三方实现,而这些实现将由OpenGL框架在缺少第三方驱动程序时使用.
开罗怎么样?它有多个后端,包括OpenGL,GDI,X和Quartz,几乎可以在任何设备上运行.Mono.Cairo为它实现了一个.NET包装器,但我不确定这是否允许通过代码切换后端,或者它是否需要为每个系统重建.
开罗被用作Moonlight,Gtk +和Mono的System.Drawing实现的后端.
您的阵容中未提及的一个框架集是 Silverlight。它在 Windows 上进行了硬件加速,Moonlight 现在在 Linux 上进行了硬件加速。不确定软件后备,但我想它们必须有后备,因为它们都是为非常广泛的消费者使用而设计的。
| 归档时间: |
|
| 查看次数: |
1079 次 |
| 最近记录: |