Re: [osg-users] osg(terrain) krasches on a double delete
Hi, I didn't notice a slowdown either. I will leave it running overnight with the FPS showing. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Ola Nilsson Sent: Tuesday, 21 August 2012 5:36 PM To: OpenSceneGraph Users Subject: Re: [osg-users] osg(terrain) krasches on a double delete Interesting. Did you notice any slowdown? In my experience, even if the crash doesn't happen for a long time, a significant slowdown is almost immediate. Ola On Tue, 21 Aug 2012 07:41:27 +0200, Christiansen, Brad brad.christian...@thalesgroup.com.au wrote: Hi, As another data point for you, I tried to reproduce the crash on a Win 7 machine (VS2010) using a trunk build from a few weeks ago, and couldn't reproduce the crash. I left the example running for about 10 minutes with the camera spinning. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Ola Nilsson Sent: Thursday, 9 August 2012 11:41 PM To: OpenSceneGraph Users Subject: Re: [osg-users] osg(terrain) krasches on a double delete Here is some more info on how to reproduce our crash. 1. Compile the attached osgterrain program by overwriting examples/osgterrain/osgterrain.cpp and recompile. 2. Run the program with http://www.openscenegraph.org/data/earth_bayarea/earth.ive as input. 3. Wait (no further input is necessary). However, camera movement (tile loading) produces earlier crashes. The attached image shows performance of a typical run (without user input) where the frame time cyclically increases until the program crashes. Cheers, Ola ps. The output from the program is: iteration sample_ratio frame_time On Tue, 07 Aug 2012 11:59:00 +0200, Ola Nilsson o...@weatherone.tv wrote: Hi, We have been looking for a hard-to-reproduce crash in our software that seems to originate from a double delete inside osg. I have (finally) been able to reproduce the crash using a version of the osgterrain-example that _exaggerates_ the usage pattern that crashes our application. In examples/osgterrain.cpp remove return viwer.run(); an exchange it with: while(!viewer.done()) { osg::Timer_t start_tick = osg::Timer::instance()-tick(); float sr = rand() * 1.0 / RAND_MAX ; std::cerr sr; viewer.getCamera()-setLODScale(sr*10); terrain-setSampleRatio( sr ); osg::Timer_t middle_tick = osg::Timer::instance()-tick(); std::cerr osg::Timer::instance()-delta_m(start_tick, middle_tick) std::flush; viewer.frame(); std::cerr ' ' osg::Timer::instance()-delta_m(middle_tick, osg::Timer::instance()-tick()) std::endl; } return 0; When run (tested on ive earth models generated with osgdem) the frame time slowly increases, and, after a while, it warns about deleting a still referenced object and then (after arbitrary time) crashes with a glibc error. Is this usage (setLODScale + setSampleRatio) safe? If not how should these functions be called? If it's a bug, we would be _very_ happy to have it fixed or pointers about where to look in the code. We've previously submitted a patch that switched to a ReentrantMutex in osgTerrain/Terrain.cpp (changeset 12904), could this be a similar issue? My system is running Centos 6.3 (x86_64) and I compiled osg in debug mode with gcc 4.4.6. I have tested both against the 3.0.1 tag and trunk (r13106). Since I suspect a threading issue; OpenThreads/Config looks like this: #define _OPENTHREADS_ATOMIC_USE_GCC_BUILTINS /* #undef _OPENTHREADS_ATOMIC_USE_MIPOSPRO_BUILTINS */ /* #undef _OPENTHREADS_ATOMIC_USE_SUN */ /* #undef _OPENTHREADS_ATOMIC_USE_WIN32_INTERLOCKED */ /* #undef _OPENTHREADS_ATOMIC_USE_BSD_ATOMIC */ /* #undef _OPENTHREADS_ATOMIC_USE_MUTEX */ /* #undef OT_LIBRARY_STATIC */ If I set a break point in the warning for deleting still referenced I get the following stack trace (using the osg 3.0.1 tag): Breakpoint 1, osg::Referenced::~Referenced (this=0xaec2160, __in_chrg=value optimized out) at /home/ola/src/OpenSceneGraph-3.0.1/src/osg/Referenced.cpp:236 236 OSG_WARNWarning: deleting still referenced object this of type 'typeid(this).name()'std::endl; (gdb) bt #0 osg::Referenced::~Referenced (this=0xaec2160, __in_chrg=value optimized out) at /home/ola/src/OpenSceneGraph-3.0.1/src/osg/Referenced.cpp:236 #1 0x779e467c in osg::Object::~Object (this=0xaec2160, __in_chrg=value optimized out) at /home/ola/src/OpenSceneGraph-3.0.1/src/osg/Object.cpp:45 #2 0x779dd71d in osg::Node::~Node (this=0xaec2160, __in_chrg=value optimized out) at /home/ola/src/OpenSceneGraph-3.0.1/src/osg/Node.cpp:94 #3 0x77993953 in osg::Group::~Group (this=0xaec2160, __in_chrg=value optimized out) at /home/ola/src/OpenSceneGraph-3.0.1/src/osg/Group.cpp:53 #4
Re: [osg-users] osg(terrain) krasches on a double delete
Hi, I have managed to reproduce the crash during the overnight run. The stack trace looks the very similar. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Robert Osfield Sent: Wednesday, 22 August 2012 2:44 AM To: OpenSceneGraph Users Subject: Re: [osg-users] osg(terrain) krasches on a double delete Hi Ola et. al, I've looked at the problem Terrain containers and they present an interesting issue - the std::setTerrainTile* that is used can't easily be converted into an std::set osg::observer_ptrTerrainTile as the observer_ptr can have it's value changed to NULL by another thread when destructing the observed TerrainTile and std::set require their values to be const. What will be required is a custom container of osg::oberserver_ptr along the lines of osg::OberservedNodePath but written to manage it's contents in a similar way to a std::set. Robert. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org - 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] osg(terrain) krasches on a double delete
Hi, I forgot to mention my interest in this: While I don't change the sample ratio in our application, I do rebuild the tile meshes in a similar way when the user changes the elevation data being used on the fly. This issue could explain a very rare crash in our application I have seen but have never been able to reproduce. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Christiansen, Brad Sent: Wednesday, 22 August 2012 11:05 AM To: OpenSceneGraph Users Subject: Re: [osg-users] osg(terrain) krasches on a double delete Hi, I have managed to reproduce the crash during the overnight run. The stack trace looks the very similar. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Robert Osfield Sent: Wednesday, 22 August 2012 2:44 AM To: OpenSceneGraph Users Subject: Re: [osg-users] osg(terrain) krasches on a double delete Hi Ola et. al, I've looked at the problem Terrain containers and they present an interesting issue - the std::setTerrainTile* that is used can't easily be converted into an std::set osg::observer_ptrTerrainTile as the observer_ptr can have it's value changed to NULL by another thread when destructing the observed TerrainTile and std::set require their values to be const. What will be required is a custom container of osg::oberserver_ptr along the lines of osg::OberservedNodePath but written to manage it's contents in a similar way to a std::set. Robert. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org - 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org - 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] osg(terrain) krasches on a double delete
Hi, As another data point for you, I tried to reproduce the crash on a Win 7 machine (VS2010) using a trunk build from a few weeks ago, and couldn't reproduce the crash. I left the example running for about 10 minutes with the camera spinning. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Ola Nilsson Sent: Thursday, 9 August 2012 11:41 PM To: OpenSceneGraph Users Subject: Re: [osg-users] osg(terrain) krasches on a double delete Here is some more info on how to reproduce our crash. 1. Compile the attached osgterrain program by overwriting examples/osgterrain/osgterrain.cpp and recompile. 2. Run the program with http://www.openscenegraph.org/data/earth_bayarea/earth.ive as input. 3. Wait (no further input is necessary). However, camera movement (tile loading) produces earlier crashes. The attached image shows performance of a typical run (without user input) where the frame time cyclically increases until the program crashes. Cheers, Ola ps. The output from the program is: iteration sample_ratio frame_time On Tue, 07 Aug 2012 11:59:00 +0200, Ola Nilsson o...@weatherone.tv wrote: Hi, We have been looking for a hard-to-reproduce crash in our software that seems to originate from a double delete inside osg. I have (finally) been able to reproduce the crash using a version of the osgterrain-example that _exaggerates_ the usage pattern that crashes our application. In examples/osgterrain.cpp remove return viwer.run(); an exchange it with: while(!viewer.done()) { osg::Timer_t start_tick = osg::Timer::instance()-tick(); float sr = rand() * 1.0 / RAND_MAX ; std::cerr sr; viewer.getCamera()-setLODScale(sr*10); terrain-setSampleRatio( sr ); osg::Timer_t middle_tick = osg::Timer::instance()-tick(); std::cerr osg::Timer::instance()-delta_m(start_tick, middle_tick) std::flush; viewer.frame(); std::cerr ' ' osg::Timer::instance()-delta_m(middle_tick, osg::Timer::instance()-tick()) std::endl; } return 0; When run (tested on ive earth models generated with osgdem) the frame time slowly increases, and, after a while, it warns about deleting a still referenced object and then (after arbitrary time) crashes with a glibc error. Is this usage (setLODScale + setSampleRatio) safe? If not how should these functions be called? If it's a bug, we would be _very_ happy to have it fixed or pointers about where to look in the code. We've previously submitted a patch that switched to a ReentrantMutex in osgTerrain/Terrain.cpp (changeset 12904), could this be a similar issue? My system is running Centos 6.3 (x86_64) and I compiled osg in debug mode with gcc 4.4.6. I have tested both against the 3.0.1 tag and trunk (r13106). Since I suspect a threading issue; OpenThreads/Config looks like this: #define _OPENTHREADS_ATOMIC_USE_GCC_BUILTINS /* #undef _OPENTHREADS_ATOMIC_USE_MIPOSPRO_BUILTINS */ /* #undef _OPENTHREADS_ATOMIC_USE_SUN */ /* #undef _OPENTHREADS_ATOMIC_USE_WIN32_INTERLOCKED */ /* #undef _OPENTHREADS_ATOMIC_USE_BSD_ATOMIC */ /* #undef _OPENTHREADS_ATOMIC_USE_MUTEX */ /* #undef OT_LIBRARY_STATIC */ If I set a break point in the warning for deleting still referenced I get the following stack trace (using the osg 3.0.1 tag): Breakpoint 1, osg::Referenced::~Referenced (this=0xaec2160, __in_chrg=value optimized out) at /home/ola/src/OpenSceneGraph-3.0.1/src/osg/Referenced.cpp:236 236 OSG_WARNWarning: deleting still referenced object this of type 'typeid(this).name()'std::endl; (gdb) bt #0 osg::Referenced::~Referenced (this=0xaec2160, __in_chrg=value optimized out) at /home/ola/src/OpenSceneGraph-3.0.1/src/osg/Referenced.cpp:236 #1 0x779e467c in osg::Object::~Object (this=0xaec2160, __in_chrg=value optimized out) at /home/ola/src/OpenSceneGraph-3.0.1/src/osg/Object.cpp:45 #2 0x779dd71d in osg::Node::~Node (this=0xaec2160, __in_chrg=value optimized out) at /home/ola/src/OpenSceneGraph-3.0.1/src/osg/Node.cpp:94 #3 0x77993953 in osg::Group::~Group (this=0xaec2160, __in_chrg=value optimized out) at /home/ola/src/OpenSceneGraph-3.0.1/src/osg/Group.cpp:53 #4 0x75df4ae8 in osgTerrain::TerrainTile::~TerrainTile (this=0xaec2160, __in_chrg=value optimized out) at /home/ola/src/OpenSceneGraph-3.0.1/src/osgTerrain/TerrainTile.cpp:95 #5 0x75df4b1e in osgTerrain::TerrainTile::~TerrainTile (this=0xaec2160, __in_chrg=value optimized out) at /home/ola/src/OpenSceneGraph-3.0.1/src/osgTerrain/TerrainTile.cpp:95 #6 0x77a131a6 in osg::Referenced::signalObserversAndDelete (this=0xaec2160, signalDelete=true, doDelete=true) at /home/ola/src/OpenSceneGraph-3.0.1/src/osg/Referenced.cpp:323 #7 0x0040b07d in osg::Referenced::unref (this=0xaec2160) at
[osg-users] Nvidia Optimus / AMD switchable
Hi, I am looking at getting a couple of laptops with Nvidias 'Optimus' switchable graphics and AMDs equivalent. My hope is to be able to manually switch between the two so I can test our application using both discrete and Intel graphics. There was a thread back in September of last year which didn't sound too encouraging. Can anyone provide any feedback on the current state of these technologies when running OSG based applications? 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Frame Rate Decay w/ Silver Lining Integration
Hi, Sorry it has taken so long to respond. The joy of releases! The issue was resolved by updating to the 300 series drivers (had to use a modified inf file to be able to install drivers more recent than 276 for my laptop, that is why I didn't try this straight away.) Turning off threaded optimisations didn't seem to help. Cheers, Brad From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Wojciech Lewandowski Sent: Saturday, 17 March 2012 10:33 PM To: OpenSceneGraph Users Subject: Re: [osg-users] Frame Rate Decay w/ SilverLining Integration Hi Brad, Thank you for the report. I personally investigated and reported another issue with VBOs on Nvidia drivers few months ago. And that issue was fixed in 290 driver series. It may be a long shot but I am just curious if these two problems could be related. While investigating my issue (http://forum.openscenegraph.org/viewtopic.php?t=9258postdays=0postorder=ascstart=0). I got following post from Ruben Smelik: [..] This mail reminded me of an issue I had a couple of years ago with VBO's on a particular Windows pc with a 9800GX2. I thought it was an issue of that PC, as it was quite unstable, so I didn't report the problem at that time. The solution I accidently found back then was to turn off Threaded Optimization in the NVidia Control Panel (Auto per default). But now I'm getting the bad result of your test on a GTX 480 (266.58 driver), and that fix works again. After turning off Threaded Optimization, I see the proper gradient displayed. Could you try this as well? [..] Your drivers are 276.21 so pretty close to 266.58 Ruben used. So I am now also curious if you could try to turn off Threaded Optimization and/or try newer drivers and see if the problem still exsists. Cheers, Wojtek 2012/3/16 Christiansen, Brad brad.christian...@thalesgroup.com.aumailto:brad.christian...@thalesgroup.com.au Hi Woktej, Thanks for you offer to help out, but I have managed to track it down enough to have a good enough solution for now. For anyone else who stumbles across this issue, my work around is to disable VBOs in silverlining. If I did this by using the SILVERLINING_NO_VBO environment variable it crashed so I simply hard coded them to off in SilverLiningOpenGL.cpp. I narrowed down the source of the issue to calls to AllocateVertBuffer in the same file. Even if the buffers are never used, simply allocating them for the 6 faces of the sky box is enough to cause things to go wrong. I am using version 2.35 of SilverLining. VS2010 SP1 OSG trunk as of a month or two ago Windows 7 Nvidia GTX460M Driver Version 267.21 The same problem was also occurring on another machine. I think that had a 450GT in it, but otherwise the same. Cheers, Brad From: osg-users-boun...@lists.openscenegraph.orgmailto:osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.orgmailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Wojciech Lewandowski Sent: Saturday, 17 March 2012 1:59 AM To: OpenSceneGraph Users Subject: Re: [osg-users] Frame Rate Decay w/ SilverLining Integration Hi, Brad, We have SilverLining source code license. I may find few hours in next week to look at the problem, if the issue can be reproduced on one of my machines (ie Nvidia GF580/GF9400 or GF540M). I would like to have as much info as possible to replicate the issue, though. I would like to know: - System version - OSG version - Graphics board and driver version (dual monitor setup ? GPU panel tweaks) - Compiler/linker VS studio version - SilverLining version. If not yet tested I would be grateful if you could test it with latest trial SilverLining SDK to be sure its not fixed already. What exactly is done with SilverLining ? What cloud types / wind settings / lighnting etc are used ?. Each type of SilverLining Cloud entities has its own specific parameters and can be drawn with different algorithm and use differen graphics resources. So it may be important to know what SilverLining resourses are in use. Probably the best would be if you could send the sample source you are testing. Cheers, Wojtek Lewandowski 2012/3/16 Christiansen, Brad brad.christian...@thalesgroup.com.aumailto:brad.christian...@thalesgroup.com.au Hi, Thanks for the response. I have a little more details of the problem but am still completely stumped. This is my test: Start my application and leave it running for a while. Frame rate, memory use etc all stable. Enable silverlinng. As reported by gDebugger, after the initial expected increase, the number of reported OpenGL calls, vertices, texture objects (and every other counter they have) stays completely stable expect for the frame rate which reduces at a steady rate, a few frames each second. In the earlier thread, it was noted that changing the threading model seemed to ;reset' the frame rate. I looked into this some more
Re: [osg-users] Frame Rate Decay w/ SilverLining Integration
Hi, Thanks for the response. I have a little more details of the problem but am still completely stumped. This is my test: Start my application and leave it running for a while. Frame rate, memory use etc all stable. Enable silverlinng. As reported by gDebugger, after the initial expected increase, the number of reported OpenGL calls, vertices, texture objects (and every other counter they have) stays completely stable expect for the frame rate which reduces at a steady rate, a few frames each second. In the earlier thread, it was noted that changing the threading model seemed to ;reset' the frame rate. I looked into this some more and it seems the behaviour is 'reset' when the draw thread is recreated started. If you return back to a thread that had previously 'decayed', it continues to decay from where it left off. e.g. singlthreaded decays to 50fps switch to draw thread per context and frame rate goes back to 100fps when a new thread is created and it starts decaying again switch back to single threaded (no new threads are created) and you are back at 50 fps and still decaying switch to draw thread per context and frame rate goes back to 100fps when a new thread is created and it starts decaying again It seems that a delay is being added to the current GL thread by silverlining. What ever it is doing, it is not making extra gl calls etc. Any ideas what could cause this sort of behaviour? I don't! Cheers, Brad When running in gDebugger, From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Chris Hanson Sent: Thursday, 15 March 2012 10:23 PM To: OpenSceneGraph Users Subject: Re: [osg-users] Frame Rate Decay w/ SilverLining Integration On Thu, Mar 15, 2012 at 12:32 AM, Christiansen, Brad brad.christian...@thalesgroup.com.aumailto:brad.christian...@thalesgroup.com.au wrote: Hi, I have come across the exact problem discussed on the forum here: http://forum.openscenegraph.org/viewtopic.php?t=8287 which was posted May 2011. The discussion described the problem I am seeing perfectly but unfortunately there is no resolution posted. I think Mike Weiblen integrated OSG with SilverLining as well, he might be able to comment but he's terribly busy. Have you checked to see if gDebugger shows any issues? -- Chris 'Xenon' Hanson, omo sanza lettere. xe...@alphapixel.com http://www.alphapixel.com/ Training * Consulting * Contracting 3D * Scene Graphs (Open Scene Graph/OSG) * OpenGL 2 * OpenGL 3 * OpenGL 4 * GLSL * OpenGL ES 1 * OpenGL ES 2 * OpenCL Digital Imaging * GIS * GPS * Telemetry * Cryptography * Digital Audio * LIDAR * Kinect * Embedded * Mobile * iPhone/iPad/iOS * Android - 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Frame Rate Decay w/ SilverLining Integration
Hi Woktej, Thanks for you offer to help out, but I have managed to track it down enough to have a good enough solution for now. For anyone else who stumbles across this issue, my work around is to disable VBOs in silverlining. If I did this by using the SILVERLINING_NO_VBO environment variable it crashed so I simply hard coded them to off in SilverLiningOpenGL.cpp. I narrowed down the source of the issue to calls to AllocateVertBuffer in the same file. Even if the buffers are never used, simply allocating them for the 6 faces of the sky box is enough to cause things to go wrong. I am using version 2.35 of SilverLining. VS2010 SP1 OSG trunk as of a month or two ago Windows 7 Nvidia GTX460M Driver Version 267.21 The same problem was also occurring on another machine. I think that had a 450GT in it, but otherwise the same. Cheers, Brad From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Wojciech Lewandowski Sent: Saturday, 17 March 2012 1:59 AM To: OpenSceneGraph Users Subject: Re: [osg-users] Frame Rate Decay w/ SilverLining Integration Hi, Brad, We have SilverLining source code license. I may find few hours in next week to look at the problem, if the issue can be reproduced on one of my machines (ie Nvidia GF580/GF9400 or GF540M). I would like to have as much info as possible to replicate the issue, though. I would like to know: - System version - OSG version - Graphics board and driver version (dual monitor setup ? GPU panel tweaks) - Compiler/linker VS studio version - SilverLining version. If not yet tested I would be grateful if you could test it with latest trial SilverLining SDK to be sure its not fixed already. What exactly is done with SilverLining ? What cloud types / wind settings / lighnting etc are used ?. Each type of SilverLining Cloud entities has its own specific parameters and can be drawn with different algorithm and use differen graphics resources. So it may be important to know what SilverLining resourses are in use. Probably the best would be if you could send the sample source you are testing. Cheers, Wojtek Lewandowski 2012/3/16 Christiansen, Brad brad.christian...@thalesgroup.com.aumailto:brad.christian...@thalesgroup.com.au Hi, Thanks for the response. I have a little more details of the problem but am still completely stumped. This is my test: Start my application and leave it running for a while. Frame rate, memory use etc all stable. Enable silverlinng. As reported by gDebugger, after the initial expected increase, the number of reported OpenGL calls, vertices, texture objects (and every other counter they have) stays completely stable expect for the frame rate which reduces at a steady rate, a few frames each second. In the earlier thread, it was noted that changing the threading model seemed to ;reset' the frame rate. I looked into this some more and it seems the behaviour is 'reset' when the draw thread is recreated started. If you return back to a thread that had previously 'decayed', it continues to decay from where it left off. e.g. singlthreaded decays to 50fps switch to draw thread per context and frame rate goes back to 100fps when a new thread is created and it starts decaying again switch back to single threaded (no new threads are created) and you are back at 50 fps and still decaying switch to draw thread per context and frame rate goes back to 100fps when a new thread is created and it starts decaying again It seems that a delay is being added to the current GL thread by silverlining. What ever it is doing, it is not making extra gl calls etc. Any ideas what could cause this sort of behaviour? I don't! Cheers, Brad When running in gDebugger, From: osg-users-boun...@lists.openscenegraph.orgmailto:osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.orgmailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Chris Hanson Sent: Thursday, 15 March 2012 10:23 PM To: OpenSceneGraph Users Subject: Re: [osg-users] Frame Rate Decay w/ SilverLining Integration On Thu, Mar 15, 2012 at 12:32 AM, Christiansen, Brad brad.christian...@thalesgroup.com.aumailto:brad.christian...@thalesgroup.com.au wrote: Hi, I have come across the exact problem discussed on the forum here: http://forum.openscenegraph.org/viewtopic.php?t=8287 which was posted May 2011. The discussion described the problem I am seeing perfectly but unfortunately there is no resolution posted. I think Mike Weiblen integrated OSG with SilverLining as well, he might be able to comment but he's terribly busy. Have you checked to see if gDebugger shows any issues? -- Chris 'Xenon' Hanson, omo sanza lettere. xe...@alphapixel.com http://www.alphapixel.com/ Training * Consulting * Contracting 3D * Scene Graphs (Open Scene Graph/OSG) * OpenGL 2 * OpenGL 3 * OpenGL 4 * GLSL * OpenGL ES 1 * OpenGL ES 2 * OpenCL Digital Imaging * GIS * GPS
[osg-users] Frame Rate Decay w/ SilverLining Integration
Hi, I have come across the exact problem discussed on the forum here: http://forum.openscenegraph.org/viewtopic.php?t=8287 which was posted May 2011. The discussion described the problem I am seeing perfectly but unfortunately there is no resolution posted. Knarf, did you end up solving this issue? At least I now know its not just me! 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Missing parts of 3rdParty_VC10_x86_x64.zip
Hi, I was the creator of the 3rd party dependancies package you downloaded (I should add that info to the wiki). When I started using VS2010 with OSG no binaries where available for the 3rd party libraries so I had to build them all myself. After doing so I made them available for others to ease the transition for others. The build is based on the VS9 binaries provided by OSG Visual. They havent been updated for some time as I have had no need to do so. If you send me any new binaries / changes I will happily include them. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Terry Welsh Sent: Sunday, 12 February 2012 2:58 AM To: osg-users@lists.openscenegraph.org Subject: Re: [osg-users] Missing parts of 3rdParty_VC10_x86_x64.zip Well, we can chalk this up to my inexperience with Cmake in Windows. Looks like I needed to point it at 3rdParty\x86 instead of just 3rdParty. Also, the libs I need are in there, but some of them appear to be static libraries now instead of .dlls so I was just looking in the wrong place. Chris, thanks for the link. It looks like you still have a libpng13.dll and zlib1.dll while the other 3rdParty binaries download does not. I don't know that one is better than the other for my purposes right now. Now everything is compiled. Too bad my game is only running at 0.1Hz. I really miss Linux. -- Terry Welsh mogumbo 'at' gmail.com www.reallyslick.com On Fri, Feb 10, 2012 at 9:17 PM, Terry Welsh mogu...@gmail.com wrote: Hi, I just upgraded to Visual Studio 10 Express. After compiling I found I was missing plugins for freetype, png, and zip. I believe these projects didn't get built because I'm missing the necessary .lib and .dll files in the 3rdParty binaries. They are there for x64 but not x86. The 3rdParty binaries for VS9 contained these and they were very helpful. So is there a known better way to deal with freetype, png, and zlib nowadays, or are they just missing? And if they're just missing, who maintains those downloads and do you want me to try to compile them and contribute them? -- Terry Welsh mogumbo 'at' gmail.com www.reallyslick.com ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org - 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Frame drops when using DB pager and compressed textures
Thanks Mathias, Thanks for the response. Proves I am not going crazy : ) I will try generating mip maps and see if that resolves the issue. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Mathias Fröhlich Sent: Monday, 6 February 2012 6:06 PM To: OpenSceneGraph Users Subject: Re: [osg-users] Frame drops when using DB pager and compressed textures Hi, On Monday 06 February 2012, Christiansen, Brad wrote: I am seeing some strange behaviour with the DatabasePager and compressed textures (compressed using the nvtt image processor) and cant get my head around what is happening. My setup is this: - A paged terrain very similar in nature to a VPB created terrain. - Images and height fields are stored in a database and read at runtime. As the db uses aggressive mem caching, many reads of 'files' are actually read straight from memory so images are loaded very quickly. To demonstrate the problem, I rapidly move the camera around the terrain to generate lots of database requests. If the textures are not compressed (or stored as jpegs etc, so they are not compressed once loaded) then the precompilation works perfectly and I get no frame drops. If I change the textures to use compressed dds images, I get terrible frame drops (down from completely solid 60hz to bellow 20). I figured something was going wrong with the precompiler but after much debugging this seems to be working as designed. If I set the max num of objects to compile to 1 then the problem is reduced, but this is obviously not a solution as it is just masking the problem. The only thing I can think of is that the precompiler isn't actually uploading / compiling the textures when they are compressed, but it is when they are not. As such, the precompilation stage races through lots of textures and then during the draw phase the actual work is done, causing the frame drops. However, I have no idea why this should be the case or how I could address issue. Has anyone come across this before or have any suggestions as to what might be going on? We see very similar things with the nvidia driver in flightgear. In the end it turns out to be the mipmapping code in the nvidia driver. They seem to have a horrible slow implementation of that in their code. People report that if you provide precomputed mipmaps in your dds files, compressed or uncompressed, you do not see any hangs of the rendering code. As far as I can tell you can put the mipmaps also into the dds files by your mentioned nvidia tool. Also not exactly all nvidia chips seem to suffer from that problem. But a wide range works really bad. For osg I think one reliable way to get around that problem would be to precompute the mipmaps on the cpu in the database pager thread. This seems ugly, since the hardware could in theory compute that way faster than we can on the cpu. But the nvidia driver behaves that unpredictible in that area that I consider doing that for flightgear in a image read callback. The open source driver stack really shows how fast computing mipmaps could be using the hardware. The internal implementation sets up an fbo for the texture, sets up a rendertarget of the next higher mipmap level, and draws a quad textured with the current mipmap level into this render target. This is repeated until you have reached the last level. Even if the official open source driver cannot support 3ds compression for patent reasons, you can trick the sourcecode for the amd chips to at least show that this method also performs equally fast for compressed textures. I have not tried the nvidia ones, but I assume that they also have on chip 3ds compression and decompression and could behave the same. And no, I have no clue why this described algorithm is probalby not used for in nvidias binary blob. Greetings Mathias -- Dr. Mathias Fröhlich, science + computing ag, Software Solutions Hagellocher Weg 71-75, D-72070 Tuebingen, Germany Phone: +49 7071 9457-268, Fax: +49 7071 9457-511 -- Vorstand/Board of Management: Dr. Bernd Finkbeiner, Michael Heinrichs, Dr. Roland Niemeier, Dr. Arno Steitz, Dr. Ingrid Zech Vorsitzender des Aufsichtsrats/ Chairman of the Supervisory Board: Philippe Miltin Sitz/Registered Office: Tuebingen Registergericht/Registration Court: Stuttgart Registernummer/Commercial Register No.: HRB 382196 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org - 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
Re: [osg-users] Frame drops when using DB pager and compressed textures
Hi, Just a follow up for anyone hitting this issue. I enabled the creation of mipmaps in my dds files and the issue vanished. Thanks so much for the tip Mathias. Luckly, thanks to the wonderful OSG API, making the change was as simple as changing a 'false' to a 'true' in my call to he image processor. 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] Frame drops when using DB pager and compressed textures
Hi, I am seeing some strange behaviour with the DatabasePager and compressed textures (compressed using the nvtt image processor) and cant get my head around what is happening. My setup is this: - A paged terrain very similar in nature to a VPB created terrain. - Images and height fields are stored in a database and read at runtime. As the db uses aggressive mem caching, many reads of 'files' are actually read straight from memory so images are loaded very quickly. To demonstrate the problem, I rapidly move the camera around the terrain to generate lots of database requests. If the textures are not compressed (or stored as jpegs etc, so they are not compressed once loaded) then the precompilation works perfectly and I get no frame drops. If I change the textures to use compressed dds images, I get terrible frame drops (down from completely solid 60hz to bellow 20). I figured something was going wrong with the precompiler but after much debugging this seems to be working as designed. If I set the max num of objects to compile to 1 then the problem is reduced, but this is obviously not a solution as it is just masking the problem. The only thing I can think of is that the precompiler isn't actually uploading / compiling the textures when they are compressed, but it is when they are not. As such, the precompilation stage races through lots of textures and then during the draw phase the actual work is done, causing the frame drops. However, I have no idea why this should be the case or how I could address issue. Has anyone come across this before or have any suggestions as to what might be going on? 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [vpb] Large VPB Database build fails without
Hi, Just to let you know, I regulary build DEM only data sets and havent run into this problem, so it might be something to do with your particular data. Having said that, I always manually specify the output bounds so maybe that is why I havent had an issue. An examaple command I run is: vpbmaster.exe --run-path D:\BuildArea\CanberraDTED2 --geocentric -ge -180 -90 360 180 --add --layer 0 --tile-terrain-size 32 --tile-image-size 256 --layer-inheritance no -l 99 -d ..\CanberraDTED2_Data -o data/CanberraDTED2.ive The bit specifying the bounds is -ge -180 -90 360 180. I will try a test using your commands when I back at the office and let you know if I can reproduce the problem. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Tueller, Shayne R Civ USAF AFMC 519 SMXS/MXDEC Sent: Thursday, 12 January 2012 6:20 AM To: osg-users@lists.openscenegraph.org Subject: Re: [osg-users] [vpb] Large VPB Database build fails without I agree with Torben here. There is no usage of texture or images anywhere in this problem. Only elevation data is being fed to vpbmaster when the hiccup occurs. What's strange is that running a single osgdem on the problem as a whole builds the database just fine. It's when osgdem runs in a subset role via vpbmaster that things blow up. If I issue the command vpbmaster --TERRAIN --geocentric -d /my/dted/path -o elev.ive or osgdem --run-path /my/dted/path -s build_master.source --subtile 2 0 4 (the task that fails) it blows up. On the other hand if I do osgdem --TERRAIN --geocentric -d /my/dted/path -o elev.ive It builds just fine and I can use osgviewer to look at the resultant terrain. -Shayne -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Torben Dannhauer Sent: Wednesday, January 11, 2012 6:01 AM To: osg-users@lists.openscenegraph.org Subject: Re: [osg-users] [vpb] Large VPB Database build fails without Hi Robert, this issues seems to be independent from reprojection aspects: it occurs as soon as a database setup contains DEM data wich is not covered with texture data. All data is reprojected in the corrected way. Regarding the latter I am sure because I used exactly the same data later on for my database - I was simply not able to exclude texture data from my DB to avoid this issue.. Thank you! Cheers, Torben -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=44756#44756 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.or g ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org - 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [vpb] Placing an object on a UTM file generated with osgdem
Hi, I do something similar to what I think you want to do. To calcluate the rotation to be applied I use osg Matrix method 'makeRotate(Vec3 from, Vec4 to)'. For the from I use the up axis of the model (in your case +ve x) and for the to I use the local up provided by the Ellipsoid used for the terrain. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Ethan Fahy Sent: Monday, 12 December 2011 11:38 PM To: osg-users@lists.openscenegraph.org Subject: Re: [osg-users] [vpb] Placing an object on a UTM file generated with osgdem Object rotation is the last piece of this puzzle. When on object is placed on a geocentric terrain using the methods outlined in this thread, the object always appears to be oriented correctly upwards with respect to the center of the earth. However I'm not sure how it is being oriented with respect to its rotation. Does anyone have any insight into this? For example if I know that my object's internal coordinate system specifies that positive x is north and positive y is west and I place that object on an arbitrary WGS84, geocentric terrain, how will I know how to rotate the object to line up the north orientation? -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=44344#44344 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org - 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] best format for paged database
Hi, Just a comment regarding My initial wish was to have everything in one file.. You can achieve this by placing all you data into an archive format. I have used osga before and I have seen quite a bit of activity around the zip plugin recently. I ended up creating my own OSG archive based on SQLite but I havent managed to submit that code yet. One thing to note when using archives and PagedLODs, you have to make sure that rescources in sperate files are specified relative to the root of the archive, not relative to the loading file. I wrote a simple visitor to do this before adding all my data to the archive. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of PC John Sent: Thursday, 8 December 2011 4:27 PM To: osg-users@lists.openscenegraph.org Subject: Re: [osg-users] best format for paged database Hi Torben and Xenon, I was studying OSG sources... (as usual way to study OSG) BTW: What are your performance requirements? Main requirement: I need to load base level geometry and base resolution textures ASAP, f.ex 1s. I will probably inline base-level texture data into the base-level scene database. Then, paging of geometry: Seems that high-res geometry need to stay in separate file, otherwise it would be loaded at start-up, slowing down the opening process, that has to complete in 1s. The last goal - to page in and page out textures depending on spatial proximity. The testing model is 72MB of jpegs and they take approximately 4.5GB when decompressed to memory while using several resolutions for each texture. What archtecture would you propose? I guess, I will need to place high-res textures to external files. And high-res geometry as well to avoid them being parsed on start-up and prolonging opening process. (My initial wish was to have everything in one file.) John On Wednesday 07 of December 2011 09:02:25 Chris 'Xenon' Hanson wrote: On 12/7/2011 12:29 AM, PC John wrote: Thanks Chris and J.P., I am wondering that flt and vpb and similar formats does not support paging VPB isn't a format. VPB is a tool. It generates data in any OSG-writable format, including .osg/.ive/.osgt/.osgb. It does support terrain paging with PagedLOD. (PagedLOD). In that case, osgb seems to be the best format. Can it store texture data internally, or all jpegs and pngs have to stay as separate files (possibly increasing data fragmentation)? It can do either way. osgEarth is definitely the project to look at. Thanks, Yes. If you're not interested in building it from scratch (it can be difficult the first time), my company, AlphaPixel offers subscriptions to a binaries-download system that builds projects like osgEarth every night, whenever the source has changed. John ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org - 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Problem loading IVE files
Hi, If you have built everything from source, and havent installed any binary versions, you should have no issues. The is an osgversion.exe application created as part of the standard build. This should dump the version of the core osg library to the console. My 3.0.0 build reports 3.0.0 from this app and the plugins dir osgPlugins-3.0.0. My latest trunk build reports 3.1.0 from osgversion.exe and the plugin folder is osgPlugins-3.1.0. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Héctor Martínez Sent: Tuesday, 22 November 2011 5:34 PM To: 'OpenSceneGraph Users' Subject: Re: [osg-users] Problem loading IVE files Hi and thank you again, what you are saying is logical for me, but I am pretty sure that I didn't rename that folder. In which step is defined that folder? As far as I remember, I put the dependencies in the 3rdparty folder and run the cmake. I have checked the cmake options, but I have not found where this plugin folder is defined. How can I check that I am using the right dependencies? The dependencies listed here are the right ones for osg 3.0.0 or for any other version?: http://www.openscenegraph.org/projects/osg/wiki/Downloads/Dependencies Anyway, it is strange that the rest of the plugins are properly working. I thought that IVE should be easier to be working than DAE, for example, which is working for me. Cheers! -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Christiansen, Brad Sent: martes, 22 de noviembre de 2011 6:33 To: OpenSceneGraph Users Subject: Re: [osg-users] Problem loading IVE files Hi, The plugin folders name does correlate to the version of the OSG that was used to create the plugins. This is done to avoid loading plugins from a different version of OSG. This looks like your problem. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Héctor Martínez Sent: Monday, 21 November 2011 3:47 PM To: 'OpenSceneGraph Users' Subject: Re: [osg-users] Problem loading IVE files Hi, thank you for your reply and sorry for the delay in my answer (I was on a trip). Yes, I am using 3.0.0. What you can see in: LoadLibraryA((.)\osgPlugins-3.1.0\osgdb_ived.dll) is not the OSG version. This is just the name of the plugins folder that, for some reason, has been called 3.1.0, but I think that it is not related with the actual version of OSG. If I am wrong, please let me know. :) Anyway, I am still at the same point. I can load 3ds, dae or osg files, for example, but still not possible to load IVE files. Cheers! -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Christiansen, Brad Sent: miércoles, 16 de noviembre de 2011 3:35 To: OpenSceneGraph Users Subject: Re: [osg-users] Problem loading IVE files Hi, Just checking you don't have multiple version of OSG in your path. You said bellow that you are using version 3.0.0 of OSG yet the output you posted from dependency walker lists OSG version 3.1.0. If you do have both version on your path, this could be your issue. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Héctor Martínez Sent: Tuesday, 15 November 2011 6:32 PM To: osg-users@lists.openscenegraph.org Subject: Re: [osg-users] Problem loading IVE files Hi Torben, thank you for your reply. I am using Windows 7, Visual Studio 2010 Professional and OSG is version 3.0.0. Cheers -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Torben Dannhauer Sent: martes, 15 de noviembre de 2011 12:14 To: osg-users@lists.openscenegraph.org Subject: Re: [osg-users] Problem loading IVE files Hi, ive support should work quite out of the box. What is your OS, compiler, OSG Version? Cheers, Torben -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=43890#43890 ___ 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 - 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
Re: [osg-users] Getting Started - VS2010
Hi, Express does include the optimizer now and you can get it to build x64, but yo uhave to jump through a few hoops. From memory, you need to download the windows SDK, setup up some paths then create the x64 target manually within vs. Do a web search and you will find instructions. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Chris 'Xenon' Hanson Sent: Wednesday, 23 November 2011 12:00 AM To: osg-users@lists.openscenegraph.org Subject: Re: [osg-users] Getting Started - VS2010 On 11/22/2011 3:52 AM, Markus Kahl wrote: Yes, I use the Express Edition. Then that must be the reason. I wonder why that is. That's what you get for free. I think Express also lacks the optimizer. -- Chris 'Xenon' Hanson, omo sanza lettere. xe...@alphapixel.com http://www.alphapixel.com/ Digital Imaging. OpenGL. Scene Graphs. GIS. GPS. Training. Consulting. Contracting. There is no Truth. There is only Perception. To Perceive is to Exist. - Xen ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org - 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] osgTerrain::getTile returns nothing
Hi, Terrain tiles register themselves with the terrain during one of the scene travesals. I cant remember off the top of my head if it occurs during the update or cull traversal, but I think it might be the update traversal. If the scene has not been traversed, the none of the tiles will have been regstered yet. Have a look at the traverse method of TerrainTile, I think that is where the registration is done. If you are using a VPB built terrain, all the tiles (except the tiles at level 0 ) are pagged in via the database pager. If the terrain hasn't been rendered, then no tiles would have been loaded. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Jonathan Klein Sent: Thursday, 24 November 2011 5:31 AM To: osg-users@lists.openscenegraph.org Subject: [osg-users] osgTerrain::getTile returns nothing Hi, I want to access TerrainTiles, but I get always a 0 Pointer. Code: ref_ptrNode model=osgDB::readNodeFile(Filename.toStdString()); //try to convert the node to an osg::Terrain and analyse it ref_ptrosgTerrain::Terrain Terrain(model-asTerrain()); if(Terrain) { cout We have a terrain :)\n ...analyzing endl; osgTerrain::TerrainTile *Tile=Terrain-getTile(osgTerrain::TileID(0, 0, 0)); cout Tile adress: Tile endl; //get more detailed info: osgTerrain::TerrainTest* T=reinterpret_castosgTerrain::TerrainTest*(*Terrain); cout TestTerrain Size: T-_terrainTileMap.size() endl; } The first thing that I checked is, whether my Node is an actual Terrain (which it is, as Terrain is not 0). Then I'm trying to access a random tile, I supposed that 0,0,0 should always exist. But I get a 0-Pointer. I can't access the TileMap from Terrain directly, so I copied the class declaration, made the members public and cast the pointer. (the debugger wouldn't show me any contents of _terrainTileMap. But the map seams to be empty, size is 0. The documentation of Terrain is very short, so I don't see any way to access the tiles, or in other words, there seam to be no Tiles at all. Thank you! Cheers, Jonathan -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=44015#44015 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org - 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Problem loading IVE files
Hi, The plugin folders name does correlate to the version of the OSG that was used to create the plugins. This is done to avoid loading plugins from a different version of OSG. This looks like your problem. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Héctor Martínez Sent: Monday, 21 November 2011 3:47 PM To: 'OpenSceneGraph Users' Subject: Re: [osg-users] Problem loading IVE files Hi, thank you for your reply and sorry for the delay in my answer (I was on a trip). Yes, I am using 3.0.0. What you can see in: LoadLibraryA((.)\osgPlugins-3.1.0\osgdb_ived.dll) is not the OSG version. This is just the name of the plugins folder that, for some reason, has been called 3.1.0, but I think that it is not related with the actual version of OSG. If I am wrong, please let me know. :) Anyway, I am still at the same point. I can load 3ds, dae or osg files, for example, but still not possible to load IVE files. Cheers! -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Christiansen, Brad Sent: miércoles, 16 de noviembre de 2011 3:35 To: OpenSceneGraph Users Subject: Re: [osg-users] Problem loading IVE files Hi, Just checking you don't have multiple version of OSG in your path. You said bellow that you are using version 3.0.0 of OSG yet the output you posted from dependency walker lists OSG version 3.1.0. If you do have both version on your path, this could be your issue. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Héctor Martínez Sent: Tuesday, 15 November 2011 6:32 PM To: osg-users@lists.openscenegraph.org Subject: Re: [osg-users] Problem loading IVE files Hi Torben, thank you for your reply. I am using Windows 7, Visual Studio 2010 Professional and OSG is version 3.0.0. Cheers -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Torben Dannhauer Sent: martes, 15 de noviembre de 2011 12:14 To: osg-users@lists.openscenegraph.org Subject: Re: [osg-users] Problem loading IVE files Hi, ive support should work quite out of the box. What is your OS, compiler, OSG Version? Cheers, Torben -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=43890#43890 ___ 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 - 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. - ___ 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 - 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
Re: [osg-users] Problem loading IVE files
Hi, It looks like osg can't load the ive dll. Have you checked that you have all the dependancies of the ive dll in your path? From memory it has quite a few dependancies on various parts of OSG. The 'depends.exe' tool is a great help on windows for this sort of thing (and its free) (http://www.dependencywalker.com/ ) Cheers, Brad From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Héctor Martínez Sent: Tuesday, 15 November 2011 2:55 PM To: osg-users@lists.openscenegraph.org Subject: [osg-users] Problem loading IVE files Hi, I have some problems loading IVE files. I have created a simple box with 3DStudio and exported to IVE and is not working. If I export it to OSG format it works fine, but if I try with IVE or with OSGB it is not working at all. When trying to load, the output is this: FindFileInPath() : trying (...)\osgPlugins-3.1.0\osdb_ived.dll ... FindFileInPath() : USING (...)\osgPlugins-3.1.0\osdb_ived.dll ... DynamicLibrary::failed loading osgPlugins-3.1.0\osdb_ived.dll Warning: Could not find plugin to read objects from file OSG/box.ive. Error: Unable to load model OSG/box.ive. Any ideas about the problem? Thank you in advance. Best regards - 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Problem loading IVE files
Hi, Just checking you don't have multiple version of OSG in your path. You said bellow that you are using version 3.0.0 of OSG yet the output you posted from dependency walker lists OSG version 3.1.0. If you do have both version on your path, this could be your issue. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Héctor Martínez Sent: Tuesday, 15 November 2011 6:32 PM To: osg-users@lists.openscenegraph.org Subject: Re: [osg-users] Problem loading IVE files Hi Torben, thank you for your reply. I am using Windows 7, Visual Studio 2010 Professional and OSG is version 3.0.0. Cheers -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Torben Dannhauer Sent: martes, 15 de noviembre de 2011 12:14 To: osg-users@lists.openscenegraph.org Subject: Re: [osg-users] Problem loading IVE files Hi, ive support should work quite out of the box. What is your OS, compiler, OSG Version? Cheers, Torben -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=43890#43890 ___ 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 - 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] Independent update/cull traversals for different parts of a scene
Hi, I am trying to improve the consistency between the rendering of our terrain and the objects that interact with it. What I want to achieve each frame is the following (NB: all objects are under a single camera): 1) Do the update then cull traversal on the terrain. - Doing this first allows the rest of the scene to know exactly what terrain tiles will be used to render the frame. From this I can determine which areas of the terrain have been changed since the last frame so I can limit the intersections I need to do to keep objects on its surface. 2) Do some processing external to the OSG frame loop - At this stage our application will need to process various functions based on underlying terrain that are not directly integrated with OSG. 3) Do the update and cull traversals on the rest of the scene. - The big change in this passes is that during the update traversal the terrain tiles to be rendered is known. This ensure there is no 'frame lag' when placing objects a consistent distance on or above the surface of the terrain. 4) Render the combined result. At the moment I simply call frame on a Viewer instance. My first thought was to use node masks at the top of the terrain and 'the rest of the scene' and simply run the update and cull traversals twice each frame with a different mask. This seems easy to implement for the update traversals but I cannot see how I can easily implement this for the cull traversals as both the cull and rendering passes are implemented by the single ViewerBase::renderingTraversals. Overriding this function to add the functionality I want seems like a rather complex problem to tackle. Is there another, easier way, to get the results I want? 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [vpb] How to add texture to the terrain using vpbmaster
Hi, I have had issues gettign geo-reference jpegs to work correctly. I would suggest exporting the file from global mapper, making sure the coordinate system is the same as the terrain file, as a geotiff and trying to use that instead of the jpeg. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Xiaofeng Yang Sent: Wednesday, 9 November 2011 6:48 PM To: osg-users@lists.openscenegraph.org Subject: [osg-users] [vpb] How to add texture to the terrain using vpbmaster Hi, I have downloaded the hgt format file from the dds.cr.usgs.gov and I used the osgdem to generate the terrain(ive format), I use osgDB::readNodeFile to get a node from the terrain file and I can get the lat,lon information everywhere in the terrain right. But the terrrain does not have the texture,So I download a jpg format picture and use globalmapper to set the coordinate system and the lat,lons. I can also use gdalinfo to get the information about the texture file. But when I use vpbmaster to patch the texture file to my terrain file,it always prints No soure file found to base database patching on. When I use osgdem to generate the terrain with texutre,I can get the ive terrain with texture,but it does not have the coordinate system or its system is not right. I do not know why and how to add the texture to the terrain well. Thank you! Cheers, Xiaofeng -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=43794#43794 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org - 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] loading and rendering large objects
Have you tried using the MeshOptimizers in osgUtil ? I can rememeber a report that using them could result in very large performance improvements on verty large models. From memory the vertex data is organised to reduce cache misses etc on the video card. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Mo Flanders Sent: Thursday, 3 November 2011 10:47 PM To: osg-users@lists.openscenegraph.org Subject: [osg-users] loading and rendering large objects Hi, I'm trying to render Lucy (form the Stanford repository) stable. This model has about 28-million tris. I wrote an offline spatializer to improve culling. Every geode has after the spatializer process about 1-million tris. The size of the model is 2.4 GB - Memory on my NV Quadro 5000 is about 2.5 GB. Sync to VBlank is on. Here my problem: When I'm start the osgviewer it took about 30-40 seconds - that's okay. The viewer also ran with an acceptable frame rate. Everything fine. (Stats: Draw 2.3 GPU: 27.2). If I move Lucy so that only a half or a fourth of the model is displayed the frame rate increased (culling active). BUT if I move the model back - that everything is visible again the frame rate is not that I was expected. (Stats: Draw: 2.68 GPU: 1000.0). Any suggestions? I thought - through the culling process the culled geodes could be deleted on the GPUs memory and they have to reload - but after waiting 120-500 seconds the frame rate doesn't get better. Again any suggestions? ... Thank you! Cheers, Mo -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=43703#43703 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org - 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] osgDB::Registry bug with files not loading after an archive has been accessed
Hi, I came across this issue when I coded my own archive format. I fixed the issue at the oter end and returned a FILE_NOT_HANDLED from my archive instead of a FILE_NOT_FOUND. This struck me as slightly odd at the time but I assumed this was the correct return value from my archive as it achieved the correct result. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Robert Osfield Sent: Wednesday, 2 November 2011 6:59 PM To: OpenSceneGraph Users Subject: Re: [osg-users] osgDB::Registry bug with files not loading after an archive has been accessed HI Anthony, Like you am I left wondering if this quick fix is a complete solution so will need to think some more about the topic before commit a fix. I have done some testing and some thinking about the issue and feel that the fix you suggested is a good solution, the code I've checked into svn/trunk is essential the same, only adds a little text in explanation: // check loaded archives. AvailableArchiveIterator aaitr(_archiveCache, _archiveCacheMutex); for(;aaitr.valid();++aaitr) { ReaderWriter::ReadResult rr = readFunctor.doRead(*aaitr); if (readFunctor.isValid(rr)) return rr; else { // don't pass on FILE_NOT_FOUND results as we don't want to prevent non archive plugins that haven't been // loaded yet from getting a chance to test for the presence of the file. if (rr.status()!=ReaderWriter::ReadResult::FILE_NOT_FOUND) results.push_back(rr); } } Cheers, Robert. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org - 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Migration of website and version control
Hi, I thinking moving to git would be a very positive move. I haven't used it a great deal but I am very familiar which mercurial which is similar. I have also recently been involved in migrating a fairly large project from SVN to mercurial so I might be able to contribute something on the technical side of any move. For the wiki, I quite like Confluence (http://www.atlassian.com/software/confluence/overview ). I have used it for many years and it is simple, powerful and works well. It is a commercial product but they licence it free to open source projects (http://www.atlassian.com/software/views/open-source-license-request ). It also integrates very nicely with their issue tracking software JIRA which is also a great product. They do offer hosted instances at a monthly rate but I haven't had any experience with this as we host our own servers. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Robert Osfield Sent: Monday, 31 October 2011 7:24 PM To: OpenSceneGraph Users Subject: [osg-users] Migration of website and version control Hi All, I would like to start a discussion about migrating our website and version control services to new servers and feel this might be a good opportunity to change the technology that we use on the server for providing the website and version control services. One of the reasons that adds a little imperative to the move is that the current hosts of our server AI2, Universidad Politecnica de Valencia, Spain, look unlikely to be able to continue providing due to funding cuts. Technology wise it would also be good to find a better wiki and version control system. We also need engineers to help out with migration and ongoing maintenance of new servers and services that will be moving too. There is a wide range of different hosts and technologies we could use, and I'm happy to admit that I'm no expect in hosting, webserves, wiki management, version control systems, but this is a huge community so no doubt there is lots opinions, and perhaps even a few experts out there that might be able to help out with great suggestions and time to make things happen. To help kick things off. On the hosting side I currently have a Dreamhost account that provides the mailing lists services that we currently use, and my account looks to be sufficient for provide a Tracs and Subversion services as well - so pontentially we could move to Dreamhost and rely upon them for management of the server and server software and let us concentrate on the content. I really don't know how well this would work out having not tried to migrate services other than mailman across to them. If we do have to move existing services across quickly this might be strong contender. Technology wise I am comfortable with Subversion, but for fully distributed it's not as powerful as newer technologies like git. We've discussed both Mercurial and git on the mailing list before as possible contenders and feedback I've got from various experiments out in the community is that git looks to be most practical for our needs. Rather spend lots of time discussing the pros and cons of these two technologies I'm happy to narrow things down to migrating to git. What is open for discussion is really when and how we migrate to git. One possibility with migrating to git would be to have our own server, use a host like Dreamhost or go with another 3rd party like github. For the latter there is already a mirror of our subversion repository hosted over at github maintained by members of the community (please come forward as I've forgotten who set it up :-) : https://github.com/openscenegraph/osg I haven't used git too much yet other than to check out third party libs, but when the time comes I'll just have to roll my sleeves and dive and learn to use it properly. github also now have their own wiki, Gollum: https://github.com/features/projects/wikis I know nothing about Gollum so can't comment on it, I'm not overly impressed by Tracs - it's been sufficient but not that that powerful, so I'm reluctant to go with yet another dev wiki that is almost by not quite as powerful as the likes of MediaWiki. I have to admit that I really don't know too much about the practical behind the scenes management of MediaWiki let alone Gollum and Tracs so I really need to feedback from the community of the various strengths, weaknesses and practicalities. Finally once we've decided upon hosts for our needs, and the technologies that we migrate too we'll need to do the migration of our present wiki and version control systems. We'll need the engineers to help our with coordinating and undertaking this work. Once we've got a basic plan and the people in place we start migrating bit by bit. I look forward to your thoughts and in particular your offers of assistance ;-) Cheers, Robert.
[osg-users] Bug in NVTT image processor.. no sure about the solution
Hi, I have discovered that the NVTT image processor contains a bug which results in a crash is an already compressed image is passed in (I know you shouldn't do this anyway). The problem lines are: if (image.getPixelFormat() == GL_RGB) { convertRGBToBGRA( imageData, image.data() ); } else { convertRGBAToBGRA( imageData, image.data() ); } This assumes that if the format is not GL_RGB, it is always GL_RGBA, and thus there are 4 * s * t values in image.data(). To fix the issue I could simply make the else and else if(GL_RGBA) { ... } else return false, but I am concerned that this may result in a failure to compress other formats which are valid, but I am not aware of. The other approach would be just to test the size of image.data() and make sure it is big enough but that will just avoid a crash, not necessarily result in correct behaviour. Any input to what the correct approach should be? 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Current time when displaying an image stream
Hi, Thanks for the info. That works for the ffmpeg plugin but wasn't implemented at all in the direct show function. I have posted a submission which adds a new function ( getCurrentTime ) to ImageStream and have implemented the new methon in the direct show plugin, and implemented it in ffmpeg by simply calling getReferenceTime. I took this approach as I am not sure what the 'correct' meaning of getReferenceTime is as there is also a setReferenceTime as well as a seek function. Cheers, Brad From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Julen Garcia Sent: Tuesday, 27 September 2011 4:51 PM To: OpenSceneGraph Users Subject: Re: [osg-users] Current time when displaying an image stream Hi Brad, I have also a simple video player using the ImageStream class and the FFmpeg plugin. For the slider, I get the maximum value from the ImageStream-getLenght() method and to update the current position I call periodically ImageStream-getReferenceTime(). I think that this is the 'curentTime' function you are looking for. If you need any help, just let me know ;) Cheers, Julen. 2011/9/23 Christiansen, Brad brad.christian...@thalesgroup.com.aumailto:brad.christian...@thalesgroup.com.au Hi, I am creating a basic video player using the ImageStream class. I have created a standard 'position' slider to seek within the stream. Seeking is working with no problems but I cant see any way of reliabily updating the position of the slider as the stream is played. As well as the seek() and length() function I was hoping to find a 'curentTime' like function, basically the 'getter' for 'seek'. Without this function it looks like I will have to assume that length and seek are both in seconds and then calculate my own 'currentTime' based on elapsed time since play was called. This seems overly complex and somewhat unreliable as it also assumes that the stream is playing with exactly the correct timing. Has anyone solved this? Have I missed something? 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.orgmailto:osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org - 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] Current time when displaying an image stream
Hi, I am creating a basic video player using the ImageStream class. I have created a standard 'position' slider to seek within the stream. Seeking is working with no problems but I cant see any way of reliabily updating the position of the slider as the stream is played. As well as the seek() and length() function I was hoping to find a 'curentTime' like function, basically the 'getter' for 'seek'. Without this function it looks like I will have to assume that length and seek are both in seconds and then calculate my own 'currentTime' based on elapsed time since play was called. This seems overly complex and somewhat unreliable as it also assumes that the stream is playing with exactly the correct timing. Has anyone solved this? Have I missed something? 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Fixed function pipeline in OSG 3.0.1
Hi, If you don't attach shaders then the fixed function pipeline is used, unless you are not using GLES2, in which case I think shaders are generated for you. I have never used this path so I am not sure though. Cheers, Brad From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Pecoraro, Alexander N Sent: Thursday, 15 September 2011 7:20 AM To: OpenSceneGraph Users Subject: [osg-users] Fixed function pipeline in OSG 3.0.1 In OSG version 3.0.1, if I don't explicitly attach a shader to my scene graph does it fall back on the fixed function pipeline or is a fixed function pipeline equivalent shader generated for it? Thanks. Alex - 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [vpb] Multiple maps in model with osgdem? (vpb)
Hi, The way the resolution works is thus (once again, this is just from memory, so no guarantees an accuracy): Level 0 will cover the entire bounds in a single texture (assuming you use the defaults, this will be 256x256 pixels). Level 1 will then split the terrain into two or more textures. The number of textures that are created depends on the aspect ratio of the source data. I think you will always end up with either one row or one column, with the required number of rows/columns to maintain the aspect ratio. For example, for a whole world database (twice as many lon values as lat), you will end up with one row, two columns (each tile is 180 degrees width and height). From this point, things get easier, as for each level, each texture is divided into four textures which cover the same region, a standard quad tree. To calculate the resolution of a level you simply divide the number of pixels by the covered area. As a simple example, lets say your source data covers a quarter of the world from 0-90 lat and 0-90 lon. At level 0, this is covered by 256x256 pixels, therefore the resolution is 90/256 degrees per pixel. At level 1, this is covered by 512x512 pixels, therefore the resolution is 90/512 degrees per pixel. At level 2, this is covered by 1024x1024 pixels, therefore the resolution is 90/1024 degrees per pixel. etc etc To calculate the resolution of your source imagery use something like gdalinfo to get the required details. I am sure everything is now as clear as mud for you : ) Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Chris Ess Sent: Tuesday, 13 September 2011 5:49 AM To: osg-users@lists.openscenegraph.org Subject: Re: [osg-users] [vpb] Multiple maps in model with osgdem? (vpb) Thanks Brad, that worked. My (hopefully) final issue is trying to set the levels correctly to update the texture at an appropriate time. I have been tinkering with it attempting to get it using trial and error. However, it takes a long time to build the map so each of my adjustments is causing me to wait close to 45 mins each before I see how it has changed. Is there any rule of thumb or equation that can help give me better results? Cheers, Chris -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=42659#42659 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org - 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [vpb] Multiple maps in model with osgdem? (vpb)
Hi, Some quick answers for you: . Any thoughts on how to specify textures at each of those levels? Can I specify each level with a different -t TextureDir argument? You use the '--levels' argument, one for each source. For example: --levels 0 5 -t GeoTiff1.tiff --levels 6 10 -t GeoTiff2.tiff --levels 11 15 -t GeoTiff3.tiff Also, is osgdem smart enough to figure out when the best time to show the next level is based on scale? In short, no. The longer answer is that all the infornation is actually available internally to osgdem but there is no mechanism exposed to use this info in the way you wish (unless this has chaanged since I last worked with the code) Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Chris Ess Sent: Friday, 9 September 2011 9:43 PM To: osg-users@lists.openscenegraph.org Subject: Re: [osg-users] [vpb] Multiple maps in model with osgdem? (vpb) Thanks the responses everyone! This is actually very exciting news, as I was getting ready to redesign some software I have been working on to try to force the same effect (and the deadline is in less than a week!). Now, I will have to ask that you excuse my ignorance, but I am very unfamiliar with the vpb tool and mapping tools in general to be honest. The application I am using requires that I use VPB/osgdem 0.9.10 since we are using a third party library that runs on top of an older version of openscenegraph to display the maps. The command that I have been using to generate maps from the GEOTIFF textures I have is something like the following: Code: osgdem -o MyMap.ive -l 15 --compressed --skirt-ratio 0.0 --levels 0 15 -t MyGeotiffTextureDir I have looked up the command line options on the Osgdem/vpbmaster Command Line Options page I noticed there is a list /w a small description but it didn't seem very helpful unless you already have some experience with how the application works. I have geotiffs taken from a number of different scales (in separate directories) : 5M:1, 1M:1, 500K:1, 250K:1, 100K:1 ...etc I guess where I am getting confused is how I specify what scale of textures I want to show at what levels. Its my understanding that using the command above, I am currently generating 15 levels. Any thoughts on how to specify textures at each of those levels? Can I specify each level with a different -t TextureDir argument? Also, is osgdem smart enough to figure out when the best time to show the next level is based on scale? As far as the popping effect mentioned earlier, that isn't a concern. It may actually be better as our customers will be able to recognize when they are looking at different map data/scales. Any quick responses are greatly appreciated as I am under a bit of a time crunch! Thank you! Chris -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=42568#42568 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org - 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [vpb] Is the VPB 1.0.0 available?
Hi, To run VPB you need in your path: the osg dlls, vpb.dll, gdals dll. I am responsible for the 3rd party library collection you are using and can confirm that this includes all you need to compile and run VPB and OSG from source, using the latest version (atleast as of a few weeks ago when I last did a full build). Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Ethan Fahy Sent: Friday, 9 September 2011 5:16 AM To: osg-users@lists.openscenegraph.org Subject: Re: [osg-users] [vpb] Is the VPB 1.0.0 available? You mention that there are VPB 3rd part dependencies; is this a download package that I missed? I don't see any reference to it on the VPB website or in the VPB source code... -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=42550#42550 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org - 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [vpb] Multiple maps in model with osgdem? (vpb)
Hi, What you want is possible with VPB by restricting the levels at which the maps are used. I cant remember the options off the top of my head, but you will need to specify each source individually and specify at what levels it should be used. From memory, the levels are quad tree levels so you may need to do some calculations of your own (or use trial and error) to figure out what level a certain map should become available. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Martin Naylor Sent: Friday, 9 September 2011 6:11 AM To: osg-users@lists.openscenegraph.org Subject: Re: [osg-users] [vpb] Multiple maps in model with osgdem? (vpb) Hi, I believe it may be possible with vpb. But you may want to take a look at osgearth, it has some features you need such fade in between layers. My knowledge on the two is minimal, but it may help? Regards Martin Naylor -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Chris Ess Sent: 04 September 2011 01:46 To: osg-users@lists.openscenegraph.org Subject: [osg-users] [vpb] Multiple maps in model with osgdem? (vpb) Hi, I am not sure if this is even possible, but I would like to use 5 or 6 different maps taken at varying altitudes but of the same region and create one model/map. As a user zooms in on the model/map the texture would update. For example: Say I had a map of North America, then a more detailed map of the United States, and finally another detailed map of just a state in the US. As the user zooms in they would see North America, then the United States, and finally a detailed state map. From the little bit of experimenting I have done, I have thrown all the geotiffs in one folder (from all 3 different maps) and built a model. What I am seeing is parts of the map are at the original scale (North America), then the regions of North America that have more detailed tiles available from the sub maps are simply overwritten with the more detailed tiles. So its like 3 different map formats all on one map and looks like some kind of Frankenstein monster. What I would like is for all of the North America map to display, then as the user zooms in, if a more detailed view/map is available, it should update accordingly, showing the detailed portions only if the user is at the necessary scale/zoom level. I hope this makes sense, I feel I explained it horribly. Is this even possible using VPB/osgdem? Are there any other tools that may work better? Thank you! Cheers, Chris -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=42404#42404 ___ 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 - 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Constantly increasing draw/gpu time
Hi, Thanks for the response. Just closing this question off as the issue has auto-magically been fixed by doing absolutely nothing. I have no idea why it was so easily reporducable after several machine restarts etc but has now vanished but I am very happy about it. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Paul Martz Sent: Wednesday, 13 July 2011 12:44 AM To: OpenSceneGraph Users Subject: Re: [osg-users] Constantly increasing draw/gpu time Do you see the same thing with osgviewer? -Paul On 7/11/2011 9:50 PM, Christiansen, Brad wrote: Hi, I have come across a difficult issue and have run out of ideas of where to look to try and find the solution. What I am observing is this: Leaving or application running, without ANY modification, results in a fairly rapid rise in both Draw and GPU time (as shown in on the stats hud). This results in a FPS drop from ~250fps down to ~30fps within 15 minutes. This drop seems to continue indefinitely, though the rate of slowing does seem to decrease. During this time both OSG's diagnostics and gDebuggers are showing a constant load on the card (same number of vertices, textures, VBOs etc) which is expected as the scene or viewport is not being modified. The memory and CPU use of the application does not change. The only thing that does seem to change is how long it takes to dispatch all the draw calls. I have reproduced this on a couple machines. I am using OSG 3.0, Windows 7 64 (my application is 32 bit though) and an Nvidia GTX 460M with driver revision 267.21. If anyone can suggest anything (at all) that I could look into it would be greatly appreciated as I am completely stuck. 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org -- -Paul Martz Skew Matrix Software http://www.skew-matrix.com/ ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org - 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] Constantly increasing draw/gpu time
Hi, I have come across a difficult issue and have run out of ideas of where to look to try and find the solution. What I am observing is this: Leaving or application running, without ANY modification, results in a fairly rapid rise in both Draw and GPU time (as shown in on the stats hud). This results in a FPS drop from ~250fps down to ~30fps within 15 minutes. This drop seems to continue indefinitely, though the rate of slowing does seem to decrease. During this time both OSG's diagnostics and gDebuggers are showing a constant load on the card (same number of vertices, textures, VBOs etc) which is expected as the scene or viewport is not being modified. The memory and CPU use of the application does not change. The only thing that does seem to change is how long it takes to dispatch all the draw calls. I have reproduced this on a couple machines. I am using OSG 3.0, Windows 7 64 (my application is 32 bit though) and an Nvidia GTX 460M with driver revision 267.21. If anyone can suggest anything (at all) that I could look into it would be greatly appreciated as I am completely stuck. 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Setting the reference location for LOD calcs for a camera
Hi, I found what I was looking for, and it might even provide the easier solutin you are looking for. I change the reference frame from ABSOLUTE_RF to ABSOLUTE_RF_INHERIT_VIEWPOINT. Stepping through the code it appears that in this mode, the viewpoint is inherited from the parent camera. So, as long as your RTT camera is a a child of your main camera you should get the beaviour you want. From the testing I have done so far it appears to work as I have described. If anyone can confirm this is the intention of the setting that would be great. Cheers, Brad From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Christiansen, Brad Sent: Friday, 8 July 2011 10:01 AM To: OpenSceneGraph Users Subject: Re: [osg-users] Setting the reference location for LOD calcs for a camera Hi, Thanks for the info. It looks like I will have to do something similar. The function I was thinking of was for the line intersector, which allows you to set the reference eye point. Cheers, Brad From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Smelik, R.M. (Ruben) Sent: Thursday, 7 July 2011 3:54 PM To: OpenSceneGraph Users Subject: Re: [osg-users] Setting the reference location for LOD calcs for a camera Hi Brad, We have done this with a custom CullVisitor that stores the eye position of the main camera and overrides the getDistanceToViewPoint to use that eye position for all LOD distance calculations. If there is an easier solution, I'd love to hear it :-) Kind regards, Ruben From: osg-users-boun...@lists.openscenegraph.org [osg-users-boun...@lists.openscenegraph.org] on behalf of Christiansen, Brad [brad.christian...@thalesgroup.com.au] Sent: Thursday, July 07, 2011 8:08 AM To: osg-users@lists.openscenegraph.org Subject: [osg-users] Setting the reference location for LOD calcs for a camera Hi, I am producing some depth textures for shadowing using a couple of RTT cameras. When producing these depth maps I want to use the same LOD levels (from a VPB based PagedLOD database) that are rendered by the 'main' camera. I am sure I have done this before and there was a simple method to do so (something like camera-setReferenceEyePoint()). Can anyone point me to the correct approach for doing this? 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. - This e-mail and its contents are subject to the DISCLAIMER at http://www.tno.nl/emaildisclaimer - 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
Re: [osg-users] [vpb] Questions regarding setname, optional layers and layer inheritance
Hi, I haven't done a direct comparison on performance, but the only real overhead at tile loading is a small step in deciding which images to load. There are more files read from disk as the images are not inline which is probably a little slower that reading a single file but I don't think it will effect performance much. From my experience, the biggest hit is the 'unbounded' number of textures required to render a single tile. Using the standard approach only a single texture exists for each tile. Using optional layers you could theoretically have an unlimited number of textures to render to each tile. In theory you could even run out of texture units / samplers for each tile (though in practice you need a lot of optional layers for this). Accessing and blending multiple textures will obviously be slower than only using one, though I havent noticed much of a performance difference in practice when I turn on or off a bunch of optional layers. The other side effect of this is complicating the management of the shaders used to render the tile (assuming you are not using fixed function). To get good performance on both ATI and Nvidia cards I ended up creating a separate shader for all possible number of active optional layers and switching between them at run time. this works much better than my original approach which used dynamic branching in a single shader. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Torben Dannhauer Sent: Wednesday, 6 July 2011 8:26 PM To: osg-users@lists.openscenegraph.org Subject: Re: [osg-users] [vpb] Questions regarding setname, optional layers and layer inheritance Hi Brad, I realized that I missed a very central question regarding optional layers: How to they affect the rendering performance? Of course it takes some computation time to merge all different layers, but have you some hints how the performance is im comparison to a native database with all data directly integrated? Thank you! Cheers, Torben -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=41191#41191 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org - 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [vpb] Questions regarding setname, optional layers and layer inheritance
Hi, I also didn't have a lot of luck with external elevation layers, but didn't really need them so didn't look into it any further. I am pretty sure that if the elevation layers where saved seperately they would simply be an .ive or .osgb file with the HeightField layer in it. Good luck with your investigations. It was quite a long road to get our terrain renderer to where it is now. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Torben Dannhauer Sent: Thursday, 7 July 2011 2:50 PM To: osg-users@lists.openscenegraph.org Subject: Re: [osg-users] [vpb] Questions regarding setname, optional layers and layer inheritance Hi Brad, thanks for the update. Yesterday I successfully created a database with an optional imagery layer. The .dds files were created in the separate folder as desired. With the elevation I was not successful, but the question raised what file format would be used for the optional elevation layer? I don't think .dds is the appropriate one ;) Anyway - it seems I was too naive regarding the integration of optional layers. I use FFP in my project and I'm still a beginner in shaders, so it will be a bumpy way for me to get optional layers working :) I'll go in the next days through your advices how to display optional layers and try to get a basic idea what the main aspects are. Cheers, Torben -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=41224#41224 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org - 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] GLSL shadow2D / shadow2DProj question
Hi, I am implementing some shadows at the moment and have come unstuck with my understanding of how to sample a shadow texture. To test my understanding, I implemented what I though shadow2D() would do using 'standard' sampling and a few calculations. This lead to the following code which works as expected: varying vec4 projShadow; uniform sampler2D depthTex; float val = texture2D(depthTex, projShadow.xy / projShadow.w).r; float fragDepth = projShadow.z / projShadow.w; if(val = fragDepth) { col = mix(col, vec4(1,0,0,1), 0.3); //shadow } else { col = mix(col, vec4(0,1,0,1), 0.3); //lit } From my understanding I should be able to replace all this with: varying vec4 projShadow; uniform sampler2DShadow depthTex; float val = shadow2D(depthTex, projShadow.xyz / projShadow.w).r; or float val = shadow2DProj(depthTex, projShadow).r; When I do this I just get garbage. Given I am getting the correct result with the first approach, and I think the second should do exactly the same thing, I am stck as to why I cant get shadow sampling to work correctly. Any suggestions would be greatly appreciated. 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] GLSL shadow2D / shadow2DProj question
Hi, Thanks for the responses. I missed all the calls you mentioned (configure shadow comparison, func, and mode). I am surprised I missed these when looking through the OSG shadow code. I am setting the internal format GL_DEPTH_COMPONENT but I noticed last night that gDebugger list the texture type as RGB, so I might have a bug in my Java bindings to OSG. Thanks for the suggestions. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Wojciech Lewandowski Sent: Friday, 8 July 2011 5:59 AM To: OpenSceneGraph Users Subject: Re: [osg-users] GLSL shadow2D / shadow2DProj question Hi Brad, Did you forget to call texture-setShadowComparison(true) ? Its neccessary for shadow2D and shadow2DProj to work. setShadowComparison( true ) is equivalent to OpenGL: glTexParameteri( TextureId , GL_TEXTURE_COMPARE_MODE_ARB, GL_COMPARE_R_TO_TEXTURE_ARB ); Cheers, Wojtek -Oryginalna wiadomość- From: Paul Martz Sent: Thursday, July 07, 2011 7:13 PM To: OpenSceneGraph Users Subject: Re: [osg-users] GLSL shadow2D / shadow2DProj question On 7/7/2011 11:02 AM, Paul Martz wrote: According to the GLSL spec, results from shadow2D and friends is undefined if the texture is not a depth format. Another thought is what version of GLSL you're invoking. If you use shadow2D() to sample the texture, that's good for GLSL 1.20, but is deprecated in 1.30 and beyond (in which you simply use texture2D() to sample the texture, even if it's a shadow texture). -Paul ___ 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 - 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Setting the reference location for LOD calcs for a camera
Hi, Thanks for the info. It looks like I will have to do something similar. The function I was thinking of was for the line intersector, which allows you to set the reference eye point. Cheers, Brad From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Smelik, R.M. (Ruben) Sent: Thursday, 7 July 2011 3:54 PM To: OpenSceneGraph Users Subject: Re: [osg-users] Setting the reference location for LOD calcs for a camera Hi Brad, We have done this with a custom CullVisitor that stores the eye position of the main camera and overrides the getDistanceToViewPoint to use that eye position for all LOD distance calculations. If there is an easier solution, I'd love to hear it :-) Kind regards, Ruben From: osg-users-boun...@lists.openscenegraph.org [osg-users-boun...@lists.openscenegraph.org] on behalf of Christiansen, Brad [brad.christian...@thalesgroup.com.au] Sent: Thursday, July 07, 2011 8:08 AM To: osg-users@lists.openscenegraph.org Subject: [osg-users] Setting the reference location for LOD calcs for a camera Hi, I am producing some depth textures for shadowing using a couple of RTT cameras. When producing these depth maps I want to use the same LOD levels (from a VPB based PagedLOD database) that are rendered by the 'main' camera. I am sure I have done this before and there was a simple method to do so (something like camera-setReferenceEyePoint()). Can anyone point me to the correct approach for doing this? 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. - This e-mail and its contents are subject to the DISCLAIMER at http://www.tno.nl/emaildisclaimer - 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [vpb] Questions regarding setname, optional layers and layer inheritance
Hi, Firstly a tip from building large databases myself, make sure you source imagery has been optimised as much as possible. I have found ecw files are much faster to process than other formats due to their exceptional speed in creating arbitrary overviews. If you are using GeoTiffs make sure you have created 'overviews' (I cant think of the correct name) for them (basically a set of mipmaps stored inline). This make a big difference to generation speed. I would also suggest you look pay attention to what output format you use for your imagery. I have found that compressing the output imagery takes the greatest amount of CPU time of the build process. If you use no compression, the output will be massive. I use these settings: --compressed-dxt1a (of dxt1 if my data completely covers the area being generated or I am using layer inheritance). --compression-quality-fastest (I honestly cant see a visible difference compared to the high quality mode, but runs almost an order of magnitude faster) --compressor-nvtt-nocuda (I run on a machine with no or poor graphics card) Now on to your question regarding options: --layer-inheritance [Lowest/Nearest/No] This comes in to play when the source data for a tile does not cover the full extents of the tile. This option determines what you see in the 'empty space'. When set to 'No', the empty space is left empty. If your output format doesn't include an alpha channel, the 'empty' space will be black, if your output format does support alpha, the empty space will be transparent. When 'Lowest' is specified, the lowest resolution data available for the area if used to fill the gaps. When Nearest is specified, the nearest resolution data available for the area if used to fill the gaps. Note that when you use optional layers, it really only makes sense to use 'No'. --set setname used by itself, I haven't been able to figure out what effect this has. --optional-set setname When used in conjunction with --set (i.e. specify both with the same value: --set MySet --optional-set MySet) you imagery layer is stored in an external (i.e. not in the .ive or .osgb file) directory structure. This allows a tile to be loaded without having to load all the optional images associated with it. --optional-image-layout [inline/external-set-dir/external-local-dir] --optional-elevation-layout [inline/external-set-dir/external-local-dir] This determines how optional layers will be written to disk. Using inline stores the optional layers within the .ive/.osgb file. These seems to defeat the purpose of optional layers but I am probably just missing the use case for this. From my experience both external-set-dir/external-local-dir produce the same output, but this may have changed since I last played with these options. I think the intention was that external-set-dir places files for each optional layer in a folder named after the set, while external-local-dir places all the optional layers in a single directory structure. This needs to be confirmed though. How does the idea of optional layers work? I assume it is possible to plug in optional layers for DEM and for textures independent? It is, though I haven't personally tried optional elevation data. Do I need a special terrain technique to use such a database with optional layers, or can I use the standard osgViewer? I have written my own terrain technique to control the display of optional layers (a sub-class of GeometryTechnique) but I think you can access up to three optional layers via a MultiTextureControl node used to decorate the generated scene though I haven't used this myself. I am pretty sure the default osgViewer doesn't provide access to this functionality though. You should also look at the osgTerrain::TerrainTile::setTileLoadedCallback() method and the default implementation WhiteListTileLoadedCallback which can be used to control the loading of optional layers (I have also implemented my own call-back). I will also add a couple of comments not directly related your questions: I would suggest you look closely at creating your own TerrainTechnique. Subclassing GeometryTechneque is pretty easy and will give you a lot more control. While this was quite a bit of work, I have managed to dynamically merge the output of multiple VPB databases at runtime. This provides a lot more flexibility to 'mix and match' different datasets and greatly simplifies the process of adding a bit of new data. As a side note, once you generate a large database moving it about is very painful due to the huge number of small files it creates. To help with this I place my databases into an archive format (I think the largest archive I have created is ~150gig), though this is probably not practical when your output will be several terabytes. If you decide to look into this, a couple of pointers / warnings: - you will need to convert the relative file names for optional layers into filenames relative
Re: [osg-users] VC++10 SP1 binary miscibility?
Hi, From my personal experience, I updated to SP1 and rebuilt our OSG based application without re-building OSG or the 3rd party dependencies, and had no issues. This is only one small data point though and it is on my TODO list to rebuild everything using SP1. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Chris 'Xenon' Hanson Sent: Thursday, 30 June 2011 7:35 AM To: OpenSceneGraph Users Subject: [osg-users] VC++10 SP1 binary miscibility? We might be changing our VC++10 to SP1 shortly, and I'm wondering if the binaries from SP1 are immiscible with non-SP1 the way VC++2008SP1 was? Basically, will I need to publish prebuilt binaries for both SP1 and non-SP1? Anyone made the switch yet? -- Chris 'Xenon' Hanson, omo sanza lettere. xe...@alphapixel.com http://www.alphapixel.com/ Digital Imaging. OpenGL. Scene Graphs. GIS. GPS. Training. Consulting. Contracting. There is no Truth. There is only Perception. To Perceive is to Exist. - Xen ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org - 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. - ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] osgDB ifstream / ofstream conflict
Hi, This seems to be the same / related to an issue raised some time ago with VS2010. When I build VirtualPlanetBuilder with VS2010 I get errors complaining about duplicate definitions of the stream destructors (cant remember the details of hand). The same code works without issue on non-windows platforms and all other VS compilers tried. As I don't have time to look into the issue I simply force the link to complete with multiply defined symbols. A quick search through my local OSG-users archive found the thread + message included bellow. Do a search through the archives around this topic and you should find all the details. Cheers, Brad Re: [osg-users] OT: VS2010 LNK2005 problem related to ostringstream Ok, I have localized the problem. For example, the class osgDB::fstream: class OSGDB_EXPORT fstream : public std::fstream { }; which just inherits from std:.fstream causes the symbols of std::fstream to be exposed into osgDB.dll This effectively means that It might cause problems for people linking against osgDB.dll later on. Same goes for inheriting from std::string, std::ostringstream etc. This must obviously be a bug, a very serious one in VS2010. We had a class derived from std::ostringstream, which exposed the symbols in the vtable for the class: namespace ns { class Notify : public std::ostringstream { }; } Using depends.exe to analyze the dll-file gives: const ns::Notify::`vftable'{for `std::basic_ostringstreamchar,struct std::char_traitschar,class std::allocatorchar '} My issue was reported to the msdn forum. Their first take was: Oh you use CMake, thats not our product :-) But in later threads, they tried to reproduce the problem without luck... So if you manage to reproduce this in a small example, go ahead and post it. We must make them aware of this problem. http://social.msdn.microsoft.com/Forums/en-US/vclanguage/thread/191de00a-53c9-4bd9-9cb6-e844eb224ca2 /Anders From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Vincent Bourdier Sent: Wednesday, 27 April 2011 11:47 PM To: osg user Subject: Re: [osg-users] osgDB ifstream / ofstream conflict Hi, Sorry to insist but I would appreciate any advices about this issue. Maybe I'm the only one who encountered it, but the patch I did is not so... clean to my mind... Thanks. Regards, Vincent. Le 21/04/2011 14:50, Vincent Bourdier a écrit : Hi all, I just found a fix after some tests, but it is not a fix I am proud of. I just added the close() method in osgDB/fstream implementation, so there is no conflict because my fstream implementation uses osgDB/fstream and not osgDB/fstream AND std::fstream. I will continue to investigate to be sure to understand why this occurs, but any advices or explanations are welcome. If my fix is accepted this could be a submission for OSG, eventually... Thanks. Regards, Vincent. Le 20/04/2011 14:54, Vincent Bourdier a écrit : Hi Mourad Thanks for your answer but I already checked that. TsLib_MDdNET2010 is a static lib but linked with /MD(d), like my application... Vincent. Le 20/04/2011 11:50, Mourad Boufarguine a écrit : Hi Vincent, On Mon, Apr 4, 2011 at 4:36 PM, Vincent Bourdier vincent.bourd...@gmail.commailto:vincent.bourd...@gmail.com wrote: 2TsLib_MDdNET2010.lib(IwPoly.obj) : error LNK2005: public: void __thiscall std::basic_ifstreamchar,struct std::char_traitschar ::close(void) (?close@?$basic_ifstream@DU?$char_traits@D@std@@@std@@QAEXXZ) already defined in osgDBd.lib(osg65-osgDBd.dll) 2TsLib_MDdNET2010.lib(IwBrepData.obj) : error LNK2005: public: void __thiscall std::basic_ifstreamchar,struct std::char_traitschar ::close(void) (?close@?$basic_ifstream@DU?$char_traits@D@std@@@std@@QAEXXZ) already defined in osgDBd.lib(osg65-osgDBd.dll) It seems like a static/dynamic c++ runtime conflict. Check if osg and TsLib_MDdNET2010 are linked against the same type of c++ runtime (both with /MTd flag or both with /MDd flag) Mourad 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
Re: [osg-users] Download details: Microsoft Visual Studio 2010 Service Pack 1 (Installer)
Hi, I seem to be the only one who actually much prefers 2010 to 2008. I agree it is slower at times but I find intellisense to be more useful / accurate than in 2008. Maybe this is because (other than OSG) the C++ projects I work on are pretty small. The major issue I have is the need to force the linking of VPB due to the multiply defined symbols. I haven't seem any issues, but I really don't like to use hacks like this. Does anyone know if SP1 fixes this issue? One question I have for those who use my pre-built 2010 dependencies (the ones linked to from the wiki): Do I need to / is it worth building a new set of 3rd party dependencies using SP1? Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Chris 'Xenon' Hanson Sent: Thursday, 17 March 2011 10:06 AM To: OpenSceneGraph Users Subject: [osg-users] Download details: Microsoft Visual Studio 2010 Service Pack 1 (Installer) VC++2010 SP1 is apparently out now. https://www.microsoft.com/downloads/en/details.aspx?FamilyID=75568aa6-8107-475d-948a-ef22627e57a5 I have one client who really wants to use OSG on 2010 (64-bit even!) and I'm curious about people's experiences with stability. Is 2010 generating good solid binaries from the OSG codebase, or are there still issues that we'll need to see if the SP1 fixes? -- Chris 'Xenon' Hanson, omo sanza lettere. xe...@alphapixel.com http://www.alphapixel.com/ Digital Imaging. OpenGL. Scene Graphs. GIS. GPS. Training. Consulting. Contracting. There is no Truth. There is only Perception. To Perceive is to Exist. - Xen ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [build] x64 library Dependencies for VC9sp1
Hi, The link to the sources is just a few words along from the link the used to download the binaries : ) Home page for dependencies: http://www.osgvisual.org/projects/osgvisual/wiki/Downloads#Dependencies Source: http://www.osgvisual.org/public_download/3rdParty_VC9sp1_x86_x64-src_V3.7z Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Craig Lane Sent: Tuesday, 1 March 2011 9:17 AM To: osg-users@lists.openscenegraph.org Subject: [osg-users] [build] x64 library Dependencies for VC9sp1 Hi, I am having a problem with the x64 libraries that are in 3rdParty_VC9sp1_x86_x64_V3.7z. This link is on the dependencies page. When I uncompress the file many of the x64 libraries seem to be corrupt. I have tried a number of .7z unpacking programs and all have the same problem. Is anyone else having this problem? Also where can I get access to the required dependency source, so I can build the libraries myself. Or do I just track them down on the web. Cheers, Craig -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=37180#37180 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] multiple tex gen modes in a single scene
Hi, I have a small amount of extra info to add, which confuses me even more. Revisting all my code I discovered that my overlays actualy use two eye linear tex gens (one for close items, one for distant ones, a bit like the parralel split shadow maps) with different matrices and different units. These work fine in isolation, but don't work when I add in the third shadow tex gen. The code that adds the tex gens to the positional state container is almost identical. I am now very confused as to why I can use two tex gens for my overlays but it wont work with shadows added. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Christiansen, Brad Sent: Friday, 21 January 2011 3:47 PM To: OpenSceneGraph Users Subject: Re: [osg-users] multiple tex gen modes in a single scene Hi Robert, I am currently adding shadows to my scene (which is going well) but in doing so I have hit this issue. I already use an eye linear tex gen in my scene to render overlays (very similar code to the osgSim::OverlayNode). I don't think it would be possible for me to split the renderering accross two different RenderStages as the two tex gens are used from within the same shader to render my terrain (one for applying shadows and the other for applying overlays). I have had a look at the PositionalStateContainer class and I do not understand why the issue exists. The tex gens use different texture units and as such there matrices are stored and applied seperately. However the result I am seeing is one of the two always 'wins' and its matrix is applied to both tex gens. This is an issue I will need to resolve so I am hoping you could provide some more guidance as to what would be the best solution. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Robert Osfield Sent: Thursday, 13 January 2011 6:27 PM To: OpenSceneGraph Users Subject: Re: [osg-users] multiple tex gen modes in a single scene Hi Paul, Eye linear glTexGen is positional state, i.e. it's value depends on the current modelview matrix, so has to be treated by the OSG like other positional state like glLight and glClipPlane. All positional state has to be positioned by a positional state node, and for glTexGen this is TexGenNode. During the cull traversal the OSG collects the positional state and binds the TexGen/Light/ClipPlane to modelview matrix at that point in traversal, this binding is done via the PositionalStateContainer, and there is one of these per RenderStage. During the draw traversal the positional state is then applied prior to the traversal of the RenderStage, and fixes each positional state in the appropriate place. While this technique doesn't properly fix the state as required, it does limit you to one position, per stage, you can't have two eye line tex gens/lights/clip planes applied on two separate subgraphs. Object linear TexGen isn't positional state so can be applied in the normal way and you have multiple of these per stage without problem. To have multiple Eye linear TexGen/TexGenNode's you'll need to break the scene up into multiple RenderStage and use the clear mask set to 0 on the subsequent stages so that each stage overlays correctly on the previous one. Other approaches are to write a custom TexGen that you push/pop a custom modelview matrix. I'm afraid both approaches are rather hacky. Robert. On Thu, Jan 13, 2011 at 2:28 AM, Paul Martz pma...@skew-matrix.com wrote: Hi all -- Has anyone ever successfully used multiple TexGen modes (say, EYE_LINEAR and OBJECT_LINEAR) on different objects in the same scene? What is the recommended way to do this in OSG? The TexGenNode has a pointer to a TexGen, and the TexGen has the mode. I assume I should create two TexGens, one OBJECT_LINEAR and one EYE_LINEAR, and two TexGenNodes to reference them, and add the two TexGenNodes to the scene graph. Then, I assume I should attach the same two TexGens as StateAttributes to different Node's StateSets as needed. I am running into some issues with this. If it sounds like I'm doing everything right, I'll post a small example that fails, or dig into the OSG code. More than likely, I'm doing something wrong here, so I just wanted to ask what the intended usage is. Thanks, -- -Paul Martz Skew Matrix Software http://www.skew-matrix.com/ ___ 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 DISCLAIMER
Re: [osg-users] multiple tex gen modes in a single scene
Hi Robert, I am currently adding shadows to my scene (which is going well) but in doing so I have hit this issue. I already use an eye linear tex gen in my scene to render overlays (very similar code to the osgSim::OverlayNode). I don't think it would be possible for me to split the renderering accross two different RenderStages as the two tex gens are used from within the same shader to render my terrain (one for applying shadows and the other for applying overlays). I have had a look at the PositionalStateContainer class and I do not understand why the issue exists. The tex gens use different texture units and as such there matrices are stored and applied seperately. However the result I am seeing is one of the two always 'wins' and its matrix is applied to both tex gens. This is an issue I will need to resolve so I am hoping you could provide some more guidance as to what would be the best solution. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Robert Osfield Sent: Thursday, 13 January 2011 6:27 PM To: OpenSceneGraph Users Subject: Re: [osg-users] multiple tex gen modes in a single scene Hi Paul, Eye linear glTexGen is positional state, i.e. it's value depends on the current modelview matrix, so has to be treated by the OSG like other positional state like glLight and glClipPlane. All positional state has to be positioned by a positional state node, and for glTexGen this is TexGenNode. During the cull traversal the OSG collects the positional state and binds the TexGen/Light/ClipPlane to modelview matrix at that point in traversal, this binding is done via the PositionalStateContainer, and there is one of these per RenderStage. During the draw traversal the positional state is then applied prior to the traversal of the RenderStage, and fixes each positional state in the appropriate place. While this technique doesn't properly fix the state as required, it does limit you to one position, per stage, you can't have two eye line tex gens/lights/clip planes applied on two separate subgraphs. Object linear TexGen isn't positional state so can be applied in the normal way and you have multiple of these per stage without problem. To have multiple Eye linear TexGen/TexGenNode's you'll need to break the scene up into multiple RenderStage and use the clear mask set to 0 on the subsequent stages so that each stage overlays correctly on the previous one. Other approaches are to write a custom TexGen that you push/pop a custom modelview matrix. I'm afraid both approaches are rather hacky. Robert. On Thu, Jan 13, 2011 at 2:28 AM, Paul Martz pma...@skew-matrix.com wrote: Hi all -- Has anyone ever successfully used multiple TexGen modes (say, EYE_LINEAR and OBJECT_LINEAR) on different objects in the same scene? What is the recommended way to do this in OSG? The TexGenNode has a pointer to a TexGen, and the TexGen has the mode. I assume I should create two TexGens, one OBJECT_LINEAR and one EYE_LINEAR, and two TexGenNodes to reference them, and add the two TexGenNodes to the scene graph. Then, I assume I should attach the same two TexGens as StateAttributes to different Node's StateSets as needed. I am running into some issues with this. If it sounds like I'm doing everything right, I'll post a small example that fails, or dig into the OSG code. More than likely, I'm doing something wrong here, so I just wanted to ask what the intended usage is. Thanks, -- -Paul Martz Skew Matrix Software http://www.skew-matrix.com/ ___ 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 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
Re: [osg-users] Limitation in current ImageLayer serializer
Hi, I have found the problem that is causing me trouble. The code I posted is writing two 'end brackets': os osgDB::BEGIN_BRACKET std::endl; os.writeImage( value ); os osgDB::END_BRACKET; If I don't write the an end bracket explicity then everything seems to work ok. I am guessing that the writeImage call is adding the end bracket for me. Is this expected behaviour? The code looks incorrect without it: os osgDB::BEGIN_BRACKET std::endl; os.writeImage( value ); Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Christiansen, Brad Sent: Wednesday, 5 January 2011 3:51 PM To: OpenSceneGraph Users Subject: Re: [osg-users] Limitation in current ImageLayer serializer Hi, I have found a little more time to work on this issue but have become stuck. Using a user serializer I have managed to read and write the image sucsessfully in the case that the image is loaded, but cant get it to work in the case the image should not be loaded. I think the issue is that, when I don't want want to read the image (i.e. deffered loading is enabled), then I still need to read the image 'header' from the stream. If the image is embedded in the file then I think I will need to read the entire image regardless of wether deffered loading is enabled or not (I haven't looked at this case yet). The code I am using is (I am testing with .osgt files so far): static bool readImage( osgDB::InputStream is, osgTerrain::ImageLayer im ) { std::string filename = im.getFileName(); if (!filename.empty()) { bool hasImage; is hasImage; if(hasImage) { is osgDB::BEGIN_BRACKET; bool deferExternalLayerLoading = osgTerrain::TerrainTile::getTileLoadedCallback().valid() ? osgTerrain::TerrainTile::getTileLoadedCallback()-deferExternalLayerLoading() : false; if (!deferExternalLayerLoading) { osg::ref_ptrosg::Image image = is.readImage(); if (image.valid()) { im.setImage(image.get()); } } else { //I think this is where I need to read of the image 'header' } is osgDB::END_BRACKET; } } return true; } static bool writeImage( osgDB::OutputStream os, const osgTerrain::ImageLayer im ) { const osg::Image* value = im.getImage(); bool hasObject = (value!=NULL); os hasObject; if ( hasObject ) { os osgDB::BEGIN_BRACKET std::endl; os.writeImage( value ); os osgDB::END_BRACKET; } return true; } The relevenat section of the osgt file that is created is: Layers 1 { Object osgTerrain::ImageLayer { UniqueID 9 Name kljhjkl FileName earth_L1_X0_Y0_kljhjkl.dds Locator TRUE { osgTerrain::Locator { UniqueID 4 } } Image TRUE { UniqueID 10 FileName earth_L1_X0_Y0_kljhjkl.dds WriteHint 2 2 DataVariance STATIC }} } And the error I get when loading the file with deffered loading enabled is a bad allocation error. Any suggestions would be greatly appreciated! Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Wang Rui Sent: Tuesday, 30 November 2010 1:47 PM To: osg-users@lists.openscenegraph.org Subject: Re: [osg-users] Limitation in current ImageLayer serializer Hi Brad, In fact when I'm working on the osgTerrain serializers, I don't pay much attention to the special mechanism that may be required when loading terrain tile and layer classes. For the case that the image layer may be loaded inactive according to an additional flag, I suggest that we should handle all of these with a user serializer instead, that is, REGISTER_OBJECT_WRAPPER( osgTerrain_ImageLayer, new osgTerrain::ImageLayer, osgTerrain::ImageLayer, osg::Object osgTerrain::Layer osgTerrain::ImageLayer ) { ADD_USER_SERIALIZER( Image ); // _image } And write/read images and activate them by ourselves. Here we can read out an image object from the input stream using is.readImage(), and write image to disk files with the operator. Hope this can help if you would like to help fix the problem. :-) Cheers, Wang Rui 2010/11/30 Brad Christiansen brad.christian...@thalesgroup.com.au: Hi, I have discovered a piece of missing functionality in the new serializer for osgTerrain::ImageLayers. The issue is that all optional layers are loaded when an osgb file is loaded regardless of weather they should be or not. The relevant piece of code for the the .ive format is in (in osgDB_ive) void ImageLayer::read(DataInputStream* in) at line 64: bool deferExternalLayerLoading = osgTerrain::TerrainTile
Re: [osg-users] Limitation in current ImageLayer serializer
Hi, I have found a little more time to work on this issue but have become stuck. Using a user serializer I have managed to read and write the image sucsessfully in the case that the image is loaded, but cant get it to work in the case the image should not be loaded. I think the issue is that, when I don't want want to read the image (i.e. deffered loading is enabled), then I still need to read the image 'header' from the stream. If the image is embedded in the file then I think I will need to read the entire image regardless of wether deffered loading is enabled or not (I haven't looked at this case yet). The code I am using is (I am testing with .osgt files so far): static bool readImage( osgDB::InputStream is, osgTerrain::ImageLayer im ) { std::string filename = im.getFileName(); if (!filename.empty()) { bool hasImage; is hasImage; if(hasImage) { is osgDB::BEGIN_BRACKET; bool deferExternalLayerLoading = osgTerrain::TerrainTile::getTileLoadedCallback().valid() ? osgTerrain::TerrainTile::getTileLoadedCallback()-deferExternalLayerLoading() : false; if (!deferExternalLayerLoading) { osg::ref_ptrosg::Image image = is.readImage(); if (image.valid()) { im.setImage(image.get()); } } else { //I think this is where I need to read of the image 'header' } is osgDB::END_BRACKET; } } return true; } static bool writeImage( osgDB::OutputStream os, const osgTerrain::ImageLayer im ) { const osg::Image* value = im.getImage(); bool hasObject = (value!=NULL); os hasObject; if ( hasObject ) { os osgDB::BEGIN_BRACKET std::endl; os.writeImage( value ); os osgDB::END_BRACKET; } return true; } The relevenat section of the osgt file that is created is: Layers 1 { Object osgTerrain::ImageLayer { UniqueID 9 Name kljhjkl FileName earth_L1_X0_Y0_kljhjkl.dds Locator TRUE { osgTerrain::Locator { UniqueID 4 } } Image TRUE { UniqueID 10 FileName earth_L1_X0_Y0_kljhjkl.dds WriteHint 2 2 DataVariance STATIC }} } And the error I get when loading the file with deffered loading enabled is a bad allocation error. Any suggestions would be greatly appreciated! Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Wang Rui Sent: Tuesday, 30 November 2010 1:47 PM To: osg-users@lists.openscenegraph.org Subject: Re: [osg-users] Limitation in current ImageLayer serializer Hi Brad, In fact when I'm working on the osgTerrain serializers, I don't pay much attention to the special mechanism that may be required when loading terrain tile and layer classes. For the case that the image layer may be loaded inactive according to an additional flag, I suggest that we should handle all of these with a user serializer instead, that is, REGISTER_OBJECT_WRAPPER( osgTerrain_ImageLayer, new osgTerrain::ImageLayer, osgTerrain::ImageLayer, osg::Object osgTerrain::Layer osgTerrain::ImageLayer ) { ADD_USER_SERIALIZER( Image ); // _image } And write/read images and activate them by ourselves. Here we can read out an image object from the input stream using is.readImage(), and write image to disk files with the operator. Hope this can help if you would like to help fix the problem. :-) Cheers, Wang Rui 2010/11/30 Brad Christiansen brad.christian...@thalesgroup.com.au: Hi, I have discovered a piece of missing functionality in the new serializer for osgTerrain::ImageLayers. The issue is that all optional layers are loaded when an osgb file is loaded regardless of weather they should be or not. The relevant piece of code for the the .ive format is in (in osgDB_ive) void ImageLayer::read(DataInputStream* in) at line 64: bool deferExternalLayerLoading = osgTerrain::TerrainTile::getTileLoadedCallback().valid() ? osgTerrain::TerrainTile::getTileLoadedCallback()-deferExternalLayerLoading() : false; // Should we read image data from stream IncludeImageMode includeImg = (IncludeImageMode)in-readChar(); if (includeImg==IMAGE_REFERENCE_FILE deferExternalLayerLoading) { setFileName(in-readString()); } else { setImage(in-readImage(includeImg)); } The new serializer simple adds an image serializer for an ImageLayer with no similar checks. I have had a quick look at coding a fix but have to admit I still dont fully understand how the new system works in such cases. If anyone can give me some pointers on how to go about adding this functionality that would be greatly apprecaited as at the momment I am having to covert my terrain
Re: [osg-users] [vpb] How to debug VPB step by step
Hi, It isn't exactly what you are after, but you can set the OSG_NOTIFY_LEVEL to debug and that will give you a decent idea of what is happening. Having said that, I really do think the be option is to do the 'really boring' work and step through the execution with a debugger. I have done exactly this with VPBMaster and osgdem many times to gain a good understanding of how it works. It might be slow but it really is the only way you will really get to grips with what I happening. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of wang junchao Sent: Wednesday, 1 December 2010 9:58 AM To: osg-users@lists.openscenegraph.org Subject: Re: [osg-users] [vpb] How to debug VPB step by step Hi Robert, Thank you for your reply. But maybe I didn't make myself understood. As you know, reading source code is a very complex and boring work. So my question is that : can I input a commandline like osgdem -t -.. d.. - o output.ive and trace the execution of the program step by step like the Visual Studio's debug mode ? Thank you again for your reply! Cheers, wang -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=34284#34284 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [3rdparty] FWTools on Visual Studio 2010?
Hi, I don't know of any FWTools binaries that have been built with 2010 but you can get proj (and quite a few other useful libs) by downloading the GDAL developer binaries found here: http://vbkto.dyndns.org/sdk/ I am the fool responsible for most of the 2010 OSG binaries and I must say this is the last time I will be using a new version of VS soon after release. It is a real pain building 3rd party libraries with 2010 as most don't yet support it so you are on your own. Good luck! Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of John Farrier Sent: Sunday, 28 November 2010 11:26 PM To: osg-users@lists.openscenegraph.org Subject: [osg-users] [3rdparty] FWTools on Visual Studio 2010? Hi, I am working with an entire app built with Visual Studio 2010. I am using the pre-built OpenSceneGraph 3rd Party files that were built with 2010, but FWTools was NOT built with 2010 and I have not found binaries built with 2010. Further, upon downloading some source for FWTools components, (Proj, to start with), I see it does not have a VS project of any kind. Is anyone able to provide FWTools built with 2010 or a older complete solution that I could upgrade to 2010 and compile? Thank you! Cheers, John -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=34189#34189 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [build] 3rd party libs and VS 2010
Hi, Ideally this shouldn't be necessary as the cmake find modules should be able to find what is needed once you have set the 3rdParty dir in cmake. I think I have not structured my dependencies correctly for the all to be found. It is on my to-do list to clean up the dependencies I have published, and if necessary modify the 'find module' cmake files so they are all automatically detected, but this task never seems to rise to the top to the list : ) If anyone has built 64 bit dependencies using VS2010 I am happy to package them up and make them available too. It is also on my to-do list to publish 64bti binaries but that is another task that never quite seems to get done. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Joel Graff Sent: Saturday, 6 November 2010 8:41 PM To: osg-users@lists.openscenegraph.org Subject: Re: [osg-users] [build] 3rd party libs and VS 2010 Just as a follow-up (esp. for others who aren't greatly familiar with cmake), I discovered that most of my problems getting the various plugins to show up in the generated VS project were solved by clicking the Advanced checkbox in the upper right of the cmake gui. This exposes a whole bunch more variables for referencing libraries, not the least of which are the Freetype libraries. I set the directory paths / lib locations and viola! freetype compiles! Hope it helps save someone else a week of work trying to get OSG to compile... -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=33554#33554 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Visual Studio 2010 binaries
Hi, I have added 'fix the png header' to the list : ) I didn't build debug libraries for boost as I didn't need them and compiling all the dependencies for the collada plug-in took a long time. If you do build the debug version or replace the png header could you send them to me so I can update the zip so others don't end up with the same issue? Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Christian Buchner Sent: Monday, 8 November 2010 7:11 PM To: osg-users@lists.openscenegraph.org Subject: Re: [osg-users] Visual Studio 2010 binaries Thank you for your response. I noticed your zip archive contains png.h from version 1.2.39 whereas the supplied .lib file is version 1.4.3. This triggers a runtime error in my application (which also uses Qt and other libraries). And them I am still facing issues with the Collada plugin in Debug mode, which currently refuses to load as a DLL. I suspect this is because the boost dependencies were only supplied as binaries in release mode. But with the pointers you provided, I should be able to create debug versions as well. Christian ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [build] 3rd party libs and VS 2010
Hi, I certainly am. I am not doing a 64bit build at the moment but it will save me (and others) some time compiling them. If you can get them to me I will package them up and post a link on the osg-wiki. I am not sure I will get it done in the next week or as I am off on holidays on Saturday for a week, but I will upload them once I get back if I run out of time. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Sukender Sent: Wednesday, 10 November 2010 6:01 PM To: OpenSceneGraph Users Subject: Re: [osg-users] [build] 3rd party libs and VS 2010 Hi Brad, I got some dependencies for VC10 64bits (WinSDK 7.1): - curl-7.21.1 without SSL - freetype-2.4.2 - jpeg-8b - lpng143 - zlib And some others: - Boost 1.44 - freealut-1.1.0 - libsquish - ode-0.11.1 - ogg, vorbis - OpenAL-Soft Interested? Sukender PVLE - Lightweight cross-platform game engine - http://pvle.sourceforge.net/ - Brad Christiansen brad.christian...@thalesgroup.com.au a écrit : Hi, Ideally this shouldn't be necessary as the cmake find modules should be able to find what is needed once you have set the 3rdParty dir in cmake. I think I have not structured my dependencies correctly for the all to be found. It is on my to-do list to clean up the dependencies I have published, and if necessary modify the 'find module' cmake files so they are all automatically detected, but this task never seems to rise to the top to the list : ) If anyone has built 64 bit dependencies using VS2010 I am happy to package them up and make them available too. It is also on my to-do list to publish 64bti binaries but that is another task that never quite seems to get done. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Joel Graff Sent: Saturday, 6 November 2010 8:41 PM To: osg-users@lists.openscenegraph.org Subject: Re: [osg-users] [build] 3rd party libs and VS 2010 Just as a follow-up (esp. for others who aren't greatly familiar with cmake), I discovered that most of my problems getting the various plugins to show up in the generated VS project were solved by clicking the Advanced checkbox in the upper right of the cmake gui. This exposes a whole bunch more variables for referencing libraries, not the least of which are the Freetype libraries. I set the directory paths / lib locations and viola! freetype compiles! Hope it helps save someone else a week of work trying to get OSG to compile... -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=33554#33554 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org 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. -- ___ 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 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,
Re: [osg-users] Visual Studio 2010 binaries
Thanks heaps. I will try and get the updates posted today. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Christian Buchner Sent: Wednesday, 10 November 2010 8:30 PM To: OpenSceneGraph Users Subject: Re: [osg-users] Visual Studio 2010 binaries Here is your x86 3rdparty folder enhanced with the following fixes -replaced the png headers -added a debug DLL build of the Collada DOM -(optionally) added boost 1.4.3 headers without boost headers http://www.mediafire.com/file/tmu278o6fej7jpi/3rdParty.7z with boost 1.43 headers http://www.mediafire.com/file/nh37v305e509m83/3rdParty_noboost.7z You're free to integrate any of this into your binary distribution. I will keep it up on mediafire for a while. Christian ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] Pausing the database pager
Hi, I am currently implementing run-time merging of datasets created using VPB. When I add a new dataset I walk through an existing PagedLOD structure and add the appropriate Layers to the existing terrain tiles. During this process I may also update/add children and or settings of an existing PagedLOD. The same class that manages this process is also responsible for loading subtiles in response to a database request. The problem I am having at the moment is that it is possible for my update thread (the frame loop is paused for the update) to be in the middle of merging in a new data set when a request comes in to load subtiles. This is causing some headaches as it is possible for me to miss updating subtiles that have been created due the request, but not yet added as a child to my PagedLOD. I am also iterating through a vector in one of the threads and updating it in the other which is obviously bad news. I could implement some sort of locking mechanism to solve the problem but I think it would be much cleaner to, before starting the update, pause the DatabasePager, clear any outstanding requests and wait for any requests that are currently being processed to complete. I could then safely updated the PagedLOD structure, then restart the pager. There is a setDatabasePagerThreadPause method but from my understaning of the code this returns immiadiatley. What I need to do is wait for the the pause to be completed before I continue. Is this functionality already available? I cant see how to achieve what I want but the pager is a not a simple class to understand so I may be missing something. 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Proposed changes to VPB re compression
Hi, I have just finished some basic benchmarking of the three different compression methods I am playing with with some very surprising results (to me anyway : ) I created a small test app that used either the current GL context, NVTT with CUDA or vanilla CPU based NVTT to compress an image to a specified format. The image was compressed ten times and the total time taken is given in seconds. I ran the tests on two machines (one laptop and one desktop). Desktop Win7 3.2ghz CPU Geforce GTX275 -- CPUCUDA GL DXT117.0 1.47 0.66 DXT1a 14.22 0.47 DXT312.58 1.48 0.52 Laptop Win7 3.17ghz CPU ATI Mobility FireGL V5700 - CPUGL DXT118.61 3.913 DXT1a 20.65 3.948 DXT318.13 0.977 The main surprise for me was how much faster using the current GL approach is compared to using NVTT. There is a big difference between the two video cards but both are much faster than the CPU. I was a bit disappointed at the CUDA results especially given this will only work on Nvidia cards and some formats (the DXT1a cuda score isn't given as this output format doesn't support cuda acceleration atm). Before these tests I was leaning towards defaulting to using NVTT for maximum compatibility but this doesn't look so good now. 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Proposed changes to VPB re compression
Hi, I remembered you had previous mentioned about the debug build of nvtt so I did check that. I was also having some issues with building from source and using static libs for nvtt so I ended up switching to the pre-build binaries from the Nvidia web site just to be sure I wasn't breaking something at my end. Using either my own release build or the pre-built binaries the results were the same (as I posted before). I have now completed the changes need to be able to switch at runtime between the different techniques and have done a quick test of vpbmaster generating 6 levels of blue marble data from an ecw file. In this test the run using the GL compressor finished in 17.7 seconds while the nvtt run took 90 seconds. I wonder if this could be a platform difference? Maybe the GL drivers under Linux do the compression in software while the windows ones do it in hardware. Regarding submitting these changes, I have had a quick look at what modifications I have made and while they aren't huge, they have been made on top of the various outstanding submissions for VPB. Would you prefer me to hold off with this submission until you have gone through the others individually (I will handle and merges on my end) or should I just submit the combination of my and Fabiens changes as I have them? I have named the options: --compressor-nvtt (nvvt, cuda if available) --compressor-nvtt-nocuda (force no cuda) --compressor-gl-driver (current method) which match to new build option 'compressionMethod': enum CompressionMethod{ GL_DRIVER, NVTT,NVTT_NOCUDA } Let me know if you can think of better names. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Robert Osfield Sent: Tuesday, 26 October 2010 8:57 PM To: OpenSceneGraph Users Subject: Re: [osg-users] Proposed changes to VPB re compression Hi Brad, When I first tested the NVTT based compression on my Linux system I found that the NVTT compression was slower than GL based. I then checked the build options of NVTT and the Release build was set, fixing this and then a rebuilding NVTT improved the results so they matched the GL compile time. As for the idea of having the -texture-process command line option to select which to use, I think this is a good idea. #if'defing the code paths for when NVTT isn't available is a perfectly acceptable thing to do in this instance as we aren't talking about lots of place in the code. Cheers, Robert. On Tue, Oct 26, 2010 at 12:00 PM, Christiansen, Brad brad.christian...@thalesgroup.com.au wrote: Hi, I have just finished some basic benchmarking of the three different compression methods I am playing with with some very surprising results (to me anyway : ) I created a small test app that used either the current GL context, NVTT with CUDA or vanilla CPU based NVTT to compress an image to a specified format. The image was compressed ten times and the total time taken is given in seconds. I ran the tests on two machines (one laptop and one desktop). Desktop Win7 3.2ghz CPU Geforce GTX275 -- CPU CUDA GL DXT1 17.0 1.47 0.66 DXT1a 14.22 0.47 DXT3 12.58 1.48 0.52 Laptop Win7 3.17ghz CPU ATI Mobility FireGL V5700 - CPU GL DXT1 18.61 3.913 DXT1a 20.65 3.948 DXT3 18.13 0.977 The main surprise for me was how much faster using the current GL approach is compared to using NVTT. There is a big difference between the two video cards but both are much faster than the CPU. I was a bit disappointed at the CUDA results especially given this will only work on Nvidia cards and some formats (the DXT1a cuda score isn't given as this output format doesn't support cuda acceleration atm). Before these tests I was leaning towards defaulting to using NVTT for maximum compatibility but this doesn't look so good now. 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
[osg-users] Tip for large VPB builds
Hi, Over the weekend I discovered some data preparation steps that have resulted in a dramatic improvement in the performance of my VPB generation runs and thought I should share. While I haven't done a proper benchmark, it appears that the changes I made to the source data have cut the processing time for one of my datasets from around 18 days to just 1.5 days. The original source data was several thousand DTED tiles, 12 large GeoTiffs (about 1 gig each) and hundreds of small GeoTiffs (10s-100s of megs each). Before sending the data to VPB, I used Global Mapper (not free but it is cheap for what you get) to convert all the color data into one ecw file per layer (3 total). I also converted the DTED tiles into a single compressed .img (edras) file and generated overviews in this file using GDAL. I tried creating a JPEG2000 elevation file but this crashed on each attempt. After this, the source data went from 1000s of files to just 4 and the size on disk was reduced by roughly one order of magnitude. All this processing took (a vague guess of) 24 hours. Given that the VPB process has been reduced by many times this it appears to be a relatively small overhead and makes the data a lot easier to deal with. I think the main improvements in speed come from ECWs brilliant performance in generating arbitrary overviews of the color data as well as a clear savings in disk overhead. The only downside with using the ecw format is the slightly painful liscing of the ECW sdk which meant that I had to rebuild GDAL with ECW support rather than using the gdal binaries available from the 3rdParty libs on the OSG wiki. It is however possible to download pre-built gdal binaries (which you can link OSG against) with ecw support, though I am not convinced they meet the license requirements of ECW. If anyone else gives this a shot I would be very interested to see if the gains I have found can be repeated. 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] Proposed changes to VPB re compression
Hi, I have found some time to work on the new NVTT compression path in VPB and have a couple of quick questions about how best to proceed. My current plan is to add a couple of new options to osgdem/vpbmaster such as --textureProcessor-GL (old implementation) --textureProcessor-CPU (current nvtt implementation) --textureProcessor-CUDA (nvtt with cuda). When osgdem is run, it will try and use the requested texture processing path, failing back to CPU if this is not available. Does this approach sound reasonable? In relation to this, should the use of nvtt remain optional? This does seem doable but it will result in some macro uglyness in the code and will complicate some sections. One last question for anyone who has built VPB with the new nvvt code, did everything build ok after cmake had configured the projects? I found I had to add nvtts internal squish.lib as a dependancy to get things building. I have added this to the cmake setup (as well as the cuda runtime (optionaly)), but am curious to know if this requirement is purely an artifact of how I built nvtt. One final note, if anyone wants to have a quick play with the new code under windows I have packaged up the reuqired 3rd party libs (gdal, nvtt, cuda) for VS2008 x64 and x86 and can post them if wanted. 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] OT: VS2010 LNK2005 problem related to ostringstream
Hi, I never managed to get any further. I am still just forcing the output of the dll and seriously considering moving back to VS 2008. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Sukender Sent: Wednesday, 20 October 2010 4:11 PM To: OpenSceneGraph Users Subject: Re: [osg-users] OT: VS2010 LNK2005 problem related to ostringstream Hi all, Any update on this side? I've got the same issue (I use fstream in my project which depends on osgDB, under VC2010 x64). Or is there a way to temporarily workaround this in OSG with an ugly #ifdef? Sukender PVLE - Lightweight cross-platform game engine - http://pvle.sourceforge.net/ - Anders Backman ande...@cs.umu.se a écrit : Ok, I have localized the problem. For example, the class osgDB::fstream: class OSGDB_EXPORT fstream : public std::fstream { }; which just inherits from std:.fstream causes the symbols of std::fstream to be exposed into osgDB.dll This effectively means that It might cause problems for people linking against osgDB.dll later on. Same goes for inheriting from std::string, std::ostringstream etc. This must obviously be a bug, a very serious one in VS2010. We had a class derived from std::ostringstream, which exposed the symbols in the vtable for the class: namespace ns { class Notify : public std::ostringstream { }; } Using depends.exe to analyze the dll-file gives: const ns::Notify::`vftable'{for `std::basic_ostringstreamchar,struct std::char_traitschar,class std::allocatorchar '} My issue was reported to the msdn forum. Their first take was: Oh you use CMake, thats not our product :-) But in later threads, they tried to reproduce the problem without luck... So if you manage to reproduce this in a small example, go ahead and post it. We must make them aware of this problem. http://social.msdn.microsoft.com/Forums/en-US/vclanguage/thread/191de00a-53c9-4bd9-9cb6-e844eb224ca2 /Anders On Mon, Aug 30, 2010 at 4:31 AM, Christiansen, Brad brad.christian...@thalesgroup.com.au wrote: Hi, Unfortunately I can't offer a solution, but I thought I would mention I have come across this exact problem and have also pulled my hair out trying to find a solution. This same problem exists when building virtual planet builder, linking with osgDB causes the multiply defined symbols. I had no other issues building the 3rd party libs and osg with 2010. The only way I could move forward was to allow multiply defined symbols (as has already been mentioned). I agree this seems dangerous and is not a solution but it has allowed me to continue working. So far it hasn’t caused any issues with my vpb build. Given you have used the streams extensively without issue and it seems osgDB is the source of the trouble, have you had a look to see if there is any discernable difference between your code and that in osgDB ? I would love to find a solution to this. Cheers, Brad From: osg-users-boun...@lists.openscenegraph.org [mailto: osg-users-boun...@lists.openscenegraph.org ] On Behalf Of Anders Backman Sent: Friday, 27 August 2010 4:00 PM To: OpenSceneGraph Users Subject: Re: [osg-users] OT: VS2010 LNK2005 problem related to ostringstream I have verified the build mode for all ingoing libraries. I build all the dependencies myself. Including OSG. The problem I have (which is OSG related), is that if I build without OSG support (no rendering), it all works. And I still use std::ostringstream and std::stringstream quite extensively... We still link against OpenThreads (but no rendering). So only when I link against osg (osg.lib, osgDB.lib, osgText.lib, osgShadow.lib, osgViewer.lib osgGA.lib) I get this problem. I have verified that osg (and OpenThreads) are all built consistently all over the field. Release and /MD (MultiThreadedDLL), which is default from CMake. So I can use/link against OpenThreads.lib, but not OSG... Rather nasty problem, I'm trying to reduce it, but I'm getting nowhere. And once again, same settings, same CMake version, same code all over the place, and it works in VS2008... /A On Thu, Aug 26, 2010 at 8:17 PM, Simon Hammett s.d.hamm...@googlemail.com wrote: Ah ok, then next things to check: Make absolutely sure you aren't mixing up objects libraries from the different builds. For my projects I include a vc version number in the name, so .vc7.lib/vc7.dll .vc9.lib/.vc9.dll and I also use the vc version in the name of output intermediate directory Then check all the code for any use of #pragma comment(lib, libname) and make sure any preprocessor guards that select different versions have been updated to know about vc2010
Re: [osg-users] Intersecting volumes and terrain
Hi, I haven't done this myself, but I believe the PolytopeIntersector will give you a list of points you are after. You need to define the planes that make up your volume and then use an IntersectionVisitor with the PolytopeIntersector to intersect agains your terrain. From there you can retrieve the intersection points. I know something similar is done in the osgSim::OverlayNode though I think its usage is more complex than yours. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Roman Grigoriev Sent: Saturday, 16 October 2010 1:32 AM To: osg-users@lists.openscenegraph.org Subject: [osg-users] Intersecting volumes and terrain Hi, I generate terrain using VPB and need to implement intersection lines like on attached picture (green lines that shows intersecton between cone and terrain). Could someone please give me a hint how to make it using osg? Thank you! Cheers, Roman -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=32788#32788 Attachments: http://forum.openscenegraph.org//files/1_201.jpg ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [osg-submissions] Crash with SVN version of Tessellator (FIXED)
Hi Robert, I have done some more reading and I understand a little what is going on. With this understanding I have made the same fix but without defining any additional macros (though I do use the already defined GL_APIENTRY). The change to tess.h also removes the special case for windows as this is handled already by using the existing GL_APIENTRY. The cause of the problem is the fact the OSG is built using the _cdecl calling convention (which is normal). However if you're using any callback functions with the Windows API (which the GLU implementation does), they must be declared using CALLBACK and/or WINAPI. That will apply appropriate decorations to make the compiler generate code that cleans the stack correctly. On Windows with visual sutio GL_APIENTRY ends up being defined as WINAPI. Let me know if you are happy with the new approach. Cheers, Brad -Original Message- From: osg-submissions-boun...@lists.openscenegraph.org [mailto:osg-submissions-boun...@lists.openscenegraph.org] On Behalf Of Robert Osfield Sent: Thursday, 14 October 2010 3:58 PM To: OpenSceneGraph Submissions Subject: Re: [osg-submissions] [osg-users] Crash with SVN version of Tessellator (FIXED) Hi Brad, I would really like to keep the macro crud down in the headers, there is already the OSG_EXPORT macro used, this is purely to placate Windows issues, but to have yet another macro placed in a function call really is forcing the readability to deteriorate further. Can this be avoided? We declare other functions in the OSG without anything more than the OSG_EXPORT. The implementation side I'm a little less concerned about, as it already has these macros in place, but they don't have the extra OSG_EXPORT. Robert. On Thu, Oct 14, 2010 at 5:24 AM, Christiansen, Brad brad.christian...@thalesgroup.com.au wrote: Hi, I have managed to track down the issue and have attached the fix. The problem was that the GLU functions were using a different calling convention. I don't for a second pretend to understand the issue properly or why it exists as anything that combines windows and C++ completely defies my understanding. However, what I have done seems reasonable and does fix the problem. Somebody who actually understands this stuff might have a cleaner solution but the changes are actually very small and seem inline with what has been done in other parts of OSG. For anyone who is interested or might understand the errors better, the Visual Studio debugger reported the following: Run-Time Check Failure #0 - The value of ESP was not properly saved across a function call. This is usually a result of calling a function declared with one calling convention with a function pointer declared with a different calling convention. This led me here: http://blogs.msdn.com/b/mithuns/archive/2006/12/11/pay-attention-to-the-calling-convention.aspx Which is what I based my fix on. I have also noticed some warning during compilation which I haven't fixed but thought I would mention anyway: 1 tess.cpp 1..\..\..\src-trunk\src\osg\glu\libtess\tess.cpp(505): warning C4611: interaction between '_setjmp' and C++ object destruction is non-portable 1 error.cpp 1..\..\..\src-trunk\src\osg\glu\libutil\error.cpp(135): warning C4245: 'initializing' : conversion from 'int' to 'GLuint', signed/unsigned mismatch 1 tess.cpp 1..\..\..\src-trunk\src\osg\glu\libtess\tess.cpp(505): warning C4611: interaction between '_setjmp' and C++ object destruction is non-portable 1d:\osg\osg-trunk\src-trunk\src\osg\glu\libutil\mipmap.cpp(5208): warning C4701: potentially uninitialized local variable 'iter' used 1d:\osg\osg-trunk\src-trunk\src\osg\glu\libutil\mipmap.cpp(5550): warning C4701: potentially uninitialized local variable 'iter' used 1d:\osg\osg-trunk\src-trunk\src\osg\glu\libutil\mipmap.cpp(6934): warning C4701: potentially uninitialized local variable 'iter' used 1d:\osg\osg-trunk\src-trunk\src\osg\glu\libutil\mipmap.cpp(7368): warning C4701: potentially uninitialized local variable 'iter' used Cheers. Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Christiansen, Brad Sent: Thursday, 14 October 2010 9:40 AM To: OpenSceneGraph Users Subject: Re: [osg-users] Crash with SVN version of Tessellator Hi Robert, Both osgtesselate and osgtext3D crash as well. The stack trace for osgtesselate is: osgd.dll!RenderStrip(osg::GLUtesselator * tess=0x0272a9f8, GLUhalfEdge * e=0x0272e6a0, long size=12907152) Line 311 + 0x32 bytesC++ osgd.dll!__gl_renderMesh(osg::GLUtesselator * tess=0x0272a9f8, GLUmesh * mesh=0x0272bb40) Line 99 + 0xd bytesC++ osgd.dll!osg::gluTessEndPolygon(osg::GLUtesselator * tess=0x0272a9f8) Line 572 + 0xd bytesC++ osgUtild.dll!osgUtil::Tessellator::endTessellation() Line 87 + 0xf bytes C++ osgUtild.dll!osgUtil
Re: [osg-users] [osg-submissions] Crash with SVN version of Tessellator (FIXED)
Cheers. Every time I touch windows programming I cringe and generaly run as fast as I can in the other direction. Unfortunately this isnt always possible. I have a feeling some of the other glu functions may suffer the same windows missery. Do any of the other examples use the new functions that you know of? If so I will do some testing and try and ensure they work on windows as well. -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Robert Osfield Sent: Thursday, 14 October 2010 7:12 PM To: OpenSceneGraph Users Subject: Re: [osg-users] [osg-submissions] Crash with SVN version of Tessellator (FIXED) Hi Brad, I think this change is a bit cleaner and an acceptable, albeit with a bit cringe about how hacky windows programming is and the fallout it has on the rest of the programming world. You changes are now merged and submitted to svn/trunk. Cheers, Robert. On Thu, Oct 14, 2010 at 11:41 AM, Christiansen, Brad brad.christian...@thalesgroup.com.au wrote: Hi Robert, I have done some more reading and I understand a little what is going on. With this understanding I have made the same fix but without defining any additional macros (though I do use the already defined GL_APIENTRY). The change to tess.h also removes the special case for windows as this is handled already by using the existing GL_APIENTRY. The cause of the problem is the fact the OSG is built using the _cdecl calling convention (which is normal). However if you're using any callback functions with the Windows API (which the GLU implementation does), they must be declared using CALLBACK and/or WINAPI. That will apply appropriate decorations to make the compiler generate code that cleans the stack correctly. On Windows with visual sutio GL_APIENTRY ends up being defined as WINAPI. Let me know if you are happy with the new approach. Cheers, Brad -Original Message- From: osg-submissions-boun...@lists.openscenegraph.org [mailto:osg-submissions-boun...@lists.openscenegraph.org] On Behalf Of Robert Osfield Sent: Thursday, 14 October 2010 3:58 PM To: OpenSceneGraph Submissions Subject: Re: [osg-submissions] [osg-users] Crash with SVN version of Tessellator (FIXED) Hi Brad, I would really like to keep the macro crud down in the headers, there is already the OSG_EXPORT macro used, this is purely to placate Windows issues, but to have yet another macro placed in a function call really is forcing the readability to deteriorate further. Can this be avoided? We declare other functions in the OSG without anything more than the OSG_EXPORT. The implementation side I'm a little less concerned about, as it already has these macros in place, but they don't have the extra OSG_EXPORT. Robert. On Thu, Oct 14, 2010 at 5:24 AM, Christiansen, Brad brad.christian...@thalesgroup.com.au wrote: Hi, I have managed to track down the issue and have attached the fix. The problem was that the GLU functions were using a different calling convention. I don't for a second pretend to understand the issue properly or why it exists as anything that combines windows and C++ completely defies my understanding. However, what I have done seems reasonable and does fix the problem. Somebody who actually understands this stuff might have a cleaner solution but the changes are actually very small and seem inline with what has been done in other parts of OSG. For anyone who is interested or might understand the errors better, the Visual Studio debugger reported the following: Run-Time Check Failure #0 - The value of ESP was not properly saved across a function call. This is usually a result of calling a function declared with one calling convention with a function pointer declared with a different calling convention. This led me here: http://blogs.msdn.com/b/mithuns/archive/2006/12/11/pay-attention-to-the-calling-convention.aspx Which is what I based my fix on. I have also noticed some warning during compilation which I haven't fixed but thought I would mention anyway: 1 tess.cpp 1..\..\..\src-trunk\src\osg\glu\libtess\tess.cpp(505): warning C4611: interaction between '_setjmp' and C++ object destruction is non-portable 1 error.cpp 1..\..\..\src-trunk\src\osg\glu\libutil\error.cpp(135): warning C4245: 'initializing' : conversion from 'int' to 'GLuint', signed/unsigned mismatch 1 tess.cpp 1..\..\..\src-trunk\src\osg\glu\libtess\tess.cpp(505): warning C4611: interaction between '_setjmp' and C++ object destruction is non-portable 1d:\osg\osg-trunk\src-trunk\src\osg\glu\libutil\mipmap.cpp(5208): warning C4701: potentially uninitialized local variable 'iter' used 1d:\osg\osg-trunk\src-trunk\src\osg\glu\libutil\mipmap.cpp(5550): warning C4701: potentially uninitialized local variable 'iter' used 1d:\osg\osg-trunk\src-trunk\src\osg\glu\libutil\mipmap.cpp(6934
Re: [osg-users] [osg-submissions] Crash with SVN version of Tessellator (FIXED)
Hi, I have tested parts 2 and 3 and they are working without error. I can't think of an easy way to get an OpenGL error thought to test part 1. OSG is too good at protecting OpenGL from the likes of me : ) Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Robert Osfield Sent: Thursday, 14 October 2010 8:36 PM To: OpenSceneGraph Users Subject: Re: [osg-users] [osg-submissions] Crash with SVN version of Tessellator (FIXED) Hi Brad, On Thu, Oct 14, 2010 at 12:41 PM, Christiansen, Brad brad.christian...@thalesgroup.com.au wrote: Every time I touch windows programming I cringe and generaly run as fast as I can in the other direction. Unfortunately this isnt always possible. I have a feeling some of the other glu functions may suffer the same windows missery. Do any of the other examples use the new functions that you know of? If so I will do some testing and try and ensure they work on windows as well. There are essentially three parts of GLU that I've pulled in. The parts are: 1) Error message string gluErrorString(), this is very simple 2) Mipmapping and gluScaleImage functions, all in glu/libutil/mipmap.cpp 3) Tessellation all found in glu/libtess Part 1 is used is various of places over the OSG when checking OpenGL errors. Run the OSG and get an OpenGL error message and you'll be exercising this part. Part 2 if the OSG generates mipmaps on the CPU or rescales imagery then it'll be stressing this part. The running osggeometry example will invoke a rescale of the non power of two image, so is a place to see a quick test of the new functionality. Part 3 is stressed by osgtext3D and osgtessellate. Robert. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] Crash with SVN version of Tessellator
Hi, I have just updated to the latest revision of OSG and am now getting a crash when calling Tessellator.retessellatePolygons. The code in my application calling this function hasn't changed in many years and has started breaking since the update. I have debugged the issue a little and the crash is occuring when the Tessellator::endTessellation function is called. The crash occurs on a call to free. I think I will need to do a full debug build of OSG to get much further with my debuging (I am using release with debug info) but a full rebuild will take me a while. The previous (working) version of OSG I used was revision 11703 and the new (broken) revision is 11835. I know al the new GLU code has been added between these revision so I am guessing that is what is causing the error. Before I go much further I was wondering if anyone had any info that might help me track down the issue. It doesn't seem that the required usage of Tessellator has changed but I am hoping it has so I can simply call some different methods to fix the issue. 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Crash with SVN version of Tessellator
Hi, I forgot a few details. I am runnign Windows 7 with Visual Studio 2010. The relevent bit of the stack trace is: msvcr100.dll!free(void * pBlock=0x0c3acde8) Line 51C osgUtilrd.dll!std::vectorosg::Vec3f *,std::allocatorosg::Vec3f * ::reserve(unsigned int _Count=141) Line 765 + 0x6 bytes C++ osgUtilrd.dll!std::vectorosg::Vec3f *,std::allocatorosg::Vec3f * ::_Reserve(unsigned int _Count=150271084) Line 1297 + 0x21 bytes C++ osgUtilrd.dll!std::vectorosg::Vec3f *,std::allocatorosg::Vec3f * ::push_back(osg::Vec3f * const _Val=0x) Line 995 + 0xe bytesC++ 08f4f488() osgrd.dll!__gl_renderCache(osg::GLUtesselator * tess=0x08f4f9b4) Line 493 + 0x1a bytes C++ Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Christiansen, Brad Sent: Wednesday, 13 October 2010 2:05 PM To: OpenSceneGraph Users Subject: [osg-users] Crash with SVN version of Tessellator Hi, I have just updated to the latest revision of OSG and am now getting a crash when calling Tessellator.retessellatePolygons. The code in my application calling this function hasn't changed in many years and has started breaking since the update. I have debugged the issue a little and the crash is occuring when the Tessellator::endTessellation function is called. The crash occurs on a call to free. I think I will need to do a full debug build of OSG to get much further with my debuging (I am using release with debug info) but a full rebuild will take me a while. The previous (working) version of OSG I used was revision 11703 and the new (broken) revision is 11835. I know al the new GLU code has been added between these revision so I am guessing that is what is causing the error. Before I go much further I was wondering if anyone had any info that might help me track down the issue. It doesn't seem that the required usage of Tessellator has changed but I am hoping it has so I can simply call some different methods to fix the issue. 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Crash with SVN version of Tessellator
Hi Robert, Both osgtesselate and osgtext3D crash as well. The stack trace for osgtesselate is: osgd.dll!RenderStrip(osg::GLUtesselator * tess=0x0272a9f8, GLUhalfEdge * e=0x0272e6a0, long size=12907152) Line 311 + 0x32 bytesC++ osgd.dll!__gl_renderMesh(osg::GLUtesselator * tess=0x0272a9f8, GLUmesh * mesh=0x0272bb40) Line 99 + 0xd bytesC++ osgd.dll!osg::gluTessEndPolygon(osg::GLUtesselator * tess=0x0272a9f8) Line 572 + 0xd bytesC++ osgUtild.dll!osgUtil::Tessellator::endTessellation() Line 87 + 0xf bytes C++ osgUtild.dll!osgUtil::Tessellator::retessellatePolygons(osg::Geometry geom={...}) Line 285C++ osgtessellated.exe!makeFrontWall(const float zpos=0.) Line 289 + 0x19 bytesC++ osgtessellated.exe!makeHouse() Line 295 + 0xb bytesC++ osgtessellated.exe!makeTessellateExample() Line 563 + 0x5 bytesC++ osgtessellated.exe!main(int argc=1, char * * argv=0x0270dbe8) Line 762 + 0x5 bytesC++ osgtessellated.exe!__tmainCRTStartup() Line 555 + 0x19 bytesC osgtessellated.exe!mainCRTStartup() Line 371C Now I have a nice simple example to debug (and a debug build of it) I will try and dig a little further and track down the issue. I am not holding my breath though as my C++ debugging skills are not exactly stellar. I am primarily a Java programmer after all : ) I assume this is a platform specific issue of some type? It would be great to get some feedback from others using different platforms and compilers to try and narrow down the cause of the crash. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Robert Osfield Sent: Wednesday, 13 October 2010 4:54 PM To: OpenSceneGraph Users Subject: Re: [osg-users] Crash with SVN version of Tessellator Hi Brad, As you've spotted the GLU tessellation code has now been integrated with the build of the core OSG library. I have taken the code from Mesa 7.9, which in turn based it's GLU implementation on SGI base. I'd expect most GLU implementations are based on the original SGI code base, they might all have different bug fixes applied to them, perhaps the Mesa code doesn't have a fix that the previous GLU library that you were linking against had, or perhaps I've introduced a bug during integration. One advantage now is that you will be able build the GLU code with debug along with the rest of the OSG and be able step through it see where problems might be arising. From your stack trace the line: :push_back(osg::Vec3f * const _Val=0x) Looks pretty suspicious. The debug info doesn't really reveal exactly which code is calling phs_back with the dodgy value. BTW, Do you see problems when you run osgtext3D? Or osgtessellate? Both of these will be using the newly integrated GLU tessellation code. Robert. On Wed, Oct 13, 2010 at 9:42 AM, Christiansen, Brad brad.christian...@thalesgroup.com.au wrote: Hi, I forgot a few details. I am runnign Windows 7 with Visual Studio 2010. The relevent bit of the stack trace is: msvcr100.dll!free(void * pBlock=0x0c3acde8) Line 51 C osgUtilrd.dll!std::vectorosg::Vec3f *,std::allocatorosg::Vec3f * ::reserve(unsigned int _Count=141) Line 765 + 0x6 bytes C++ osgUtilrd.dll!std::vectorosg::Vec3f *,std::allocatorosg::Vec3f * ::_Reserve(unsigned int _Count=150271084) Line 1297 + 0x21 bytes C++ osgUtilrd.dll!std::vectorosg::Vec3f *,std::allocatorosg::Vec3f * ::push_back(osg::Vec3f * const _Val=0x) Line 995 + 0xe bytes C++ 08f4f488() osgrd.dll!__gl_renderCache(osg::GLUtesselator * tess=0x08f4f9b4) Line 493 + 0x1a bytes C++ Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Christiansen, Brad Sent: Wednesday, 13 October 2010 2:05 PM To: OpenSceneGraph Users Subject: [osg-users] Crash with SVN version of Tessellator Hi, I have just updated to the latest revision of OSG and am now getting a crash when calling Tessellator.retessellatePolygons. The code in my application calling this function hasn't changed in many years and has started breaking since the update. I have debugged the issue a little and the crash is occuring when the Tessellator::endTessellation function is called. The crash occurs on a call to free. I think I will need to do a full debug build of OSG to get much further with my debuging (I am using release with debug info) but a full rebuild will take me a while. The previous (working) version of OSG I used was revision 11703 and the new (broken) revision is 11835. I know al the new GLU code has been added between these revision so I am guessing that is what is causing the error. Before I go much further I was wondering if anyone had any info that might help me track down
Re: [osg-users] Crash with SVN version of Tessellator (FIXED)
Hi, I have managed to track down the issue and have attached the fix. The problem was that the GLU functions were using a different calling convention. I don't for a second pretend to understand the issue properly or why it exists as anything that combines windows and C++ completely defies my understanding. However, what I have done seems reasonable and does fix the problem. Somebody who actually understands this stuff might have a cleaner solution but the changes are actually very small and seem inline with what has been done in other parts of OSG. For anyone who is interested or might understand the errors better, the Visual Studio debugger reported the following: Run-Time Check Failure #0 - The value of ESP was not properly saved across a function call. This is usually a result of calling a function declared with one calling convention with a function pointer declared with a different calling convention. This led me here: http://blogs.msdn.com/b/mithuns/archive/2006/12/11/pay-attention-to-the-calling-convention.aspx Which is what I based my fix on. I have also noticed some warning during compilation which I haven't fixed but thought I would mention anyway: 1 tess.cpp 1..\..\..\src-trunk\src\osg\glu\libtess\tess.cpp(505): warning C4611: interaction between '_setjmp' and C++ object destruction is non-portable 1 error.cpp 1..\..\..\src-trunk\src\osg\glu\libutil\error.cpp(135): warning C4245: 'initializing' : conversion from 'int' to 'GLuint', signed/unsigned mismatch 1 tess.cpp 1..\..\..\src-trunk\src\osg\glu\libtess\tess.cpp(505): warning C4611: interaction between '_setjmp' and C++ object destruction is non-portable 1d:\osg\osg-trunk\src-trunk\src\osg\glu\libutil\mipmap.cpp(5208): warning C4701: potentially uninitialized local variable 'iter' used 1d:\osg\osg-trunk\src-trunk\src\osg\glu\libutil\mipmap.cpp(5550): warning C4701: potentially uninitialized local variable 'iter' used 1d:\osg\osg-trunk\src-trunk\src\osg\glu\libutil\mipmap.cpp(6934): warning C4701: potentially uninitialized local variable 'iter' used 1d:\osg\osg-trunk\src-trunk\src\osg\glu\libutil\mipmap.cpp(7368): warning C4701: potentially uninitialized local variable 'iter' used Cheers. Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Christiansen, Brad Sent: Thursday, 14 October 2010 9:40 AM To: OpenSceneGraph Users Subject: Re: [osg-users] Crash with SVN version of Tessellator Hi Robert, Both osgtesselate and osgtext3D crash as well. The stack trace for osgtesselate is: osgd.dll!RenderStrip(osg::GLUtesselator * tess=0x0272a9f8, GLUhalfEdge * e=0x0272e6a0, long size=12907152) Line 311 + 0x32 bytesC++ osgd.dll!__gl_renderMesh(osg::GLUtesselator * tess=0x0272a9f8, GLUmesh * mesh=0x0272bb40) Line 99 + 0xd bytesC++ osgd.dll!osg::gluTessEndPolygon(osg::GLUtesselator * tess=0x0272a9f8) Line 572 + 0xd bytesC++ osgUtild.dll!osgUtil::Tessellator::endTessellation() Line 87 + 0xf bytes C++ osgUtild.dll!osgUtil::Tessellator::retessellatePolygons(osg::Geometry geom={...}) Line 285C++ osgtessellated.exe!makeFrontWall(const float zpos=0.) Line 289 + 0x19 bytesC++ osgtessellated.exe!makeHouse() Line 295 + 0xb bytesC++ osgtessellated.exe!makeTessellateExample() Line 563 + 0x5 bytesC++ osgtessellated.exe!main(int argc=1, char * * argv=0x0270dbe8) Line 762 + 0x5 bytesC++ osgtessellated.exe!__tmainCRTStartup() Line 555 + 0x19 bytesC osgtessellated.exe!mainCRTStartup() Line 371C Now I have a nice simple example to debug (and a debug build of it) I will try and dig a little further and track down the issue. I am not holding my breath though as my C++ debugging skills are not exactly stellar. I am primarily a Java programmer after all : ) I assume this is a platform specific issue of some type? It would be great to get some feedback from others using different platforms and compilers to try and narrow down the cause of the crash. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Robert Osfield Sent: Wednesday, 13 October 2010 4:54 PM To: OpenSceneGraph Users Subject: Re: [osg-users] Crash with SVN version of Tessellator Hi Brad, As you've spotted the GLU tessellation code has now been integrated with the build of the core OSG library. I have taken the code from Mesa 7.9, which in turn based it's GLU implementation on SGI base. I'd expect most GLU implementations are based on the original SGI code base, they might all have different bug fixes applied to them, perhaps the Mesa code doesn't have a fix that the previous GLU library that you were linking against had, or perhaps I've introduced a bug during integration. One advantage now is that you will be able build the GLU code
Re: [osg-users] New nvtt based compression in VPB
Thanks for the answer. I literally just opened up the project to try and track down the issue. I am glad I check my email first! I will apply the patch you submit to my local repository and test it as soon as its available. Have you managed to get the cuda code path working with nvtt? I saw no difference in performance when I rebuilt with cuda support so I am guessing it wasn't being used. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Fabien Lavignotte Sent: Monday, 11 October 2010 4:02 PM To: OpenSceneGraph Users Subject: Re: [osg-users] New nvtt based compression in VPB Hi Brad, I just check the code, in fact it does not work when using --terrain, only with --polygonal. I am submitting a fix to Robert. Cheers, Fabien -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Christiansen, Brad Sent: dimanche 10 octobre 2010 07:02 To: OpenSceneGraph Users Subject: [osg-users] New nvtt based compression in VPB Hi, I have just completed a build of VPB using the new nvtt code path. Everything thing seems to have compiled and linked ok and VPB still works. The issue I am seeing is that the resulting textures arnt compressed. Some processing is definitely being done as using --RGBA-compressed or -compressed-dxt5 results in my test build taking 4 times longer than using --RGBA. The resulting dds images are not compressed at all though. Using RGBA-compressed result in RGBA images and DXT5 results in RGB images (determined using nvtt nvddsinfo). I will try and track down what is going on but it seems very odd. Has anyone had success with this new code path? I am running: Windows 7 64 bit VS 2009 SP1 64 bit builds OSG, VPB and nvtt (and gdal) were all compiled from source using the latest versions. 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.or g __ 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 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
[osg-users] The next step using nvtt
Hi, After some playing with the new nvvt code path in VPB I have had some thoughts on possible improvements / extensions to what has already been done and would like to see if anyone else has anything to add. What I would like to support is the following: From a single VPB build / install I would like to be able to always use the fastest path available for texture compression. Without actually benchmarking the 3 possibilities I would guess, from fastest to slowest, the paths would be: - CUDA based nvtt (Nvidia site claims 10x faster than CPU path): requires an Nvidia GPU - OpenGL context based ARB_COMPRESSION : ATI or non-CUDA Nvidia card - CPU nvtt : no suitable GPU available I did do some basic benchmarking between ARB_COMPRESSION and nvtt CPU based compression and found the VPB build using OpenGL compression was ~4-5 times faster (in total run time). This is obviously a very big difference in performance. For a project I am working on we will have no direct control over the hardware VPB will be running on so I need to ensure that a pure CPU solution is available. However I don't want to slow down the builds unnecessarily if a suitable GPU is installed. Before I start trying to code this, does this sound feasible / desirable? Robert, I know you mentioned that you would be looking into integrating nvtt at some point into OSG. Would this sort of change fit more naturally into some kind of general OSG texture tools plug-in / utility or am I best just to focus on VPB for now? 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] New nvtt based compression in VPB
Hi, I have just completed a build of VPB using the new nvtt code path. Everything thing seems to have compiled and linked ok and VPB still works. The issue I am seeing is that the resulting textures arnt compressed. Some processing is definitely being done as using --RGBA-compressed or -compressed-dxt5 results in my test build taking 4 times longer than using --RGBA. The resulting dds images are not compressed at all though. Using RGBA-compressed result in RGBA images and DXT5 results in RGB images (determined using nvtt nvddsinfo). I will try and track down what is going on but it seems very odd. Has anyone had success with this new code path? I am running: Windows 7 64 bit VS 2009 SP1 64 bit builds OSG, VPB and nvtt (and gdal) were all compiled from source using the latest versions. 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Performance problem with osgTerrain
Hi, Just thought I should report that I have also come across this issue and have seen similar issues. I have also commented out the equalization code : ) I will try and make some time to code up a fix in the next few days. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Robert Osfield Sent: Wednesday, 6 October 2010 10:33 PM To: OpenSceneGraph Users Subject: Re: [osg-users] Performance problem with osgTerrain Hi Fabien, On Wed, Oct 6, 2010 at 2:13 PM, Fabien Lavignotte fabien.lavigno...@vegatechnologies.fr wrote: We are testing in release build. And we have the same result on windows and linux. The high cost is a little bit surprising but i didn't have time to investigate further. So, the idea is add a flag on osgTerrain (hum set/getProcessNeigbours maybe?) Terrain::set/getBoundaryEqualization(bool) would be my choice for naming. I'm busy with other tasks right now so can't tackle this, feel free to dive and add it ;-) On the performance side, one thing I've planned for osgTerrain::GeometryTechnique is to split off the boundary mesh parts from the central mesh for each tile, so that when you have to rebuild the boundaries you don't need to rebuild the central mesh. This change should make it possible to keep the cost of boundary equalization much lower. Robert. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] OT: VS2010 LNK2005 problem related to ostringstream
Hi, Unfortunately I can't offer a solution, but I thought I would mention I have come across this exact problem and have also pulled my hair out trying to find a solution. This same problem exists when building virtual planet builder, linking with osgDB causes the multiply defined symbols. I had no other issues building the 3rd party libs and osg with 2010. The only way I could move forward was to allow multiply defined symbols (as has already been mentioned). I agree this seems dangerous and is not a solution but it has allowed me to continue working. So far it hasn't caused any issues with my vpb build. Given you have used the streams extensively without issue and it seems osgDB is the source of the trouble, have you had a look to see if there is any discernable difference between your code and that in osgDB ? I would love to find a solution to this. Cheers, Brad From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Anders Backman Sent: Friday, 27 August 2010 4:00 PM To: OpenSceneGraph Users Subject: Re: [osg-users] OT: VS2010 LNK2005 problem related to ostringstream I have verified the build mode for all ingoing libraries. I build all the dependencies myself. Including OSG. The problem I have (which is OSG related), is that if I build without OSG support (no rendering), it all works. And I still use std::ostringstream and std::stringstream quite extensively... We still link against OpenThreads (but no rendering). So only when I link against osg (osg.lib, osgDB.lib, osgText.lib, osgShadow.lib, osgViewer.lib osgGA.lib) I get this problem. I have verified that osg (and OpenThreads) are all built consistently all over the field. Release and /MD (MultiThreadedDLL), which is default from CMake. So I can use/link against OpenThreads.lib, but not OSG... Rather nasty problem, I'm trying to reduce it, but I'm getting nowhere. And once again, same settings, same CMake version, same code all over the place, and it works in VS2008... /A On Thu, Aug 26, 2010 at 8:17 PM, Simon Hammett s.d.hamm...@googlemail.commailto:s.d.hamm...@googlemail.com wrote: Ah ok, then next things to check: Make absolutely sure you aren't mixing up objects libraries from the different builds. For my projects I include a vc version number in the name, so .vc7.lib/vc7.dll .vc9.lib/.vc9.dll and I also use the vc version in the name of output intermediate directory Then check all the code for any use of #pragma comment(lib, libname) and make sure any preprocessor guards that select different versions have been updated to know about vc2010. On 26 August 2010 18:37, Anders Backman ande...@cs.umu.semailto:ande...@cs.umu.se wrote: Well, I have verified that ALL the dependencies Im using are all built with /MD and NOT debug. Im building all of the dependencies for osg and our lib myself, so I got full control. Also, as I wrote before, I have even tried to build our libs using project files generated from cmake vs2008, build with vs2008 - works ok. Open same project files in vs2010 - problem occurs. Im using buildscripts to build dependencies, and it all works for vs2008... No external libraries, everything is built from code. For VS2010, all the dependencies (including osg 2.8.3) builds/links fine. But for my libs, I get the linking errors. Allowing multiple symbols sounds dangerous, and it did not resolve my problem... /A On Thu, Aug 26, 2010 at 7:26 PM, Simon Hammett s.d.hamm...@googlemail.commailto:s.d.hamm...@googlemail.com wrote: On 26 August 2010 17:35, Anders Backman ande...@cs.umu.semailto:ande...@cs.umu.se wrote: snip CMake defaults to /MD code generation (MultiThreaded). Im using this consistently over all my libraries (just double checked to be sure). Never use that setting unless you know what you are doing. Change every project to Multi-threaded Debug DLL (/MDd) for Debug builds and Multi-threaded DLL (/MD) for Release builds And it will all start working. Those Runtime library settings are the number one 'gotch-ya' for Visual studio, and Cmake defaulting to them is daft. -- http://www.ssTk.co.uk ___ osg-users mailing list osg-users@lists.openscenegraph.orgmailto:osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org ___ osg-users mailing list osg-users@lists.openscenegraph.orgmailto:osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org -- http://www.ssTk.co.uk ___ osg-users mailing list osg-users@lists.openscenegraph.orgmailto:osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org DISCLAIMER:--- This e-mail transmission and any
Re: [osg-users] [vpb] inlineImageFile MIP_MAPPING_HARDWARE suggestion
Hi, Looks correct to me. Support for .osgb has only recently been added to VPB and it looks like the case you mention was missed. I would suggest you submit a patch to osg-submissions. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Alexander Irion Sent: Wednesday, 11 August 2010 9:28 PM To: osg-users@lists.openscenegraph.org Subject: [osg-users] [vpb] inlineImageFile MIP_MAPPING_HARDWARE suggestion Hi, shouldn't the line bool inlineImageFile = _dataSet-getDestinationTileExtension()==.ive; be expanded to: bool inlineImageFile = _dataSet-getDestinationTileExtension()==.ive || _dataSet-getDestinationTileExtension()==.osgb; inorder to get mipmaps as imagery in osgb files? I would also only set hardware mipmap generation in the output file, when MIP_MAPPING_HARDWARE is set: texture-setUseHardwareMipMapGeneration(getImageOptions(layerNum)-getMipMappingMode() == DataSet::MIP_MAPPING_HARDWARE); Is this correct? --Alex Thank you! Cheers, Alexander -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=30690#30690 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Visual Studio 2010 and iostream
Hi, I am also using Win7 64 Ultimate, VS2010 Prof, CMake 2.8.2. I am not sure where the binaries are built as I always use the install target in VS. This places everything correctly in the directory I specified in CMake. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Frederic Bouvier Sent: Tuesday, 10 August 2010 12:31 AM To: OpenSceneGraph Users Subject: Re: [osg-users] Visual Studio 2010 and iostream Yes I do. Windows 7 64, VS2010, CMake 2.8.2 -Fred - Martin Naylor martinnay...@virginmedia.com a écrit : Hi Fred, I just removed cmake 2.8 and installed cmake 2.8.2 and rechecked out OSG and I still have the same issue with exe and dll's not being moved or created in the OSG bin folder, it's a pain everytime you recompile anything as it's a manual copy job.. Just tried it on my 32bit machine and still the same results. I am beginning to suspect it's something different in Windows 7, is anyone else compiling with Windows 7x64/32 and VS2010? Regards Martin. -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Frederic Bouvier Sent: 06 August 2010 17:16 To: OpenSceneGraph Users Subject: Re: [osg-users] Visual Studio 2010 and iostream This error is gone with CMake 2.8.2 -Fred - Martin Naylor a écrit : Hi Fred, A that explains why I don’t see errors... I am still using vs2008 as VS2010 seems to leave the exe files in the bin and lib folders whenever I build and I had funny linker errors last time ( a few months back). I might have a go at building flightgear later, let you know how it goes or doesn’t! Regards Martin. -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Frederic Bouvier Sent: 06 August 2010 15:21 To: OpenSceneGraph Users Subject: Re: [osg-users] Visual Studio 2010 and iostream Hi Martin, to be precise, I don't see any errors when building OSG. The problem arise when liking the application (here, it is FlightGear). I use 3rd party libs already used for the VS2008 build. VS2010 is used to build OSG and FlightGear. -Fred - Martin Naylor a écrit : Interesting, I have just managed to build it VS2010 with no problems using 2008 libaries. You could try using CMake to generate 2008 projects files and convert them to 2010 using VS2010, see if it makes a difference? Regards Martin. -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Frederic Bouvier Sent: 06 August 2010 13:44 To: osg-users@lists.openscenegraph.org Subject: Re: [osg-users] Visual Studio 2010 and iostream Hi Jason, - Jason Alexander a écrit : Recently Brad Christiansen uploaded some 3rd party binaries built with Visual Studio 2010. (Thanks!) He noted problems with iostream. I still have iostream problems when linking in OSG into my application in specific places under Visual Studio 2010. Does anyone understand what the issue is? Originally, I thought that the 3rd party libraries I was using were built with a previous version of VS and, thus, caused these linking issues when rolled into my application. I would have thought that using 3rd party libraries totally built with vs2010 would have resolved this, but Brad even noted this problem when he originally posted the binaries. Any insight would be appreciated! I also encountered these issues. I ended up adding /FORCE:MULTIPLE to my link arguments. There is a field for that in the link topic of the project properties. -Fred ___ 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 ___ osg-users mailing list
Re: [osg-users] Visual Studio 2010 and iostream
Hi, As mentioned before, I also had the same issue linking VPB (but not my own application). I also ended up resorting to adding /FORCE:MULTIPLE. This was all done using CMake 2.8.1. I will try with 2.8.2 as you suggested. Did you have to rebuild OSG from scratch to resolve the issue? Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Frederic Bouvier Sent: Saturday, 7 August 2010 12:16 AM To: OpenSceneGraph Users Subject: Re: [osg-users] Visual Studio 2010 and iostream This error is gone with CMake 2.8.2 -Fred - Martin Naylor a écrit : Hi Fred, A that explains why I don’t see errors... I am still using vs2008 as VS2010 seems to leave the exe files in the bin and lib folders whenever I build and I had funny linker errors last time ( a few months back). I might have a go at building flightgear later, let you know how it goes or doesn’t! Regards Martin. -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Frederic Bouvier Sent: 06 August 2010 15:21 To: OpenSceneGraph Users Subject: Re: [osg-users] Visual Studio 2010 and iostream Hi Martin, to be precise, I don't see any errors when building OSG. The problem arise when liking the application (here, it is FlightGear). I use 3rd party libs already used for the VS2008 build. VS2010 is used to build OSG and FlightGear. -Fred - Martin Naylor a écrit : Interesting, I have just managed to build it VS2010 with no problems using 2008 libaries. You could try using CMake to generate 2008 projects files and convert them to 2010 using VS2010, see if it makes a difference? Regards Martin. -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Frederic Bouvier Sent: 06 August 2010 13:44 To: osg-users@lists.openscenegraph.org Subject: Re: [osg-users] Visual Studio 2010 and iostream Hi Jason, - Jason Alexander a écrit : Recently Brad Christiansen uploaded some 3rd party binaries built with Visual Studio 2010. (Thanks!) He noted problems with iostream. I still have iostream problems when linking in OSG into my application in specific places under Visual Studio 2010. Does anyone understand what the issue is? Originally, I thought that the 3rd party libraries I was using were built with a previous version of VS and, thus, caused these linking issues when rolled into my application. I would have thought that using 3rd party libraries totally built with vs2010 would have resolved this, but Brad even noted this problem when he originally posted the binaries. Any insight would be appreciated! I also encountered these issues. I ended up adding /FORCE:MULTIPLE to my link arguments. There is a field for that in the link topic of the project properties. -Fred ___ 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 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
[osg-users] Visual Studio 2010 binaries
Hi All, I have built OSG, VPB and many of the 3rd party libraries using Visual Studio 2010 (trying to decide whether to upgrade). I have just uploaded them in case anyone else might find them useful: http://members.iinet.net.au/~bchrist/OSG-Rev11685-Binaries-2010-x86.zip.zip (today's trunk) http://members.iinet.net.au/~bchrist/VPB-Rev1013-Binaries-VS2010-x86.zip (today's trunk) http://members.iinet.net.au/~bchrist/OSG-3rdParty-VS2010-x86.zip http://members.iinet.net.au/~bchrist/GDAL-1.6.3-Apps-VS2010-x86.zip I had to submit a very small patch to osgTerrain (missing include) and have had to make some small changes to the DirectShow plug-in (not yet submitted) but other than that OSG built without issue. VPB compiled fine but I did get a link error against osgDB which I couldn't resolve (duplicate symbol for a destructor of an iostream or something) but I forced the generation of the dll and it runs without any (obvious) issues. The 3rd party libraries included are: free type gif glut jpeg png tiff squish zlib gdal (no debug) collada (no debug) curl (no ssl) DirectShow (you still need to install the Windows SDK to build the plug-in) 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Visual Studio 2010 3rd Party
Hi, I have finished building the 3rd party libs using VS2010. I have compiled OSG without issue, though I have not done any testing. VPB fails to link against osgDB due to a duplicate symbol for the destructor of an iostream. I had this issue last time I used 2010. I have forced the link and am about to do some testing of VPB. The way I have structured things seems to result in the auto-detection of the libs in cmake to fail in many cases so I had to manually specify locations but this isn't too big an issue for now. I would love to get some feedback on whether all the libs are working ok. What is included: freetype gdal (no debug) gif glut jpeg collada (no debug, takes a lot of effort to build this one!) curl (no ssl for now) png tif squish zlib This isn't a complete list but it is a good starting point. It would be great if people could add some of the others over time. once they have been tested I will look at getting them posted to the OSG wiki. http://members.iinet.net.au/~bchrist/3rdPartyLib.zip Good luck, Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Jason Alexander Sent: Thursday, 29 July 2010 11:22 PM To: osg-users@lists.openscenegraph.org Subject: Re: [osg-users] Visual Studio 2010 3rd Party That would be fantastic!! I appreciate it! Thank you! Cheers, Jason -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=30400#30400 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Visual Studio 2010 3rd Party
Forgot to mention, I have only built the 32 bit binaries. If there is demand for 64 bit then I will look at building them too. I have now tested my VPB build (with the force option to work-around the link error) and it works fine. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Christiansen, Brad Sent: Friday, 30 July 2010 2:03 PM To: osg-users@lists.openscenegraph.org Subject: Re: [osg-users] Visual Studio 2010 3rd Party Hi, I have finished building the 3rd party libs using VS2010. I have compiled OSG without issue, though I have not done any testing. VPB fails to link against osgDB due to a duplicate symbol for the destructor of an iostream. I had this issue last time I used 2010. I have forced the link and am about to do some testing of VPB. The way I have structured things seems to result in the auto-detection of the libs in cmake to fail in many cases so I had to manually specify locations but this isn't too big an issue for now. I would love to get some feedback on whether all the libs are working ok. What is included: freetype gdal (no debug) gif glut jpeg collada (no debug, takes a lot of effort to build this one!) curl (no ssl for now) png tif squish zlib This isn't a complete list but it is a good starting point. It would be great if people could add some of the others over time. once they have been tested I will look at getting them posted to the OSG wiki. http://members.iinet.net.au/~bchrist/3rdPartyLib.zip Good luck, Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Jason Alexander Sent: Thursday, 29 July 2010 11:22 PM To: osg-users@lists.openscenegraph.org Subject: Re: [osg-users] Visual Studio 2010 3rd Party That would be fantastic!! I appreciate it! Thank you! Cheers, Jason -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=30400#30400 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.org http
Re: [osg-users] Visual Studio 2010 3rd Party
Hi, Sorry about the silence, been off with the flu for the last week. I can't track down the binaries I built (looks like some overzealous hard drive cleaning claimed them) but I still have the projects etc so I will try and get the binaries built over the weekend. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Jason Alexander Sent: Thursday, 22 July 2010 8:00 PM To: osg-users@lists.openscenegraph.org Subject: Re: [osg-users] Visual Studio 2010 3rd Party Posting those binaries somewhere would be a fantastic help to me and others, it sounds like! Thanks!!! -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=30177#30177 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] osgSim HeightAboveTerrain performance...
Hi, I am not using this functionality at the moment but I do plan on doing so in the relatively near future. As such, please keep posting any findings you make. If it looks like some modifications to the code could help performance I would be willing to chip in some effort. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Tueller, Shayne R Civ USAF AFMC 519 SMXS/MXDEC Sent: Wednesday, 28 July 2010 2:26 AM To: OpenSceneGraph Users Subject: Re: [osg-users] osgSim HeightAboveTerrain performance... Since I didn't receive any input or feedback on my previous inquiry, I'm assuming no one has used osgSim very much in an extensive setting.?.? At any rate, I've done some further investigation. It appears that performance is very poor when HAT inquiries are randomly called in different portions of the code via the osgSim::HeightAboveTerrain::computeHeightAboveTerrain(.) method. On the other hand, if HAT points via hat.addPoint() are collected up and then computed (intersections) in one place, performance improves. I'm assuming that this is the correct usage for OSG? If this is true, I must say that this is a major problem since HAT inquiries need to be done at different times throughout the application due to dependencies on HAT for other calculations. I would like some feedback from someone in the know on osgSim so I know what the proper usage is for maximum performance. If it is true that all HAT points in OSG need to be consolidated for intersection calculation, then I will attempt to refactor the code to support what OSG wants. Thanks, -Shayne -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Tueller,Shayne R Civ USAF AFMC 519 SMXS/MXDEC Sent: Friday, July 23, 2010 10:57 AM To: OpenSceneGraph Users Subject: [osg-users] osgSim HeightAboveTerrain performance... All, I was wanting some feedback for those who have used osgSim in querying VPB database info such has HAT, LOS, etc., during runtime. I'm seeing some performance issues when using osgSim::HeightAboveTerrain::computeHeightAboveTerrain(.) to get the HAT value for a particular location in the database. At times, we need multiple HAT values per frame which seems to bog the performance down. I would surmise that LOS calculations are probably worse since multiple intersections are computed. My question is, is how efficient is the osgSim HAT function? Is the process of retrieving HAT a slow one? If so, is there a way to improve performance if one or more HAT requests are issued on a per frame basis? Thanks in advance, -Shayne 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Visual Studio 2010 3rd Party
Hi, I have previously built the majoroty of the 3rd party libs with VS2010 so I will try and track down the binaries I produced. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Jason Alexander Sent: Wednesday, 21 July 2010 4:35 AM To: osg-users@lists.openscenegraph.org Subject: Re: [osg-users] Visual Studio 2010 3rd Party Hi, Nothing yet. Hoping 3rd party libraries show up soon. Please post to this thread if anyone has them available! Thank you! Cheers, Jason -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=30149#30149 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Fix for adding / removing layers / optional layers using VPB
Hi Torben, I have replied on the osg-user list rather than submissions, hope that's ok. I cant say exactly what Roberts plan for optional layers was / is but I can tell you how I am using them. Optional image layers have their images stored in a separate directory structure from 'normal' layers. For example, when not using optional layers, all meshes and images will be stored in a directory structure such as: root/ earth.ive earth_root_L0_X0_Y0/ earth_subtile_l_X0_Y0/ If you then add another 'normal' layer, no new files or folders are created, the new imagery is just included (by default) in the existing .ive / .osgb files. When you add an optional layer, all the new imagery is stored under a separate directory. In the case of the above example: root/ earth.ive earth_root_L0_X0_Y0/ earth_subtile_l_X0_Y0/ MyOptionalLayer/ earth_L0_X0_Y0_l1.dds etc I am not sure exactly how loading layers is handled by the default Terrain Technique (I am using a custom one) but one big advantage I gain is that it allows me to load optional layers on demand. If all the imagery for a layer is contained in a single .ive / .osgb file, then this must be loaded as one, regardless of wether all the layers are actually being displayed. With the optional layer approach, it is possible to only the load the imagery that is currently being viewed. This is important for my project as our clients can often have a low bandwidth connection to the map server. This enables us to make a large number of layers available without effecting the load time of the base tiles. My standard setup for VPB generated databases is to only have one 'normal' layer with data such as blue marble. This acts as the default layer that is always available. All other imagery layers are added as optional layers. I hope that makes some sense. Cheers, Brad -Original Message- From: osg-submissions-boun...@lists.openscenegraph.org [mailto:osg-submissions-boun...@lists.openscenegraph.org] On Behalf Of Torben Dannhauer Sent: Thursday, 1 July 2010 2:46 PM To: osg-submissi...@lists.openscenegraph.org Subject: Re: [osg-submissions] Fix for adding / removing layers / optional layers using VPB Hi Brad and Robert, thanks for your fixes. One question: can you explain me what optional layers are? ;) Thank you! Cheers, Torben -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=29568#29568 ___ osg-submissions mailing list osg-submissi...@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Shader composition, OpenGL modes and custom modes
Hi, Sounding great so far. A lot to digest! I have a couple of questions. One thing I am not clear on is how the rules for injecting a Shader into a ShaderMain would work. This is an area I have had difficulty with in my own shader assembly approach. For example, how will it be possible to change the order in which shaders are applied? As a contrived example, I might want to use the material color of a fragment as the input to my lighting shader, and then blend my textures with the result. Alternatively, I might want to first blend all my textures, then use this color as the input to the lighting shader. How would I specify these kind of rules? Another area I am not clear on is how (if at all) we will be able to avoid doing the same calculations many times for a single vertex or fragment. Say, for example, we need the ec position of a vertex as an input to several of our vertex Shaders. Would each shader have to recalculate this value independently? This shouldn't be a major hit to performance in most cases but it is obviously less efficient than just doing the calculation once. Then again, maybe the compiler can figure this out for us. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Robert Osfield Sent: Thursday, 1 July 2010 4:30 PM To: OpenSceneGraph Users Subject: Re: [osg-users] Shader composition, OpenGL modes and custom modes Hi All, I've been thinking about the various classes and relationships that we'll need to support both the front end API for shader composition, and the backend implementation of it, and my current thoughts are: 1) The ShaderSet I've been discussing over my last few post should be renamed, my current preferred name is ShaderComponent. 2) Rather than ShaderComponent (was ShaderSet) have the details of how to inject code into the shader main for each of the vertex, geometry and fragment mains, I now feel it would be more managable to move injection support into osg::Shader. This would mean that ShaderComponent would then just have a list of one or more osg::Shader. These Shaders would then be grouped into ones that affect the vertex, geometry and fragment programs. The osg::Shader class would have some new API for setting up the inject code, this could be empty/inactive in a default constructed osg::Shader, so wouldn't affect how we use osg::Shader/osg::Program right now. It's only when shader composition comes into play will these extra fields be queried. 3) StateAttribute would have a ShaderComponent that implements the shader functionality, this ShaderComponent would typically be shared between the same type of StateAttribute. The StateAttribute attribute would also provide osg::Uniform that pass in the values to the associated ShaderComponent, these osg::Unfirom will be applied by the existing StateAttribute::apply(..) method. This is approach I've been discussing before (save for the ShaderSet rename.) 4) osg::State will maintain a current list of enabled ShaderComponent's, this list of pointers will form a key to search for the appropriate osg::Program to apply to achieve that functionality. The way that the osg::Program will be wrapped up and cached is within a ShaderAssembly. osg::State would internally manage the creation of ShaderAssembly, and cache of these and apply the osg::Program they contain. Lazy state updating in osg::State will seek to minimize the times that the state is changed between ShaderAssembly. When the set/list of enabled ShaderComponent's changes a the appropriate ShaderAssumbly for this set of ShaderComponent is then lookup in the ShaderAssembly cache. If non apporpriate ShaderAssembly is found then the ShaderComposer is invoked to create a new ShaderAssembly which is then cached and made current. 5) A ShaderAssembly is an internal implementation class so not something a user would normally worry about, only the ShaderComposer or subclasses from it would need to know about it. A ShaderAssembly has the final osg::Program that is applied to OpenGL, this osg::Program is composed on the osg::Shader's provided by the osg::ShaderComponent, and also an automatically created osg::Shader main for each of the vertex, geometry and fragment parts osg::Program. The automatically generated shader mains are wrapped up in a ShaderMain class that has a list of osg::Shader that contribute to it, these osg::Shader are pulled in from the ShaderComponent's that are associated with the ShaderAssembly. The individual osg::Shader that assigned to a ShaderMain provide the code injection details that enable the ShaderComposer to create the final main() code that gets placed in the ShaderMain's automatically generated osg::Shader. The ShaderAssembly contains a
Re: [osg-users] Shader composition, OpenGL modes and custom modes
Hi, I would just like to comment on this: Ooo I hadn't thought about providing a mechanism for computing vertex positions on the CPU, but this would be very very useful for the quandary of using shaders to modify the vertex positions dynamically. The mechanism would need to know the uniform state and the ShaderSet that are relevant, so the StateAttribute might be the place to couple this. Or perhaps the ??IntersectionVisitor etc. could accumulate StateSet's and pick out the StateAttribute that effect the vertex position. I have recently run into this issue when doing billboarding within a vertex shader. To still allow picking I have had to write a custom routine that operates on only this section of my scene and mask it out of the general picking mechanism. This is quite a painful and time consuming process. I believe this issue will become very common as more work is moved into vertex and geometry shaders. As such I would be very keen to see this sort of functionality incorporated into the core. There is also some danger in doing so though, as this could make picking operations much more expensive. After all, I moved the billboard calculation from the CPU to the GPU for a reason : ) Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Robert Osfield Sent: Wednesday, 30 June 2010 5:05 PM To: osg-users@lists.openscenegraph.org Subject: Re: [osg-users] Shader composition, OpenGL modes and custom modes Hi Roland, On Tue, Jun 29, 2010 at 10:22 PM, Roland Smeenk roland.sme...@tno.nl wrote: 1) Provide a way of encapsulating all the details required to contribute a single chunk of functionality that will be combined with other active ShaderSet to provide final composed osg::Program. Isn't this what I solved with the ShaderMode class? I believe ShaderMode and ShaderSet are pretty close in concept, the fit a similar role and functionality granularity. Implementation and usage wise they differ, but they have lots of similarity, i.e. they are both big cats, but ones a tiger and ones a lion. Or is it that you are trying to separate the shader mode associated with a StateAttribute from the part that is responsible for adding of the piece of shader functionality. My currently thought is that the various StateAttribute subclasses would provide a standard ShaderSet instance that implements their functionality, but also make it possible to override this standard ShaderSet with custom ones. For instance we might have a standard implementation of osg::Light, but we also want to enable users to have their own implementation, by just providing their own MyCustomPerPixelLightShaderSet. There might also be cases where a osg::StateAttribute subclass might dynamically decide which ShaderSet to use depending upon how it's configured - this would be if we wanted to reduce the number of uniforms by having more pre-configured shaders. In my contribution I implemented a single ShaderMode that implements all fixed function lighting possibilities. For new types of lighting it seems more logical to indeed make a more fine grained breakup of ShaderModes. However there's a (minor) advantage to this one size fits all lighting code currently. To enable or disable lighting you simply can override a single mode. In the case where there are multiple lighting modes (directional, spot etc.) overall disabling of lighting needs to be done per lighting type. It might be needed that multiple ShaderSets implementing the same aspect/feature can be switched on or off all together with a single override. This will also be needed for instance in shadow map creation where in the first pass you would like to render geometry into a shadowmap as cheaply as possible and therefore without lighting. Perhaps multiple ShaderSets implement a the same aspect/feature in the final program that need to be disabled or enabled collectively. Again in the case of shadowmap creation you would like to only render geometry, no texturing, no lighting, no fog, but you do want to take into account skinned mesh deformation, wind deflection etc. I don't yet have any concrete plan on how to manage the case where multiple GL enums control particular features. It might be that it'll be best to map some of the controls to uniforms that enable one to toggle features on/off such as lighting, but it might also be that we it could be best to just pass the all modes on the StateAttribute when asking for the appropriate ShaderSet to use and let it decide what to use. This type of issue I expect to fall out of experience with implementing various fixed function functionality such as Lighting. 3) The ShaderSet would contain list osg::Shader objects, these osg::Shader objects would target which ever part of the overall program that the ShaderSet effects - be in multiple osg::Shader for vertex programs,
Re: [osg-users] New problem with VPB serializer
Hi, I just looked over last night's email and realized what I wrote is about as clear as mud. The problem is this: when the build options are read from disk by the readOptionalLayerSet method in BuildOptionsIO a leading empty string is retrieved from the stream resulting in an optional layer being added (which doesn't exist in the original file) with an empty name. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Christiansen, Brad Sent: Friday, 25 June 2010 1:14 AM To: OpenSceneGraph Users Subject: Re: [osg-users] New problem with VPB serializer Hi, I have tracked down the issue further and have attached a 'fix' for the problem. My code change does seem to work but it is clearly not the correct solution. Wang Rui (or somebody else familiar with the new serialization), I am hoping that you will be able to point in the in direction of a proper fix as I am now stuck (and it is way past my bedtime : ). The old code was: static bool readOptionalLayerSet( osgDB::InputStream is, vpb::BuildOptions bo ) { vpb::BuildOptions::OptionalLayerSet ols = bo.getOptionalLayerSet(); unsigned int size = 0; is size osgDB::BEGIN_BRACKET; for ( unsigned int i=0; isize; ++i ) { std::string value; is.readWrappedString( value ); ols.insert(value); } is osgDB::END_BRACKET; return true; } and my 'fix; is: static bool readOptionalLayerSet( osgDB::InputStream is, vpb::BuildOptions bo ) { vpb::BuildOptions::OptionalLayerSet ols = bo.getOptionalLayerSet(); unsigned int size = 0; is size osgDB::BEGIN_BRACKET; ++size; //new for ( unsigned int i=0; isize; ++i ) { std::string value; is.readWrappedString( value ); if(!value.empty()) { //new ols.insert(value); } //new } is osgDB::END_BRACKET; return true; } Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Christiansen, Brad Sent: Friday, 25 June 2010 12:40 AM To: OpenSceneGraph Users Subject: [osg-users] New problem with VPB serializer Hi, I have just tracked down another issue with the VPB serializer. This time the issue arises when you try to add an optional layer (nb: this fails at an earlier point with the code in trunk at the moment, I will be submitting a fix for that tomorrow, though the issue can be demonstrated without it). When build options that contain an optional layer are serialized an empty entry is added to the list. e.g. OptionalLayerSet 2 { AnOptionalLayerName } I believe the bug is in BuildOptionsIO.cpp, probably in the SetSerializer class, thought I haven't managed to track it down exactly yet. The attached files can be used to reproduce the error. original.source is a copy of the build_master.source that was written out when I tried to add an optional set. If you run: osgdem -s original.source --so original_resaved.source an error will be produced as the file cannot be read. I have also attached 'fixed.source'. This has had the removed (note that the number of items in the set is still set to 2). This file can be de-serialized and then re-serialized but the result has the extra included. This can be done by running: osgdem -s fixed.source --so fixed_result.source 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 mess ages 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
Re: [osg-users] VPB master fails to patch an existing database (serialization error again?)
Hi, I have just manged to get some time to look into the issue and have found what appears to be a problem. The build compatablity check that is failing, the previous and current DatabaseBuilder having a different number of layer image options, seems to be the correct state when adding a new layer. If I understand this correctly, the check should not be in the code as this will stop you from ever adding new layers to an existing database. I will submit a patch that removes this check but thought I would see if anyone knew if it is there for a reason that I am missing. The relevent code is in BuildOptions.cpp in the compatable method. I have now created a more complex test which is failing in a different way so back to the debugger.. : ) Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Christiansen, Brad Sent: Wednesday, 23 June 2010 1:16 PM To: OpenSceneGraph Users Subject: [osg-users] VPB master fails to patch an existing database (serialization error again?) Hi, I seem to have uncovered another issue with the recent changes to VPB. If I try to do a trivial patch of an existing database I get the error: Build configuration invalid : Previous build options not compatible with new build options, cannot patch database. To reproduce the problem I am using the following simple test case: -create the database: vpbmaster --bluemarble-west -t hills.png --bluemarble-east -t hills2.png -o ./out/test.osgb -then patch it: vpbmaster --patch ./out/test.osgb --add --layer 1 --bluemarble-east -t hill3.png This used to work without issue. I have started tracking down what is going wrong and it seems to be failing in BuildOptions.cpp method: bool BuildOptions::compatible(BuildOptions rhs) const. This method returns false as the number of image options are different ( if (_imageOptions.size() != rhs._imageOptions.size()) return false; ). It seems that when the new .soure file is written out (in the test case above, the file: test.osgb.1.source) it contains two identical ImageOptions. I will keep investigating and post any further information, or hopefully a fix. Cheers, Brad ps- Windows XP, Visual Studio 2008 SP1 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org 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. -- ___ osg-users mailing list osg-users
[osg-users] New osgTerrain serializer not calling TileLoadedCallback
Hi, Using the new serializes for osgTerrain, it appears that the TileLoadedCallback is not being called when a new TerrainTile is loaded. This used to be done at the end of the TerrainTile_readLocalData method in the old (.ive/.osg format) loaded but I cant see it being done from the new serializer (and my caqllback isnt getting called). I have started to understand the new serializers a little but am hoping to get some advice on the most appropriate place to call TerrainTile::getTileLoadedCallback()-loaded(theNewlyLoadedTile, options). 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] New osgTerrain serializer not calling TileLoadedCallback
Hi, I am quite stuck now as to what the best approach is for this behavior using the new sterilizers and am hoping somebody with some knowledge in this area can help. What I need to do is call a static method once an object (TerrainTile in this instance) has been loaded. I can't see any mechanism by which I can add a callback which is called at the end of the de-serialization process. At the moment I am looking at writing out a dummy value at the end of the stream so when I read it back in I get the opportunity to make my call. This is a very ugly hack. Any pointers would be greatly appreciated. I should add that the more I examine this new mechanism the more I like it. Very clean and extensible (except for my odd use case :). Thanks to Wang Rui, Robert and everyone else involved. A great addition to osg. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Christiansen, Brad Sent: Thursday, 24 June 2010 10:19 PM To: OpenSceneGraph Users Subject: [osg-users] New osgTerrain serializer not calling TileLoadedCallback Hi, Using the new serializes for osgTerrain, it appears that the TileLoadedCallback is not being called when a new TerrainTile is loaded. This used to be done at the end of the TerrainTile_readLocalData method in the old (.ive/.osg format) loaded but I cant see it being done from the new serializer (and my caqllback isnt getting called). I have started to understand the new serializers a little but am hoping to get some advice on the most appropriate place to call TerrainTile::getTileLoadedCallback()-loaded(theNewlyLoadedTile, options). 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] New osgTerrain serializer not calling TileLoadedCallback
Hi, Thanks. I have managed to get it to work by writing out a dummy value to the end of the terrain tile record and then calling the TileLoadedCallback when I read the value back in but as I said, this is a very ugly hack. My question now is, at this stage, is it a good idea to rely on the TileLoadedCallback mechanism within the current osgTerrain design? I think I can implement what I need without using it if it looks like this may disappear in future versions (given it is currently broken with the new serializers). If it is likely that the feature will stay I will just fall back to writing out .ive databases for now until a good solution can be implemented (I need to generate some new databases very soon for some demos). Thanks for the input. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Robert Osfield Sent: Thursday, 24 June 2010 10:48 PM To: OpenSceneGraph Users Subject: Re: [osg-users] New osgTerrain serializer not calling TileLoadedCallback HI Brad, I'm afraid I'm still learning about the serializers myself so can't provide a quick answer. Hopefully Wang Rui will have some thoughts on how to do this. My guess is that the design at present isn't set up to do stuff like this, but is possible to customize the process a bit so hopefully it won't be too difficult. Robert. On Thu, Jun 24, 2010 at 3:43 PM, Christiansen, Brad brad.christian...@thalesgroup.com.au wrote: Hi, I am quite stuck now as to what the best approach is for this behavior using the new sterilizers and am hoping somebody with some knowledge in this area can help. What I need to do is call a static method once an object (TerrainTile in this instance) has been loaded. I can't see any mechanism by which I can add a callback which is called at the end of the de-serialization process. At the moment I am looking at writing out a dummy value at the end of the stream so when I read it back in I get the opportunity to make my call. This is a very ugly hack. Any pointers would be greatly appreciated. I should add that the more I examine this new mechanism the more I like it. Very clean and extensible (except for my odd use case :). Thanks to Wang Rui, Robert and everyone else involved. A great addition to osg. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Christiansen, Brad Sent: Thursday, 24 June 2010 10:19 PM To: OpenSceneGraph Users Subject: [osg-users] New osgTerrain serializer not calling TileLoadedCallback Hi, Using the new serializes for osgTerrain, it appears that the TileLoadedCallback is not being called when a new TerrainTile is loaded. This used to be done at the end of the TerrainTile_readLocalData method in the old (.ive/.osg format) loaded but I cant see it being done from the new serializer (and my caqllback isnt getting called). I have started to understand the new serializers a little but am hoping to get some advice on the most appropriate place to call TerrainTile::getTileLoadedCallback()-loaded(theNewlyLoadedTile, options). 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org 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
Re: [osg-users] New osgTerrain serializer not calling TileLoadedCallback
Hi, Thanks Wang Rui. I am also on GMT +8 (Perth Australia) so yes, it is a little late : ) I am still investigating the issue but it seems the previous problem yourself and Robert fixed in relation to the reading of .source file has re-appeared. I will post details if I can confirm the issue as well as having a look at the changes you made to solve the problem before. Cheers, Brad From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Wang Rui Sent: Thursday, 24 June 2010 11:56 PM To: OpenSceneGraph Users Subject: Re: [osg-users] New osgTerrain serializer not calling TileLoadedCallback Hi Brad, Thanks for the information. I believe this is a bug of the osgTerrain serializers. I will have a look at it tomorrow and try to submit a fix. I'm at the timezone GMT+8 and it's a little late at present. :) Cheers, Wang Rui 2010/6/24 Christiansen, Brad brad.christian...@thalesgroup.com.aumailto:brad.christian...@thalesgroup.com.au Hi, I am quite stuck now as to what the best approach is for this behavior using the new sterilizers and am hoping somebody with some knowledge in this area can help. What I need to do is call a static method once an object (TerrainTile in this instance) has been loaded. I can't see any mechanism by which I can add a callback which is called at the end of the de-serialization process. At the moment I am looking at writing out a dummy value at the end of the stream so when I read it back in I get the opportunity to make my call. This is a very ugly hack. Any pointers would be greatly appreciated. I should add that the more I examine this new mechanism the more I like it. Very clean and extensible (except for my odd use case :). Thanks to Wang Rui, Robert and everyone else involved. A great addition to osg. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.orgmailto:osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.orgmailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Christiansen, Brad Sent: Thursday, 24 June 2010 10:19 PM To: OpenSceneGraph Users Subject: [osg-users] New osgTerrain serializer not calling TileLoadedCallback Hi, Using the new serializes for osgTerrain, it appears that the TileLoadedCallback is not being called when a new TerrainTile is loaded. This used to be done at the end of the TerrainTile_readLocalData method in the old (.ive/.osg format) loaded but I cant see it being done from the new serializer (and my caqllback isnt getting called). I have started to understand the new serializers a little but am hoping to get some advice on the most appropriate place to call TerrainTile::getTileLoadedCallback()-loaded(theNewlyLoadedTile, options). 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.orgmailto:osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org 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
[osg-users] New problem with VPB serializer
Hi, I have just tracked down another issue with the VPB serializer. This time the issue arises when you try to add an optional layer (nb: this fails at an earlier point with the code in trunk at the moment, I will be submitting a fix for that tomorrow, though the issue can be demonstrated without it). When build options that contain an optional layer are serialized an empty entry is added to the list. e.g. OptionalLayerSet 2 { AnOptionalLayerName } I believe the bug is in BuildOptionsIO.cpp, probably in the SetSerializer class, thought I haven't managed to track it down exactly yet. The attached files can be used to reproduce the error. original.source is a copy of the build_master.source that was written out when I tried to add an optional set. If you run: osgdem -s original.source --so original_resaved.source an error will be produced as the file cannot be read. I have also attached 'fixed.source'. This has had the removed (note that the number of items in the set is still set to 2). This file can be de-serialized and then re-serialized but the result has the extra included. This can be done by running: osgdem -s fixed.source --so fixed_result.source 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. -- fixed.source Description: fixed.source original.source Description: original.source ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] New problem with VPB serializer
Hi, I have tracked down the issue further and have attached a 'fix' for the problem. My code change does seem to work but it is clearly not the correct solution. Wang Rui (or somebody else familiar with the new serialization), I am hoping that you will be able to point in the in direction of a proper fix as I am now stuck (and it is way past my bedtime : ). The old code was: static bool readOptionalLayerSet( osgDB::InputStream is, vpb::BuildOptions bo ) { vpb::BuildOptions::OptionalLayerSet ols = bo.getOptionalLayerSet(); unsigned int size = 0; is size osgDB::BEGIN_BRACKET; for ( unsigned int i=0; isize; ++i ) { std::string value; is.readWrappedString( value ); ols.insert(value); } is osgDB::END_BRACKET; return true; } and my 'fix; is: static bool readOptionalLayerSet( osgDB::InputStream is, vpb::BuildOptions bo ) { vpb::BuildOptions::OptionalLayerSet ols = bo.getOptionalLayerSet(); unsigned int size = 0; is size osgDB::BEGIN_BRACKET; ++size; //new for ( unsigned int i=0; isize; ++i ) { std::string value; is.readWrappedString( value ); if(!value.empty()) { //new ols.insert(value); } //new } is osgDB::END_BRACKET; return true; } Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Christiansen, Brad Sent: Friday, 25 June 2010 12:40 AM To: OpenSceneGraph Users Subject: [osg-users] New problem with VPB serializer Hi, I have just tracked down another issue with the VPB serializer. This time the issue arises when you try to add an optional layer (nb: this fails at an earlier point with the code in trunk at the moment, I will be submitting a fix for that tomorrow, though the issue can be demonstrated without it). When build options that contain an optional layer are serialized an empty entry is added to the list. e.g. OptionalLayerSet 2 { AnOptionalLayerName } I believe the bug is in BuildOptionsIO.cpp, probably in the SetSerializer class, thought I haven't managed to track it down exactly yet. The attached files can be used to reproduce the error. original.source is a copy of the build_master.source that was written out when I tried to add an optional set. If you run: osgdem -s original.source --so original_resaved.source an error will be produced as the file cannot be read. I have also attached 'fixed.source'. This has had the removed (note that the number of items in the set is still set to 2). This file can be de-serialized and then re-serialized but the result has the extra included. This can be done by running: osgdem -s fixed.source --so fixed_result.source 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 intended recipient should not be deemed a waiver of any privilege or protection
[osg-users] VPB master fails to patch an existing database (serialization error again?)
Hi, I seem to have uncovered another issue with the recent changes to VPB. If I try to do a trivial patch of an existing database I get the error: Build configuration invalid : Previous build options not compatible with new build options, cannot patch database. To reproduce the problem I am using the following simple test case: -create the database: vpbmaster --bluemarble-west -t hills.png --bluemarble-east -t hills2.png -o ./out/test.osgb -then patch it: vpbmaster --patch ./out/test.osgb --add --layer 1 --bluemarble-east -t hill3.png This used to work without issue. I have started tracking down what is going wrong and it seems to be failing in BuildOptions.cpp method: bool BuildOptions::compatible(BuildOptions rhs) const. This method returns false as the number of image options are different ( if (_imageOptions.size() != rhs._imageOptions.size()) return false; ). It seems that when the new .soure file is written out (in the test case above, the file: test.osgb.1.source) it contains two identical ImageOptions. I will keep investigating and post any further information, or hopefully a fix. Cheers, Brad ps- Windows XP, Visual Studio 2008 SP1 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] VPBMaster failing - build_master.source not loaded correctly.
Hi Robert, I have just completed an update and build and all seems to be running correctly again. Thanks so much to yourself and Wang Rui for solving the issue (especially given I was kicking back on holidays at the time! : ). I will now be able to move on to testing your fixes to the DB pager, hopefully today, if not tomorrow. Thanks again, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Robert Osfield Sent: Monday, 21 June 2010 10:46 PM To: OpenSceneGraph Users Subject: Re: [osg-users] VPBMaster failing - build_master.source not loaded correctly. Hi Brad, I have now reviewed Wang Rui's fixes and rather than adopt these directly, I've learnt from them what the problem was - which enabled me to recreate the problem under Linux, so can confirm now that it's now Windows specific issue, it was just I wasn't quite recreating the same usage. With the new knowledge of the problem in hand I've implemented a variation on Wang Rui's fix which handles the failing case as well as provides syntax which is a bit more succint than Wang Rui's changes and bit closer to the original .osg style syntax. I've checked my changes into OSG svn/trunk, could you do an svn update and let me know how you get on. Cheers, Robert. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] VPBMaster failing
Hi, Thanks. The error is: Error: no destination graph built, cannot proceed with build. I am just starting the run with a break point on createDestination() in DataSet.cpp from osgdem to see why it isn't creating the destination now. Cheers, Brad -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Torben Dannhauer Sent: Thursday, 17 June 2010 1:38 PM To: osg-users@lists.openscenegraph.org Subject: Re: [osg-users] VPBMaster failing Hi, Warning: Task tasks/build_root_L0_X0_Y0.task has failed, blacklisting machine and resubmitting task. means, that the osgdem run of this task failed. You can read the logfile corresponding to this task to get information why it failed. Failed tasks let vpbmaster blacklist the host which run this task, in this case your localhost. Because it is the only host working on your batch, it stops premature and your vpbmaster run is uncompleted. Cheers, Torben -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=29047#29047 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org 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. -- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org