[计算机图形学入门]12.光线追踪(二)

 使用AABB加速光追

在光追前,我们可以用一些预处理来加速接下来的光线求交:

一.uniform grid

-找到包围盒

-将包围盒分成很多小格子

-将有物体表面的小格子标记

让光线与小格子求交,避免与整个包围盒求交,若光线进入小格子且小格子标记了有物体表面,则再与物体表面三角形求交.

 格子划分数量也会影响效率.太疏太密都不好.

二.空间划分spatial partitions

物体少的地方格子大块,物体密集的地方格子小块细分.

八叉树,KD-Tree,BSP-Tree

 KD-Tree预加工(每次取一块划分的例子)

 只需要在叶子节点来储存场景三角形信息即可.

 3.object partitions&BVH(很常用)(称BVH)

以物体为单位划分结构,避免KD-Tree的空间划分带来的某物体与多个空间都有交集的情况.

-找到总包围盒

-递归低将包围盒里物体分两堆

-将两堆重新计算包围盒

-必要时停止划分

-把物体信息记录在叶子节点

但有个缺点,BVH难以将空间划分开.BVH的划分很有讲究.建议沿着长轴分两组.两组物体数量尽量接近.

参考资料Games101

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值