Riktigt snygga 3d-lösningar i WPF

Igår fick jag tips om den här filmen på channel9 som visar några av förbättringarna i Windows Presentation Foundation i och med Service Pack 1 till .NET Framework 3.5. Jag vart förstummad när jag såg vad som går att göra med integrationen av exempelvis HLSL och PixelShaders i WPF. Du kan till exempel skapa en PixelShader som används som BitmapEffect till ett mediaelement och med hjälp av grafik-kortets förmågor ser till att alla svarta pixlar istället är transparenta. Med andra ord, transparent film, det lät coolt :)

Du kan också koppla en 2-dimensionell kontroll som en textbox till en 3-dimensionell yta och på det sättet skapa ett lakan som du kan skriva på, med rättsstavning och alla textboxens förmågor samtidigt som du kan hantera fysik.

Det som jag ändå tyckte var coolast (tror jag, det är svårt att välja) är att du kan databinda en egenskap i WPF till en egenskap i din PixelShader. Med andra ord så kan du använda WPF's vanliga animationsfunktioner för att förändra värden (interpolera osv) som förändrar din PixelShader, eller helt enkelt koppla en slider till någon egenskap i HLSL koden. Jag ser framför mig hur nästa version av RenderMonkey och FxComposer kommer att vara byggda i WPF :)

Vill du titta på några minuters coola demos, gör det här!