点云渲染与索引

1、在改进渲染帧时的模型之后,并且使用GPU渲染点云,但仍会出现在编辑时卡顿的问题,经过测试发现实时从点云中获取点云上的值是一个非常耗时的工作,现在的办法是:

1)基于视景体的范围,与场景中的osg的Goemtry的boundingbox进行比较,先这过滤一部分;

2)再查找是哪一个osg的boundingbox是与捕捉射线相交;

3)遍历这个geometry中的所有点,然后将这些点先转成屏幕坐标,然后将刚才鼠标取到的屏幕坐标与这些点的屏幕坐标比较,取最近的那个点, 即为所求。

还可以优化的解决办法:

1)现在原始点云进行网格剖分时,是定死的10米乘以10米的网格大小,因此当网格中点的个数是没法衡量的,若点少则捕捉会比较快,如果这份数据的点多则后期捕捉会慢,这个我们通过在捕捉事件中设置定时器可以记录得到捕捉所花的时间,那缓和的解决办法是可以将这个10米乘以10米改成8米乘以8米的网格大小或更小,但这样的话会导致在场景中的Geometry变多,这也是一个问题,所以我说是缓和解决办法。

2)靠谱的解决办法是对点云构建八叉树或其它数据结构,构建索引来解决问题并且仍然可以与渲染的帧时模型结合起来,统一管理,上述提到的只是在一些经验,辅助自己后期建立索引和分块分层显示。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值