mapvision
简介
场景视野
一些说明:
- FMapVisionBase/MapVisionBase是基于ffi实现的;FMapVisionBaseNotffi/MapVisionBaseNotffi是不使用ffi实现的;
ffi版本实现时几个不利的地方:
-
由于使用者需要从脚本层向ffi登记回调函数,为了减少ffi调用脚本层所登记的回调函数的次数,遍历视野时需要构造视野里的实体数组;非ffi版本中则不需要这么处理;
-
由于脚本层只能将实体对象的引用记录在ffi层(比如handle_id),ffi层调用脚本层回调函数时,脚本层回调函数需要将实体对象的引用还原为实体对象;非ffi版本中则不需要这么处理;
-
ffi版本中,相同情况下,获取实体列表后再遍历,比将回调函数扔给ffi进行遍历快但是相对浪费内存(ffi层调用脚本回调效率低,应该减少调用次数)