![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
osg
文章平均质量分 51
Scarlett_OHara
这个作者很懒,什么都没留下…
展开
-
osg杂记一:osg::MatrixTransform和osg::PositionAttitudeTransform异同
osg::PositionAttitudeTransform继承于osg::Transform, 主要作用是提供模型的位置变换、大小缩放、原点位置的设置以及坐标系的变换。osg::MatrixTransform也继承于osg::Transform. 主要作用是负责场景中的矩阵变换、矩阵的运算以及坐标系变换。osg::MatrixTransform和osg::PositionAtti原创 2017-03-04 16:27:03 · 3358 阅读 · 0 评论 -
三维坐标要建一个4*4的矩阵?平移 旋转 缩放
移植不知道三维物体的旋转平移缩放和矩阵的关系。找到这篇文章借鉴一下。转自:https://blog.csdn.net/ALLENJIAO/article/details/80348362怎么平移一个三维空间中的点我们应该怎么平移一个三维空间中的点呢?答案很简单,我们只需要对这个点的坐标中的每个分量(x,y,z)和对应轴上的平移距离相加即可。例如,点p1(x1,y1,z1)在X轴Y轴...转载 2019-05-23 19:12:12 · 3643 阅读 · 0 评论 -
VS2013+Win10+osgEarth2.9+osg3.4.0编译
现在来记录一下这次编译结果和编译需要注意的地方,以供之后查阅和大家学习。在分享之前首先要给没有编过的同学们说不要怕编译osg,其实它并不复杂。我的编译环境是VS2013,64位系统,QT用的是5.3.0. 如果你的电脑是新安装的VS2013,建议先去microsoft官网下载MultibyteMFC library for VS2013。否则在编译过程中会出现找不到mfc****.lib的错误。一...原创 2018-06-08 15:28:57 · 3890 阅读 · 0 评论 -
图形学习记录(不断添加ing)
背面剔除(CullFace):https://blog.csdn.net/wangdingqiaoit/article/details/52267314关于背面消影和深度测试区别:https://blog.csdn.net/waitforfree/article/details/26286625转载 2018-06-06 10:39:08 · 222 阅读 · 0 评论 -
osg_跟踪物体
跟踪物体在osgEarth里面挺简单,直接setTetherNode. osg里暂时有哪些方法不知道,暂时写成这样if (ea.getKey() == 'm' || ea.getKey() == 'M') { om->setUpdateCallback(new osg::AnimationPathCallback(createPath(), 0.0, 1.0)); osg::ref_原创 2018-01-27 16:09:40 · 1283 阅读 · 0 评论 -
osg_输出场景中的顶点
事实上不仅是绘制的图形有顶点,模型也是有顶点的接下来用visitor取顶点,visitor和回调有所区别的是visitor是直接调用,不需要开始渲染就可以完成计算。class VertexExtractor : public osg::NodeVisitor{public: osg::ref_ptr extracted_verts; VertexExtractor() : osg:原创 2018-01-27 16:07:54 · 1688 阅读 · 2 评论 -
osg_操作器、碰撞检测、上楼梯篇
一. 操作器OSG经常用到的自带操作器为TrackBall, osgEarth经常用到的自带操作器为EarthManipulator自己要写操作器应继承于osgGA::CameraManipulator流程:1. 设置自定义操作器 2. viewer在帧绘制时候取操作器控制的矩阵,(矩阵控制一般重载getMatrix()和getInverseMatrix()函数),然后更新came原创 2018-01-27 15:59:12 · 2629 阅读 · 1 评论 -
osg中的雾效
经过一番实验,要实现地球的雾效要用shader的方法,参考osgEarth_shadercomp例子。并且雾效必须挂在根节点下才有效。这是可能会发生HUD等文字在雾效之后全部变成矩形,说明被影响了,要让其不被影响,解决方案是创建一个和rootNode同级别的节点进行这些文字的挂载。还有地球上雾效实现后可能会发生场景中模型没被雾效化,这是还是要用到osgFog单独对模型做一次雾效。原创 2018-01-04 15:32:54 · 1007 阅读 · 1 评论 -
osg报错_BLOCK_TYPE_IS_VALID(pHead->nBlockUse)的原因及解决办法
在用D3DX写程序,遇到了一些问题,_BLOCK_TYPE_IS_VALID(pHead->nBlockUse是其中的一个,后来在网上查了一下,得到相关信息,特记录一下,以备查看。 问题产生原因: 1.内存泄漏;所以当程序退出时,系统会收回分配的内存,于是调析构函数,由于内存已被错误地释放,于是就会出现“Debug Assertion Failed”的错原创 2017-08-17 10:26:06 · 1272 阅读 · 0 评论 -
编译osgCal心得,以及cmake使用
网上很多关于编译osgCal的帖子都是正确的,这里记录一下遇到的具体问题。Cal3d源码我已经上传到下载频道里的。将osgCal下的CMakeList.txt拖入到Cmake图形界面后,可以在osgCal这个文件夹里新建一个文件夹,在where to build the binaries填入这个路径,点击Configure就可以了。等一会儿它会报错,这是再按照网上的帖子那样填入正确的CAL原创 2017-05-26 14:49:08 · 775 阅读 · 0 评论 -
OSG例子简介
OSG中的示例程序简介分类: OSG2011-05-21 10:07510人阅读评论(0)举报1.example_osganimate一)演示了路径动画的使用(AnimationPath、AnimationPathCallback),路径动画回调可以作用在Camera、CameraView、MatrixTransform、PositionAttitudeTransf转载 2017-05-24 15:51:45 · 2176 阅读 · 0 评论 -
读OpenSceneGraph快速入门指导(Paul Martz著王锐钱学雷译)有感
这个的确时非常基础的入门书籍,而且讲的非常清楚。我来总结一下对我自己的知识备忘录。你需要:OSG源码、 OpenThreads(以获得多线程支持)、第三方支持(libTIFF、libPNG等)一些简单的命令:osgviewer -helposgviewer --clear-color 1.0,1.0,1.0,1.0 cow.osg (设置背景颜色)osgviewer --samples...原创 2019-06-17 12:03:03 · 959 阅读 · 1 评论