我试过在
http://bubblemark.com的简单测试“Silverlight 2.0动画测试”,令人惊讶的是,月光在Linux上只提供26 fps. Windows / Silverlight 3在完全相同的机器上给了我192帧.为什么月光比Silverlight慢得多?
如果您计划在Silverlight中开发高速像,多平台应用程序,则性能差距非常重要,因为目前的月光速度可能是一个限制因素.
请不要回答,如果你唯一要说的话就是“月光是一个重新实现,一定要慢一些”,或者说“它落后于官方版本”.
我对某种专有的答案感兴趣,尤其是熟悉月光的代码和当前状态的人.
谢谢!
解决方法
在2.0版本之后进行了一些优化调整,应该会改进一些事情.通常的答案是,月光目前并没有像Windows上的Silverlight那样利用硬件加速.
其中一部分是Linux上的图形驱动程序并未针对由开罗使用的特定代码路径进行优化,Cairo是Moonlight使用的低级图形库.
不过,除此之外,我们引用了David Reveman(着名的XGL / Compiz创建者),与我们一起优化Moonlight以及为我们实施Silverlight 3.0着色效果.他会考虑让Moonlight利用OpenGL来更快的渲染.
我认为我们还有一些缺陷可以解决,导致屏幕的一个较大的区域被无效(因此重新绘制)比绝对必要的更多.这是导致渲染重大减缓的另一个领域.
希望能回答你的问题.如果您有更多的问题,请随时在irc.gnome.org上的#moonlight中询问IRC