好了,现在我们经过三节的介绍我们已经大体上明确了单线程模型(SingleThreaded)下 OSG 渲染遍历的工作流程。事实上无论是场景的筛选render还是绘制cull工作,最后都要归结到场景视图(SceneView)的相应实现函数中去完成,渲染器类 Renderer 只是一个更为方便和直观的公 ...
分类:
其他好文 时间:
2019-03-14 10:31:52
阅读次数:
210
OSG源码经过CMAKE编译后: 1.配置OSG环境变量: 用户变量的PATH中添加路径 C:\OSG\bin系统变量中添加新变量OSG_FILE_PATH为 C:\OSG\data 2.VS新建项目,设置相关路径变量: 新建VC++ > Win32项目 ,设置变量: C/C++ -->常规–>附加 ...
分类:
其他好文 时间:
2019-03-11 00:47:03
阅读次数:
218
多个线程开启各自事务操作数据库中数据时,数据库系统要负责隔离操作,以保证各个线程在获取数据时的准确性。 1、事务不考虑隔离性可能会引发的问题 如果事务不考虑隔离性,可能会引发如下问题: 1、脏读 脏读指一个事务读取了另外一个事务未提交的数据。 这是非常危险的,假设A向B转帐100元,对应sql语句如 ...
分类:
其他好文 时间:
2019-03-09 11:45:52
阅读次数:
211
_scene->updateSceneGraph(*_updateVisitor); 我们用了前面4节才刚刚算是完成对DatabasePager::DatabaseThread::run()函数的探究,也就是了解了osg究竟是怎么完成对数据的加载的。那么我们现在要回到DatabasePager::u ...
分类:
其他好文 时间:
2019-03-07 14:26:16
阅读次数:
194
那我们就开始处理这些事件中得到的所有的交互事件,首先我们要判断这些事件是否包含osg的退出事件,那什么情况下会触发这个退出事件呢?如果您运行过osg中example中的小例子的,聪明的你一定就会发现当按下esc时就会退出osg。所以osg中默认的退出事件就是由esc触发的。当然我们也可以通过View ...
分类:
其他好文 时间:
2019-03-02 23:51:23
阅读次数:
241
上一节我们对完成了对osg生物内部非常重要器官graphicsContext的初始化工作。这样就可保证我们场景中至少有一个graphicContext存在,不至于刚出生就面临夭折。我们根据上一节中osg代码的研究也就知道了,在我们正常使用osg时,是怎么完成对camera以及graphicConte ...
分类:
其他好文 时间:
2019-02-26 13:21:35
阅读次数:
200
详细介绍了用VS2015编译OSG环境的过程(win10+vs2015+osg3.6.3+debug+release) ...
http://bbs.vrchina.net/viewthread.php?tid=5196&extra=page%3D1 OSG碰撞检测 碰撞检测涉及到虚拟仿真的各个方面,这里我主要介绍两方面的应用: 一 判断摄像机是否与前面的物体相撞 基本原理如下图: 首先确定摄像机的旧位置和新位置(此处的新位 ...
分类:
其他好文 时间:
2019-02-01 13:02:16
阅读次数:
442
四元数是通过使用四个数来表达方位,其目的是避免旋转过程中的万向锁问题。所以在3D中,四元数的主要用途即是用于旋转。从数学意义上讲,四元数是扩展了复数系统,它使用三个虚部i,j,k,一个四元数[x, y, z, w]定义了复数w+xi+yj+zk。我们通过OSG中的Quat类来了解四元数的基本操作及应 ...
分类:
其他好文 时间:
2019-01-31 20:58:40
阅读次数:
363
这篇我们接着来看一下DrawEntityActor类,我们来看看这个继承DrawActor的类到底做了什么事。我们之前学习了Drawable对应的DrawActor,那么我们类比的来看DrawableEntity对应DrawEntityActor,这样就好理解一些。首先我们还是先来看DrawEnti ...
分类:
Web程序 时间:
2019-01-13 11:00:15
阅读次数:
212