我应该使用 WPF 还是 SlimDX?
这是我想做的:我想绘制几何图元,也许还有某种形式的3D图形和图表。我还希望能够自由移动相机。我想在 WPF 或 Windows 窗体窗口中完成所有这些操作,甚至可能渲染为图像。最后,我希望能够以相当直接的方式实现这一目标。
那么,你觉得怎么样?为此,您会推荐哪种框架?哪一个更容易使用?
Here's what I want to do: I want to draw geometric primitives and maybe some form of 3D graphs and charts. I also want to be able to freely move the camera around. I want to do all this in a WPF or Windows Forms Window or maybe even render to an image. And finally, I want to be able to achieve this in a fairly straightforward manner.
So, what do you think? Which framework would you recommend for this purpose? Which one is easier to use?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
鉴于它们都在底层使用 DirectX,我建议查看每个示例的一些示例,看看哪个感觉更适合编程。
Given that they both use DirectX under the hood I would suggest having a look at some samples for each and see which feels more comfortable to program with.
我认为 WPF 肯定更容易使用,并且有更多关于如何做事情的文档。不过,根据您显示的内容量,性能可能是 WPF 的一个问题。如果情况确实如此,您可以通过托管在 WPF 应用程序中的 D3DImage 传输 SlimDX 输出来混合这两种技术。
I think WPF is definitely easier to use and has a lot more documentation on how to do things. Depending on the amount of stuff are you displaying, performance may be an issue with WPF though. If that turns out to be the case, you can mix both technologies by piping SlimDX output through a D3DImage, hosted in a WPF application.
我可以建议您也在 GameDev.net 上询问这个问题吗?SlimDX 的作者是他们的论坛版主之一(或曾经是)。
我建议 SlimDX 对应用程序的重大更改比 WPF 少。
Can I recommend asking this also on GameDev.net - the author of SlimDX is one of their forum moderators (or used to be).
I'd suggest SlimDX would involve less major changes to an application than WPF.
WPF 可以满足您的需求。虽然 D3D 使您能够做更高级的事情,但它的级别较低。 D3D9 比更高版本更容易,但随着时间的推移,它将与 XP 一起成为遗产。 D3D10/11 非常接近硬件,因此更难上手。对于简单的商业应用程序来说,每隔几年重写 D3D 的每个新版本并不有趣。是的,如果不更新旧版本仍然可以运行,因为MS将提供向后兼容性。但是 API 文档一旦过时就会消失。
WPF satisfies your needs. While D3D enables you to do much more advanced things, it is lower level. D3D9 is easier than later versions but it will become legacy along with XP through time. D3D10/11 are much close to hardware thus are much harder to start with. Rewriting for each new version of D3D every few years is not funny for a simple business applications. Yes, the old version still runs if you don't update it, because MS will provide backward compatibility. But the API documentation will be gone when it becomes obsolete.