我有一个应用程序,我使用SharpDX来渲染模型,还有一个简单的UI来与所述模型进行交互。问题是,每当我与UI交互时,SDX渲染就会停止。
我制作了一个简单的应用并记录了一个gif来显示问题:http://i.imgur.com/F1XygMS.gif
我完全按照他们提供的示例应用程序制作循环,并使用“Application.DoEvents()”。对我来说,逻辑解决方案是使用多线程。但我尽可能地避免在DX上进行多线程处理,并且还会降低性能。那么这个问题的最佳解决方案是什么?
编辑:试图在分离的线程上运行DX内容。正如所料,如果我与UI交互,渲染不会冻结,但我现在可以看到为什么不推荐它。首先,性能从60 fps下降到30 fps,而且它似乎也随机崩溃。所以这不是一个解决方案。