Slimdx.lib -
SlimDX.lib wasn't just a library. It was a declaration that managed code deserved access to the bare metal. It failed commercially, but it paved the concrete that Silk.NET and Vortice.Windows walk on today.
SlimDX.lib was the Rosetta Stone. It allowed you to write: slimdx.lib
Most developers ignored the .lib . They just referenced the C# DLL and moved on. But the .lib was the heart of the beast. SlimDX
Why? Because C# cannot inherit from C++ COM interfaces. You cannot write class MyDevice : ID3D11Device in C#. The v-table layout is wrong; the calling convention is wrong; the world is wrong. But the
var device = new Device(DriverType.Hardware, DeviceFlags.None); var texture = Texture2D.FromFile(device, "explosion.png"); While underneath, slimdx.lib was screaming through the kernel, calling CreateDXGIFactory1 and D3D11CreateDevice , and making sure the HRESULT errors bubbled up as proper .NET exceptions. The project was maintained by a handful of heroes: Mike "promit" Popoloski, Josh "the secret weapon" Petrie, and others. They had to reverse-engineer undocumented driver behaviors and rewrite C++ templates into C# generics by hand.
