容器范围数据文件生成

1、说明
容器范围数据文件用于快速且精确判断点是否在容器内的接口,或者得到容器内部的范围坐标
1.1
引擎版本2.12.5之后,可跟器材打包,命名为ContainerBit.bytes。组件会从器材目录获取

2、原理
在本地坐标系下将模型AABB包围盒按步长划分成(长/步长)*(宽/步长)*(高/步长)个方块,计算每个方块是否在容器内部,并将结果写入数据文件。
3、代码路径

4、生成方法
4.1 入口(若未找到,请检查代码是否被注释):

4.2 示例面板如下:

1、保存文件名为容器根节点名字
2、要创建Bit的物体一般为带有封闭Mesh的container节点
3、步长一般为0.003,若容器稍大或稍小,可适当调整

以下一般情况为 None,不用填:
4、需要额外计算的mesh,若容器无封闭mesh或哪里需要封口,可在container节点下自行创建Cube或Sphere等GameObject加入此项
5、自定义mesh计算中心点,若容器形状比较奇怪,生成的数据检视后不理想,可在container节点下创建个空GameObject调整位置后加入此项

点击创建并保存后,若mesh较大或顶点较多,可能需要等待稍微长的一段时间

5、检查

点击创建后待按钮响应结束,在container节点上会附加一个脚本用于检测数据是否正常

点击ShowInner后绿色的点是已写入文件的容器内部的点

6、提交

文件自动生成在U3DProject\Assets\StreamingAssets\EngineConfig\ContaineriBits目录下