I’m currently in need of a purely managed code DirectX wrapper for .NET. While SlimDX is great, its use of unmanaged code makes it impossible to perform proper dead code analysis on, for the purpose of merging it into your assemblies. With a pure managed wrapper, I’d be able to include just the pieces I use in my assembly, allowing very, very small binaries (my goal is to be able to write 64k demos entirely using .NET).
Does such a thing exist, or am I going to be getting intimate with P/Invoke?
No such thing, gotta roll your own. And you don’t have to worry about the size of your assemblies when you use P/Invoke – if anything, they’ll be a lot smaller than if you included their managed counterparts.
Depending on what you’re doing (video? audio? 3D?), DirectShow.NET is a fun place to start with this sort of thing, given that it’s incomplete and no longer supported.