2013-06-26 26 views
1

我有一個場景,我有一堵牆,每當球員擊中牆壁時,它會落入棋子中。每塊棋子都是該牆的兒童棋子。每塊棋子都使用相同的材​​質。所以我嘗試了動態拼圖但它並沒有減少平局。如何減少動畫GameObjects的Drawcalls?

然後,我嘗試CombineChildren.cs它的工作和組合所有網格,從而減少drawcalls,但每當我的球員撞牆,它沒有播放動畫。

我不能從這個wiki的答案從這個鏈接check this

東陽我的遊戲對象有網呈現而不是骨骼蒙皮渲染

嘗試SkinnedMeshCombiner.cs是否有任何其他的解決方案我可以爲此做些什麼?

回答

0

所以我嘗試了動態批處理,但它並沒有減少調用 的調用。

如果您想減少移動對象的繪製調用(除非您嘗試自行實現類似的東西),動態配料幾乎是唯一的方法。 但是它有一些限制,如doc中所述。

特別:在頂點編號

  • 限制爲對象進行批處理
  • 都必須共享相同的材料(相同的材料沒有不同的情況 - 一定要檢查)
  • 沒有lightmapped對象
  • 沒有多通路渲染

一定要在文檔中列出的所有限制都滿足,T母雞動態配料應該工作。

然後我嘗試它的工作CombineChildren.cs從而 合併所有網格減少drawcalls但每當我的球員打它沒有牆不 播放的動畫。

這是因爲經過合併後,所有的GameObjects被合併爲一個唯一的。你不能獨立地移動它們。

+0

如何將GO(牆)的網格渲染器更改爲SkinnedMeshRenderer並將SkinnedMeshCombiner.cs應用於它? – hariszaman

+0

蒙皮網格渲染器在導入並蒙皮(包含裝備)時自動附加到網格。你不會得到任何東西。 – Heisenbug

+0

好吧我做了一些類似於將牆的非動畫部分合併爲一個網格的方法,將CombineChildren和牆的所有其他動畫孩子GO都修改爲每個單獨的網格,所有這些現在都與動態批處理一起進行了批處理。我現在擔心的是,它正在繪製像150K這樣的頂點。這個數量好還是我需要減少它? – hariszaman