Sunday, February 06, 2011

Introducing DirectCanvas

image_thumb.png?w=519&h=240

DirectCanvas is a hardware accelerated, 2D drawing API for .NET.  It’s goals are to use Direct3D10, Direct2D, DirectWrite, DirectShow, Windows Animation Manager and WIC to create a single API for high performance drawing.  By leveraging these APIs it is possible to create anti-alias vector graphics, high quality text, multimedia, extensible pixel-shaders, animation and imaging.
You can watch some of the demo videos here.

Background

When IE9 platform preview was first released, they mentioned they would be leveraging Direct2D for high performance, hardware acceleration of web pages.  I was always curious about Direct2D, but never bothered to getting around to learning it.  This was a great time to see what Direct2D could do.
Running a few of the IE9 test drive applications, I was totally convinced.  I was convinced Direct2D is very fast.  I was convinced IE9 is going to be a fantastic product.  And beyond everything, I was convinced that HTML5 Canvas is going to be huge!

If you aren’t familiar with HTML5 Canvas, it’s an immediate mode, 2D drawing API.  It provides no notion of buttons, click events, mouse moves, etc.  It just lets you draw vectors, video and images.  So what good is it for developers?  For making painting programs?  This is what many developers ask when first exposed to the HTML5 Canvas.  They are used to having a premade UI framework ready to go.  HTML5 Canvas is powerful in the respect that it’s a least-common-denominator for user-interface.  This will allow the web community to build their own UI frameworks to fit their needs.  No longer will web applications be confined to the rules of the DOM to build UI.

Read more: jeremiahmorrill