Я автор SharpDX, тому моя порада буде упереджена, але хотілося б хоча б відповісти на деякі ваші занепокоєння.
Щодо документації на SharpDX, поточний стан дуже обмежений, оскільки я до цього часу працюю над тим, щоб довести весь API DirectX, доступний з .NET та нової ОС Win8. Коли я закінчую цю справу, я працюю над створенням повного веб-сайту та деяких статей, щоб пояснити ключові поняття SharpDX, і як ви можете отримати найкраще від цього. Крім того, майте на увазі, що цей проект в основному полягає у залученні DirectX до .NET, тому це все ще API низького рівня. Тож вимагає, щоб ви трохи занурилися в поведінку API C ++, щоб зрозуміти, як він працює. На щастя, майже кожен метод у SharpDX відображає єдиний метод в API DirectX, тому легко перевірити, як використовувати метод, перевіривши DirectX API. Система документації, яка буде доступна для SharpDX 2.
Чи готовий SharpDX використовувати для розробки гри? Словом, так.
Перш за все, мене взяла на роботу японська компанія для участі у розробці нового 3D-двигуна в C #, і ми використовуємо SharpDX для бекенда візуалізації в Windows.
По-друге, я отримав багато приватних листів від розробників від компаній, які використовують SharpDX для розробки мультимедійних додатків (починаючи від ігор, редактора рівнів, онлайн-публікацій фотографій ... тощо). Деякі з цих клієнтів досить великі (на жаль, я не можу їх навести).
Нарешті, деякі публічні проекти з відкритим кодом використовують (або збираються використовувати) SharpDX для свого основного рендеринга. Наприклад, Delta Engine вже використовує SharpDX для візуалізації Direct3D11 (це буде доступно і для Win8). Майбутній проект ANX (з відкритим вихідним кодом XNA правонаступник) також використовує SharpDX для рендеринга, геймпадов і аудіо управління.
Але SharpDX - це лише крок на шляху побудови ігрового двигуна, а потім ігор. Оскільки API низького рівня, ви не можете сподіватися, що вони матимуть такі самі функції високого рівня, до яких ви звикли з такою рамкою, як XNA. Але з мінімальними рамками ви могли б зробити багато речей.
Крім того, ви можете розглянути можливість використання добре створеного продукту, як Unity, для розробки портативних ігор в C #.