Finding highspeed Bitmap rendering in Silverlight
I was trying to achieve high speed bitmap writing in Silverlight, and used WriteableBitmap
to do it. The scenario is repeat开发者_如何学运维edly writing UIElement like Image onto a 1000x1000 sized bitmap:
WriteableBitmap bitmap = new WriteableBitmap(w, h);
...
for (...) {
bitmap.Render(patternImg, mymatrix);
bitmap.Invalidate();
}
Here, silverlight seems can only draw about 50 times per second.
While in HTML5, by using Canvas, context.drawImage(image, dx, dy)
, it can do over 5000 times per second (on a 1000x1000 bitmap, if I didn't make mistake...)
It seems silverlight's writableBitmap does not utilize the hardware graphic pipeline, is there any way to achieve high-speed bitmap rendering in silverlight?
If you haven't found these already, here are some links that may be helpful:
WriteableBitmapEX (open source project):
http://writeablebitmapex.codeplex.com/
introduction into WriteableBitmapEx capabilities here:
http://blogs.claritycon.com/blog/2011/03/30/advanced-animation-animating-15000-visuals-in-silverlight-2/
High performance redering in Silverlight:
http://andrewrussell.net/2010/12/high-performance-rendering-in-silverlight/
精彩评论