天天看点

osg中几何体绘制笔记(一)

1、复杂的场景都是由少数的基本图元构成。我们可以通过构建简单的图元来实现复杂场景。

2、osg中定义了纯基类Drawable作为几何图元的基类。从Drawable派生出9个类,其中比较重要的为Geometry和shapeDrawable。Geometry用来绘制几何体,使用比较灵活,而shapeDrawable则是封装了定义好的几何体。

3、指定输入的顶点采用哪一种或者几种基元绘制的类为PrimitiveSet。

注:继承自Drawable类的对象(如geometry)使用显示列表的方式进行渲染。

4、OSG中所有的图元都是一维或者二维的对象,包括单个的点、直线和复杂的多边形。

5、Geom的作用为指定绘制几何体的顶点数及对数据的解析,主要包括指定向量数据、设置绑定方式、数据解析(采用何种方式来渲染几何体)

6、注:使用Geom添加几何图形时,需要逆时针顺序添加顶点,以保证背面剔除的正确(backface culling)

7、osg::shape为osg内嵌几何体的基类,不可用于剔除和碰撞检测,还可以用于预定义的几何体对象。

8、osg::shapeDrawable对象用来渲染与shape相关的几何体。继承自drawable,而drawable中定义了渲染的方式(显示列表)。

9、osg::TessellationHints预定义几何体对象的精细程度,精度越高,细分越详细。目前在内嵌几何体中,网格化类的精细度为0。

osg