我正在考虑创建一个屏幕保护程序。我脑海中已经准备好整个东西,它的图形和后端。但是我不太确定如何在代码中获取图形。

我想要的是带有一些移动图像的幻灯片放映(有点像媒体中心的幻灯片放映),顶部有一些浮动文本和形状。形状有点半透明。

我目前在WinForms中制作了一个非常简单的静态幻灯片。只是一个简单的应用程序,它将全屏显示并显示一些图像,并假装以一种骇客的方式淡入和淡出它们。但是做工不是很好,性能也不是很好。例如,为了防止延迟,我在图像顶部的黑色正方形中淡入淡出,而不是在实际图像中淡入淡出。也许很愚蠢,但它有点有用:p

无论如何,我想做得更好。但不确定从哪里开始。 WPF是否是一个好的解决方案?还是应该研究DirectX或OpenGL?这是XNA可以很好处理的东西,还是游戏特别?

最佳答案

WPF并不是一个坏主意。它利用DirectX和硬件加速来制作动画和效果。

如果您本机编写此类内容(相对于Directx或opengl),将会获得更好的性能,但是编写它的成本会更高。无论如何,您很有可能不需要该优势。

看一下Hanselman的baby smash(这是一个带有动画的全屏wpf应用程序),以了解您可以使用wpf做什么。

注意:我确实以WPF的方式写过幻灯片,要使其顺利运行,关键在于将图像加载到后台线程和freezing it中。

关于c# - C#:创建图形屏幕保护程序,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/963880/

10-17 01:54