1场景图的基本概念解析

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
该节点放入最终的绘制列表,也称渲染图形 (render graph)。 绘制:在绘制遍历中(有时也称作渲染遍历), 场景图形将遍历由拣选遍历过程生成的几何体列 表,并调用底层OpenGL的API,实现几何体的 渲染。
百度文库一种遍历,即简单遍历,在实际中很少 用。
在每一个渲染帧中只会执行一次更新、挑 选和绘制遍历。
场景图的空间数据组织形式
场景图形采用一种自顶向下的,分层的树状数据结构来组织 空间数据集,以提升渲染的效率。下图描述了一个场景图 形,其中包含了地形,奶牛和卡车的模型。
子节点 存储了绘制对象的 几何信息
场景图的空间数据组织形式
(1)根节点(root):在场景图形树结构的顶部。 (2)组节点(group node):根节点向下延伸的
子和两把一模一样的椅子。请画出场景图的 草图。
节点类型
OSG包括了多种类型的节点,以执行各种各样的用户功能。
开关节点可以设置其子节点可用或不可用。 细节层次(LOD)节点可以根据观察者的距离调用不同
的子节点。 变换节点可以改变子节点几何体的坐标变换状态。
面向对象的场景图形使用继承的机制来提供节点的这种多样 性,所有的节点类都有一个共有的基类,同时各自派生出实 现特定功能的方法。
OSG 程序层次结构
场景图形是一种中间件(middleware),构建于 底
层API 函数之上,提供了高性能3D 程序所需的空 间数据组织能力及其它特性。
场景图形特性
场景图形除了提供底层渲染API 中具备的几 何信息和状态管理功能之外,还兼具如下的 附加特性和功能:
树状空间结构、场景挑选(投影剔除和隐藏 面剔除)、细节层次(LOD)、透明、文件 I/O、更多高性能函数。
场景图形渲染方式
一个的场景图形系统允许程序保存几何体并 执行绘图遍历,此时所有保存于场景图形中 的几何体以OpenGL 指令的形式发送到硬件 设备上。
遍历方式
简单遍历:将存储的所有几何体遍历一遍。 更新:更新操作由程序或者场景图形中节
点对应的回调函数完成。 挑选(即拾取):节点包围盒如果在视口内,则
节点。包含了几何信息和控制其外观的渲染状态 信息。 (3)叶节点(leaf node):树结构的最底部,各 个叶节点包含了构成场景中物体的实际几何信息。
根节点和各个组节点都可以有零个(有零个子成员 的组节点事实上没有执行任何操作)或多个子成员。
OSG 程序使用组节点来组织和排列 场景中的几何体
一个三维数据库:一间房间中摆放了一张桌
相关文档
最新文档