关于SmoothMoves过程中,发现如下两个问题。
1.在使用骨骼动画必须占用一个drawcall,具体可以参考这个链接(作者对相关问题的回答) http://forum.unity3d.com/threads ... al-Animation/page49 , 由于骨骼动画使用到skinned meshes ,这里它是需要单独一个drawcall的。所以每个骨骼动画必须一个drawcall(就算material相同)。
2.在使用骨骼动画的时候,经常出现同一个Material却有两个drawcall,后来在官网F&Q找到了答案 http://www.echo17.com/forum/index.php?PHPSESSID=bc1d608c0d51d71e32dc53bac928d521&topic=247.msg635#msg635 ,当中有一段如下:
- Group all of your bones with the same atlas near each other in depth. For example: you could have all of your chef's bones at depths 1 through 10, then place the weapon on depth 0. This would result in two draw calls instead of three.
PS:这是我原来的观点,但经过 orange030 指点,再看了下F&Q。其实是当一个动画使用不同的材质球时,相同材质球的图片深度应该依次排序。例如:有一动画分别有4个bone。bone1,bone2,bone3用一个材质球,bone4用另外一个, depths深度的顺序应该是 bone1--1,bone2--2,bone3--3,bone4--4。这样只需要2个drawcall,但如果是bone1--1,bone2--2,bone3--4,bone4--3。这时候会增加一个drawcall,变成3个。