
osg
文章平均质量分 54
justslowdown_going
这个作者很懒,什么都没留下…
展开
-
osgVolume渲染技术剖析
使用多通道技术useMultipass该技术可以实现普通模型对象的预渲染(rtt)及体数据渲染的融合。如果场景节点存在普通模型在先对其进行rtt渲染,然后以rtt的结果颜色、深度纹理作为输入对体数据进行渲染。注意:普通节点的渲染是通过addChild(->)的方式加入,体数据的渲染是通过setLayer(–>)方式加入。具体的层次结构为VolumeScene->Volume->VolumeTile–>ImageLayer。那么系统是如何实现体数据的包围盒计算和渲染的呢?原创 2022-04-24 19:57:41 · 1486 阅读 · 0 评论 -
OSG深度应用:可渲染对象的编译、裁剪和绘制
osg中可渲染对象的剔除、包围盒计算原创 2022-02-24 17:04:18 · 856 阅读 · 0 评论 -
使用VS2017编译osgEarth2.7过程中遇到问题总结
>> xmemory0(881): error C2440: “初始化”: 无法从“std::pair<const _Kty,_Ty>”转换为 to _Objty位置:FeatureSourceIndexNode.cpp解决方法:使用osgEarth3.0版本下的“struct KeyIter : public std::iterator<std::input_iterator_tag, typename T::value_type>”替换掉2.6版本下的“stru原创 2021-01-03 16:26:13 · 1238 阅读 · 4 评论 -
基于距离场的程序建模——实现基本实体组合的平滑过渡
基于OSG的测试节点float sdSphere(osg::Vec3 p, float r){ return p.length() - r;}float sdPlane(osg::Vec3 p){ return 5.0 - p.z();}float sdEllipsoid(osg::Vec3 p, osg::Vec3 r){ float k0 = osg::componentDivide(p, r).length(); float k1 = osg::原创 2020-05-28 18:59:02 · 598 阅读 · 0 评论 -
OSG实例化渲染:Instancing
实例化的两种方式当实例数量较少时选择通过uniform数组 + gl_InstanceID方式实现;当数据较大时超过uniform限定时选择通过顶点数组的方式实现,需要用到的相关opengl函数glVertexAttribDivisor(int a, int b)。方式二:vbo + glVertexAttribDivisor { //----------------instance t...原创 2020-04-30 13:55:53 · 2306 阅读 · 1 评论 -
osg渲染至纹理(rtt),不同几何体由于blend导致相交处“黑边”
“黑边”截图:正常截图:部分源码:pStateSet->setMode(GL_BLEND, osg::StateAttribute::ON);//pStateSet->setRenderBinDetails(1000, "RenderBin");pStateSet->setRenderingHint(osg::StateSet::TRANSPARENT_BIN);...原创 2019-12-11 14:28:29 · 1356 阅读 · 0 评论 -
osg、bullet之 Cylinder比较与匹配
Cylinder 之 osg:osg::Cylinder* cylinder = new osg::Cylinder();该圆柱Cylinder的质心(0.0, 0.0, 0.0),半径和高1.0,圆柱的轴与z平行。osg::Cylinder* cylinder = new osg::Cylinder(osg::Vec3(0.0f, 0.0f, 0.0f), radius * 0.5, ...原创 2019-11-07 17:49:29 · 727 阅读 · 0 评论 -
osg ReaderWriterGLSL 着色器文件类型自动解析
osg默认支持的着色器文件后缀:supportsExtension("gl","OpenGL Shader Language format");supportsExtension("frag","OpenGL Shader Language format");supportsExtension("vert","OpenGL Shader Language format");suppo...原创 2019-10-30 11:03:56 · 449 阅读 · 0 评论 -
RenderStage::runCameraSetUp(), FBO setup failed, FBO status= 0x8cd6
RenderStage::runCameraSetUp(), FBO setup failed, FBO status= 0x8cd6Warning: RenderStage::runCameraSetUp(State&) Pbuffer does not support multiple color outputs.出现上述报错原因:osg不同版本下,glsl默认版本不同引起的。eg...原创 2019-10-27 11:18:44 · 1130 阅读 · 4 评论 -
osg渲染到纹理精度问题
osg渲染到纹理精度问题osg::Texture2D::setInternalFormat(GL_RGBA);osg::Texture2D::setInternalTextureFormat(GL_RGBA32F_ARB);原创 2019-09-24 17:45:12 · 741 阅读 · 0 评论