由于unity中距离较近的2个billboard物体会动态合批,如果缩放不同,显示就有问题。还得在shader中"DisableBatching"="true"

究其原因,是因为billboard是由局部坐标系的顶点和uv中的偏移来计算中心点,再将其转换到世界空间坐标系下,进行伸展。

但是由于静态合批或者动态合批,2个局部坐标系的顶点坐标会由于合并重新构建,billboard的显示效果就有问题了。所以不如把局部坐标系的顶点坐标一开始就拷贝一份

存到uv里,那么即使是合批,顶点坐标也不会变化,就可以得到正确的伸展效果

不对,此方法行不通。每个物体使用的都是相同的局部坐标系,那么变换后的中心点也相同,,世界坐标就重了

05-11 13:48