(2938843375)。\/我们都知道UE4有个刷植被地表物体的功能,也就是所谓的 InstanceFoliage 如果仔细看过文档的应该还知道,目前UE4有两种实现Foliage的方法,一种是InstanceStaticMeshComponent,另一种是HierarchicalInstancedStaticMeshComponent。经验丰富的美术或者TA会知道 HISM可以支持不同LOD不同的消失距离,但是如果你想继续了解,这个原理是啥?怎么实现的?对性能有什么影响?怎么调参数?抱歉,你找不到相关的文档。。
总的来说:HISM就是UE4造出来用树状的数据结构管理场景中Instance 数据的一种树状数据结构体。 毕竟HISM主要是拿来做植被,几千个instance的管理,高效率的剔除还是挺重要的,从数据结构的组织形式上来看,HISM和kdtree有类似之处,都是在xyz三个轴中选择能尽量均分数据点(instance的物体的坐标)的分割平面。不过一般来说KDtree是二分构造结点,HISM的树型结构可以选择branching factor而且默认是16.猜测这样的设计应该是为了应对植被海量的instance,节省每帧剔除计算的时间。