I noticed that Direct3D is COM exposed, but there doesn't seem to be a type library for it.
My first question is, what is the point of COM exposure if the infrastructure to use it isn't really there?
I've considered that I could write my own COM interfaces in C#. But it makes me somewhat concerned that this hasn't already been done, a lot. Any way you spin it, you have to do some sort of interop wrapper if you plan to use D3D in with .net. Why create a c++/cli wrapper or a dll export wrapper that is designed to be P/Invoked when you could just do COM interop and never leave C#? I assume there is probably a good reason for this, or there would already be libraries out there that use this me开发者_运维百科thodology.
I'm fully aware of SlimDX and Windows API Code Pack. I am specifically interested in C# COM interop directly with Direct3D.
I noticed the MDXGI (codeplex) library, which attempts to do this methodology for DXGI, but it doesn't seem to be complete or getting much community response.
I also saw this related question ( Is there COM exposure for Direct3D 10 ), but I felt my question was at least a little bit different.
Thanks.
I would just like to note that MS is no longer supporting managed use of Direct3D. For .Net there is Microsoft's XNA framework (http://creators.xna.com/en-US/), which is quite an abstraction from D3D itself, but does support Windows, Xbox360 and Windows Phone 7.
Im an author of MDXGI project. As you see pure C# wrapper has some technical problems and no support of comunity.
精彩评论