[osg-users] Triangle mesh looks like a silhouette with no surface detail.
Hi, I've been building a Delta3D application that uses OSG as the rendering module. It's pretty simple, as all it is meant to do is display some 3D triangle meshes and allow them to be moved around. Up until now, I've just been importing 3ds files through the Delta3d api, which worked well enough but was limited to 2^16 vertices. I wrote a class to make a Geode from .ply files, but they end up looking a little weird. Geometrically, they are correct. The problem is that they end up looking like silhouettes. No surface features can be seen. I would guess this is because I set the Geometry with one colour and had it set BIND_OVERALL. All the DrawElements on the mesh are osg::PrimitiveSet::TRIANGLES. Basically I'm trying to figure out how to make the faces subtly stand out a little more, without just picking random colours for each face. I would appreciate suggestions. Thanks very much, Cheers, Ray -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=20853#20853 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Setting fading property to node
Hi, I tried with the following code to get fading effect from the node to be rendered . I don't get the effect. I wud like to know where I do mistake. . . osg::stateSet* statSet=node-getOrCreateStateSet(); statSet-setMode(GL_LIGHTING, osg::stateAttribute::OFF); statSet-setMode(GL_BLEND, osg::stateAttribute::ON); statSet-setRenderingHint(osg::stateSet::TRANSPARENT_BIN); osg::ref_ptrosg::Material material=new osg::Material; material-setAlpha(osg::Material::face::FRONT_AND_BACK,0.5); statSet-setAttribute(material.get()); . ... Thank you! Cheers, Akilan -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=20859#20859 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Texture2D::copyTexImage2D
Hi Guy, I can confirm that this is not a correct solution - as copying a different size portion of screen certainly isn't what the Texture2D::copyTexImage2D() is asking to do. If not texture object is allocated and NPOT is not supported then probably the right thing to do is recreate a texture object which is the power of two then use glCopySubImage of the correct size. However, even this really isn't ideal as the texture coords will be the wrong size. Perhaps one simple can't solve the problem using osg::Texture2D as which ever way you solve it the tex coords will be wrong. What about attaching an osg::TextureRectangle? Or ensuring the size is a valid power of two prior to calling? Robert. On Thu, Dec 3, 2009 at 6:59 PM, Guy Volckaert guy.volcka...@meggitt.com wrote: Hi, I was having problems with a resizable window that required a render target implementation (like FRAME_BUFFER). The problem only occurred on hardware that did not support NPOT textures (what can I say - I have an old graphic card!). The problem was isolated in Texture2D::copyTexImage2D() which I corrected below (enclosed between MTSI labels). Can anyone confirm that this is the correct solution? Code: inline int ComputeUpperPowerOfTwo( int s ) { static double ks_dLog2 = log10( 2.0 ); return ( 1 ( int ) ceil( log10( ( double ) s ) / ks_dLog2 ) ); } void Texture2D::copyTexImage2D(State state, int x, int y, int width, int height ) { const unsigned int contextID = state.getContextID(); if (_internalFormat==0) _internalFormat=GL_RGBA; // get the globj for the current contextID. TextureObject* textureObject = getTextureObject(contextID); if (textureObject) { if (width==(int)_textureWidth height==(int)_textureHeight) { // we have a valid texture object which is the right size // so lets play clever and use copyTexSubImage2D instead. // this allows use to reuse the texture object and avoid // expensive memory allocations. copyTexSubImage2D(state,0 ,0, x, y, width, height); return; } // the relevent texture object is not of the right size so // needs to been deleted // remove previously bound textures. dirtyTextureObject(); // note, dirtyTextureObject() dirties all the texture objects for // this texture, is this right? Perhaps we should dirty just the // one for this context. Note sure yet will leave till later. // RO July 2001. } // remove any previously assigned images as these are nolonger valid. _image = NULL; // switch off mip-mapping. // _textureObjectBuffer[contextID] = textureObject = generateTextureObject(contextID,GL_TEXTURE_2D); textureObject-bind(); applyTexParameters(GL_TEXTURE_2D,state); bool needHardwareMipMap = (_min_filter != LINEAR _min_filter != NEAREST); bool hardwareMipMapOn = false; if (needHardwareMipMap) { hardwareMipMapOn = isHardwareMipmapGenerationEnabled(state); if (!hardwareMipMapOn) { // have to switch off mip mapping notify(NOTICE)Warning: Texture2D::copyTexImage2D() switch off mip mapping as hardware support not available.std::endl; _min_filter = LINEAR; } } GenerateMipmapMode mipmapResult = mipmapBeforeTexImage(state, hardwareMipMapOn); // MTSI [20091203 guyv] // Fixed an an issue with hardware that does not support non-power-of-two textures. int tex_width = width; int tex_height = height; const Extensions* extensions = getExtensions(contextID,true); if( _resizeNonPowerOfTwoHint || !extensions-isNonPowerOfTwoTextureSupported(_min_filter) ) { tex_width = ComputeUpperPowerOfTwo(width-2*_borderWidth)+2*_borderWidth; tex_height = ComputeUpperPowerOfTwo(height-2*_borderWidth)+2*_borderWidth; } // cap the size to what the graphics hardware can handle. if (tex_widthextensions-maxTextureSize()) tex_width = extensions-maxTextureSize(); if (tex_heightextensions-maxTextureSize()) tex_height = extensions-maxTextureSize(); glCopyTexImage2D( GL_TEXTURE_2D, 0, _internalFormat, x, y, tex_width, tex_height, 0 ); mipmapAfterTexImage(state, mipmapResult); _textureWidth = tex_width; _textureHeight = tex_height; _numMipmapLevels = 1; // ~MTSI [20091203 guyv] textureObject-setAllocated(_numMipmapLevels,_internalFormat,_textureWidth,_textureHeight,1,0); // inform state that this texture is the current one bound. state.haveAppliedTextureAttribute(state.getActiveTextureUnit(), this); } Cheers, Guy -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=20833#20833 ___ osg-users mailing list osg-users@lists.openscenegraph.org
Re: [osg-users] ScreenCaptureHandler and HUD cameras
Hi JS, The ScreenCaptureHandler should just attach callbaks to the salves+master cameras that rendering to a graphics context, and aren't a RTT Camera. Camera's in the scene graph are nested within viewer cameras so won't need callbacks as well. Robert. On Thu, Dec 3, 2009 at 9:15 PM, Jean-Sébastien Guay jean-sebastien.g...@cm-labs.com wrote: Hi Robert, I was using osgViewer::ScreenCaptureHandler today and noticed that it will add the capture callback to scenegraph cameras too (i.e. HUD cameras that are in the scene graph). I think this is a mistake. I think it should only add the callback to viewer cameras (either main or slave), i.e. cameras that have a non-null view pointer. What do you think? If you think there might be a valid use case for adding the callback to in-scenegraph cameras, perhaps we can add a parameter to the addCallbackToViewer so the app can decide whether it wants this or not. I can make the change (whatever you decide) but I just wanted to know your opinion. Thanks in advance, J-S -- __ Jean-Sebastien Guay jean-sebastien.g...@cm-labs.com http://www.cm-labs.com/ http://whitestar02.webhop.org/ ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Problems installing osg on windows
Hi Anthony, Looks like you have an issue with your install GLU library. Robert. On Mon, Nov 23, 2009 at 9:08 AM, Anthony Face litllechic...@hotmail.com wrote: Hi, I am triing to install osg on windows xp machine. I have thoses problèmes of convertion: Tessellator.cpp .\Tessellator.cpp(44) : error C2664: 'gluTessCallback' : impossible de convertir le paramètre 3 de 'GLU_TESS_CALLBACK' en 'void (__stdcall *)(void)' Cette conversion requiert reinterpret_cast, un cast de style C ou un cast de style fonction .\Tessellator.cpp(45) : error C2664: 'gluTessCallback' : impossible de convertir le paramètre 3 de 'GLU_TESS_CALLBACK' en 'void (__stdcall *)(void)' Cette conversion requiert reinterpret_cast, un cast de style C ou un cast de style fonction .\Tessellator.cpp(46) : error C2664: 'gluTessCallback' : impossible de convertir le paramètre 3 de 'GLU_TESS_CALLBACK' en 'void (__stdcall *)(void)' Cette conversion requiert reinterpret_cast, un cast de style C ou un cast de style fonction .\Tessellator.cpp(47) : error C2664: 'gluTessCallback' : impossible de convertir le paramètre 3 de 'GLU_TESS_CALLBACK' en 'void (__stdcall *)(void)' Cette conversion requiert reinterpret_cast, un cast de style C ou un cast de style fonction .\Tessellator.cpp(48) : error C2664: 'gluTessCallback' : impossible de convertir le paramètre 3 de 'GLU_TESS_CALLBACK' en 'void (__stdcall *)(void)' Cette conversion requiert reinterpret_cast, un cast de style C ou un cast de style fonction I dont know how to resolve it and i need help... Thank you lot! Cheers, anthony -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=20110#20110 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] osgwidgetinput crash
Hi community, I am experiencing crashes on half of the osgwidget examples in the code from the trunk. Anyone with the same experience? OS: Windows XP NVIDIA GeForce GTX 260 Nick http://www.linkedin.com/in/tnikolov ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Triangle mesh looks like a silhouette with no surface detail.
Hi Ray, My best guess is that you've got the indices of DrawElementUInt(GL_TRIANGLES) wrong. Beyond this there really isn't much I or other can recommend as we don't have the code in front of us. The OSG itself now has a ply plugin so why not just use this? It'll be in OSG-2.8.2 and svn/trunk. Robert. On Fri, Dec 4, 2009 at 3:42 AM, Ray Stamper vijay.ro...@gmail.com wrote: Hi, I've been building a Delta3D application that uses OSG as the rendering module. It's pretty simple, as all it is meant to do is display some 3D triangle meshes and allow them to be moved around. Up until now, I've just been importing 3ds files through the Delta3d api, which worked well enough but was limited to 2^16 vertices. I wrote a class to make a Geode from .ply files, but they end up looking a little weird. Geometrically, they are correct. The problem is that they end up looking like silhouettes. No surface features can be seen. I would guess this is because I set the Geometry with one colour and had it set BIND_OVERALL. All the DrawElements on the mesh are osg::PrimitiveSet::TRIANGLES. Basically I'm trying to figure out how to make the faces subtly stand out a little more, without just picking random colours for each face. I would appreciate suggestions. Thanks very much, Cheers, Ray -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=20853#20853 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] osgwidgetinput crash
it happens when the app can not finds the font Nick http://www.linkedin.com/in/tnikolov Sent from Devlet, Ankara, Turkey On Fri, Dec 4, 2009 at 1:08 AM, Trajce Nikolov nikolov.tra...@gmail.comwrote: Hi community, I am experiencing crashes on half of the osgwidget examples in the code from the trunk. Anyone with the same experience? OS: Windows XP NVIDIA GeForce GTX 260 Nick http://www.linkedin.com/in/tnikolov ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] GPU GLSL phong tesselation
Hi all, i am looking for a GPU GLSL geometry shader (triangle,..) phong tesselation implementation, did someone still the work? would be greate, i would like to test a new algorithm for screen space ambient occlusion. /regards adrian -- Adrian Egli ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [osgPPU] Initial support for TextureRectangle
Hi Art, attached find my latest attempt. I'll continue with rect support in other units/plugin/etc after you give go-ahead. rgds jp J.P. Delport wrote: Hi Art, Art Tevs wrote: Yes, it is the only one place, where the quad is created. The right place would be to add the multiple texture coordinates there. Yes, accesing mInputTex (or directly through getInputTextureMap() method) should be fine there. However make sure that you do this after Unit::init() call or actually after Unit::setupInputsFromParents() call. This is because the mInputTex is first correctly setted up just right after those calls. OK, I will start with this. Is it necessary to create coords per input texture, or would it be OK to always just generate two sets: one for normalised range and one for rects? This assumes that all input rectangles to a unit has the same size? No, I would create coords for every input texture, even if they are just the same in all cases. This would allow us to introduce later maybe some kind of TextureCoordinatesMatrix, which can be used to change the uv-coordinates of the screen sized quad for different input units. Not sure how one can use it, but why not (maybe for some special effects) ;) OK, will make coords per input. I will start with 0 params to createTexturedQuadDrawable as this is how it is called in all current cases. We should still then think of how the user can specify coordinates manually (maybe extra map to accompany mInputTextures?) or some transform like you said. rgds jp cheers, art -- This message is subject to the CSIR's copyright terms and conditions, e-mail legal notice, and implemented Open Document Format (ODF) standard. The full disclaimer details can be found at http://www.csir.co.za/disclaimer.html. This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. MailScanner thanks Transtec Computers for their support. osgPPU.tgz Description: application/compressed-tar ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Triangle mesh looks like a silhouette with no surface detail.
On 4/12/09 4:42 AM, Ray Stamper wrote: through the Delta3d api, which worked well enough but was limited to 2^16 vertices. I wrote a class to make a Geode from .ply files, but they end up looking a little weird. Geometrically, they are correct. The problem is that they end up looking like silhouettes. No surface features can be seen. I would guess this is because I set the Geometry with one colour and had it set BIND_OVERALL. All the DrawElements on the mesh are osg::PrimitiveSet::TRIANGLES. Basically I'm trying to figure out how to make the faces subtly stand out a little more, without just picking random colours for each face. I would appreciate suggestions. This sounds like you might have the geometry but without any normals. If this is the case you won't get any shading which can make it look flat. Cheers, /ulrich ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [osgPPU] Initial support for TextureRectangle
Hi J.P. I think this is the way how to do it. One can even go further and remove the height and width vectors in the method since we setup them directly in this method. Hmm, I wonder if this will work correctly: the screen sized quad is created in the very first call of the unit's init method. In most cases the input texture is not realized till this moment, hence texture width/height might be 0 in this case. This behavior always annoyed me, that texture width/height is 0 before it get applied to some state. So the correct width and height will only be setted up in the second frame. However try this, maybe I am wrong. cheers, art J.P. Delport wrote: Hi Art, attached find my latest attempt. I'll continue with rect support in other units/plugin/etc after you give go-ahead. rgds jp J.P. Delport wrote: Hi Art, Art Tevs wrote: Yes, it is the only one place, where the quad is created. The right place would be to add the multiple texture coordinates there. Yes, accesing mInputTex (or directly through getInputTextureMap() method) should be fine there. However make sure that you do this after Unit::init() call or actually after Unit::setupInputsFromParents() call. This is because the mInputTex is first correctly setted up just right after those calls. OK, I will start with this. Is it necessary to create coords per input texture, or would it be OK to always just generate two sets: one for normalised range and one for rects? This assumes that all input rectangles to a unit has the same size? No, I would create coords for every input texture, even if they are just the same in all cases. This would allow us to introduce later maybe some kind of TextureCoordinatesMatrix, which can be used to change the uv-coordinates of the screen sized quad for different input units. Not sure how one can use it, but why not (maybe for some special effects) ;) OK, will make coords per input. I will start with 0 params to createTexturedQuadDrawable as this is how it is called in all current cases. We should still then think of how the user can specify coordinates manually (maybe extra map to accompany mInputTextures?) or some transform like you said. rgds jp cheers, art -- This message is subject to the CSIR's copyright terms and conditions, e-mail legal notice, and implemented Open Document Format (ODF) standard. The full disclaimer details can be found at http://www.csir.co.za/disclaimer.html. This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. MailScanner thanks Transtec Computers for their support. ___ osg-users mailing list http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org -- Post generated by Mail2Forum -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=20875#20875 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [osgPPU] Initial support for TextureRectangle
Hi Art, Art Tevs wrote: Hi J.P. I think this is the way how to do it. One can even go further and remove the height and width vectors in the method since we setup them directly in this method. Hmm, I wonder if this will work correctly: the screen sized quad is created in the very first call of the unit's init method. In most cases the input texture is not realized till this moment, hence texture width/height might be 0 in this case. This behavior always annoyed me, that texture width/height is 0 before it get applied to some state. So the correct width and height will only be setted up in the second frame. However try this, maybe I am wrong. Yes, in all our code we also explicitly set the width/height to get around the initial frame problem. I've run with our code (with rects) and some of the examples and they appeared to work OK (only using UnitTexture and UnitInOut at the moment). Maybe you can just double check on your side, I'm not so familiar with all the examples. I also saw code in UnitTexture::setTexture to explicitly set the texture size by using the image of the texture, so maybe my test case does not trigger any 0 initial size problems. rgds jp cheers, art J.P. Delport wrote: Hi Art, attached find my latest attempt. I'll continue with rect support in other units/plugin/etc after you give go-ahead. rgds jp J.P. Delport wrote: Hi Art, Art Tevs wrote: Yes, it is the only one place, where the quad is created. The right place would be to add the multiple texture coordinates there. Yes, accesing mInputTex (or directly through getInputTextureMap() method) should be fine there. However make sure that you do this after Unit::init() call or actually after Unit::setupInputsFromParents() call. This is because the mInputTex is first correctly setted up just right after those calls. OK, I will start with this. Is it necessary to create coords per input texture, or would it be OK to always just generate two sets: one for normalised range and one for rects? This assumes that all input rectangles to a unit has the same size? No, I would create coords for every input texture, even if they are just the same in all cases. This would allow us to introduce later maybe some kind of TextureCoordinatesMatrix, which can be used to change the uv-coordinates of the screen sized quad for different input units. Not sure how one can use it, but why not (maybe for some special effects) ;) OK, will make coords per input. I will start with 0 params to createTexturedQuadDrawable as this is how it is called in all current cases. We should still then think of how the user can specify coordinates manually (maybe extra map to accompany mInputTextures?) or some transform like you said. rgds jp cheers, art -- This message is subject to the CSIR's copyright terms and conditions, e-mail legal notice, and implemented Open Document Format (ODF) standard. The full disclaimer details can be found at http://www.csir.co.za/disclaimer.html. This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. MailScanner thanks Transtec Computers for their support. ___ osg-users mailing list http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org -- Post generated by Mail2Forum -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=20875#20875 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org -- This message is subject to the CSIR's copyright terms and conditions, e-mail legal notice, and implemented Open Document Format (ODF) standard. The full disclaimer details can be found at http://www.csir.co.za/disclaimer.html. This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. MailScanner thanks Transtec Computers for their support. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Triangle mesh looks like a silhouette with no surface detail.
2009/12/4 Ulrich Hertlein u.hertl...@sandbox.de On 4/12/09 4:42 AM, Ray Stamper wrote: through the Delta3d api, which worked well enough but was limited to 2^16 vertices. I wrote a class to make a Geode from .ply files, but they end up looking a little weird. Geometrically, they are correct. The problem is that they end up looking like silhouettes. No surface features can be seen. I would guess this is because I set the Geometry with one colour and had it set BIND_OVERALL. All the DrawElements on the mesh are osg::PrimitiveSet::TRIANGLES. Basically I'm trying to figure out how to make the faces subtly stand out a little more, without just picking random colours for each face. I would appreciate suggestions. This sounds like you might have the geometry but without any normals. If this is the case you won't get any shading which can make it look flat. Cheers, /ulrich Try running the smoothing visitor on your model. in osgUtil/SmoothingVisitor -- http://www.ssTk.co.uk ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Animated Models
2009/12/4 J.P. Delport jpdelp...@csir.co.za Hi, Paul Martz wrote: Danny Lesnik wrote: How can I create animations within OSG models (similar to cessnafire.osg sample scene).? for example, how this file was created? Look at the OSG file in a text editor and see what nodes it uses. -Paul Delta3D also has a particle system editor that you might be able to use. jp And the blender to osg exporter does animations: http://projects.blender.org/projects/osgexport/ -- http://www.ssTk.co.uk ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [osgPPU] Initial support for TextureRectangle
Hi J.P., I've looked over your changes and they seems correct to me. I've also tested the examples and everything works fine. So I think at least for non-rect textures there is everything ok. If you tested it for rect textures and it works, then perfect. I've submitted your changes, so you can test the version from the svn. Thank you! Cheers, Art -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=20884#20884 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Animated Models
On 4/12/09 3:14 AM, Danny Lesnik wrote: And the second question: Can OSG view animated gifs as model textures? I haven't personally used this but the code is there so it should work. You probably have to start the animation manually. To do that you need to find the respective image, dynamic_cast it to an ImageStream and (if successful) call play() on that object. /ulrich ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Picking bug?
Thanks for your reply. I tried modifying LineSegmentIntersector.cpp in osgUtil but it didn't work. I went all the way and changed everything to use doubles, eg.: Code: inline void operator () (const osg::Vec3 _v1,const osg::Vec3 _v2,const osg::Vec3 _v3, bool treatVertexDataAsTemporary) { // Create local osg::Vec3d copies osg::Vec3d v1(_v1.x(), _v1.y(), _v1.z()); osg::Vec3d v2(_v2.x(), _v2.y(), _v2.z()); osg::Vec3d v3(_v3.x(), _v3.y(), _v3.z()); [...] if (treatVertexDataAsTemporary) { _intersections.insert(std::pairconst float,TriangleIntersection(r,TriangleIntersection(_index-1,normal,(float)r1,0,(float)r2,0,(float)r3,0))); } else { _intersections.insert(std::pairconst float,TriangleIntersection(r,TriangleIntersection(_index-1,normal,(float)r1,_v1,(float)r2,_v2,(float)r3,_v3))); } } I turned all floats into doubles, 0.0f's into 0.0's, all osg::Vec3's into osg::Vec3d's... I still get the same behavior. Can you please be a bit more specific regarding other alternatives I have? (bounding box, pick ray clipping...) -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=20886#20886 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [osgPPU] Initial support for TextureRectangle
Hi Art, Art Tevs wrote: Hi J.P., I've looked over your changes and they seems correct to me. I've also tested the examples and everything works fine. So I think at least for non-rect textures there is everything ok. If you tested it for rect textures and it works, then perfect. I've submitted your changes, so you can test the version from the svn. great. For my tests it is working good, but I'll also investigate further cases next week. thanks jp Thank you! Cheers, Art -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=20884#20884 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org -- This message is subject to the CSIR's copyright terms and conditions, e-mail legal notice, and implemented Open Document Format (ODF) standard. The full disclaimer details can be found at http://www.csir.co.za/disclaimer.html. This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. MailScanner thanks Transtec Computers for their support. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] osgShadow - Application crash
Hi Manish, I have integrated Chipset and no additional 3d graphics card installed . Yes, I gathered as much from the error messages that you posted. Is Software rendering is possible ? For shadows, you really need Framebuffer Objects to get any acceptable performance. I have seen some integrated chipsets that will make OSG fall back from Framebuffer Objects to pbuffers (as yours does) and then work with pbuffer but more slowly. In your case, it seems that your driver doesn't even support pbuffers. You might try upgrading your integrated chipset's driver, perhaps that will make it support pbuffers, but I doubt the performance will be acceptable. So you'll probably have to disable shadows when running on that chipset. Note that it's the application's responsibility to detect the hardware or use config files or some other mechanism to disable features that aren't supported / are too slow on the current hardware. Hope this helps, J-S -- __ Jean-Sebastien Guayjean-sebastien.g...@cm-labs.com http://www.cm-labs.com/ http://whitestar02.webhop.org/ ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Picking bug?
Hi, have you checked what the members of the TriangleIntersection struct are? I think you must make them double too, this it where we had problems in some of our code. jp Fred Smith wrote: Thanks for your reply. I tried modifying LineSegmentIntersector.cpp in osgUtil but it didn't work. I went all the way and changed everything to use doubles, eg.: Code: inline void operator () (const osg::Vec3 _v1,const osg::Vec3 _v2,const osg::Vec3 _v3, bool treatVertexDataAsTemporary) { // Create local osg::Vec3d copies osg::Vec3d v1(_v1.x(), _v1.y(), _v1.z()); osg::Vec3d v2(_v2.x(), _v2.y(), _v2.z()); osg::Vec3d v3(_v3.x(), _v3.y(), _v3.z()); [...] if (treatVertexDataAsTemporary) { _intersections.insert(std::pairconst float,TriangleIntersection(r,TriangleIntersection(_index-1,normal,(float)r1,0,(float)r2,0,(float)r3,0))); } else { _intersections.insert(std::pairconst float,TriangleIntersection(r,TriangleIntersection(_index-1,normal,(float)r1,_v1,(float)r2,_v2,(float)r3,_v3))); } } I turned all floats into doubles, 0.0f's into 0.0's, all osg::Vec3's into osg::Vec3d's... I still get the same behavior. Can you please be a bit more specific regarding other alternatives I have? (bounding box, pick ray clipping...) -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=20886#20886 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org -- This message is subject to the CSIR's copyright terms and conditions, e-mail legal notice, and implemented Open Document Format (ODF) standard. The full disclaimer details can be found at http://www.csir.co.za/disclaimer.html. This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. MailScanner thanks Transtec Computers for their support. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Setting fading property to node
Hi Akilan, statSet-setMode(GL_LIGHTING, osg::stateAttribute::OFF); [...] osg::ref_ptrosg::Material material=new osg::Material; material-setAlpha(osg::Material::face::FRONT_AND_BACK,0.5); statSet-setAttribute(material.get()); As Paul mentioned in a previous message in this thread, you need lighting ENABLED to be able to use materials. Otherwise the material has no effect. Note that setAlpha might not do what you want - it sets the alpha of ambient, diffuse, specular and emission colors. I think you'd probably just want to set the alpha of the diffuse color, something like osg::Vec4 diffuse = material-getDiffuse(osg::Material::FRONT_AND_BACK); diffuse.a() = 0.5; material-setDiffuse(osg::Material::FRONT_AND_BACK, diffuse); Hope this helps, J-S -- __ Jean-Sebastien Guayjean-sebastien.g...@cm-labs.com http://www.cm-labs.com/ http://whitestar02.webhop.org/ ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Picking bug?
2009/12/4 J.P. Delport jpdelp...@csir.co.za Hi, have you checked what the members of the TriangleIntersection struct are? I think you must make them double too, this it where we had problems in some of our code. jp Opps, yes they need changing as well. -- http://www.ssTk.co.uk ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] ScreenCaptureHandler and HUD cameras
Hi Robert, The ScreenCaptureHandler should just attach callbaks to the salves+master cameras that rendering to a graphics context, and aren't a RTT Camera. Camera's in the scene graph are nested within viewer cameras so won't need callbacks as well. I thought as much. OK, so I'll submit a fix to that. Thanks, J-S -- __ Jean-Sebastien Guayjean-sebastien.g...@cm-labs.com http://www.cm-labs.com/ http://whitestar02.webhop.org/ ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Picking bug?
Hi Fred, Simon, I turned all floats into doubles, 0.0f's into 0.0's, all osg::Vec3's into osg::Vec3d's... I still get the same behavior. Simon, why don't you submit your code changes (perhaps with a CMake switch to change the internal data type used between float and double at compile time, kind of like OSG_USE_FLOAT_BOUNDINGBOX / OSG_USE_FLOAT_BOUNDINGSPHERE... I'm sure if this is a common problem people will be glad to have it in the main OSG code base, only a CMake switch away... And then it will be easy to compare performance between the two and perhaps make the double version default if there is little/no performance difference... J-S -- __ Jean-Sebastien Guayjean-sebastien.g...@cm-labs.com http://www.cm-labs.com/ http://whitestar02.webhop.org/ ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Picking bug?
Hi J-S, Fred, Simon, This topic has arisen previously on osg-submissions, and my recommendation then was that support for double maths through the intersection code shouldn't be a compile option, but an runtime option, this way the ABI wouldn't change and you could enable it when you needed it. I still believe this is the correct route. As for whether it'll address that issues Fred is seeing I can't say. Cheers, Robert. On Fri, Dec 4, 2009 at 2:04 PM, Jean-Sébastien Guay jean-sebastien.g...@cm-labs.com wrote: Hi Fred, Simon, I turned all floats into doubles, 0.0f's into 0.0's, all osg::Vec3's into osg::Vec3d's... I still get the same behavior. Simon, why don't you submit your code changes (perhaps with a CMake switch to change the internal data type used between float and double at compile time, kind of like OSG_USE_FLOAT_BOUNDINGBOX / OSG_USE_FLOAT_BOUNDINGSPHERE... I'm sure if this is a common problem people will be glad to have it in the main OSG code base, only a CMake switch away... And then it will be easy to compare performance between the two and perhaps make the double version default if there is little/no performance difference... J-S -- __ Jean-Sebastien Guay jean-sebastien.g...@cm-labs.com http://www.cm-labs.com/ http://whitestar02.webhop.org/ ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Picking bug?
Hi Robert, This topic has arisen previously on osg-submissions, and my recommendation then was that support for double maths through the intersection code shouldn't be a compile option, but an runtime option, this way the ABI wouldn't change and you could enable it when you needed it. I still believe this is the correct route. Hm, so are you suggesting osgUtil::LineSegmentIntersectord and associated *d classes, like we have osg::Vec3f and osg::Vec3d? Or add double versions of the methods in these classes? Basically, use the same classes but duplicate some methods in them or duplicate the classes altogether? J-S -- __ Jean-Sebastien Guayjean-sebastien.g...@cm-labs.com http://www.cm-labs.com/ http://whitestar02.webhop.org/ ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Texture2D::copyTexImage2D
Unfortunately, my graphic crad does not support NPOT texture which is why I can't use osg::TextureRectangle. I also tried ensuring that my Texture2D is always a POT when I change the windows size (see code below). Code: int32 nWitdh = viewport-width(); int32 nHeight = viewport-height(); int32 nPOTWidth = ComputeUpperPowerOfTwo( nWidth ); int32 nPOTHeight = ComputeUpperPowerOfTwo( nHeight ); if( nPOTWidth != pTex2D-getTextureWidth( ) || nPOTHeight != pTex2D-getTextureHeight( ) ) { pTex2D-dirtyTextureObject( ); pTex2D-setTextureSize( nPOTWidth, nPOTHeight ); } else { bDirtyTexture = false; } u = double( nWidth ) / nPOTWidth; v = double( nHeight ) / nPOTHeight; However that does not work. The Texture2D::copyTexImage2D() eventually gets called, but fails to call copyTexSubImage2D() since the width/height passes as paramater do not equal the texture width/height. Code: if (width==(int)_textureWidth height==(int)_textureHeight) { // we have a valid texture object which is the right size // so lets play clever and use copyTexSubImage2D instead. // this allows use to reuse the texture object and avoid // expensive memory allocations. copyTexSubImage2D(state,0 ,0, x, y, width, height); return; } Near the end of the Texture2D::copyTexImage2D() function, it simply copies the viewport size (width/height) into the texture _textureWidth/_textureHeight and thus it becomes a NPOT texture - hense the problem I am experiencing. Guy -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=20896#20896 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Texture2D::copyTexImage2D
Hi Guy, The GL_TEXTURE_RECTANGLE extension is independent of the NPOT support in standard GL_TEXTURE_2D that is found in OpenGL 2.0 onwards, so just because your hardware lacks support for the later, it doesn't mean that texture rectangle extension is not supported. Robert. On Fri, Dec 4, 2009 at 2:37 PM, Guy Volckaert guy.volcka...@meggitt.com wrote: Unfortunately, my graphic crad does not support NPOT texture which is why I can't use osg::TextureRectangle. I also tried ensuring that my Texture2D is always a POT when I change the windows size (see code below). Code: int32 nWitdh = viewport-width(); int32 nHeight = viewport-height(); int32 nPOTWidth = ComputeUpperPowerOfTwo( nWidth ); int32 nPOTHeight = ComputeUpperPowerOfTwo( nHeight ); if( nPOTWidth != pTex2D-getTextureWidth( ) || nPOTHeight != pTex2D-getTextureHeight( ) ) { pTex2D-dirtyTextureObject( ); pTex2D-setTextureSize( nPOTWidth, nPOTHeight ); } else { bDirtyTexture = false; } u = double( nWidth ) / nPOTWidth; v = double( nHeight ) / nPOTHeight; However that does not work. The Texture2D::copyTexImage2D() eventually gets called, but fails to call copyTexSubImage2D() since the width/height passes as paramater do not equal the texture width/height. Code: if (width==(int)_textureWidth height==(int)_textureHeight) { // we have a valid texture object which is the right size // so lets play clever and use copyTexSubImage2D instead. // this allows use to reuse the texture object and avoid // expensive memory allocations. copyTexSubImage2D(state,0 ,0, x, y, width, height); return; } Near the end of the Texture2D::copyTexImage2D() function, it simply copies the viewport size (width/height) into the texture _textureWidth/_textureHeight and thus it becomes a NPOT texture - hense the problem I am experiencing. Guy -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=20896#20896 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Texture2D::copyTexImage2D
Ahhh.. I was not aware of that small detail. Thanks for the info - I will try it immediately. Guy -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=20898#20898 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Setting fading property to node
J-S's response is correct. But honestly I think you should read through the OpenGL red book. From your posts, it sounds like you would benefit from the knowledge contained in that book. Knowing OpenGL will help immensely with knowing OSG. The OSG Quick Start Guide also contains a short list of good reference material. Paul Martz Skew Matrix Software LLC _http://www.skew-matrix.com_ http://www.skew-matrix.com/ +1 303 859 9466 Akilan Thangamani wrote: Hi, I tried with the following code to get fading effect from the node to be rendered . I don't get the effect. I wud like to know where I do mistake. . . osg::stateSet* statSet=node-getOrCreateStateSet(); statSet-setMode(GL_LIGHTING, osg::stateAttribute::OFF); statSet-setMode(GL_BLEND, osg::stateAttribute::ON); statSet-setRenderingHint(osg::stateSet::TRANSPARENT_BIN); osg::ref_ptrosg::Material material=new osg::Material; material-setAlpha(osg::Material::face::FRONT_AND_BACK,0.5); statSet-setAttribute(material.get()); . ... Thank you! Cheers, Akilan -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=20859#20859 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] reading a Node file from a remote machine...
Hi Shayne, On Fri, Dec 4, 2009 at 3:57 PM, Tueller, Shayne R Civ USAF AFMC 519 SMXS/MXDEC shayne.tuel...@hill.af.mil wrote: Does osgDB::readNodeFile() provide any support for reading node files that reside on remote machines by using an IP address or equivalent? Could the Options object provide any support for doing this? We have the libcurl based plugin for reading from http, is this what you are after? To load via the curl plugin just use the URL of your file. You can read paged database this way too, as well as take advantage of a local FileCache. Robert. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] Multiple paging in CompositeViewer...
All, Does CompositeViewer support independent paging per camera into the same database? For example, let's suppose I have one view from an airplane and another view from an observer on the ground where each viewer in looking into the same database positioned at different locations. Each viewer obviously has its own camera. In this case, does each viewer page the database independently? Obviously the airplane will have a need to page in more data as he moves along compared to an observer on the ground that is in a different location and moving more slowly. Any thoughts or input on this would be most helpful. -Shayne smime.p7s Description: S/MIME cryptographic signature ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] reading a Node file from a remote machine...
Robert, Thanks for the timely reply. Yes, this is what I had in mind to do. I'm using OSG 2.4.0. Does the libcurl plugin exist in this version of OSG? Thanks, -Shayne -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Robert Osfield Sent: Friday, December 04, 2009 9:06 AM To: OpenSceneGraph Users Subject: Re: [osg-users] reading a Node file from a remote machine... Hi Shayne, On Fri, Dec 4, 2009 at 3:57 PM, Tueller, Shayne R Civ USAF AFMC 519 SMXS/MXDEC shayne.tuel...@hill.af.mil wrote: Does osgDB::readNodeFile() provide any support for reading node files that reside on remote machines by using an IP address or equivalent? Could the Options object provide any support for doing this? We have the libcurl based plugin for reading from http, is this what you are after? To load via the curl plugin just use the URL of your file. You can read paged database this way too, as well as take advantage of a local FileCache. Robert. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org smime.p7s Description: S/MIME cryptographic signature ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] New 3DS reader/writer is ready to test
Hi all, As told on osg-submissions, there is a new 3DS reader/writer plugin into the trunk. You're all welcome to test it. What's new? Well: - Writing support - Uses latest lib3ds - Reader now creates MatrixTransforms instead of groups (points are now as the 3DS file describes). Use noMatrixTransforms option to get the old behaviour. - Geometries with more than 65k triangles are automatically split in multiple meshes. - Some fixes (Pivots). Those who have rights on the plugins page ( http://www.openscenegraph.org/projects/osg/wiki/Support/UserGuides/Plugins ) may change it... and write pending... on FBX writing ;) I just hope there won't be too much bugs... Cheers, Sukender PVLE - Lightweight cross-platform game engine - http://pvle.sourceforge.net/ ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [build] Preprocessor symbols / definitions and descriptions
Hi Robert, thanks for the reply. I do not use makefiles on any of the supported platforms (actually, I do not use any terminal dependent software if I can prevent it). Therefore, I need to know which platform uses which macros or defines. Furthermore, I really dislike to use libraries out of the box without knowing what kind of parameters they set. Example: I am supporting OS X 10.4 but the CMake files automatically compile for OSX 10.5 as I have 10.5 installed. Therefore, sometimes the wrong include files or libraries are linked in. Of course I can check which flags CMake files use but this only shifts looking for defines from the source code to the makefiles. And I have never found any documented makefiles as far as I can remember. So, catching the meaning of makefiles is often more difficult than the meaning of source code. Thank you! Cheers, Hartwig -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=20907#20907 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Picking bug?
2009/12/4 Fred Smith osgfo...@tevs.eu Thanks for all your answers. Hitting a little bit of a problem in my understanding of the source code. If I change TriangleIntersection to use Vec3d and not Vec3: Code: TriangleIntersection(unsigned int index, const osg::Vec3d normal, double r1, const osg::Vec3d* v1, double r2, const osg::Vec3d* v2, double r3, const osg::Vec3d* v3): _index(index), _normal(normal), _r1(r1), _v1(v1), _r2(r2), _v2(v2), _r3(r3), _v3(v3) {} You're changing the wrong bit. You want the next struct down TriangleIntersector struct TriangleIntersector { osg::Vec3 _s; change these osg::Vec3 _d; float _length; int _index; float _ratio; bool_hit; -- http://www.ssTk.co.uk ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Multiple paging in CompositeViewer...
Hi Shayne, osgViewer automatically shares a single DatabasePager between Views when the Views share the same scene graph. This is required to avoid inconsistencies in the scene graph causing errors. Sharing a single DatabasePager doesn't prevent that pager from handling multiple viewpoints at the same time, if fact it knows nothing about viewpoints, it only handles database requests for tiles, so it totally agnostic to how you manage your viewpoints. Everything should basically just work out of the box without any need for specific settings from yourself. There is however and outstanding bug relating to multiple viewpoints causing the pager to not correctly expire subgraphs. There is also an issue with trying to mix the DatabasePager and the Registry caching of models as this disrupts the present expriry scheme. There are couple of recent threads on this, including a proposed fix. I'm awaiting for feedback from the community before I can address the issues, but once we get some good test cases I don't expect the problem to be too hard resolve. Robert. On Fri, Dec 4, 2009 at 4:08 PM, Tueller, Shayne R Civ USAF AFMC 519 SMXS/MXDEC shayne.tuel...@hill.af.mil wrote: All, Does CompositeViewer support independent paging per camera into the same database? For example, let’s suppose I have one view from an airplane and another view from an observer on the ground where each viewer in looking into the same database positioned at different locations. Each viewer obviously has its own camera. In this case, does each viewer page the database independently? Obviously the airplane will have a need to page in more data as he moves along compared to an observer on the ground that is in a different location and moving more slowly… Any thoughts or input on this would be most helpful… -Shayne ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] reading a Node file from a remote machine...
On Fri, Dec 4, 2009 at 4:15 PM, Tueller, Shayne R Civ USAF AFMC 519 SMXS/MXDEC shayne.tuel...@hill.af.mil wrote: Yes, this is what I had in mind to do. I'm using OSG 2.4.0. Does the libcurl plugin exist in this version of OSG? I would recommend upgrading to 2.8.2 it's far more stable, as well as having more features. As for what's in 2.4.0 go have a look yourself - do you have a src/osgPlugins/curl plugin? Robert. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] osgTerrain::ProxyLayer
Hi, a newbie question: what is the purpose of osgTerrain::ProxyLayer? Thank you! Cheers, Hartwig -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=20913#20913 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] Please test svn/trunk in prep for 2.9.6 dev release
Hi All, It's been a long long time since the last dev release, virtue of me being distracted by work like OpenGL ES, GL object pools etc. I'm now almost back on top of submissions, so the time now looks good to make the 2.9.6 developer release. Since it's been so long since the last dev release there has been lots and lots of build and source code changes so would appreciate testing of svn/trunk so we can catch any problems prior to the 2.9.6 release - all going well I'll make it this comming Monday morning. The API should be pretty compatible between 2.8.x and 2.9.6 so I'm hopping that users won't see too many problems arising from all these changes, what I can say is whether all the changes have broken the build in the less actively used platforms i.e. beyond Linux and Window. Even on the most commonly used platforms there are still lots of different architecture, build and dependency differences to throw a spanner in the works so as much testing as you can throw at it the better. If you see build and runtime issues just post a report of them to osg-users/forum on this thread, and any fixes to osg-submissions as complete modified files. If things work well for you then please email into this thread to confirm that your plarform/build combination is working fine so I know how well we are converging to a reasonably stable 2.9.6. Thanks in advance for your assistance, Robert. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Picking bug?
Nope, it still doesn't work. Not my lucky day... -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=20917#20917 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] PagedLOD issue using an external render loop
Hi all, Using pagedLOD in our application, I get a strange issue using the external rendering mode. Our application is a C++ engine managed from a JAVA application, using JNI. In other words, the render loop (viewer-frame() ) is called from a static JNI method by a special Java thread. If I use the C++ render loop (no Java) the pagedLod makes his job nicely :-) but using the Java/Jni mode... there are no model rendered... using the osg notify levels, its seems that the Java/jni mode makes the LOD unusable.. no children are loaded... the databasePager himself seems to be uncalled. If you have any idea or explanation to help me I would be very happy to hear them. Thanks. Regards, Vincent. __ Information from ESET NOD32 Antivirus, version of virus signature database 4661 (20091204) __ The message was checked by ESET NOD32 Antivirus. http://www.eset.com ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Please test svn/trunk in prep for 2.9.6 dev release
Hello, I have tested the trunk r10851 on Windows, MSVC 2008. I have a problem at build time, osgAnimation wrappers has not linked because a method (updateGraph) is not found. I just commented the method, and then everything build correclty. The wrappers have not been updated maybe? During the compilation of my project based on OSG, i need to add a lot of headers in order to build with the new OSG : #include osg/MatrixTransform and #include algorithm. Hey, a good thing if headers have been cleaned up... Then, at runtime no problem. It seems to me paging is smoother at first, but not so sure after testing an old version of our program. And good news, a recent bug that seems to block the paging disappears (the bug appears just after i have upgraded my nvidia drivers). So really good works! Thanks! Fabien -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Robert Osfield Sent: vendredi 4 décembre 2009 18:34 To: OpenSceneGraph Users Subject: [osg-users] Please test svn/trunk in prep for 2.9.6 dev release Hi All, It's been a long long time since the last dev release, virtue of me being distracted by work like OpenGL ES, GL object pools etc. I'm now almost back on top of submissions, so the time now looks good to make the 2.9.6 developer release. Since it's been so long since the last dev release there has been lots and lots of build and source code changes so would appreciate testing of svn/trunk so we can catch any problems prior to the 2.9.6 release - all going well I'll make it this comming Monday morning. The API should be pretty compatible between 2.8.x and 2.9.6 so I'm hopping that users won't see too many problems arising from all these changes, what I can say is whether all the changes have broken the build in the less actively used platforms i.e. beyond Linux and Window. Even on the most commonly used platforms there are still lots of different architecture, build and dependency differences to throw a spanner in the works so as much testing as you can throw at it the better. If you see build and runtime issues just post a report of them to osg-users/forum on this thread, and any fixes to osg-submissions as complete modified files. If things work well for you then please email into this thread to confirm that your plarform/build combination is working fine so I know how well we are converging to a reasonably stable 2.9.6. Thanks in advance for your assistance, Robert. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org __ This email has been scanned by the MessageLabs Email Security System. For more information please visit http://www.messagelabs.com/email __ __ This email has been scanned by the MessageLabs Email Security System. For more information please visit http://www.messagelabs.com/email __ ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Please test svn/trunk in prep for 2.9.6 dev release
Paul Martz wrote: I hope you mean 2.9.7. :) My mistake. There never was a 2.9.6 release, so you are right. 2.9.6 will be the next tag. -Paul ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Texture2D::copyTexImage2D
Dude you the greatest. Using osg::TextureRectangle worked! Thanks for your great help. -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=20926#20926 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] Databasepager + multiple views + different camera positions = memory leak?
Debugging terrapage plugin results: We've been seeing the same problem with a single camera moving around in the database. Here's what I've been seeing: TXPNode::traverse - this handles the unloading and loading of LOD 0 tiles. When loading a tile here's what I see: When the tile has no other lods, lod 0 node will be loaded (just a geode node) and attached to a PagedLod node under the TXPNode. So TXPNode - PagedLOD - geode When the tile has other lods, the lod 0 node will be loaded (TXPPagedLod), added to the activeLODList in the databasepager, and attached to the scenegraph. So it goes TxpNode - PagedLod - TXPPagedLod - geode group - (geode group, TXPSeamLOD) etc *Note that these nodes added to the activeLODList will never be expired by the databasepager, they will always be in the activelodlist unless you clear it out. [I'm assuming the difference is that the tile has other LODs and the other doesn't, haven't confirmed this. All I can confirm is that they are lod 0 nodes and their scene graph structures differ.] The Traverse also unloads the LOD 0 nodes (The PagedLOD nodes under the TXPNode). This works fine for the nodes that don't have any other LODs, but not so well for the Nodes that have other lods / seams. When the traverse removes a PagedLOD that has a TXPPagedLOD in it, the database pager never expires that node and never removes it form the active list. So it hangs around in memory never to be used again. When that same tile is reloaded, the newly loaded node is pushed onto the activeLODList and then added to the scenegraph by the database pager. So if you are constantly paging LOD 0 nodes in and out by moving around, you'll eventually run out of memory and crash. So what we are seeing is that duplicate LOD 0 nodes are being loaded. I currently don't have a fix for this, but would like to know what would be the preferred way of fixing this issue? The database version is Terrapage 2.2 I believe with 1600 LOD 0 nodes. Other LODs are present in certain areas. -Ryan S ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Please test svn/trunk in prep for 2.9.6 dev release
Hi Robert, I have been bit out of sync with froums recently. I am curious if the issue with color/normal per primitve was resolved ? Its fairly basic functionality so I thought I'll remind about this before new release. Cheers, Wojtek Lewandowski -- From: Robert Osfield robert.osfi...@gmail.com Sent: Friday, December 04, 2009 6:34 PM To: OpenSceneGraph Users osg-users@lists.openscenegraph.org Subject: [osg-users] Please test svn/trunk in prep for 2.9.6 dev release Hi All, It's been a long long time since the last dev release, virtue of me being distracted by work like OpenGL ES, GL object pools etc. I'm now almost back on top of submissions, so the time now looks good to make the 2.9.6 developer release. Since it's been so long since the last dev release there has been lots and lots of build and source code changes so would appreciate testing of svn/trunk so we can catch any problems prior to the 2.9.6 release - all going well I'll make it this comming Monday morning. The API should be pretty compatible between 2.8.x and 2.9.6 so I'm hopping that users won't see too many problems arising from all these changes, what I can say is whether all the changes have broken the build in the less actively used platforms i.e. beyond Linux and Window. Even on the most commonly used platforms there are still lots of different architecture, build and dependency differences to throw a spanner in the works so as much testing as you can throw at it the better. If you see build and runtime issues just post a report of them to osg-users/forum on this thread, and any fixes to osg-submissions as complete modified files. If things work well for you then please email into this thread to confirm that your plarform/build combination is working fine so I know how well we are converging to a reasonably stable 2.9.6. Thanks in advance for your assistance, Robert. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] Keep track of screen coordinates of an object
Hi, I have a scene with a hidden object for the person using the application to discover and identify. What I want is a screen shot functionality which focuses on this object but keeps the resolution of the original rendering, to be able to analyze how many pixels the object covered when it was identified etc. I have used the screen shot tutorial available at osgHelp to capture a screen shot of the whole rendering: osg::ref_ptrosg::Image rImage = new osg::Image; rImage-readPixels( 0, 0, 512, 512, GL_RGB, GL_UNSIGNED_BYTE ); osgDB::writeImageFile( *rImage, screenshot.jpg ); What I want to do is: osg::ref_ptrosg::Image rImage = new osg::Image; rImage-readPixels( objectXmin, objectYmin, objectXmax, objectYmax, GL_RGB, GL_UNSIGNED_BYTE ); osgDB::writeImageFile( *rImage, screenshot.jpg ); Can anyone give me some pointers on how to get the coordinates objectXmin and so on? Help is much appreciated! Cheers, Martin -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=20920#20920 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] Looking for recommendation for (Paged)LODs and terrain visualization
Hi, I am looking for a recommendation how to implement best the following problem using OSG: assume that I have terrain data in a (paged) LOD using a specific coordinate system. Now, I want to visualize the same terrain data that is stored in coordinate system A in coordinate system B or by using a special projection. What is the recommended way of doing this? Some further information: - I cannot store the same data in a couple of (paged) LOD databases as the amount of data is too large. - The LOD element selection does not have to be perfect (if it is difficult to implement or too time consuming for visualization). The LOD element selection could still be done on the original coordinate system but the visualization of the data has to be in the other coordinate system or projection. - I cannot change the database each time I would like to use a different coordinate system for visualization - even if it is a fast process - as two windows might visualize the same data but with different coordinate systems. Any ideas how to implement this? Perhaps I have overseen something very trivial as I am new to OSG. Thank you! Cheers, Hartwig -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=20929#20929 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] New 3DS reader/writer is ready to test
Hi Sukender, Sukender wrote: Those who have rights on the plugins page ( http://www.openscenegraph.org/projects/osg/wiki/Support/UserGuides/Plugins ) may change it... and write pending... on FBX writing ;) I made the changes to this page, but please ask wiki editing rights by sending and e-mail to Jose Luis Hidalgo. (See http://www.openscenegraph.org/projects/osg/wiki/About/WikiEditing) We need all the people that can contribute to the Wiki. The editing rights keep spammers out the door very effectively, but unfortunately also new contributors. kind regards, Roland Smeenk -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=20930#20930 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Animated Models
Ulrich Hertlein wrote: On 4/12/09 3:14 AM, Danny Lesnik wrote: And the second question: Can OSG view animated gifs as model textures? I haven't personally used this but the code is there so it should work. You probably have to start the animation manually. To do that you need to find the respective image, dynamic_cast it to an ImageStream and (if successful) call play() on that object. /ulrich ___ osg-users mailing list http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org -- Post generated by Mail2Forum Hi Ulrich, How can I find this respective image? Best regards, Danny. -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=20931#20931 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Animated Models
On 4/12/09 10:46 PM, Danny Lesnik wrote: And the second question: Can OSG view animated gifs as model textures? I haven't personally used this but the code is there so it should work. You probably have to start the animation manually. To do that you need to find the respective image, dynamic_cast it to an ImageStream and (if successful) call play() on that object. Hi Ulrich, How can I find this respective image? You'll have to write a custom NodeVisitor. This NV could collect all Images of type ImageStream or it could search for a specific filename. Have a look at the FindImageStreamsVisitor in examples/osgmovie/osgmovie.cpp for an example. HTH, Cheers, /ulrich ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Keep track of screen coordinates of an object
Do you really need a screen shot, or do you just need a count of visible pixels? If the latter, then occlusion query will do this for you. You'd need to add a draw callback to the object that issues the query, draws it, then waits for the pixel count query result. Paul Martz Skew Matrix Software LLC _http://www.skew-matrix.com_ http://www.skew-matrix.com/ +1 303 859 9466 Martin Aasen wrote: Hi, I have a scene with a hidden object for the person using the application to discover and identify. What I want is a screen shot functionality which focuses on this object but keeps the resolution of the original rendering, to be able to analyze how many pixels the object covered when it was identified etc. I have used the screen shot tutorial available at osgHelp to capture a screen shot of the whole rendering: osg::ref_ptrosg::Image rImage = new osg::Image; rImage-readPixels( 0, 0, 512, 512, GL_RGB, GL_UNSIGNED_BYTE ); osgDB::writeImageFile( *rImage, screenshot.jpg ); What I want to do is: osg::ref_ptrosg::Image rImage = new osg::Image; rImage-readPixels( objectXmin, objectYmin, objectXmax, objectYmax, GL_RGB, GL_UNSIGNED_BYTE ); osgDB::writeImageFile( *rImage, screenshot.jpg ); Can anyone give me some pointers on how to get the coordinates objectXmin and so on? Help is much appreciated! Cheers, Martin -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=20920#20920 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Please test svn/trunk in prep for 2.9.6 dev release
Hi Robert, On 4/12/09 6:34 PM, Robert Osfield wrote: If things work well for you then please email into this thread to confirm that your plarform/build combination is working fine so I know how well we are converging to a reasonably stable 2.9.6. svn r10855 is compiling fine on OS X 10.5.8 with cmake 2.8/Makefile and the examples pass an initial sanity check. /ulrich ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] Does anyone remember how is a mirror/reflection matrix?
Hi friends! Does anyone remember how is a mirror/reflection matrix? just to simulate a very clean floor (repeating models above). I'd like to create a osg::MatrixTransform and using osg::Matrix, pass this mirror matrix. Thanks. -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=20935#20935 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Databasepager + multiple views + different camera positions = memory leak?
Greetings, Forgot to mention that I have three hacks that fix/minimize the issue: Hack #1: Check for duplicates when adding PagedLod to the activeLODList in FindPagedLODsVisitor. If a duplicate is found it is removed. This code helped determine if there are duplicates. Hack #2: In the Terrapage plugin TXPNode::updateScenegraph do the following: If the node being removed has a child, get it and see if it is a TXPPagedLod If the child node is a TXPPagedLod, check the tileIdentifier to see if it a lod 0 node. If the node is LOD 0, then setup the parameters such that the node will be paged out by the database pager. Note that TXPReaderWriter can be edited to add the filename for LOD 0 tiles. Hack #3: Put a check in FindPagedLODsVisitor if the PagedLod should be added to the active list. Don't add the PagedLod node to the activeLodList if it shouldn't be. This requires adding a parameter to the PagedLod node and editing the ReaderWriter to set that parameter correctly. Don't have the hacked up code ATM, but I could send it if needed(it's at work). It's pretty simple but all seems hackish. As for the orginal question, it doesn't seem that the tilemanager supports multiple cameras. I could see the LOD 0 nodes being paged in and out a lot if multiple cameras are used. This was all based on osg 2.8.1 / 2.8.2. I've just started looking at this code late this week, because it became top priority bug. If any one has any idea of how to fix the issue properly, I may be able to invest some time if others cannot. -Ryan ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org