首页 > 代码库 > OSG(OpenSceneGraphic) 渲染引擎架构--整体认识

OSG(OpenSceneGraphic) 渲染引擎架构--整体认识

本文参考<<osg最长一帧>>, <<OpenSceneGraph三维渲染引擎编程指南>>, <<OpenSceneGraph三维渲染引擎设计与实践>> 整理而来,  感谢大牛们的精彩著作. 相比Ogre来说, Ogre代码很规范, 只是入门资料较少,如果能在学习之前能总体上对架构有个印象就好了, 免得盲人摸象啊, 不过,还好有OSG.

 场景相关: Node, Geode, Group, Transform, LOD, Camera,  NodeVisitor, NodeCallback


 几何图形: Drawable, PrimitiveSet, Geometry, Shape, TessellationHints, Simplifier,

                   DelaunayTriangulator, TriStripVisitor, SmoothingVisitor


 渲染相关: StateSet, Texture, Light, Material,View, ViewerBase, State, RenderLeaf,  

                   RenderBin, RenderState,SceneView, CullVisitor,Renderer,GraphicsContext,  Text


 数据加载: DatabasePager 


 平台相关: OperationThread, GUIEVentHandler



 OSG渲染引擎的核心部件:


 渲染流程1:

渲染流程2:

节点访问:


渲染状态排序1:









渲染状态树:


渲染场景视图树:







摄像机,图形设备,渲染器,场景图,场景视图之间的关系:



加载数据的过程:






两种场景结构图对比:

多线程 加载数据时所用的缓冲区:





消息事件处理流程:

图形设备抽象:




先看整体, 然后看局部, Osg的结构会了然于胸.


OSG(OpenSceneGraphic) 渲染引擎架构--整体认识