2010-02-25 11 views
5

是否有任何缺點使用ModelVisual3D超過Model3DGroup的。資源/性能影響可能會有多大?ModelVisual3D VS Model3DGroup

ModelVisual3D給了我比Model3DGroup更多的東西,但AFAIK可以用Model3DGroup完成的所有事情都可以用ModelVisual3D完成。

那麼爲什麼不只是總是使用ModelVisual3D?

回答

5

答案是肯定的。具有許多ModelVisual3ds將比使用Model3D組慢幾個數量級

我的理解是ModelVisual3D更類似於UIElement,即更重的重量級對象。 MSDN說約ModelVisual3d

「提供所有可視對象通用的服務和屬性,包括命中測試,座標轉換和邊界框計算。」

所以,如果你想要場景中的100個可點擊的3d物體,你需要100 ModelVisual3d元素。

Model3DGroup(以及GeometryModel3D)另一方面是Model3D - 3d模型的構建塊。單個Model3D可以作爲幾個ModelVisual3Ds的內容出現。 Model3DsModelVisual3D更輕量。

如果您想從積木(如樂高)構建3D模型,您可以定義若干GeometryModel3Ds,然後使用Model3dGroup將它們組合在一起。

是的,班級的命名非常混亂,我認爲Daniel Lehenbauer對於普通人來說沒有任何亮點。

+1

我也有過「基準測試」。在一個場景中有1000個ModelVisual3ds運行非常緩慢。如果您在Model3DGroup中使用1000 GeometryModel3D,它將運行得非常順利 – Schneider 2012-01-19 07:15:06

相關問題