[发明专利]基于GPU的构建BVH树并行光线追踪方法有效
申请号: | 201210441051.9 | 申请日: | 2012-11-07 |
公开(公告)号: | CN103021018A | 公开(公告)日: | 2013-04-03 |
发明(设计)人: | 吴哲夫;虞鸿;何熊熊;陈滨 | 申请(专利权)人: | 浙江工业大学 |
主分类号: | G06T15/06 | 分类号: | G06T15/06 |
代理公司: | 杭州天正专利事务所有限公司 33201 | 代理人: | 王兵;黄美娟 |
地址: | 310014 浙*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种GPU上的并行构建BVH树进行光线追踪方法,属于计算机图形学领域。图形学中有些在传统CPU上的串行计算方法已经逐渐转移到采用拥有强大并行计算能力的GPU来处理。本发明的方法为:应用GPU并行特性进行BVH空间划分的数据结构设计;采用SAH机制并行划分空间;利用GPU并行计算射线与图形元相交信息,从而提高光线追踪效率。本发明能够在GPU处理器架构上并行高效地构建输入3D模型的高质量BVH空间划分结构,其效率要比传统CPU串行优化指令SIMD高。特别是在动态光线追踪的情形下,其加速效率要远高于目前比较流行的KD-Tree空间划分方法。 | ||
搜索关键词: | 基于 gpu 构建 bvh 并行 光线 追踪 方法 | ||
【主权项】:
GPU上构建BVH树并行光线追踪方法,其步骤为:1)读取3D场景模型,设置三角形的模型图形元,这些数据存储在GPU显存中;2) 创建一个动态增长存储BVH节点的空间;3) 根据模型图形元,分别求X轴、Y轴和Z轴的跨度,并且求出最大值,以这个最大值的坐标轴使用SAH机制划分空间;4) 判断由步骤3)分割的子节点当中的三角形数目是否大于1,若大于1返回到步骤3),反之下一步;5) BVH‑tree构造完毕,输出线性结构BVHlist数组;6)根据视点和投影面构造射线;7)构造一个BVH元素的堆栈,声明变量stackoffset=0;8)取当前射线与当前所指BVHlist节点做相交测试;9)如果当前射线与这个BVH节点不相交,而且如果stackoffset为0,表明当前光线没有与场景相交,结束当前射线的光线追踪;反之stackoffset大于0,那么stackoffset减1,并且把当前节点设置为栈中偏移量为stackoffset的节点,转移到步骤8);如果当前射线与这个BVH节点相交转移到步骤10);10)判断该BVH节点中是否有图形元三角形,如果有,说明当前射线与一个BVH树的叶子节点正方体有相交,并继续测试该射线与节点内的三角形是否相交,如果相交就把当前的节点和三角形序号交给该射线。同时若stackoffset等于0,则结束当前射线的光线追踪;若stackoffset大于0就减1, 并且把当前节点设置为栈中偏移量为stackoffset的节点,转移到步骤8)。如果BVH节点没有图形元三角形就转移到步骤11);11)根据当前节点的右节点标记变量,把右节点序号放入栈中,然后stackoffset 加1,把当前节点设置为之前节点的左节点,转移到步骤8)。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江工业大学,未经浙江工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201210441051.9/,转载请声明来源钻瓜专利网。
- 上一篇:电动工具
- 下一篇:星载可重构协处理单元