Недавно мы создали аналогичное приложение, в котором мы использовали C # для всего графического интерфейса и DirectX для быстрого 3D в окне. C # отлично подходил для быстрой разработки графического интерфейса, но GDI + был недостаточно быстрым для нашей программы. Поэтому мы переопределяли функцию WndPrc в Panel внутри нашего окна C # и передавали все элементы управления событиями мыши и рисования в dll C ++. Результат был плавным и позволил нам объединить все аспекты быстрой разработки приложений со сложным трехмерным бэкэндом.