Re: [osg-users] [osgOcean] Error with osgOcean-VBO Example!
Hi, well, must of this forum's users are not chinese aware ;) can you translate the error message into english? Thank you! Cheers, Torben -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=26052#26052 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] trouble in MSFBO
Hi, Paul and Michael Frist Thank you for your suggestion. I use the your method, and output show correctly in normal rendering, but when I use my deferred render, it has aliasing, I use a TextureRectangle as normal_sampler, below is my fragment shader: #version 120 uniform sampler2D normal_sampler; varying vec3 normal; centroid varying vec4 texcood;//texcoord is gl_Position from vertex shader void main() { //vec3 snormal = 2.0*texture2DRect(normal_sampler, gl_FragCoord.st).xyz - vec3(1.0, 1.0, 1.0); vec2 tex_coord = 0.5*texcood.st / texcood.w + 0.5; vec3 snormal = 2.0*texture2D(normal_sampler, tex_coord).xyz - vec3(1.0, 1.0, 1.0); float diffuse = dot(normalize(snormal), -1.0*gl_LightSource[0].spotDirection); gl_FragColor = vec4(diffuse, 0.0, 0.0, 1.0); } I also change the filter of normal sampler to linear, it also makes the same result. you can also see the screen output in attachment: Thank you! Cheers, Kai -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=26053#26053 attachment: 4.png___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] osgocean performances
Hi Kim, from where I can download that code? I try the googlecode trunk, but not seeing the VBO example -Nick On Wed, Mar 24, 2010 at 12:11 AM, Kim Bale kcb...@googlemail.com wrote: Nick, One thing I forgot. To test the VBO code use the flag --vbo when running the examples. Kim. On 23 March 2010 22:08, Kim Bale kcb...@googlemail.com wrote: Hi Nick, Paul (Palumbo) and I have been working on a new VBO ocean technique which uses instances of the ocean tiles to create the ocean surface rather than doing a mass copy of vertices for the entire surface on each frame. Using this technique the number of tiles that need to be updated on each mipmap change has decreased significantly. You could try the code in osgOcean-VBO branch to see if it provides you with better performance. It should be more scalable for large or higher resolution ocean surfaces. I should however point out there are some issues with this new technique that still need ironing out (thus the branch and not in the trunk). Paul has highlighted problems when he linked it to 2.9.7. so please note this is still dev code. Let me know how you get on, Kim. On 23 March 2010 17:11, Trajce (Nick) Nikolov nikolov.tra...@gmail.comwrote: Hi Community, I ve worked so far on standard PC architecture, middle range, and I was kind of frustrated with the performances of osgocean. So I build something heavy, like i7 3.3GHz, 3 SLI and was expecting to see huge difference, With high res ocean I got from 10Hz to 17-20Hz. Kind a disappointed. What are your experiences for those who use it? -Nick ___ 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 mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] 2.8.3-rc1 tagges
Hi Paul, On Wed, Mar 24, 2010 at 12:29 AM, Paul Martz pma...@skew-matrix.com wrote: Great news, thanks! Are you building any of ffmpeg, fbx, or the Inventor plugin, by any chance? I'm compiling ffmpeg and Inventor (using Coin) but not fbx. Robert. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [osgOcean] Error with osgOcean-VBO Example!
Oceansurface wasn't initialised, I've fixed and checked this in to the branch. Only additional hardware requirement is VBO support which I gather is pretty standard. If you find that you have problems with this you can disable the use of VBOs in the FFTOceanSurfaceVBO constructor and recompile. It should still work. Regards, Kim. On 24 March 2010 02:54, Tian Ma tianxiao...@foxmail.com wrote: Hi, I have updated 'branch\osgOcean-VBO' project though 'SVN', and compiled it sucessfully. When I run the 'oceanExample_SIMPLE.exe', an 'Memory Error' occured. I have a screen shot bellow! When I debug this, a break occured at: 'oceanSurface-getOrCreateStateSet()-setMode(GL_LIGHTING, osg::StateAttribute::OFF)' Anyone tell what is the problem? Any new hardware capability needed for osgOcean-VBO? Thank you! Cheers, Tian -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=26051#26051 Attachments: http://forum.openscenegraph.org//files/memory_error_393.jpg ___ 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] osgocean performances
http://osgocean.googlecode.com/svn/branches/osgOcean-VBO/ Kim On 24 March 2010 08:06, Trajce (Nick) Nikolov nikolov.tra...@gmail.comwrote: Hi Kim, from where I can download that code? I try the googlecode trunk, but not seeing the VBO example -Nick On Wed, Mar 24, 2010 at 12:11 AM, Kim Bale kcb...@googlemail.com wrote: Nick, One thing I forgot. To test the VBO code use the flag --vbo when running the examples. Kim. On 23 March 2010 22:08, Kim Bale kcb...@googlemail.com wrote: Hi Nick, Paul (Palumbo) and I have been working on a new VBO ocean technique which uses instances of the ocean tiles to create the ocean surface rather than doing a mass copy of vertices for the entire surface on each frame. Using this technique the number of tiles that need to be updated on each mipmap change has decreased significantly. You could try the code in osgOcean-VBO branch to see if it provides you with better performance. It should be more scalable for large or higher resolution ocean surfaces. I should however point out there are some issues with this new technique that still need ironing out (thus the branch and not in the trunk). Paul has highlighted problems when he linked it to 2.9.7. so please note this is still dev code. Let me know how you get on, Kim. On 23 March 2010 17:11, Trajce (Nick) Nikolov nikolov.tra...@gmail.comwrote: Hi Community, I ve worked so far on standard PC architecture, middle range, and I was kind of frustrated with the performances of osgocean. So I build something heavy, like i7 3.3GHz, 3 SLI and was expecting to see huge difference, With high res ocean I got from 10Hz to 17-20Hz. Kind a disappointed. What are your experiences for those who use it? -Nick ___ 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 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] osgText - fragment shader - font texture
Hi, I try to use shaders with osgText to make some effects with text. But how I can set up uniform variable with font texture to process it in fragment shader? Or may be I should do something another to have result? Primitive fragment shader: Code: uniform sampler2D bitmap; varying vec2 texelCoord; void main( void ) { gl_FragColor = vec4( texture2D( bitmap, texelCoord ) ); } Code which sets the variable: Code: //... osg::Uniform* bitmap = new osg::Uniform(bitmap, osg::Uniform::SAMPLER_2D); bitmap-set(??); text-getOrCreateStateSet()-addUniform(bitmap); //... Thank you! -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=26059#26059 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] GraphicsContext on Multiple Graphics cards?
Hi, 4 graphics cards have been installed in my system thru PCI extension board. In my application I want to associate individual camera with each context created on each card. I wud like to know how to create context for specific graphics card/display. -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=26060#26060 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] GraphicsContext on Multiple Graphics cards?
HI Akilan, The OSG by default will open up windows right across all the attached screens with the assumption that are all working side be side like a powerwall. However, it won't necessarily know the screen layout so you well may need to adjust the set up the slave Camera view and projection matrix offsets to get the exactly the results you are looking, and set the screen number assigned to each graphics card. The osgcamera example illustrate hows to set up the Camera's and associated GraphicsContexts for the viewer by using a combination of GraphicsContext::Traits to supply details of the actual display you want to take, and the Camera for assigning the GraphicsContext created and setting up the view and projection matrix details. Robert. On Wed, Mar 24, 2010 at 11:13 AM, Akilan Thangamani akilan.thangam...@gmail.com wrote: Hi, 4 graphics cards have been installed in my system thru PCI extension board. In my application I want to associate individual camera with each context created on each card. I wud like to know how to create context for specific graphics card/display. -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=26060#26060 ___ 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] light multi-parenting
Thanks Robert, to close the thread, I am putting more info based what you have written and my experiments: - LightSource with Light attached - can be far down in the scene graph while it shines on whole scene. It uses PositionalStateContainer of RenderState to store light position. Advantages: - huge benefit is that the light shines on whole scene. That is how we expect the things happens in reality. This implies LightSource limitations: - only 8 lights per scene - OpenGL IDs can not be shared - multiple references / multi-parenting (with different transformations) can not work (by design) - Light (just StateSet attribute) - shines just on objects down in the scene graph It does not use PositionalStateContainer of RenderState. Advantages: - OpenGL IDs can be shared, provided that up to 8 lights with unique ID shines at any moment - multiple references / multi-parenting (with different transformations) works correctly and lights are instanced correctly on multiple positions Limitations: - To make the light shine on the whole scene or specified part of the scene is little bit troublesome in some cases. Especially, if the light position is expected to be animated by some transformation down in the scene graph. - there are still some issues in OSG implementation on multiple light references, but it can be (hopefully) easily fixed, if needed To express my opinion after the understanding of lights: Lights are very well designed. (Considering to contribute OSG light documentation, if it happens I will have a time.) To handle more advanced scene setups and for the purpose of shadows, I am considering some extensions. However, it depends how important the extensions turn out to be. John Robert Osfield wrote: Hi John, Have a look into discussion on osg-users about positional state. LightSource is what positions Light in the scene. You can't have one GL light in more than one place at a time, and the light has to be positioned by a specific modelview matrix, not one artificially inherited, so LightSource's role is to place the light. Robert. On Mon, Mar 22, 2010 at 11:52 AM, PCJohn pec...@fit.vutbr.cz wrote: Gurus, What is the reason for keeping LightSource in OSG? I successfully removed all osg::LightSources from my scene graph and used just osg::Light - it is well placed and follows the transformation of the parent node (f.ex. locomotive) as it moves. Except absolute reference frame, is there any reason for LightSource existence in OSG? I think yes, but missing arguments. Thx for explanation, John Thrall, Bryan wrote: You place the LightSource in the scene graph where you want the light to be positioned. I don't think it is necessary for directional lights (they are infinitely far away, so don't have a position), but say you want a spotlight attached to a train locomotive. You could update osg::Light's position every time the locomotive moves, or you could attach a LightSource to the locomotive's scene graph and have the light placed correctly automatically. ___ 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 mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Load new nodes in the scene graph when the scene is running
take a look at pagedLOD -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=26063#26063 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] light multi-parenting
PCJohn writes: Thanks Robert, to close the thread, I am putting more info based what you have written and my experiments: - LightSource with Light attached - can be far down in the scene graph while it shines on whole scene. [...] - Light (just StateSet attribute) - shines just on objects down in the scene graph [...] John, put that way one could think that LightSource and Light are opposite or alternative ways to do lighting when in fact they are commonly used together unless you are fine with the default parameters (position, color, etc) provided by OpenGL. -- Alberto ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [osgPlugins] osgAnimation precision
It sounds like the change is worthwhile, so I'd be glad to make the changes. I will coordinate with Cedric. Thanks, Jamie -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=26065#26065 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [osgPlugins] osgAnimation morphing
Hi Roland, Thanks much, that was exactly what I was looking for. I was missing the fact that a different channel would be required for each animated transition. Thanks for the help! --jamie -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=26066#26066 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] light multi-parenting
Hi John, Actually LightSource doesn't illuminate by itself, it just provides the settings for glLight and position it correctly and uniquely in space. In OpenGL you don't actually get illumination even when you set glLight, you only get illumination once you enable GL_LIGHTING and GL_LIGHTi. In the OSG case the subgraphs that will illuminated are the parts that you've enabled GL_LIGHTING and the appropriate GL_LIGHTi for, osg::Light and osg::LightSource don't have any effect apart from the actual values used by the lighting model. As for limitation osg::Light/LightSource/OpenGL lighting all work with the same limitations - that is there is only ever guaranteed to be 8 fixed function pipeline light supported. If you want to use more than 8 then you'll need to use shaders, or localize the lights to difference subgraphs have different lights assigned for them. The fact you need to position lights as well means that one has to apply the appropriate modelview matrix for each of these lights before application, which complicated the implementation. The only way to tackle this right now with the OSG is to break the scene up into separate subgraphs that each target their own RenderStage. This is possible, but awkward at present. The same issues apply to all positional state - eye linear texgen, clip planes and lights. Robert. On Wed, Mar 24, 2010 at 12:13 PM, PCJohn pec...@fit.vutbr.cz wrote: Thanks Robert, to close the thread, I am putting more info based what you have written and my experiments: - LightSource with Light attached - can be far down in the scene graph while it shines on whole scene. It uses PositionalStateContainer of RenderState to store light position. Advantages: - huge benefit is that the light shines on whole scene. That is how we expect the things happens in reality. This implies LightSource limitations: - only 8 lights per scene - OpenGL IDs can not be shared - multiple references / multi-parenting (with different transformations) can not work (by design) - Light (just StateSet attribute) - shines just on objects down in the scene graph It does not use PositionalStateContainer of RenderState. Advantages: - OpenGL IDs can be shared, provided that up to 8 lights with unique ID shines at any moment - multiple references / multi-parenting (with different transformations) works correctly and lights are instanced correctly on multiple positions Limitations: - To make the light shine on the whole scene or specified part of the scene is little bit troublesome in some cases. Especially, if the light position is expected to be animated by some transformation down in the scene graph. - there are still some issues in OSG implementation on multiple light references, but it can be (hopefully) easily fixed, if needed To express my opinion after the understanding of lights: Lights are very well designed. (Considering to contribute OSG light documentation, if it happens I will have a time.) To handle more advanced scene setups and for the purpose of shadows, I am considering some extensions. However, it depends how important the extensions turn out to be. John Robert Osfield wrote: Hi John, Have a look into discussion on osg-users about positional state. LightSource is what positions Light in the scene. You can't have one GL light in more than one place at a time, and the light has to be positioned by a specific modelview matrix, not one artificially inherited, so LightSource's role is to place the light. Robert. On Mon, Mar 22, 2010 at 11:52 AM, PCJohn pec...@fit.vutbr.cz wrote: Gurus, What is the reason for keeping LightSource in OSG? I successfully removed all osg::LightSources from my scene graph and used just osg::Light - it is well placed and follows the transformation of the parent node (f.ex. locomotive) as it moves. Except absolute reference frame, is there any reason for LightSource existence in OSG? I think yes, but missing arguments. Thx for explanation, John Thrall, Bryan wrote: You place the LightSource in the scene graph where you want the light to be positioned. I don't think it is necessary for directional lights (they are infinitely far away, so don't have a position), but say you want a spotlight attached to a train locomotive. You could update osg::Light's position every time the locomotive moves, or you could attach a LightSource to the locomotive's scene graph and have the light placed correctly automatically. ___ 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] [osgOcean] Error with osgOcean-VBO Example!
Hi Kim, Great work in getting a new ocean technique into osgOcean, I'm sure it will be an excellent improvement once the kinks are worked out. Oceansurface wasn't initialised, I've fixed and checked this in to the branch. Even after this fix, I'm getting a crash in GLBufferObject::getOffset(i = 5) where the _bufferEntries list contains 5 items (so indexed 0 to 4). The complete stack trace is below (though it can be hard to read - attached as a text file too because Thunderbird will add line wrapping which makes it even harder to read). In summary, it comes from MipmapGeometryVBO's drawImplementation(), so I guess something is not set up properly in its geometry/arrays/I don't know... This happens when running oceanExample_SIMPLE --vbo from Visual Studio 2008 SP1. Stack trace: msvcp90d.dll!std::_Debug_message(const wchar_t * message=0x6622e5c0, const wchar_t * file=0x6622e608, unsigned int line=764) Line 24 C++ osg66-osgd.dll!std::vectorosg::GLBufferObject::BufferEntry,std::allocatorosg::GLBufferObject::BufferEntry ::operator[](unsigned int _Pos=5) Line 764 + 0x17 bytes C++ osg66-osgd.dll!osg::GLBufferObject::getOffset(unsigned int i=5) Line 209 + 0x1d bytes C++ osg66-osgd.dll!osg::State::setVertexPointer(const osg::Array * array=0x077e3fa8) Line 568 + 0x11 bytes C++ osg66-osgd.dll!osg::Geometry::drawImplementation(osg::RenderInfo renderInfo={...}) Line 1018 C++ osg66-osgd.dll!osg::Drawable::draw(osg::RenderInfo renderInfo={...}) Line 907 + 0x13 bytes C++ osg66-osgUtild.dll!osgUtil::RenderLeaf::render(osg::RenderInfo renderInfo={...}, osgUtil::RenderLeaf * previous=0x) Line 81 + 0x19 bytes C++ osg66-osgUtild.dll!osgUtil::RenderBin::drawImplementation(osg::RenderInfo renderInfo={...}, osgUtil::RenderLeaf * previous=0x) Line 475 + 0x19 bytes C++ osg66-osgUtild.dll!osgUtil::RenderStage::drawImplementation(osg::RenderInfo renderInfo={...}, osgUtil::RenderLeaf * previous=0x) Line 1353 C++ osg66-osgUtild.dll!osgUtil::RenderBin::draw(osg::RenderInfo renderInfo={...}, osgUtil::RenderLeaf * previous=0x) Line 420 + 0x17 bytes C++ osg66-osgUtild.dll!osgUtil::RenderStage::drawInner(osg::RenderInfo renderInfo={...}, osgUtil::RenderLeaf * previous=0x, bool doCopyTexture=false) Line 925 C++ osg66-osgUtild.dll!osgUtil::RenderStage::draw(osg::RenderInfo renderInfo={...}, osgUtil::RenderLeaf * previous=0x) Line 1192 + 0x1b bytes C++ osg66-osgUtild.dll!osgUtil::SceneView::draw() Line 1426 + 0x37 bytes C++ osg66-osgViewerd.dll!osgViewer::Renderer::draw() Line 491 + 0xf bytes C++ osg66-osgViewerd.dll!osgViewer::Renderer::operator()(osg::GraphicsContext * context=0x00970e30) Line 734 + 0xf bytes C++ osg66-osgd.dll!osg::GraphicsContext::runOperations() Line 750 + 0x33 bytes C++ osg66-osgd.dll!osg::RunOperations::operator()(osg::GraphicsContext * context=0x00970e30) Line 138 C++ osg66-osgd.dll!osg::GraphicsOperation::operator()(osg::Object * object=0x00970e30) Line 53 + 0x19 bytes C++ osg66-osgd.dll!osg::OperationThread::run() Line 413 + 0x26 bytes C++ osg66-osgd.dll!osg::GraphicsThread::run() Line 41 C++ ot12-OpenThreadsd.dll!OpenThreads::ThreadPrivateActions::StartThread(void * data=0x0097e9c4) Line 113 + 0xf bytes C++ msvcr90d.dll!_callthreadstartex() Line 348 + 0xf bytes C msvcr90d.dll!_threadstartex(void * ptd=0x0097f2d8) Line 331C -- __ Jean-Sebastien Guayjean-sebastien.g...@cm-labs.com http://www.cm-labs.com/ http://whitestar02.webhop.org/ msvcp90d.dll!std::_Debug_message(const wchar_t * message=0x6622e5c0, const wchar_t * file=0x6622e608, unsigned int line=764) Line 24 C++ osg66-osgd.dll!std::vectorosg::GLBufferObject::BufferEntry,std::allocatorosg::GLBufferObject::BufferEntry ::operator[](unsigned int _Pos=5) Line 764 + 0x17 bytes C++ osg66-osgd.dll!osg::GLBufferObject::getOffset(unsigned int i=5) Line 209 + 0x1d bytes C++ osg66-osgd.dll!osg::State::setVertexPointer(const osg::Array * array=0x077e3fa8) Line 568 + 0x11 bytes C++ osg66-osgd.dll!osg::Geometry::drawImplementation(osg::RenderInfo renderInfo={...}) Line 1018 C++ osg66-osgd.dll!osg::Drawable::draw(osg::RenderInfo renderInfo={...}) Line 907 + 0x13 bytes C++ osg66-osgUtild.dll!osgUtil::RenderLeaf::render(osg::RenderInfo renderInfo={...}, osgUtil::RenderLeaf * previous=0x) Line 81 + 0x19 bytes C++ osg66-osgUtild.dll!osgUtil::RenderBin::drawImplementation(osg::RenderInfo renderInfo={...}, osgUtil::RenderLeaf * previous=0x) Line 475 + 0x19 bytes C++ osg66-osgUtild.dll!osgUtil::RenderStage::drawImplementation(osg::RenderInfo renderInfo={...}, osgUtil::RenderLeaf * previous=0x) Line 1353 C++
[osg-users] Erros with ProxyNode
Hi, there seems to be an error using proxyNodes. If you setup a proxyNode using multiple filenames, not all files may get paged in correctly. This is related to the sequence the databasepager loads nodes, which may vary if you load nodes using curl. There is no association between the filename and the node which gets paged in, so the proxyNode, request may request nodes twice. Possible solution: Let ProxyNode::traverse only request one Node at a time. If the file is not found however, the follow up filenames will never be requested. Regards, Richard ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [osgOcean] Error with osgOcean-VBO Example!
Ok, thanks for testing JS I'll do some digging tonight. K. On 24 March 2010 13:19, Jean-Sébastien Guay jean-sebastien.g...@cm-labs.com wrote: Hi Kim, Great work in getting a new ocean technique into osgOcean, I'm sure it will be an excellent improvement once the kinks are worked out. Oceansurface wasn't initialised, I've fixed and checked this in to the branch. Even after this fix, I'm getting a crash in GLBufferObject::getOffset(i = 5) where the _bufferEntries list contains 5 items (so indexed 0 to 4). The complete stack trace is below (though it can be hard to read - attached as a text file too because Thunderbird will add line wrapping which makes it even harder to read). In summary, it comes from MipmapGeometryVBO's drawImplementation(), so I guess something is not set up properly in its geometry/arrays/I don't know... This happens when running oceanExample_SIMPLE --vbo from Visual Studio 2008 SP1. Stack trace: msvcp90d.dll!std::_Debug_message(const wchar_t * message=0x6622e5c0, const wchar_t * file=0x6622e608, unsigned int line=764) Line 24 C++ osg66-osgd.dll!std::vectorosg::GLBufferObject::BufferEntry,std::allocatorosg::GLBufferObject::BufferEntry ::operator[](unsigned int _Pos=5) Line 764 + 0x17 bytes C++ osg66-osgd.dll!osg::GLBufferObject::getOffset(unsigned int i=5) Line 209 + 0x1d bytes C++ osg66-osgd.dll!osg::State::setVertexPointer(const osg::Array * array=0x077e3fa8) Line 568 + 0x11 bytes C++ osg66-osgd.dll!osg::Geometry::drawImplementation(osg::RenderInfo renderInfo={...}) Line 1018 C++ osg66-osgd.dll!osg::Drawable::draw(osg::RenderInfo renderInfo={...}) Line 907 + 0x13 bytes C++ osg66-osgUtild.dll!osgUtil::RenderLeaf::render(osg::RenderInfo renderInfo={...}, osgUtil::RenderLeaf * previous=0x) Line 81 + 0x19 bytes C++ osg66-osgUtild.dll!osgUtil::RenderBin::drawImplementation(osg::RenderInfo renderInfo={...}, osgUtil::RenderLeaf * previous=0x) Line 475 + 0x19 bytes C++ osg66-osgUtild.dll!osgUtil::RenderStage::drawImplementation(osg::RenderInfo renderInfo={...}, osgUtil::RenderLeaf * previous=0x) Line 1353 C++ osg66-osgUtild.dll!osgUtil::RenderBin::draw(osg::RenderInfo renderInfo={...}, osgUtil::RenderLeaf * previous=0x) Line 420 + 0x17 bytes C++ osg66-osgUtild.dll!osgUtil::RenderStage::drawInner(osg::RenderInfo renderInfo={...}, osgUtil::RenderLeaf * previous=0x, bool doCopyTexture=false) Line 925 C++ osg66-osgUtild.dll!osgUtil::RenderStage::draw(osg::RenderInfo renderInfo={...}, osgUtil::RenderLeaf * previous=0x) Line 1192 + 0x1b bytes C++ osg66-osgUtild.dll!osgUtil::SceneView::draw() Line 1426 + 0x37 bytes C++ osg66-osgViewerd.dll!osgViewer::Renderer::draw() Line 491 + 0xf bytes C++ osg66-osgViewerd.dll!osgViewer::Renderer::operator()(osg::GraphicsContext * context=0x00970e30) Line 734 + 0xf bytes C++ osg66-osgd.dll!osg::GraphicsContext::runOperations() Line 750 + 0x33 bytes C++ osg66-osgd.dll!osg::RunOperations::operator()(osg::GraphicsContext * context=0x00970e30) Line 138 C++ osg66-osgd.dll!osg::GraphicsOperation::operator()(osg::Object * object=0x00970e30) Line 53 + 0x19 bytesC++ osg66-osgd.dll!osg::OperationThread::run() Line 413 + 0x26 bytes C++ osg66-osgd.dll!osg::GraphicsThread::run() Line 41 C++ ot12-OpenThreadsd.dll!OpenThreads::ThreadPrivateActions::StartThread(void * data=0x0097e9c4) Line 113 + 0xf bytes C++ msvcr90d.dll!_callthreadstartex() Line 348 + 0xf bytes C msvcr90d.dll!_threadstartex(void * ptd=0x0097f2d8) Line 331C -- __ 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 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
getting the render of a camera and setting it as an another object´s texture
Hi, i´ve got an application with a osgViewer::Viewer* for the rendering. i´d like to know if is possible to grab the render image of that viewer and set it up as an another object´s texture i know how to set a texture for an object, so what i´d like to know is how to access the color buffer target of the viewer´s camera Thank you! Cheers, David -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=26071#26071 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] Error in Databasepager::run
Hi, there is an error in the osgDB::Databasepager::run method. groupForAddingLoadedSubgraph-getParentalNodePaths(); Is not threadsafe, because the user might delete a parent of groupForAddingLoaded in the UpdateTraversal. Regards, Richard ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] bluring model edges
Hi, does anyone know where the examples are for using osgPPU? I can not find any on his sight. And documentation, too, that is more than the class layout offered on the sight. I need deeper explanations than just class/method blurbs. Thank you! Cheers, Allen -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=26073#26073 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [osgPPU] osgPPU Windows XP Install Guide
Hi Art, do you know of any examples on how to use osgPPU? I can not find any on the website and the class/method documentaiton is simply not enough for me to understand how to use this plug-in. I have been able in at least compile and link against the osgPPU in windows under MSVS 2005, so that seems to work. Thank you! Cheers, Allen -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=26075#26075 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Erros with ProxyNode
Hi Richard, Interesting bug... fixing it is likely to be a bit awkward given the currently implementation of ProxyNode/DatabasePager, doing one file at a time won't even address all the potential issues as the ordering can sit get out of sync if early children fail to load but later children succeed. Adding support into DatabasePager to allow it to set specific children would require osg::Group to support having null children, something which has quite a few potential pitfalls. My first thought for a solution would be to change ProxyNode so that is only has one filename, rather than multiple ones as it has now. This would avoid any issues about which files are loaded and keep the filename list in sync with the children. This is an API change though, but I can't see a better option right now. Thoughts? Robert. On Wed, Mar 24, 2010 at 1:25 PM, Schmidt, Richard richard.schm...@eads.com wrote: Hi, there seems to be an error using proxyNodes. If you setup a proxyNode using multiple filenames, not all files may get paged in correctly. This is related to the sequence the databasepager loads nodes, which may vary if you load nodes using curl. There is no association between the filename and the node which gets paged in, so the proxyNode, request may request nodes twice. Possible solution: Let ProxyNode::traverse only request one Node at a time. If the file is not found however, the follow up filenames will never be requested. Regards, Richard ___ 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] GraphicsContext on Multiple Graphics cards?
HI Akilan, On Wed, Mar 24, 2010 at 1:34 PM, Akilan Thangamani akilan.thangam...@gmail.com wrote: Will this method of setting create individual context on each card if at all I connected 4 monitors to my cards? I'm not 100% clear on what you mean in this sentence, but I can confirm that the ScreenIdentifier is what you need to set, with the screen number referring to graphics context/card. It is possible to configure OS's/drivers/hardware to have a single graphics context across two or more outputs from a single graphics card, or to have a single graphics context across each output - in which case the screen number you use will refer to unit you set up. The OSG doesn't have any control over this setup, you'll need to look at your driver control panels/configuration for this. If you just set up one display, one context per card then things a little more straight forward in screen number relationship to the the card. Robert. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Error in Databasepager::run
Hi Richard, On Wed, Mar 24, 2010 at 2:00 PM, Schmidt, Richard richard.schm...@eads.com wrote: there is an error in the osgDB::Databasepager::run method. groupForAddingLoadedSubgraph-getParentalNodePaths(); Is not threadsafe, because the user might delete a parent of groupForAddingLoaded in the UpdateTraversal. Which version of the OSG you looking at? svn/trunk has been significantly re-factored to deal with various different cases where threading issues were causing problems before. So if you aren't using svn/trunk then try it out, if you think svn/trunk is still not thread safe then could you be a bit more specific about which parts you think might not be thread safe. Robert. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] 2.8.3-rc1 tagged
Stephan Huber wrote: FBX and PLY are not part of the xcode project file, because of the external dependencies. If PLY has no external dependencies I can add to the xcode-project-file. FBX does have an external dependency, and I understand that dependency is available on OS X. PLY doesn't appear to have any external dependencies. Whether you add these to the XCode project file is your call. I build on OS X with makefiles and gcc, so I'm already happy. :-) -Paul ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Error in Databasepager::run
Hi Robert, i am using 2.8.2 The method getParentalNodePaths is used to retrieve the parent node paths. This is done in the database pager thread. However these node paths might change while traversing them, because the user may change the scenegraph in the update loop. Richard -Ursprüngliche Nachricht- Von: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] Im Auftrag von Robert Osfield Gesendet: Mittwoch, 24. März 2010 15:45 An: OpenSceneGraph Users Betreff: Re: [osg-users] Error in Databasepager::run Hi Richard, On Wed, Mar 24, 2010 at 2:00 PM, Schmidt, Richard richard.schm...@eads.com wrote: there is an error in the osgDB::Databasepager::run method. groupForAddingLoadedSubgraph-getParentalNodePaths(); Is not threadsafe, because the user might delete a parent of groupForAddingLoaded in the UpdateTraversal. Which version of the OSG you looking at? svn/trunk has been significantly re-factored to deal with various different cases where threading issues were causing problems before. So if you aren't using svn/trunk then try it out, if you think svn/trunk is still not thread safe then could you be a bit more specific about which parts you think might not be thread safe. 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
Re: [osg-users] [osgPPU] osgPPU osgShadow
Hi Art, Your osgPPU does an awesome job of blurring! I just got the example listed above to work by using your view.cpp code. Thanks for posting it! I have a question: I am trying to blur my entire scene. Is that possible with osgPPU? If so, would you mind showing me how? I can not find any examples of how to use osgPPU at the website - perhaps I'm looking in the wrong place. I am needing to blur both my scene and to have motion blur on objects within my scene that are moving. Thank you so much! Cheers, Allen -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=26083#26083 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] need help with cmake / osg / os x / frameworks
Stephan, Have you made any progress on this? I tried your files and got similar behavior with respect to the osgViewer headers in the framework. Although I don't even get an api directory in osgViewer.framework/headers/ Let me know if you have any news files to test. I'll continue to dig on this end. Thanks Martins On 3/10/10 10:21 AM, Stephan Maximilian Huber wrote: Hi all, I am trying to add framework-support to the cmake-files, and I am hitting a wall. I am not a cmake-expert so I'll ask the community for help. Attached you'll find my modified cmake-files (based on current trunk), which adds compiling osg as frameworks, which can be embedded into application bundles (this is the main reason for the existance of the deprecated xcode-project) To compile frameworks with cmake you'll have to: set OSG_COMPILE_FRAMEWORKS to TRUE modify OSG_COMPILE_FRAMEWORKS_INSTALL_NAME_DIR if needed set the CMAKE_INSTALL_PREFIX to something reasonable, I use a folder on my desktop as destination. Click Configure, click generate, open the xcode project, click build, select the install-target, click build again. So you'll find in CMAKE_INSTALL_PREFIX a bunch of folders, in lib you'll find the frameworks, ready to be embedded into your app. You'll get valid frameworks ONLY if you run the install-target. Without that, the install_name_dirs are bound to the local storage of the frameworks, and will not work on other computers, or other destinations. And here's the big BUT: I have problems to move the api-headers of osgViewer into their right places (osgViewer.framework/headers/api/(Carbon|Cocoa)/*) They end all in osgViewer.framework/headers/ There is a special property for this called MACOSX_PACKAGE_LOCATION, which should move the corresponding files to the special place in the framework-bundle, but it doesn't work for the api-headerfiles. Perhaps someone can look at the source in src/osgViewer/CMakeLists.txt and check my approach. cmake copies two cpp-files into that place instead of the header-files. So please, please test the packaged cmake-files and perhaps there is someone out there who can help with the issues with the osgviewer-header-files! thanks in advance, Stephan ___ 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] Survey: Is there interest for an OSG Users Group at ITEC or I/ITSEC?
Hi, So, the questions are: 1) Do you go to ITEC and/ or I/ITSEC? (Please specify which one) If this type of event does not occur in Huntsville, AL, I would not be able to attend as my company does not support training or things of this nature, either. 2) Would you go to a OSG Users Group Meeting? I would definitely attend an OSG UG as I am still a novice in OSG after 4 years of struggling with it and would deeply appreciate meeting others who use this product and discuss how to use it more effectively let alone hosting osg training seminars! And I, myself, would be willing to help pay for the training seminars! And that would be out of my own pocket. But again, I would need an OSG UG in Huntsville, AL. Thank you for posing these questions. I really appreciate it. Cheers, Allen -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=26085#26085 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] REGISTER_OBJECT_WRAPPER problems
I'm trying to use the new serialization support and getting a compile error I don't really understand. For the following code: - class Foo : public osg::Group { public: Foo() {} void setNote(std::string s) { _note = s; } const std::string getNote() const { return _note; } void setNumber(int n) { _num = n; } const int getNumber() const { return _num; } private: std::string _note; int _num; }; REGISTER_OBJECT_WRAPPER( Foo, new Foo, Foo, osg::Object osg::Node osg::Group Foo ) { ADD_STRING_SERIALIZER(Note, v); ADD_INT_SERIALIZER(Number, 0); } - I get the following compile-time error: g++ -DDarwin -g -ggdb3 -32 -m32 -I. -I/usr/local/include -c -o obj/multiTree.o ./multiTree.cpp ./multiTree.cpp: In function 'void wrapper_propfunc_Foo(osgDB::ObjectWrapper*)': ./multiTree.cpp:42: error: no matching function for call to 'osgDB::StringSerializerFoo::StringSerializer(const char [5], const char [2], const std::string (Foo::*)()const, void (Foo::*)(std::string))' /usr/local/include/osgDB/Serializer:425: note: candidates are: osgDB::StringSerializerC::StringSerializer(const char*, const std::string, const std::string (C::*)()const, void (C::*)(const std::string)) [with C = Foo] /usr/local/include/osgDB/Serializer:419: note: osgDB::StringSerializerFoo::StringSerializer(const osgDB::StringSerializerFoo) ./multiTree.cpp:43: error: no matching function for call to 'osgDB::PropByValSerializerFoo, int::PropByValSerializer(const char [7], int, const int (Foo::*)()const, void (Foo::*)(int))' /usr/local/include/osgDB/Serializer:205: note: candidates are: osgDB::PropByValSerializerC, P::PropByValSerializer(const char*, P, P (C::*)()const, void (C::*)(P), bool) [with C = Foo, P = int] /usr/local/include/osgDB/Serializer:199: note: osgDB::PropByValSerializerFoo, int::PropByValSerializer(const osgDB::PropByValSerializerFoo, int) make: *** [obj/multiTree.o] Error 1 If I comment out the REGISTER_OBJECT_WRAPPER macro use, the code compiles without problem. Clearly this macro is working fine for the OSG library code, so I'm sure it's my mistake. I just can't decipher the error message to know what to fix. Can someone give me the clue as to what I'm doing wrong? Lee ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] getting the render of a camera and set ting it as an another object´s texture
Hi David, Take a look at osgprerender example, it is what you are looking for. Mourad On Wed, Mar 24, 2010 at 2:35 PM, David Martín solid_david...@hotmail.comwrote: Hi, i´ve got an application with a osgViewer::Viewer* for the rendering. i´d like to know if is possible to grab the render image of that viewer and set it up as an another object´s texture i know how to set a texture for an object, so what i´d like to know is how to access the color buffer target of the viewer´s camera Thank you! Cheers, David -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=26071#26071 ___ 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] REGISTER_OBJECT_WRAPPER problems
Hi Butler, To make use of serializers, your class requires a namespace, for example, NS::Foo. And then override className() and libraryName(), the META_Object macro would help a lot. To use ADD_STRING_SERIALIZER. Your should have a pair of suitable functions: void setNote(const std::string); const std::string getNote() const; And ADD_INT_SERIALIZER requires a little different approach: void setNumber(int); int getNumber() const; Basic data types like bool, int and float, doesn't need a prefix const here. Regards, Wang Rui 2010/3/24 Butler, Lee Mr CIV USA USAMC lee.but...@us.army.mil: I'm trying to use the new serialization support and getting a compile error I don't really understand. For the following code: - class Foo : public osg::Group { public: Foo() {} void setNote(std::string s) { _note = s; } const std::string getNote() const { return _note; } void setNumber(int n) { _num = n; } const int getNumber() const { return _num; } private: std::string _note; int _num; }; REGISTER_OBJECT_WRAPPER( Foo, new Foo, Foo, osg::Object osg::Node osg::Group Foo ) { ADD_STRING_SERIALIZER(Note, v); ADD_INT_SERIALIZER(Number, 0); } - I get the following compile-time error: g++ -DDarwin -g -ggdb3 -32 -m32 -I. -I/usr/local/include -c -o obj/multiTree.o ./multiTree.cpp ./multiTree.cpp: In function 'void wrapper_propfunc_Foo(osgDB::ObjectWrapper*)': ./multiTree.cpp:42: error: no matching function for call to 'osgDB::StringSerializerFoo::StringSerializer(const char [5], const char [2], const std::string (Foo::*)()const, void (Foo::*)(std::string))' /usr/local/include/osgDB/Serializer:425: note: candidates are: osgDB::StringSerializerC::StringSerializer(const char*, const std::string, const std::string (C::*)()const, void (C::*)(const std::string)) [with C = Foo] /usr/local/include/osgDB/Serializer:419: note: osgDB::StringSerializerFoo::StringSerializer(const osgDB::StringSerializerFoo) ./multiTree.cpp:43: error: no matching function for call to 'osgDB::PropByValSerializerFoo, int::PropByValSerializer(const char [7], int, const int (Foo::*)()const, void (Foo::*)(int))' /usr/local/include/osgDB/Serializer:205: note: candidates are: osgDB::PropByValSerializerC, P::PropByValSerializer(const char*, P, P (C::*)()const, void (C::*)(P), bool) [with C = Foo, P = int] /usr/local/include/osgDB/Serializer:199: note: osgDB::PropByValSerializerFoo, int::PropByValSerializer(const osgDB::PropByValSerializerFoo, int) make: *** [obj/multiTree.o] Error 1 If I comment out the REGISTER_OBJECT_WRAPPER macro use, the code compiles without problem. Clearly this macro is working fine for the OSG library code, so I'm sure it's my mistake. I just can't decipher the error message to know what to fix. Can someone give me the clue as to what I'm doing wrong? Lee ___ 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] Error in Databasepager::run
Hi Richard, On Wed, Mar 24, 2010 at 2:54 PM, Schmidt, Richard richard.schm...@eads.com wrote: Hi Robert, i am using 2.8.2 The method getParentalNodePaths is used to retrieve the parent node paths. This is done in the database pager thread. However these node paths might change while traversing them, because the user may change the scenegraph in the update loop. This case also occurs when the DatabasePager itself expires subgraphs out from underneath the PagedLOD being server. One has to set an aggressive expiry of subgraphs and move the camera very fast between locations to cause this, with help of a user I was able to reproduce it reliably. The new DatabasePager fixes this issue and is very likely to fix the issue you've been seeing. Back porting the changes to DatabasePager to the OSG-2.8 branch is possible, but it does require merging changes to OpenThreads, osg::Referenced, osg::Observer/observer_ptr, introduction of a new ObserverNodePath class. The breadth of changes make it risky to merge with OSG-2.8, so I believe Paul Martz won't be merging these for 2.8.3. To get access to the fixes you'll need to use 2.9.7 or svn/trunk. Robert. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] need help with cmake / osg / os x / frameworks
Hi Martins, Am 24.03.10 16:03, schrieb Martins Innus: Have you made any progress on this? I tried your files and got similar behavior with respect to the osgViewer headers in the framework. Although I don't even get an api directory in osgViewer.framework/headers/ Let me know if you have any news files to test. I'll continue to dig on this end. Unfortunately no progress made on my end. If I have some spare-time this or next week I'll subscribe to the cmake-mailing list and ask for help. cheers, Stephan ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] 2.8.3-rc1 tagged
On Mar 24, 2010, at 1:19 AM, Stephan Huber wrote: OpenThreads is still part of the xcode-project (there should be a target for it) and may not be removed. Paul removed the redundant OpenThreads folder from the xcode folder because it doesn't make sense, to have a separate xcode-project file for OpenThreads as OpenThreads is now part of OpenSceneGraph. Ok, neat. So then the --framework OpenThreads needs to be removed from various Xcode targets, AFAICT. Bruce ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] light multi-parenting
As for limitation osg::Light/LightSource/OpenGL lighting all work with the same limitations - that is there is only ever guaranteed to be 8 fixed function pipeline light supported. If you want to use more than 8 then you'll need to use shaders, or localize the lights to difference subgraphs have different lights assigned for them. The fact you need to position lights as well means that one has to apply the appropriate modelview matrix for each of these lights before application, which complicated the implementation. The only way to tackle this right now with the OSG is to break the scene up into separate subgraphs that each target their own RenderStage. This is possible, but awkward at present. Thanks. Things are very clear now. If I develop a solution worthy to be shared with others, I will be back. Thanks once again, John ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] osgText - fragment shader - font texture
Hi Yuriy, The default freetype font uses alpha textures, so only the alpha component of the texture contains the font data. Here is a basic fragment shader that should work with the freetype font plugin: uniform sampler2D bitmap; void main() { gl_FragColor = texture2D(bitmap, gl_TexCoord[0].st).; } Cheers, Farshid On Wed, Mar 24, 2010 at 1:54 AM, Yuriy A Rudomyotov u...@te.net.ua wrote: Hi, I try to use shaders with osgText to make some effects with text. But how I can set up uniform variable with font texture to process it in fragment shader? Or may be I should do something another to have result? Primitive fragment shader: Code: uniform sampler2D bitmap; varying vec2 texelCoord; void main( void ) { gl_FragColor = vec4( texture2D( bitmap, texelCoord ) ); } Code which sets the variable: Code: //... osg::Uniform* bitmap = new osg::Uniform(bitmap, osg::Uniform::SAMPLER_2D); bitmap-set(??); text-getOrCreateStateSet()-addUniform(bitmap); //... Thank you! -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=26059#26059 ___ 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] Stereoscopic Problems
Hi Ronny, It looks like the stencil buffer is not being properly setup. Are you sure that your application allocates a stencil buffer when creating the OpenGL context? Cheers, Farshid On Mon, Mar 22, 2010 at 2:04 PM, Ronny Hatteland ronnyhattel...@gmail.comwrote: Hi, When activating horizontal/vertical interlace or checkerboard, I get the following result: img229.imageshack.us/img229/9520/stereofy.png I tried my application with horizontal interlace enabled on my thinkpad laptop where I got interlace working as expected. Thus I assumed this might be caused by the display driver; I installed 196.21_desktop_win7_winvista_64bit_international_whql and the beta driver 197.13_desktop_win7_winvista_64bit_international, none of which solved the problem. I currently have two GeForce GTX260 setup in non-SLI using three monitors. Any suggestions? I also tried to change the stereoscopic mode after initializing the camera and viewer (the camera variable is set as a public member of the mOSG class): Code: void CMyView::SetStereoscopicMode(DisplaySettings::StereoMode mode) { DisplaySettings *stereoSettings = new DisplaySettings(); if (mode == NULL) stereoSettings-setStereo(false); else { stereoSettings-setStereo(true); stereoSettings-setStereoMode(mode); } mOSG-camera-setDisplaySettings(stereoSettings); // Works fine mOSG-getViewer()-getCamera()-setDisplaySettings(stereoSettings); // Does not work } Is there a way to make -getViewer()-getCamera() work and leave the camera variable protected/private? Thank you! Best Regards Ronny Hatteland -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=25986#25986 Attachments: http://forum.openscenegraph.org//files/stereo_152.png ___ 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] Stereoscopic Problems
Thanks for the response Farshid, That might be the case. How/Where can I check if the stencil buffer is set correctly? Btw I just tried on another computer with Nvidia graphics (8800GTX) using OSG 2.8.3-rc1 (I used 2.8.2 previously), also being unable to draw the patterns. I imagine this is a bug regarding Nvidia graphics since it is working on my computer with an Intel mobile graphics display driver. Best Regards Ronny Hatteland -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=26101#26101 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [osgPPU] osgPPU Windows XP Install Guide
Hi, well, I found the examples... in of all places, the downloaded files for the osgPPU project. Art, I have a problem installing, I think. Everything compiles except for one project: cudakernel. The MSVS 2005 tells: 1C:/Program Files/OpenSceneGraph-2.8.2/include\osg/GL(93): error: identifier glLoadMatrixf is undefined 1C:/Program Files/OpenSceneGraph-2.8.2/include\osg/GL(94): error: identifier glLoadMatrixd is undefined 1C:/Program Files/OpenSceneGraph-2.8.2/include\osg/GL(95): error: identifier glMultMatrixf is undefined 1C:/Program Files/OpenSceneGraph-2.8.2/include\osg/GL(96): error: identifier glMultMatrixd is undefined 1C:/Program Files/OpenSceneGraph-2.8.2/include\osg/Referenced(131): warning: field of class type without a DLL interface used in a class with a DLL interface 1C:/Program Files/OpenSceneGraph-2.8.2/include\osg/Referenced(133): warning: field of class type without a DLL interface used in a class with a DLL interface 1C:/Program Files/OpenSceneGraph-2.8.2/include\osg/Object(162): warning: field of class type without a DLL interface used in a class with a DLL interface 1C:/Program Files/OpenSceneGraph-2.8.2/include\osg/Object(164): warning: field of class type without a DLL interface used in a class with a DLL interface 1C:/Program Files/OpenSceneGraph-2.8.2/include\osg/DisplaySettings(241): warning: field of class type without a DLL interface used in a class with a DLL interface 1C:/Program Files/OpenSceneGraph-2.8.2/include\osg/BufferObject(121): error: variable GLenum is not a type name 1C:/Program Files/OpenSceneGraph-2.8.2/include\osg/BufferObject(124): error: variable GLenum is not a type name 1C:/Program Files/OpenSceneGraph-2.8.2/include\osg/BufferObject(141): error: variable GLuint is not a type name 1C:/Program Files/OpenSceneGraph-2.8.2/include\osg/BufferObject(174): error: variable GLuint is not a type name 1C:/Program Files/OpenSceneGraph-2.8.2/include\osg/BufferObject(203): error: variable GLuint is not a type name 1C:/Program Files/OpenSceneGraph-2.8.2/include\osg/BufferObject(204): error: variable GLenum is not a type name 1C:/Program Files/OpenSceneGraph-2.8.2/include\osg/BufferObject(204): error: variable GLuint is not a type name 1C:/Program Files/OpenSceneGraph-2.8.2/include\osg/BufferObject(205): error: variable GLenum is not a type name 1C:/Program Files/OpenSceneGraph-2.8.2/include\osg/BufferObject(205): error: variable GLenum is not a type name 1C:/Program Files/OpenSceneGraph-2.8.2/include\osg/BufferObject(206): error: variable GLenum is not a type name 1C:/Program Files/OpenSceneGraph-2.8.2/include\osg/BufferObject(207): error: variable GLuint is not a type name 1C:/Program Files/OpenSceneGraph-2.8.2/include\osg/BufferObject(208): error: variable GLboolean is not a type name 1C:/Program Files/OpenSceneGraph-2.8.2/include\osg/BufferObject(208): error: variable GLuint is not a type name Would you please help me understand this error? I believe it is stopping me from installing the osgPPU into my openscenegraph directory correctly. I do have the GL.h file and it is in a directory which is findable by MSVS 2005. But, for some reason, MSVS refuses to see the gl.h file. Thank you! Cheers, Allen -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=26102#26102 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] bluring model edges
Hi, Thx! I found them. Cheers, Allen -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=26103#26103 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] bluring model edges
Guy and Julia I still can not get this code snippet to work. Would you please tell me what I might be missing? I've provided my sample code and have commented out the code snippet below because I could never see any changes. Guy wrote: Julia, I never tried it but you should enable GL_POLYGON_SMOOTH, and enable alpha blending for the object you want to 'blur'. For example: osg::StateSet * stateset = geode-getOrCreateStateSet(); stateset-setMode(GL_POLYGON_SMOOTH, osg::StateAttribute::ON); osg::BlendFunc *fn = new osg::BlendFunc(); fn-setFunction(osg::BlendFunc::SRC_ALPHA, osg::BlendFunc::ONE_MINUS_SRC_ALPHA); stateset-setAttributeAndModes(fn, osg::StateAttribute::ON); stateset-setMode(GL_BLEND, osg::StateAttribute::ON); stateset-setRenderingHint(osg::StateSet::TRANSPARENT_BIN); Good luck, Guy. Hi, Is it possible to blur the edges of a model in OSG with whatever is behind? Currently the edges of the models in my scene are too sharp and would look better if there was a translucent overlap at the edges. Is this possible to achieve in OSG, or is this kind of functionality more relevant to OpenGL? Thank you, Julia -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=8918#8918 ___ osg-users mailing list http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.or g ___ 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=26104#26104 Attachments: http://forum.openscenegraph.org//files/exampleosg1_185.cpp ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] ffmpeg plays correct, but slows down after loop
Hi, Has anyone experienced the slowing down of video (approx half speed) after it loops? ie, the movie plays at regular speed the first iteration, but once it loops, the speed is slow. This is an FFMPEG plugin issue. I can reproduce this with the osgmovie example (unmodified) in OSG 2.9.7 The plugin reports the following for the video: Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'OceanBeach1_FullShortShort_H264.mov': Duration: 00:02:24.23, start: 0.00, bitrate: 15663 kb/s Stream #0.0(eng): Audio: pcm_s16le, 48000 Hz, stereo, s16, 1536 kb/s Stream #0.1(eng): Video: h264, yuv420p, 1024x1024, 30 tbr, 600 tbn, 1200 tbc One last question: What is the optimal format for ffmpeg + osg? Thanks, Mike Wozniewski ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Stereoscopic Problems
I got the osgScreenCapture example working with horizontal interlace, so probably there must be something wrong with how I have implemented it in my project. I will look into it, maybe I'll sort out my mistake by going scrupulously through the example ;) Cheers, Ronny -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=26106#26106 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] custom WindowProc for handling multitouch events
Hi, I am wondering how I may incorporate custom windows messages into an osg-based application that creates several windows using GraphicsContext::createGraphicsContext(). What I'm trying to do is, to implement multitouch capabilities, therefore I have to handle the native WM_TOUCH messages in the window procedure. Since I noticed that the WindowProc function in GraphicsWindowWin32.cpp just calls the handleNativeWindowingEvent method of the according GraphicsContext instance, so my first idea was to create a class that derives from GraphicsWindowWin32 and overwrites this method. But there does not seem to be a possibility to trick the Win32WindowingSystem to use this class instead. Of course, I could take care about class registration and window creation on my own, but I'd rather use the provided convenience functions. I also could do a hack in osg itself, as suggested in this thread (http://forum.openscenegraph.org/viewtopic.php?t=2271highlight=), but I also would like to avoid that. Another way would be to install a windows message hook. I would prefer to to this as sober as possible to avoid problems later on. Are there any best practices for handling windows messages in osg? Are you already providing an interface for that, which I was not able to find? Thanks! Cheers, Jason. ithrak (Jason Fisher) -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=26107#26107 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [osgOcean] Error with osgOcean-VBO Example!
zonk wrote: Hi, well, must of this forum's users are not chinese aware ;) can you translate the error message into english? Thank you! Cheers, Torben Hi Torben: Sorry about that! I was a little wrought-up when I met this problem. I have translate the error! -MT -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=26110#26110 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [osgOcean] Error with osgOcean-VBO Example!
Kim Bale wrote: Oceansurface wasn't initialised, I've fixed and checked this in to the branch. Only additional hardware requirement is VBO support which I gather is pretty standard. If you find that you have problems with this you can disable the use of VBOs in the FFTOceanSurfaceVBO constructor and recompile. It should still work. Regards, Kim. Hi Kim: Thanks! Your modification have fixed the problem! But a new problem occured. The screen shot is as bellow! Cheers, Tian -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=26111#26111 Attachments: http://forum.openscenegraph.org//files/new_error_180.jpg ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Error with pixel puffer in trunk
HI all, I have now resolved the issue. I am not sure exactly what the PBO issue was but I suspect I failed properly clean my build. The artefacts were present as it seems that the default behaviour of PRE_RENDER cameras has changed with respect to their clear masks. To fix my issue all I had to do was explicitly tell each of my PRE_RENDER cameras to clear the depth and colour buffers. Cheers, Brad From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Christiansen, Brad Sent: Thursday, 25 March 2010 10:59 AM To: osg-users (osg-users@lists.openscenegraph.org) Subject: [osg-users] Error with pixel puffer in trunk Hi all, I know this isn't much info to go on but, I have just updated my OSG release from 2.9.5 to yesterdays trunk. Since the update, in my application, which is based on the MFC example (though my native window handle comes from Java) I am getting some very 'interesting' visual artefacts and the following error (about 10 times on start-up, then every time I resize the window or do the RTT): no PixelBufferObject , pbo= As far as I am aware I am never even requesting a PBO. The artefacts I am seeing are related to two (extra) cameras I have in the scene. Both cameras are pre-render, one renders a star field with a very large far plane value (the depth buffer is then cleared by the main camera) and the second camera does a RTT which is projected onto the globe. I am seeing the objects rendered by the cameras but they do not seem to be doing the correct clear operations. I have not modified any of my code, just simply re-built it. I have attached a screen shot to demonstrate the artefacts. I have no idea where to look to track down the issue. Any suggestions would be greatly appreciated. I am setting up the graphics context exactly as I was before: RECT rect; // Get the current window size ::GetWindowRect(hwnd, rect); // Init the GraphicsContext Traits osg::ref_ptrosg::GraphicsContext::Traits traits = new osg::GraphicsContext::Traits; // Init the Windata Variable that holds the handle for the Window to display OSG in. osg::ref_ptrosg::Referenced windata = new osgViewer::GraphicsWindowWin32::WindowData(hwnd, true); // Setup the traits parameters traits-x = 0; traits-y = 0; traits-width = rect.right - rect.left; traits-height = rect.bottom - rect.top; traits-windowDecoration = false; traits-doubleBuffer = true; traits-sharedContext = 0; traits-setInheritedWindowPixelFormat = true; traits-inheritedWindowData = windata; osg::GraphicsContext* gc = osg::GraphicsContext::createGraphicsContext(traits.get()); m_viewer-getCamera()-setGraphicsContext(gc); m_viewer-setThreadingModel(osgViewer::ViewerBase::SingleThreaded); Cheers, Brad DISCLAIMER:--- This e-mail transmission and any documents, files and previous e-mail messages attached to it are private and confidential. They may contain proprietary or copyright material or information that is subject to legal professional privilege. They are for the use of the intended recipient only. Any unauthorised viewing, use, disclosure, copying, alteration, storage or distribution of, or reliance on, this message is strictly prohibited. No part may be reproduced, adapted or transmitted without the written permission of the owner. If you have received this transmission in error, or are not an authorised recipient, please immediately notify the sender by return email, delete this message and all copies from your e-mail system, and destroy any printed copies. Receipt by anyone other than the intended recipient should not be deemed a waiver of any privilege or protection. Thales Australia does not warrant or represent that this e-mail or any documents, files and previous e-mail messages attached are error or virus free. -- DISCLAIMER:--- This e-mail transmission and any documents, files and previous e-mail messages attached to it are private and confidential. They may contain proprietary or copyright material or information that is subject to legal professional privilege. They are for the use of the intended recipient only. Any unauthorised viewing, use, disclosure, copying, alteration, storage or distribution of, or reliance on, this message is strictly prohibited. No part may be reproduced, adapted or transmitted without the written permission of the owner. If you have received this transmission in error, or are not an authorised recipient, please immediately notify the sender by return email, delete this message and all copies from your e-mail system, and destroy any printed copies. Receipt by anyone other than the
Re: [osg-users] osgocean performances
Hi Kim, getting the same exception as Jean Sebastian from the other thread -Nick On Wed, Mar 24, 2010 at 10:50 AM, Kim Bale kcb...@googlemail.com wrote: http://osgocean.googlecode.com/svn/branches/osgOcean-VBO/ Kim On 24 March 2010 08:06, Trajce (Nick) Nikolov nikolov.tra...@gmail.comwrote: Hi Kim, from where I can download that code? I try the googlecode trunk, but not seeing the VBO example -Nick On Wed, Mar 24, 2010 at 12:11 AM, Kim Bale kcb...@googlemail.com wrote: Nick, One thing I forgot. To test the VBO code use the flag --vbo when running the examples. Kim. On 23 March 2010 22:08, Kim Bale kcb...@googlemail.com wrote: Hi Nick, Paul (Palumbo) and I have been working on a new VBO ocean technique which uses instances of the ocean tiles to create the ocean surface rather than doing a mass copy of vertices for the entire surface on each frame. Using this technique the number of tiles that need to be updated on each mipmap change has decreased significantly. You could try the code in osgOcean-VBO branch to see if it provides you with better performance. It should be more scalable for large or higher resolution ocean surfaces. I should however point out there are some issues with this new technique that still need ironing out (thus the branch and not in the trunk). Paul has highlighted problems when he linked it to 2.9.7. so please note this is still dev code. Let me know how you get on, Kim. On 23 March 2010 17:11, Trajce (Nick) Nikolov nikolov.tra...@gmail.com wrote: Hi Community, I ve worked so far on standard PC architecture, middle range, and I was kind of frustrated with the performances of osgocean. So I build something heavy, like i7 3.3GHz, 3 SLI and was expecting to see huge difference, With high res ocean I got from 10Hz to 17-20Hz. Kind a disappointed. What are your experiences for those who use it? -Nick ___ 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 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 mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org