ModelVisual3D vs Model3DGroup

时间:2010-02-25 10:13:44

标签: wpf modelvisual3d

在Model3DGroup上使用ModelVisual3D是否存在 缺点 。资源/性能可能会产生多大影响?

ModelVisual3D给了我比Model3DGroup更多的东西,但是AFAIK可以用Model3DGroup完成所有可以用ModelVisual3D来完成。

那么为什么不总是使用ModelVisual3D?

1 个答案:

答案 0 :(得分:5)

答案是肯定的。拥有许多ModelVisual3ds将比使用Model3DGroup

慢几个数量级

我的理解是ModelVisual3D更类似于UIElement,即更多的重量级物体。 MSDN说ModelVisual3d

“提供所有可视对象共有的服务和属性,包括命中测试,坐标转换和边界框计算。”

因此,如果您想要在场景中使用100个可点击的3D对象,则需要100个ModelVisual3d元素。

另一方面,

Model3DGroup(以及GeometryModel3D)是Model3D - 三维模型的构建块。单个Model3D可以显示为多个ModelVisual3Ds的内容。 Model3DsModelVisual3D更轻量级。

如果你想从积木(比如Lego)构建3d模型,你可以定义几个GeometryModel3Ds,然后使用Model3dGroup将它们组合在一起。

是的,班级命名令人非常困惑,我不认为Daniel Lehenbauer对普通人的话题有所了解。