OSG学习过程中的笔记.pdf
OSG学习过程中的笔记--第1页
一旋转
其中trans-setMatrix(osg::Matrix::translate(0,0,20));就是用来平移物体,这
个表示象Z轴正方向平移也就是屏幕正上方。
osg::Matrix::scale(0.5,0.5,0.5)表示缩放的比例,也就是原来物体的一般大小
osg::Matrix::rotate(osg::DegreesToRadians(90.0),0,1,0)该方法参数分别表示
角度,x,y,z当xyz其中有值是那么物体会绕着物体旋转。当角度为正值的时候,物体绕着
x,y,z箭头指向向右旋转,否则物体绕着x,y,z箭头指向向左旋转
osg笔记(一)
2011-07-0519:37:29|分类:OSG|标签:|字号大中小订阅
场景图形采用一种自顶向下的,分层的树状数据结构来组织空间数据集,以
提高渲染的效率
场景图形树结构的顶部是一个根节点,从根节点向下延伸,各个组节点中均
包含了几何信息和用于控制其外观的渲染状态信息。根节点和各个组节点都可以
有零个(实际上是没有执行任何操作)或多个子成员。在场景图形的最底部,各
个叶节点包含了构成场景中物体的实际几何信息。
Osg程序使用组节点来组织和排列场景中的几何体。
场景图形通常包含了多种类型的节点以执行各种各样的用户功能,例如开关
节点可以设置其子节点可用或不可用,细节层次节点(LOD)可以根据观察者的
距离调用不同的子节点,变换节点可以改变子节点几何体的坐标变换状态。
场景图形特征:
OSG学习过程中的笔记--第1页
OSG学习过程中的笔记--第2页
1.提供底层渲染API中具备的几何信息和状态管理功能之外,还兼备以下
的附加特征和功能:
2.空间结构:
3.场景拣选,投影面剔除和隐藏面剔除。
4.细节层次:
5.透明
6.状态改动最少化
7.文件I/O
8.更多高性能函数:全特征文字支持,渲染特效的支持,渲染优化,3d模
型文件读写支持,跨平台输入渲染及显示设备的访问.
场景图形渲染方式:
三种遍历操作
1.更新
2.拣选
3.绘制
Osg设计所采用的设计理念和工具:
Ansi标准C++
C++标准模板库
设计模式
Osg命名习惯:
命名空间:小写字母开头,然后大写字母避免混淆。
类:大写字母开头,每个单词首字母大写。
类方法:小写字母开头,此后每个单词首字母大写。
类成员:同上
模板:小写字母,多个单词之间使用下划线分隔。
静态量:静态量和函数的名称使用s_开头
全局量:用g_开头
组件:
一.Osg核心库:提供了基本的场景图形和渲染功能,以及3d图形程序所需
的某些特定功能实现。包括:
OSG学习过程中的笔记--第2页
OSG学习过程中的笔记--第3页
1.osg库:包含了用于创建场景图形的场景图形节点类,用作向量和矩阵运
算的类,几何体类,以及用于描述和管理渲染状态的类,3d图形程序所需的典
型功能类,例如命令行参数解析,动画路径管理,以及错误和警告信息类。
2.osgUtil