![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
OSG
TheDeaf
这个作者很懒,什么都没留下…
展开
-
OSG 路径动画学习
1、动画的实现方法:通过设置回调函数使得节点实现按原创 2014-09-22 16:33:33 · 4437 阅读 · 1 评论 -
osg自定义操作器实现视图缩放
在osg里自己实现操作器,目标是实现绕某中心点旋转,能够支持平移视图,缩放视图。现在记录一下缩放视图的实现方法。首先操作器是从osg标准操作器osgGA::StandardManipulator继承下来的。然后透视方式是采用的平行投影。放大缩小视图就是修改投影矩阵的窗口大小,如果投影矩阵窗口很大,就相当与在很大的窗口来看,效果就是缩小视图,相反就是放大视图。在缩小放大视图的过程里,想让视图原创 2015-05-27 20:28:07 · 5937 阅读 · 6 评论 -
osg 不同节点间的碰撞检查
目标是,视图中有很多节点,当两个节点间有碰撞,那么能够检测出来。(其中不存在运动模型)问题简化为检查两个节点是否碰撞。解决思路是首先判断两个节点的包围盒(对象比较细长,不适合用包围球)是否有相交,如果没有相交,那么这两个节点肯定没有碰撞。如果包围盒有相交,然后用第一个节点上所有线段构成相交测试器(osgUtil::IntersectVisitor)与第二个节点进行相交测试,如果有相交,那么原创 2015-06-03 17:51:51 · 3762 阅读 · 1 评论 -
osg 两个面求交线
面用osg::Matrix 来表示。osg::Vec3 ptOri = osg::(0,0,0) * mat;(面的原点)osg::Vec3 vecX = mat.getRotate() * osg::X_AXIS ;(X轴)osg::Vec3 vecY = mat.getRotate() * osg::Y_AXIS ;(Y轴)要求两个面的交线,首先要判断两个面是原创 2015-07-13 15:37:32 · 2604 阅读 · 2 评论 -
osg 反走样学习
走样的定义:在光栅图形显示器上绘制非水平且非垂直的直线或多边形边界时,或多或少会呈现锯齿状或台阶状外观。这是因为直线、多边形、色彩边界等是连续的,而光栅则是由离散的点组成,在光栅显示设备上表现直线、多边形等,必须在离散位置采样。由于采样不充分重建后造成的信息失真,就叫走样(aliasing)。osg里面可以使用多重采样来解决这个问题。就是这个函数osg::DisplaySettings原创 2015-08-07 18:03:18 · 1658 阅读 · 0 评论 -
osg 自动漫游
介绍两种漫游方式,都是操作器的方式,但是都有所不同。第一种为节点跟踪漫游器(NodeTrackerManipulator),主要是当前视点跟随这个节点的包围盒中心点,所以只要设置这个节点一个路径动画,那么当前视点就跟着节点一起漫游了。第二种为路径漫游器(AnimationPathManipulator),主要是提前设置路径(AnimationPath),可以设置这个路径上的每个位置上的时间原创 2015-07-22 17:38:49 · 3554 阅读 · 2 评论 -
osg 默认光源设置
前一篇文章并没有解决好问题,原因是设置完后,效果不好,最后仔细研究后修改了解决办法:只保留默认光源,但是默认光源的位置是在右上角,同时设置默认光源的环境光,这样即使这个面没有正对着默认光源也不是暗的,原来试过,设置的都是1.0,1.0,1.0,1.0,导致整个场景都亮的分不清模型边界了,还以为不是设置这个,原来是由于设置的太亮了,结果饶了个大圈子(额外加光源)。关键代码如下:原创 2015-08-17 18:02:14 · 5017 阅读 · 0 评论 -
osg 添加多光源
对应绘制面的时候,有法向设置,默认情况下当你正对着这个面的时候,这个面很亮,光照的反射效果很好,但是如果这个面没有正对着你,那么这个面就会比较暗。为了使没有正对着你的时候,这个面也不是很暗,我这里的解决办法是添加多个光源,(还可以自己写漫反射来解决)原创 2015-08-10 18:08:15 · 3458 阅读 · 0 评论 -
osg 自己写地面操作器
地面操作器,继承自osg自身的轨迹球操作器(osgGA::OrbitManipulator),参考osgEarth的操作器的实现。特性:放大缩小视点始终在指定的地面高度上。(旋转中心点一直在那个高度的平面上)地面始终与视线平行,即在操作过程中地面上的物体不会歪。放大到指定的视线距离后,距离不再放大;(即距离地面,实际上是距离视点一定距离后不再升高,改为后退)。缩小到一定距离原创 2016-02-29 16:47:17 · 4547 阅读 · 5 评论