提纲
1、罕用空间数据结构
• 档次突围盒
• BSP 树
• 八叉树
• 场景图
2、各种裁剪技术
• 反面裁剪
• 视锥裁剪
• 遮挡剔除
• 档次视锥裁剪
• 入口裁剪
• 细节裁剪
3、各种档次细节(LOD,Level of Detail)技术
· 几种 LOD 切换技术
· 几种 LOD 选取技术
4、大型模型的渲染
5、点渲染
空间数据结构
1、概念
空间数据结构是将几何体组织在 N 维空间中的一系列数据结构
2、利用
场景治理、裁剪算法、相交测试、光线追踪、碰撞检测
3、留神
· BSP 树和八叉树(四叉树的三维推广)都是时机空间细分(将整个空间合成)的数据结构,他们将整个场景空间进行细分并编码到数据结构中。其中八叉树的划分是规定的,而 BSP 则大都是不规则的。· 档次突围盒不是空间细分构造(不须要笼罩整个场景),它仅将汇合物体四周的空间包围起来。
【1】档次突围盒(Bounding Volume Hierarchies,BVH)
核心思想
· 应用体积略大而几何特色简略的突围盒来近似的形容简单的几何对象,从而只须要对突围盒重叠的对象进行进一步的相交测试
· 层层相套,单个物体能够作为子节点,多个蛋物体子节点造成一个多物体子节点,最初的根节点蕴含场景中所有的物体。
如图所示:
【2】BSP 树(二叉空间宰割树,Binary Space Partitioning)
· 常用语判断对象可见性的数据结构,相似于画家算法,BSP 能够不便的将外表由后往前地在屏幕上渲染进去,特地实用于场景中对象固定不变,仅视点挪动的状况。(补充为什么)· BSP 树的构造方法
补充。。。· 轴对齐 BSP 树
K- d 树
· 多边形对齐 BSP 树
【3】八叉树
· 概念:形容三维空间的树状数据结构,每个节点示意一个正方形的体积元素,每个节点分为八个字节点,这八个子节点所示意的体积元素相加等于父节点的体积,个别中心点作为节点的分叉核心。
【4】场景图(Scene Graphs)
·概念
组织和治理三维虚构场景的一种数据结构,是一个有向无环图,由一棵一深度优先遍从来渲染整个场景的树来示意。·开源的场景图
Open Scene Graph
OpenSG