随笔分类 -  OSG

opengl渲染引擎
摘要:总体介绍: 倾斜摄影就是将拍好的数据,三角网格化再附上贴图。 目前流行处理软件: Street Factory、PIX4DMapper、smart3D 后期开发平台:超图 Skyline smart3D相关资源网址:http://www.acute3d.com/s3c-viewer/ 其他相关平台: 阅读全文
posted @ 2018-03-15 17:34 南水之源 阅读(3608) 评论(0) 推荐(0)
摘要:1.cos趋近 2.pow趋近 3. 4. 5. 6. 7. 8. 阅读全文
posted @ 2018-03-12 11:24 南水之源 阅读(943) 评论(0) 推荐(0)
摘要:仔细分析: 这是需要调整相机漫游器位置了 这个函数主要是判断当前_setVP0和_setVP1是否有值 有值就从当前_setVP0视点经过一条弧线飞到_setVP1视点下 飞行过程调用的函数就是setViewpointFrame() setViewpointFrame函数返回的就是0到1之间的插值系 阅读全文
posted @ 2018-03-09 16:28 南水之源 阅读(1726) 评论(2) 推荐(0)
摘要:oe中的视角加速感觉好奇怪,就仿照谷歌方式去改了。 先看看oe原来的漫游器改变视角的接口: 这里有几个重点参数: osgEarth::optional<osgEarth::Viewpoint> _setVP0和_setVP1 :开始视点,结束视点 double _setVPAccel, _setVP 阅读全文
posted @ 2018-02-02 11:17 南水之源 阅读(1938) 评论(0) 推荐(0)
摘要:在初级版上,进行新的漫游方式调整 头文件: 实现: 阅读全文
posted @ 2018-01-24 17:07 南水之源 阅读(1220) 评论(0) 推荐(0)
摘要:由于受够了OE的漫游器,想搞个可以在全球飞行的漫游器,所以就做了一个: 请无视我的起名规则······ 类头文件:EarthWalkManipulator.h 类实现:EarthWalkManipulator.cpp 使用:main.cpp 由于是初级版,所以有些操作还是比较反人类··· 运行起来是 阅读全文
posted @ 2018-01-23 17:11 南水之源 阅读(2852) 评论(0) 推荐(0)
摘要:知识基础:osg漫游器基础 EarthManipulator是直接继承osgGA的漫游器的 所以漫游器工作方式也是和osg漫游器一样的: 1.通过handle函数进行键鼠交互 2.通过updateCamera函数更新相机姿态(姿态通过getInverseMatrix) 未完 阅读全文
posted @ 2018-01-15 14:27 南水之源 阅读(1095) 评论(0) 推荐(0)
摘要:相机矩阵变化基础:http://blog.csdn.net/popy007/article/details/5120158 osg漫游器原理:http://blog.csdn.net/csxiaoshui/article/details/51295591 osgGA::CameraManpulato 阅读全文
posted @ 2018-01-11 13:54 南水之源 阅读(1680) 评论(0) 推荐(0)
摘要:osg::ref_ptr<osg::Node> loadedModel = osgDB::readNodeFile("cow.osg"); osg::ref_ptr<osgViewer::Viewer> viewer = new osgViewer::Viewer; { osg::ref_ptr<o 阅读全文
posted @ 2018-01-05 10:18 南水之源 阅读(2689) 评论(0) 推荐(0)
摘要:在osg中添加相机动画路径请参考:http://www.cnblogs.com/lyggqm/p/8075277.html 这里的代码是在osgearth中添加相机动画路径漫游器: 有几点要注意: 1.这个dome在vs运行时,需要添加外部earth文件参数: 红色部分填写适合当前earth版本的‘ 阅读全文
posted @ 2017-12-21 10:41 南水之源 阅读(2319) 评论(2) 推荐(0)
摘要:查看osg坐标系,camare默认姿态:http://www.cnblogs.com/lyggqm/p/8073688.html 首先搞清楚osg的坐标系以及osg::camare的默认姿态 下代码面实现了,在场景里放一只牛。相机使用动画漫游器 在动画中添加三个方向来观察牛。具体三方向姿态请参考代码 阅读全文
posted @ 2017-12-20 18:32 南水之源 阅读(2537) 评论(0) 推荐(0)
摘要:参考:http://blog.csdn.net/tmljs1988/article/details/7561887 图中上半边为opengl坐标系,下半边的osg坐标系: osg::Camare的默认朝姿态 位置在 0,0,0 姿态是:向下看(Z轴负向 0,0-1),头向前(Y轴正向 0,1,0) 阅读全文
posted @ 2017-12-20 14:47 南水之源 阅读(3847) 评论(0) 推荐(0)
摘要:最简单的顶点数据更新方法是预先获取setVertexArray()所用的数组数据,并对其进行更新。但是对于开启显示列表支持的几何体(这是默认的情况)来说,有一个问题需要特别需要引起注意,即显示列表中的数据不能动态进行修改。任何对于顶点数据的修改都需要销毁和重新建立相应的显示列表。换句话说,由于Dra 阅读全文
posted @ 2017-11-17 14:05 南水之源 阅读(5041) 评论(2) 推荐(1)
摘要:观察MyReadFileCallback结构体的内容,可以发现它继承自osgDB::Registry::ReadFileCallback,并重载了一个函数readNode,分析源代码可知,该函数在osgDB::readNodeFile函数中被调用,即,在加载模型文件时,即会调用 MyReadFile 阅读全文
posted @ 2017-11-15 10:03 南水之源 阅读(2855) 评论(0) 推荐(0)
摘要:使用回调类实现对场景图形节点的更新。本节将讲解如何使用回调来实现在每帧的更新遍历(update traversal)中进行节点的更新。 回调概览 用户可以使用回调来实现与场景图形的交互。回调可以被理解成是一种用户自定义的函数,根据遍历方式的不同(更新update,拣选cull,绘制draw),回调函 阅读全文
posted @ 2017-11-14 15:18 南水之源 阅读(2764) 评论(0) 推荐(0)
摘要:osgParticle示例简单的演示了在osg中使用粒子系统的效果,用到了osgParticle库中的相关类,在osgParticle中主要有: (以下部分材料摘取自osg向场景中添加osgParticle粒子效果一文,Google了一下未找到原创作者,贴出转载地址,在此谢过原创作者~) 粒子系统( 阅读全文
posted @ 2017-11-14 14:54 南水之源 阅读(3261) 评论(2) 推荐(0)
摘要:转自:http://www.cnblogs.com/mazhenyu/p/5083026.html 在一个场景中,如果有有些物体被其他物体遮住了不可见。那么我们就不需要绘制它。在复杂的场景中,这可以减少大量的顶点和像素的处理,大幅度的提高帧率。遮挡查询就是允许我们判断一组图形在进行了深度测试之后是否 阅读全文
posted @ 2017-11-14 10:57 南水之源 阅读(3159) 评论(0) 推荐(0)
摘要:原文: https://blogs.msdn.microsoft.com/shawnhar/2009/02/18/depth-sorting-alpha-blended-objects/ 翻译:李现民 最后修改:2012-07-03 “为什么我的透明物体的绘制顺序是错误的,或者为什么它们的一部分不见 阅读全文
posted @ 2017-11-14 10:53 南水之源 阅读(659) 评论(0) 推荐(0)
摘要:enum DLL_SAMPLE_API SPARKTrackType { SPARK_TRACK_FOLLOW = 0, //!< 粒子发射出的粒子也会随着节点移动 SPARK_TRACK_STANDALONE = 1, //!< 粒子发射出的粒子不跟随节点移动 SPARK_TRACK_MAX }; 阅读全文
posted @ 2017-09-07 13:24 南水之源 阅读(1236) 评论(0) 推荐(0)
摘要:参考:http://blog.csdn.net/l_andy/article/details/51058907 添加自定义事件 首先osg在其内部通过osgGA::EventQueue类维护了一个事件队列,队列中的每一个事件都是一个osgGA::GUIEventAdapter对象(这个对象是用来存放 阅读全文
posted @ 2017-06-14 10:02 南水之源 阅读(1719) 评论(0) 推荐(0)