C# 3d动画-WPF或XNA
我想制作几十个基本体的3d动画 我读取每个原子的初始位置和其他参数,我需要绘制一个描述顺序的动画。我需要查看所有角度,操纵颜色和alpha通道 总之,它缩小到WPF 3D或XNA 我会选择WPF,因为我知道它,而且它是一种更容易在应用程序中添加文本框的方法。 然而,我担心WPF不会处理动画,或者如果我需要添加一些额外的位,这将是一个问题 哪一个更好?你能给我举一些如何管理数据结构和绘制动画的例子吗?(我是3d动画新手) 编辑:C# 3d动画-WPF或XNA,c#,.net,wpf,3d,xna,C#,.net,Wpf,3d,Xna,我想制作几十个基本体的3d动画 我读取每个原子的初始位置和其他参数,我需要绘制一个描述顺序的动画。我需要查看所有角度,操纵颜色和alpha通道 总之,它缩小到WPF 3D或XNA 我会选择WPF,因为我知道它,而且它是一种更容易在应用程序中添加文本框的方法。 然而,我担心WPF不会处理动画,或者如果我需要添加一些额外的位,这将是一个问题 哪一个更好?你能给我举一些如何管理数据结构和绘制动画的例子吗?(我是3d动画新手) 编辑: 如果有人对这里的代码和应用程序感兴趣,我将使用Model3DGro
如果有人对这里的代码和应用程序感兴趣,我将使用Model3DGroup从GeometryModel3D构建一个模式。因此,性能非常好。Xna将提供更轻松的3d方面调试
您可以按照winforms示例在windows窗体中托管xna,然后所有熟悉的控件(如下拉列表和按钮)都可以正常工作并与xna交互。在我目前正在处理的项目中,我们使用WPF和xna进行三维渲染。XNA内容是从WPF应用程序中使用的,因此将这两种内容结合使用也没有问题 如果你有一个简单的场景,我会使用WPF进行3D渲染,因为我喜欢它给你的抽象。您只需将对象添加到场景中,设置一些摄影机和灯光,其余的将为您处理。我们将WPF用于包含多达500个圆柱体的可视化编辑器,不会出现任何性能问题。我们遇到的一个性能问题是,从场景中添加/删除对象需要很长时间。所以WPF不是一个很好的选择,如果这是你需要经常做的事情 但是,如果您有更复杂的需求,或者如果应用程序对性能至关重要,我会选择XNA来更接近这一点。它为您提供了一种更“经典”的、类似OpenGL的渲染方法 总结如下: WPF:
- 简单易用
- 很好的抽象
- 总体性能正常
- 添加/删除对象时性能不佳
- 接近金属
- 好成绩
- 如果你习惯了,感觉更像OpenGL
- 可与WinForms和WPF一起使用
我们在WPF方面使用的一个资源就是这个主题。我们现在用的是他图书馆的资料。这让我们很快就开始了,但我们遇到了一些问题,所以我建议大家要小心。然而,他的网站上的东西值得一看。
如果您不确定,那么毫无疑问应该使用XNA对象来绘制图形。WPF将为您提供按钮和文本,而这反过来又是XNA的一大难题。是否有一个很好的示例,说明如何构造应用程序以使用照相机等绘制n个对象?可以添加和删除对象,但可能会添加/删除10-20个对象。添加/删除数百个项目所需的时间比我们希望的要长,因此打开场景并不快。