- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
OSG学习过程中的笔记
一 旋转其中 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-05 19:37:29| 分类: /blog/OSG | 标签: |字号大中小 订阅 场景图形采用一种自顶向下的,分层的树状数据结构来组织空间数据集,以提高渲染的效率场景图形树结构的顶部是一个根节点,从根节点向下延伸,各个组节点中均包含了几何信息和用于控制其外观的渲染状态信息。根节点和各个组节点都可以有零个(实际上是没有执行任何操作)或多个子成员。在场景图形的最底部,各个叶节点包含了构成场景中物体的实际几何信息。Osg程序使用组节点来组织和排列场景中的几何体。场景图形通常包含了多种类型的节点以执行各种各样的用户功能,例如开关节点可以设置其子节点可用或不可用,细节层次节点(LOD)可以根据观察者的距离调用不同的子节点,变换节点可以改变子节点几何体的坐标变换状态。场景图形特征:1. 提供底层渲染API中具备的几何信息和状态管理功能之外,还兼备以下的附加特征和功能:2. 空间结构:3. 场景拣选,投影面剔除和隐藏面剔除。4. 细节层次:5. 透明6. 状态改动最少化7. 文件I/O8. 更多高性能函数:全特征文字支持,渲染特效的支持,渲染优化,3d模型文件读写支持,跨平台输入渲染及显示设备的访问.场景图形渲染方式:三种遍历操作1. 更新2. 拣选3. 绘制Osg设计所采用的设计理念和工具:Ansi标准C++C++标准模板库设计模式Osg命名习惯:命名空间:小写字母开头,然后大写字母避免混淆。类:大写字母开头,每个单词首字母大写。类方法:小写字母开头,此后每个单词首字母大写。类成员:同上模板:小写字母,多个单词之间使用下划线分隔。静态量:静态量和函数的名称使用s_开头全局量:用g_开头组件:一.Osg核心库:提供了基本的场景图形和渲染功能,以及3d图形程序所需的某些特定功能实现。包括:1.osg库:包含了用于创建场景图形的场景图形节点类,用作向量和矩阵运算的类,几何体类,以及用于描述和管理渲染状态的类,3d图形程序所需的典型功能类,例如命令行参数解析,动画路径管理,以及错误和警告信息类。2.osgUtil库:osg工具库包含的类和函数,可以用于场景图形及其内容的操作,场景图形数据统计和优化,以及渲染器的创建。它还包括了几何操作的类,例如delaunay三角面片化,三角面片条带化,纹理坐标生成等。3.osgDB库:建立和渲染3d数据库的类和函数:允许用户程序加载,使用和写入3d数据库,它采用插件管理的架构。osgDB维护插件的信息注册表,并负责检查将要被载入的osg插件接口的合法性。OsgDB::DatabasePager实现应用程序从文件中读取各部分数据库信息时,在不干扰当前渲染的前提下以后台线程的方式进行。4.osgViewer库:包含了场景中视口及可视化内容的管理类。定义了一些视口类,可以将osg集成到许多视窗设计工具中,如MFC,win32等。5.osgGA库:用于改写界面事件。二.NodeKits:扩展了核心osg场景图形节点类的功能,以提高高级节点类型和渲染特效。包括如下库:扩展了Nodes,Drawables和StateAttributes。由两部分组成,NodeKit本身,以及针对.osg的封装插件库。有以下的几种NodeKits:1.osgFX库:提供了额外的场景图形节点,以便于特效的渲染,例如异向光照,凹凸贴图,卡通着色等。2.osgParticle库:提供了基于例子的渲染特效。如爆炸,火焰,烟雾。3.osgSim库:提供了仿真系统中以及渲染OpenFlight数据库所需的特殊渲染功能,例如地形高程图,光点节点,DOF变换节点等。4.osgText库:此类库提供了向场景中添加文字的得力工具,可以完全支持TrueType字体。5.osgTerrain库:提供了渲染高度场数据的能力。6.osgShadow库:提供了支持阴影渲染的框架结构。三.Osg插件:其中包含了2d图像和3d模型文件的读写功能库。四.互操作库:使得osg易于与其他的开发环境集成。为了确保osg可以在更多环境中运行,osg提供了一个与语言无关的,可供运行时访问的接口。OsgIntr
原创力文档


文档评论(0)