on the media front, silverlight 3 supports advanced audio coding (aac) audio decoding as well as hardware-accelerated h.264 video decoding. silverlight 3 also offers 1080p smooth streaming. the native multimedia pipeline is also programmatically exposed, so that other formats can also be supported by third parties using managed code decoders. silverlight 3 supports "perspective 3d" which enables 3d transformations of 2d elements. these transformations, as well as many 2d operations like stretches, alpha blending etc. are hardware accelerated. custom animations, including transforms and blends, can be created on silverlight elements using high level shader language (hlsl) to make use of pixel shaders. a bitmap api is provided to let silverlight 3 applications manipulate bitmaps. silverlight now uses the graphics processing unit (gpu) to accelerate the composition of "visual trees" (like wpf, silverlight elements correspond to "visual" elements, which, when coupled with the layout information, forms a "composition tree" or "visual tree" which is then rendered to form the final display; see wpf architecture). visual trees can now be cached; this increases performance in cases like transforms, which creates lots of throw-away intermediate states, by not making the state transitions on the main visual tree. silverlight 3 now also supports cleartype text rendering.