Re: [osg-users] Problem with osgText
Hey, How can I do the contextID incrementation? On 12/17/07, Robert Osfield <[EMAIL PROTECTED]> wrote: > > Hi Shoham, > > The issue you have is that the scene graph has holds internal ID's for > all the texture objects and display lists, you've deleted the graphics > context undernearth it so these ID are no longer valid, but the scene > graph doesn't know that they are invalid so when it dispatches them to > OpenGL then just match up to gargbage. > > OSG 2.x has support for cleaning the scene graph from these now > invalid ID's but 1.0 doesn't. So you only recourse is to increment > the contextID for the new context. Or.. just upgrade to 2.2 > > Robert. > > On Dec 17, 2007 1:59 PM, Shoham Ben-Har <[EMAIL PROTECTED]> wrote: > > Hey.. > > > > I'm using OSG 1.0 (I know It's little bit old...) > > I using VS2005 in c# application and using manage c++ layer between the > GUI > > and the OSG window. > > When I first run my app I draw lines and osgText to the window. and all > > seems to work fine. > > Then I close the OSG form (not the application) and after I try to open > > again with different win32 HWND, > > I see the lines fine BUT in stand of the numbers I draw in osgText (the > ones > > I saw good at the first run) I see quad polygons !!! > > > > > > please help... > > ___ > > osg-users mailing list > > osg-users@lists.openscenegraph.org > > > http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org > > > > > ___ > osg-users mailing list > osg-users@lists.openscenegraph.org > http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org > ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Newbie for OSG 2.2; can not find the dsw for OSG2.2 in the source for windows...
Hi Mike, On Dec 18, 2007 8:51 PM, Mike Weiblen <[EMAIL PROTECTED]> wrote: > > If we did write a WHERE_ARE_VS_PROJECT_FILES.txt then even this > > wouldn't be read by everyone, and where do you stop with trying to > > guess what questions users might ask but haven't come across the > > answer elsewhere. > > Understood. My thought was 1) this has been asked before, and 2) the > person asking has already browsed the filesystem looking for filenames > of the non-existent project files, so why not have a filename that > directly addresses what they seek? > > 'twas just a thought. I'd prefer just to clean up the old VisualStudio directory - change its name to something like PlatformSpecifics/Windows, this way those used to the pre CMake days having an VisualStudio directory with .dsw/.dsp won't go find it and find old files missing. I suspect its those used to the old way that are more likely to be caught out. Robert. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Crash on exit, Mac Os X
Hi Antonie, On Dec 18, 2007 8:55 PM, Antoine Hue <[EMAIL PROTECTED]> wrote: > Hi, > > Before stating the issue we have, please let us thank you very much for > OSG 2.2. Quality is continuously improving in OSG. Thankyou, we strive... don't always get a perfect 10.0, but we do at least try... > We have moved our app to this version, 2.2.0. We are now using > osgViewer::Viewer wrapped into a QT 4 Widget as in osgviewerQT. > We currently have a crash on application exit under Mac OS X. > > Everything goes OK until the osgViewer:Viewer is destroyed. System stack > trace is pasted below. > > Are there any other report of such thing ? Yes... more below... > Could it be that destructor is not called at the right time during the > update cycle ? The destructor is fine, what is up is that with some set ups such as GraphicsWindowEmbedded, or certain other combinations of windowing destruction order the makeCurrent() fails and the subsequent flush of OpenGL objects in the scene graph to for the OSG to clean up properly fails as you can't call OpenGL without a valid graphics context obviously. The fix is to do a check in the GraphicsContext::close() method to see if the makeCurrent() worked, i.e. returned true, and only do the flush of OpenGL objects if this sucedded. The fix is checked into OSG SVN/OSG2.3.0. So... OSG quality does continue to improve ;-) Robert. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] GraphicsContext cannot open display.
Hi Steven, Does osgviewer work fine? Is it only your own attempts to manually create a graphics context that is failing? It could be simply that your Traits aren't set up correctly. You could copy and paste the settings into an email. Robert. On Dec 18, 2007 9:01 PM, Steven Powers <[EMAIL PROTECTED]> wrote: > > > > > I'm running OSG 2.2 ssh'd into a remote linux system. > > > > When I run a program using viewer it opens windows fine. > > > > ie osgViewer(); viewer->realize(); works just fine. > > > > > > When I use a graphics context I get the message: > > > > 'Error: Unable to open display ":0.0"' > > > > and > > > > osg::GraphicsContext::createGraphicsContext(traits.get()); > > > > returns NULL. > > > > I have the DISPLAY variable set and I'm using X11 forwarding actively for > other tasks. > > > > > > Why does this work when I use viewer to build a window and not work when I > try to manually create a graphicsContext??? > > > > Thanks, > > > > Steven Powers > > > > > > > ___ > osg-users mailing list > osg-users@lists.openscenegraph.org > http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org > > ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Problem compiling OSG from SVN in Cygwin
Hi Brian, On Dec 18, 2007 11:14 PM, Brian Keener <[EMAIL PROTECTED]> wrote: > It's your worst nightmare again. Not my worst, but certainly a recurring one... :-| > I tried compiling the svn version > again from trunk since you were asking folks to check various > platforms. > > I downloaded fresh from svn and did the ccmake and then ran make and I > get this error: > ... > So then in include/osg/Math I change line 206 from this: > > inline bool isNaN(float v) { return isnan(v); } > > to > > inline bool isNaN(float v) { return isnanf(v); } > > and I change line 207 to return various forms of isnand, _isnan, > _isnand just to see what will happen and > then the build blows up much earlier on Animationpath in OpenThreads as > follows: > ... > > Further on this is that I found if I change line 206 to > > inline bool isNaN(float v) { return isnanf(v); } > > and line 207 to > > inline bool isNaN(double v) { return __isnand(v); } > > then everything compile - any thought on this My thoughts are mainly those of someone perplexed. Couple of observations, include/osg/Math hasn't changed for a very long time, so it suggest that these methods aren't compiled by the compile unless one compiles the .cfg plugin, which does perplex me as I'm sure these methods are used elsewhere, so what could be up? I don't know. Perhaps one could look at the include order to see in .cpp/.h files in the .cfg plugin are doing anything unusual. Robert. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] How can I use glHint() in OSG 1.2?
Hi Litingbaotou, On Dec 19, 2007 9:25 AM, litingbaotou <[EMAIL PROTECTED]> wrote: > I would like to use glHint() to smooth lines and polygons in my scene. Not > like in OSG 2.0, ghHint is not a StateAttribute in OSG1.2, and I have no > idea how to use it. I also tried MultiSample, but it doesn't help. May I > have your answers? Thanks. There is no glHint support in 1.2, so you'll either have to add the osg::Hint StateAttribute from 2.x back into 1.2, or just upgrade... Robert. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Problem with osgText
On Dec 19, 2007 9:13 AM, Shoham Ben-Har <[EMAIL PROTECTED]> wrote: > Hey, > > How can I do the contextID incrementation? We'll you haven't said what viewer classes you are using so it'd hard to give a direct answer. The low level answer is: objectSuchAsSceneView->getState()->setContext(contextID); The other answer is to just upgrade to 2.2 or beyond, its a much better scene graph than 1.0, lots of problem you'll encounter in 1.0 are fixed or solved more elegantly in 2.0+. Robert. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] ANN: Reference Manual for v2.2 now available
Reading this thread, and the threads just like this which pop every six months or so, What is clear is that : 1) When new documentation is announced it is appreciated, but... 2) Very shortly after users come forward and decry how unsufficient the documentation we have... this takes typically two or three post... Its seems that actually announcing documentation seems to provide an excuse to vent ones frustration. 3) Software engineering and frustration often go hand in hand, its part of the life, software engineering is hard and how hard is often mis-understood by those setting deadlines, all too often engineers end up with too little time and too much to do. Over the years this really hasn't changed much, we as software engineers can achieve more with less time thanks to all this lovely technology, much of it open source, or much lower cost and faster hardware, but expectations have moved with this increased capabilities. 4) When people are frustrated and overworked they tend to bark louder, they might have a just cause, but perhaps write in ways that are less congenial than they would when less stressed. They can also be a bit less understanding of others and appreciative of the effort of others. I know this to be the because this happens to me, I can be one of the bears in the picnic garden. To this I'd like to turn around of reflect on items 1 followed shortly after item 2. What this conduct is effectively: Person A gives a gift to everyone, giving the time and expertise. Person B says "thanks, but frankly it's not good enough, what you've done is next to useless to me." Now to me... Person B is not being too polite, and certainly not encouraging in any positive way. 5) Venting of frustrations can be contagious, if one person starts being dispropritionatly demanding, then others often get carried into, it would seem to become fair game - sometimes a game of manipulation can arise, not in this thread, but it has happened very occasionally in the past, but these types of threads are the type of ones that can lead in this direction. I think this type of conduct is in part motivated by frustration at not being able to dictate the priorities and work of others. 6) In an open source world the health of a community and it's ecosystem is one that grows strong from shared needs, sharing of expertise, and giving of time and goodwill. The ecosystem is very fluid, in some ways fragile, but in others ways surprisingly robust. What I have learnt that is little one can do to dictate to others, not even as project lead do I have this power, I only have real control over my own priorities and work schedules, and that what gets checked into the official SVN trunk and releases. One can request for assistance on different tasks, and if someone steps up this is awesome and something really appreciated and cherished, but you have to accept what help comes from goodwill, or shared need. Its important to realise that one can't demand things, it simply doesn't work, even for the one who is supposed to be project lead... to have a successful open source ecosystem one has to roll with fluid nature of the community, try to make best of opportunities that arise. 7) Given the context of 6, one simply can't go click ones fingers and expect to things to happen, in fact its counter productive - its harms the community and undermines your ability to achieve your own goals. It might feel good initially to vent your frustration, but isn't healthy or productive. 8) Now maintaining a healthy ecosystem requires one to recognize weaknesses and failures and then fixing them, in the case of bugs its might be hard technically to hunt down and fix a bug but overall is actually something that such a community is relatively well geared up for. There are other things like documentation that might be less technically challenging, but logistically are much harder to create the right conditions that things can happen spontaneously. Curiously the easy things that this community does well is things down out of things one can justify out of self centered motivations i.e. I have a bug, I need it fixed, I've found a fix, its much easier for me if I get this fix in SVN and the next version of the OSG so here it is, please integrate it. The same applies to much of the feature development that goes into the OSG, the motivation of the feature development is to help ones own project, and it just so happens that giving this work away is pretty inexpensive time wise for you, and you get back benefits from other adding to it/fixing it/maintaining. All things that are justifiable from a selfish point of view. Things like documentation and osg-users support are different, its much more out of kindness an
[osg-users] Running OSG on Vista
Hello Everybody, I am trying to run a simple code on Vista and it looks like I have got a black screen as output. I have installed OSG 2 on Vista and Linux. OSG works perfectly on Linux. However I have got some issues on Vista. As mentioned early, I cannot run some codes, even osglogo doesn't work. For instance, the following code compiles but doesn't run on Vista: #include #include #include #include #include #include using namespace std; int main() { osgViewer::Viewer viewer; osg::ref_ptr root (new osg::Group); osg::ref_ptr fishnode (osgDB::readNodeFile("Oyanirami0.3ds")); root->addChild(fishnode.get()); bool result = osgDB::writeNodeFile(*(root.get()),"simple.osg"); viewer.setSceneData( root.get() ); //Stats Event Handler s key viewer.addEventHandler(new osgViewer::StatsHandler); //Windows size handler viewer.addEventHandler(new osgViewer::WindowSizeHandler); return (viewer.run()); } I am waiting for your reply. Franclin. - Ne gardez plus qu'une seule adresse mail ! Copiez vos mails vers Yahoo! Mail ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Running OSG on Vista
El Wednesday 19 December 2007 13:24:34 Franclin Foping escribió: > Hello Everybody, > I am trying to run a simple code on Vista and it looks like I have got a > black screen as output. I have installed OSG 2 on Vista and Linux. OSG > works perfectly on Linux. However I have got some issues on Vista. > As mentioned early, I cannot run some codes, even osglogo doesn't work. Black screen, examples not working... sounds like a driver issue. What videocard do you own? Have you the latest drivers for it? ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Running OSG on Vista
Sounds like a driver issue. I have been running various flavors of OSG on Vista x64 for months on different hardware configurations. On Dec 19, 2007 6:24 AM, Franclin Foping <[EMAIL PROTECTED]> wrote: > Hello Everybody, > I am trying to run a simple code on Vista and it looks like I have got a > black screen as output. > I have installed OSG 2 on Vista and Linux. OSG works perfectly on Linux. > However I have got some issues on Vista. > As mentioned early, I cannot run some codes, even osglogo doesn't work. > For instance, the following code compiles but doesn't run on Vista: > > #include > #include > #include > #include > #include > #include > using namespace std; > > > int main() > { > osgViewer::Viewer viewer; > osg::ref_ptr root (new osg::Group); > > osg::ref_ptr fishnode > (osgDB::readNodeFile("Oyanirami0.3ds")); > > root->addChild(fishnode.get()); > > bool result = osgDB::writeNodeFile(*(root.get()),"simple.osg"); > > viewer.setSceneData( root.get() ); > > //Stats Event Handler s key > viewer.addEventHandler(new osgViewer::StatsHandler); > > //Windows size handler > viewer.addEventHandler(new osgViewer::WindowSizeHandler); > > return (viewer.run()); > > } > > > I am waiting for your reply. > Franclin. > > > > Ne gardez plus qu'une seule adresse mail ! Copiez vos mails vers Yahoo! Mail > > > ___ > osg-users mailing list > osg-users@lists.openscenegraph.org > http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org > > ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] ANN: Reference Manual for v2.2 now available
Hello Richard, > Sometimes I enjoy playing devils advocate a little too much ;-) I can certainly relate to that! :-) > I have written one or two sample programs and tutorials in my time... > when I graduate from newbie, I promise to contribute something back > myself. Good news, as I said there can never be enough. I'll conclude by saying "What Robert said!". I fully agree with his analysis of this thread (and other similar ones in the past). And I sure appreciate what Paul and Bob do for the community. Congratulations on your book release, and here's to hoping that there will be many more! :-) J-S -- __ Jean-Sebastien Guay [EMAIL PROTECTED] http://whitestar02.webhop.org/ This message was sent using IMP, the Internet Messaging Program. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Running OSG on Vista
Bonjour Franclin, > I am trying to run a simple code on Vista and it looks like I have > got a black screen as output. > I have installed OSG 2 on Vista and Linux. OSG works perfectly on Linux. > However I have got some issues on Vista. I am running OSG from SVN on Vista here at work, and it runs as well as on XP for me. What is your environment? a) what compiler / version of Visual Studio are you using? b) what video card are you using? c) did you update your video card drivers? (the stock ones might have poor support for OpenGL) As others have said, I'd suspect drivers. Try installing the latest for your card from the manufacturer's site. > For instance, the following code compiles but doesn't run on Vista: Your code works fine for me (replacing your model filename with cow.osg). I'm on Vista 32bit, nVidia 8800GTX, Intel Quad core, 3GB RAM, latest nVidia drivers. J-S -- __ Jean-Sebastien Guay [EMAIL PROTECTED] http://whitestar02.webhop.org/ This message was sent using IMP, the Internet Messaging Program. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] How does data flows
Hi, I used Render To Texture in an algorithm of reflection, It works very well on GeForce 8800 GTS/PCI/SSE2 from NVIDIA Corporation but doesn't have any reflection effect on a GeForce4 MX 440/AGP/SSE2 from NVIDIA Corporation. I use"setRenderTargetImplementation(CameraNode::FRAME_BUFFER_OBJECT) and setRenderOrder(CameraNode::PRE_RENDER);" of osg1.2, and the notification on the later machine(GeForce4 MX 440/AGP/SSE2 from NVIDIA ) say "Failed to aquire Graphics Context" "Setting up osg::CameraNode::FRAME_BUFFER", I think the reason is that it don't support FBO, and the maincamera render to FRAME_BUFFER, overriding the render of render to texture camera(rttcamera), am I right, if so, how can I make the pre_rendered data of rttcamera be avoid overriding? How does the data of render to texture flows on the machines support FBO and thoes don't support FBO, is there any information I can learn? Thanks very much! zhangguilian 2007-12-19 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] ANN: Reference Manual for v2.2 now available
Thanks for the enjoyable discussion. Bob and I will meet in about 2 weeks and future documentation plans will be a topic of discussion. Some random thoughts follow. Free documentation... I charge for documentation I develop, just like I charge for software I develop. I don't think this is unreasonable. If you sincerely believe that OSG documentation should be free, contract with Bob and I and pay us to write it. Then it's yours, and you can give it away free, just like CGSD/Andes did with the Quick Start Guide. For those of you wishing there was more documentation available, rest assured Bob and I do not intend to stop where we are. However, know that OSG is large, and documenting all of it will take time. I think we've made good progress so far. Without contracts to develop documentation, Bob and I squeeze in documentation development around our (better paying) contractual software development obligations. This environment prohibits any large-scale dedicated documentation projects, and means that documentation will have to come out in small bits and pieces. The idea of writing separate whitepapers on various topics is quite appealing. I see two different approaches here: 1) Bob and I write them all, release them as they are completed, and after we reach some critical mass, we assemble them into the "OSG Programming Guide" and release that as a book. 2) Members of the OSG community all write articles on various aspects of OSG and submit them to Bob and I. We edit and assemble them and release the "OSG Gems" book. So I really see those as two different projects. Both seem doable, but the "Gems" book implicitly assumes community contribution, and past experience indicates the odds for this happening are quite small. (To be fair, having Bob and I write whitepapers implicitly assumes we'll have time to do it -- I think we will, but the papers might not appear as fast as we'd all like.) However, I like the idea of a community-written "OSG Gems" book, and I don't want to underestimate the community's willingness to contribute. So, I'll give this some thought, look into other Gems-style books' business models, and see if I can find a way to make this work (time-wise, as an editor). Initial thought: rather than "here's how to use some feature in OSG" type of articles, it might be better to have "here's how I did this really cool thing using OSG" or "here's how my company is using OSG", if you know what I mean. I think this is more in line with other Gems books I've read. Paul Martz Skew Matrix Software LLC http://www.skew-matrix.com 303 859 9466 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] Polytope intersector
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 > From: Paul Martz <[EMAIL PROTECTED]> > Subject: Re: Mouse Picking (again...) > Newsgroups: gmane.comp.graphics.openscenegraph.user > Date: 2007-12-13 20:44:13 GMT (5 days, 19 hours and 28 minutes ago) > >> Here I am, then, asking anyone that can answer me, >> why it didn't work even though I used a box rendered >> vertex by vertex? > > There is a known bug with the Polytope intersection class: at least one > vertex must be in the polytope in order for it to return a hit. If you > mouse-click in the middle of a quad and no vertices are within the Polytope, > no pick is returned. > > You can test to see if this is the problem by clicking on a corner of your > box. That should return a pick. (If it doesn't, then you have some other > bug.) Is still true? I notice recent work on the PolytopeIntersector, as well as code that seems to specifically address the problem you mention. Note that I'm too lazy to check myself :) Tim -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.7 (GNU/Linux) Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org iD8DBQFHaUQYeDhWHdXrDRURAiE5AKCSOA3+dDy+06ReKZQs1zJ7vBxSGwCeOZTQ 9Nk9NpIu0iVc2sKFZc7pqRs= =Qp3r -END PGP SIGNATURE- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Looking towards 2.4, and what might go into it.
> > Any volunteers, pretty please ;-) > > Ask you and shall receive! :) Hell, less than 24 hours is a pretty > decent turnaround time... Beat me to it... thanks. I was going to ask the same questions I saw in your comments... should the interface restore the original display mode in the destructor or should that be left up to the application developer (which is what the others seemed to do). Also one more request that goes along with this... :) Can we add to the WindowingSystemInterface a way to get the available resolutions? It would be beneficial to all platforms as you could use it to display to the user a list of available resolutions (I imagine refresh rates may need to be queried as well). Lucas ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Crash on exit, Mac Os X
My program crashed on exit every time, on Mac OS X only (OSG 2.2 DMG), but works reliably on Mac without multi-threading. export OSG_THREADING=SingleThreaded mViewer->setThreadingModel( osgViewer::Viewer::SingleThreaded ); ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] ANN: Reference Manual for v2.2 now available
I rather like the idea of community donated white papers, with two "pro's" editing and compiling them. It seems this would be "quick", and bring together a wide range of experiences. I'd be happy to do the chapter "OSG for Dummies"... I'll throw in a bonus section on mailing list etiquette ;-) Richard A man who is silent appears wise... The fool who speaks removes all doubt. On Dec 19, 2007, at 10:46 AM, Paul Martz wrote: > Thanks for the enjoyable discussion. Bob and I will meet in about 2 > weeks > and future documentation plans will be a topic of discussion. > > Some random thoughts follow. > > Free documentation... I charge for documentation I develop, just > like I > charge for software I develop. I don't think this is unreasonable. > If you > sincerely believe that OSG documentation should be free, contract > with Bob > and I and pay us to write it. Then it's yours, and you can give it > away > free, just like CGSD/Andes did with the Quick Start Guide. > > For those of you wishing there was more documentation available, rest > assured Bob and I do not intend to stop where we are. However, know > that OSG > is large, and documenting all of it will take time. I think we've > made good > progress so far. > > Without contracts to develop documentation, Bob and I squeeze in > documentation development around our (better paying) contractual > software > development obligations. This environment prohibits any large-scale > dedicated documentation projects, and means that documentation will > have to > come out in small bits and pieces. > > The idea of writing separate whitepapers on various topics is quite > appealing. I see two different approaches here: > > 1) Bob and I write them all, release them as they are completed, and > after > we reach some critical mass, we assemble them into the "OSG > Programming > Guide" and release that as a book. > > 2) Members of the OSG community all write articles on various > aspects of OSG > and submit them to Bob and I. We edit and assemble them and release > the "OSG > Gems" book. > > So I really see those as two different projects. Both seem doable, > but the > "Gems" book implicitly assumes community contribution, and past > experience > indicates the odds for this happening are quite small. (To be fair, > having > Bob and I write whitepapers implicitly assumes we'll have time to do > it -- I > think we will, but the papers might not appear as fast as we'd all > like.) > > However, I like the idea of a community-written "OSG Gems" book, and > I don't > want to underestimate the community's willingness to contribute. So, > I'll > give this some thought, look into other Gems-style books' business > models, > and see if I can find a way to make this work (time-wise, as an > editor). > Initial thought: rather than "here's how to use some feature in OSG" > type of > articles, it might be better to have "here's how I did this really > cool > thing using OSG" or "here's how my company is using OSG", if you > know what I > mean. I think this is more in line with other Gems books I've read. > > Paul Martz > Skew Matrix Software LLC > http://www.skew-matrix.com > 303 859 9466 > > > ___ > 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] How to visit a custom node ?
Hello, I created a new node, MyGroup, which extends osg::Group. I want to visit it in the scene graph with a NodeVisitor. So, I wrote MyNodeVisitor which extends osg::NodeVisitor. MyVisitor contains an apply function which takes MyGroup in parameter : MyVisitor::apply(osg::MyGroup &). The problem is that this function is never called : The application call MyVisitor::apply(osg::Group&) instead. Does somebdy know why ? Thanks in advance. -- Stephane. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] DepthPartitionNode, was: Really Big Scenes and clipping
Hi Richard -- > There doesn't appear (I have looked > through the reference guide... of course that doesn't mean > the info isn't there ;-) The Reference Manual is a start, and so far it documents only the three core libraries: osg, osgUtil, and osgDB. Plugins aren't covered. Plugin features are almost completely undocumented and very inconsistent between plugins. It'll be a bear to document. > to be a way to scale the actual > model data on load (which would be nice as I would not have > to involve the artist again). One thing you should know about are the "pseudoloaders". These are plugins that use another plugin under the hood to load the model, then parent the loaded scene graph to an additional decorator node to achieve some effect. For example, you can do the following: readNodeFile( "foo.3ds.4,4,4.scale" ); This invokes the "scale" pseudoloader. It parses the file name to determine what file to load and how to scale the loaded model. In this case, it uses the 3ds plugin under the hood to load the model, then parents it to a MatrixTransform containing a uniform scale transformation of 4 units in x, y, and z. Note that you could just as easily do this yourself by loading the 3ds file as usual without the pseudoloader, and then creating your own MatrixTransform to scale the model. In your case, you'd have to write code either way. Where the pseudoloaders really come in handy is as command line arguments to osgviewer. For example, compare these two commands: osgviewer cow.osg axes.osg osgviewer cow.osg.10,0,0.trans axes.osg Hope that helps. -Paul ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Problem compiling OSG from SVN in Cygwin
Robert Osfield wrote: > Couple of observations, include/osg/Math hasn't changed for a very > long time, so it suggest that these methods aren't compiled by the > compile unless one compiles the .cfg plugin No actually - if I change line 206 or line 207 to something like _isnanf and _isnand (1 underscore) then very early in the build it breaks on Animationpath.h and .cpp and if I change to lines back to the svn version then Animationpath.h and .cpp build as they should. > , Which does perplex me as > I'm sure these methods are used elsewhere, so what could be up? Agreed. See my response above as that is what I noticed - certain changes to fix the .cfg plugin broke Animationpath.h and .cpp in the build very early but my changes to line 206 and 207 using isnanf and __isnand (2 underscores) resulted in everything building as they should. If I look at /usr/include/math.h in Cygwin it defines isnanf and isnand. > I don't know. Perhaps one could look at the include order to see in > .cpp/.h files in the .cfg plugin are doing anything unusual. That was my thought I starting looking to see what was included or not included or the order they were included in Animationpath.h and .cpp vs the .cfg plugin but nothing yet. Thanks. bk ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] ANN: Reference Manual for v2.2 now available
> I'd be happy to do the chapter "OSG for Dummies"... We were counting on you for "OSG SuperBible"! :-) -Paul ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] How to visit a custom node ?
Unfortunately, that's just a limitation of the visitor pattern and double dispatch in general. In order to accomplish what you want, you'd have to overload apply(osg::Group) forward the call explicitly. Something like: MyVisitor::apply(osg::Group& grp) { if( dynamic_cast(&grp) ) apply( static_cast(grp) ); else /* general osg::Group handling */ } This visitor calls node->accept(*this), which turns around and calls visitor->apply(*this). However, in node::accept, the visitor used of type osg::NodeVisitor, the highest abstraction. Unless osg::NodeVisitor has an apply overload that takes the type you want, then it won't get called. Your apply(osg::MyGroup) isn't in NodeVisitor's vtable, which is why it's not called. I hope that helps. Chase > -Original Message- > From: [EMAIL PROTECTED] [mailto:osg-users- > [EMAIL PROTECTED] On Behalf Of Stephane Lamoliatte > Sent: Wednesday, December 19, 2007 9:32 AM > To: OpenSceneGraph Users > Subject: [osg-users] How to visit a custom node ? > > Hello, > > I created a new node, MyGroup, which extends osg::Group. > I want to visit it in the scene graph with a NodeVisitor. So, I wrote > MyNodeVisitor which extends osg::NodeVisitor. MyVisitor contains an > apply function which takes MyGroup in parameter : > MyVisitor::apply(osg::MyGroup &). > > The problem is that this function is never called : The application call > MyVisitor::apply(osg::Group&) instead. > > Does somebdy know why ? > > Thanks in advance. > -- > Stephane. > > ___ > 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
Re: [osg-users] DepthPartitionNode, was: Really Big Scenes and clipping
Paul, Thanks for the tip on the pseudoloaders! As it turned out, my assumption about the malfunctioning depth partition had nothing to do with the "actual" size of the model. It was correctly accounting for my matrix scale after all. Someone else on the list pointed to a minor tweak to some tolerance values that did the trick. Richard On Dec 19, 2007, at 1:47 PM, Paul Martz wrote: > Hi Richard -- > >> There doesn't appear (I have looked >> through the reference guide... of course that doesn't mean >> the info isn't there ;-) > > The Reference Manual is a start, and so far it documents only the > three core > libraries: osg, osgUtil, and osgDB. Plugins aren't covered. Plugin > features > are almost completely undocumented and very inconsistent between > plugins. > It'll be a bear to document. > >> to be a way to scale the actual >> model data on load (which would be nice as I would not have >> to involve the artist again). > > One thing you should know about are the "pseudoloaders". These are > plugins > that use another plugin under the hood to load the model, then > parent the > loaded scene graph to an additional decorator node to achieve some > effect. > For example, you can do the following: > readNodeFile( "foo.3ds.4,4,4.scale" ); > > This invokes the "scale" pseudoloader. It parses the file name to > determine > what file to load and how to scale the loaded model. In this case, > it uses > the 3ds plugin under the hood to load the model, then parents it to a > MatrixTransform containing a uniform scale transformation of 4 units > in x, > y, and z. > > Note that you could just as easily do this yourself by loading the > 3ds file > as usual without the pseudoloader, and then creating your own > MatrixTransform to scale the model. In your case, you'd have to > write code > either way. Where the pseudoloaders really come in handy is as > command line > arguments to osgviewer. For example, compare these two commands: > osgviewer cow.osg axes.osg > osgviewer cow.osg.10,0,0.trans axes.osg > > Hope that helps. > -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
Re: [osg-users] ANN: Reference Manual for v2.2 now available
Yikes... I'm already loosing sleep about all the work I have ahead because of OpenGL 3.0 ;-) Richard On Dec 19, 2007, at 2:39 PM, Paul Martz wrote: >> I'd be happy to do the chapter "OSG for Dummies"... > > We were counting on you for "OSG SuperBible"! :-) > -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
Re: [osg-users] How to visit a custom node ?
Stephane Lamoliatte wrote on Wednesday, December 19, 2007 11:32 AM: > Hello, > > I created a new node, MyGroup, which extends osg::Group. > I want to visit it in the scene graph with a NodeVisitor. So, I wrote > MyNodeVisitor which extends osg::NodeVisitor. MyVisitor contains an > apply function which takes MyGroup in parameter : > MyVisitor::apply(osg::MyGroup &). > > The problem is that this function is never called : The application > call MyVisitor::apply(osg::Group&) instead. > > Does somebdy know why ? It's because of the way C++ works; the only visitor apply() functions that can be called are the ones defined in osg::NodeVisitor. Unfortunately, the only way to handle your node specially is to check for it in apply(osg::Group): MyVisitor::apply(osg::Group& group) { ... MyGroup* mgrp = dynamic_cast(&group); if (mgrp) { // do your special stuff here } ... } -- Bryan Thrall FlightSafety International [EMAIL PROTECTED] ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] osgCal or osgCal2?
Hello, Are there compatibility issues with osgCal or osgCal2 when using OSG 2.X? Also, since osgCal2 is LGPL, is it “preferred” by OSG developers? If memory serves me correctly, osgCal is GPL. Thanks, Ben No virus found in this outgoing message. Checked by AVG Free Edition. Version: 7.5.503 / Virus Database: 269.17.4/1189 - Release Date: 12/18/2007 9:40 PM ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] ANN: Reference Manual for v2.2 now available
> > However, I like the idea of a community-written "OSG Gems" book, and I don't > want to underestimate the community's willingness to contribute. So, I'll > give this some thought, look into other Gems-style books' business models, > and see if I can find a way to make this work (time-wise, as an editor). > Initial thought: rather than "here's how to use some feature in OSG" type of > articles, it might be better to have "here's how I did this really cool > thing using OSG" or "here's how my company is using OSG", if you know what I > mean. I think this is more in line with other Gems books I've read. > A gems book is a great idea. I second the "here's how I did this really cool thing using OSG" route. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Looking towards 2.4, and what might go into it.
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Robert Osfield wrote: > Yep its working in 2.2, osgViewer is more rounded and complete in 2.2 > than 2.0, and in SVN its a little bit further on still. Note quite > viewer/windowing nirvana yet, but the closest the OSG has come in its > history. > Ah, cool! I will check it out, that should fix one long standing bug in our application :) Regards, Jan -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.7 (GNU/Linux) Comment: Using GnuPG with Mandriva - http://enigmail.mozdev.org iD8DBQFHaYm0n11XseNj94gRAvUtAKCjfAkbu5DoC61IbHM0JK8GQluEMACfcJ0m r7lwFvWXnQFBJej/5mTCeKU= =ImnG -END PGP SIGNATURE- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Looking towards 2.4, and what might go into it.
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Jeremy Moles wrote: > On Tue, 2007-12-18 at 20:35 +, Robert Osfield wrote: >> On Dec 18, 2007 7:47 PM, Jan Ciger <[EMAIL PROTECTED]> wrote: >>> I guess RandR it is then, because some people voiced the support for >>> changing the resolution on the fly. RandR is the only reasonable way how >>> to do this on Unix at the moment. The older X extensions change >>> resolution, but do not resize the root window, leaving you with a >>> panning virtual desktop. >> Any volunteers, pretty please ;-) > > Ask you and shall receive! :) Hell, less than 24 hours is a pretty > decent turnaround time... > > Forwarding my patches to Submissions. Wow, that's called - "Lead with the code" :)) BTW, I have noticed a comment in your diff whether or not the original resolution should be automatically restored. I would vote for yes, because otherwise I would have to query the original screen settings, store them somewhere and then pass them back to your code to restore the screen on exit. That sounds as bit dumb thing to do, because your code has all the information already. Furthermore, it enables the possibility of screwed up screen if the applications throws an exception that is not caught or some library just calls exit() (yes, some libs do that) and my cleanup code is not reached. I would have to wrap everything into a class with a catch-all exception handler around the code and deal with all this there. Quite a complication for a small program. How does this work for Windows? Are the settings restored automatically? One way or another, it would be good to be consistent across platforms. Regards, Jan -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.7 (GNU/Linux) Comment: Using GnuPG with Mandriva - http://enigmail.mozdev.org iD8DBQFHaYl9n11XseNj94gRAs9YAKDuoxpUOxxfu0UugqJq/Jzut8ss+gCcCxwU ZouHebbc3rqkGY19k3LkLWc= =xCNR -END PGP SIGNATURE- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] State of content pipeline
Hi all... To make things clear: I DONT want to start a X .vs. Y discussion here, I'm just polling for the current state of tools for content pipelines, which CAN include references to other scenegraphs/rendering engines. I have a pretty clear picture of what OSG can and cannot (after using it for 9 years or so.:-) Its more of whats NOT in OSG that I trying to get a view of. I came across a posting in February with the subject: CgToGLSL 0.8 and Experimental daeReader). Google says: http://openscenegraph.net/archiver/osg-users/2007-February/index.html (which is now moved to openscenegraph.org, but the email archive does not stretch further than july 2007). It was about a toolchain that converted exported collada files from maya using Cg shaders to glsl shaders with support for 1 render technique/1 pass in the dae reader. It is certainly interesting stuff as we are looking for a pipeline to a scenegraph (osg or other) that can handle Maya material exporting. The question is, what is the current "state-of-the-art" when it comes to export more "advanced" materials (than diffuse textures) from a modeling toolkit, including multipass/render-to-texture, etc getting it into a scene, where shadows and integration of other exported models work. Are there any projects out there for OpenSceneGraph that tries to solve the "shader-hell"? Getting dynamic shadows, normalmapping, lightmaps, various reflection models efficiently rendered in a scene? I'm curious, because either you see simulators with diffuse textures, some alpha textures, and if they have per pixel shaders, they are hand coded with quite a few lines of explicit code for setting up render passes. What I'm looking for I guess is more complete support for the Collada spec... This also relates to skinning and animation. Collada has support for all that, and having native support for it in osg would make osg so much more competitive in all fields of use. So what is the current status/momentum behind Collada/osg integration? Is it actively used at numerous companies with need for multi-pass shaders, animation/skeleton/skinning? To me, after using Cal3D quite a few years in ReplicantBody, I really feel that its an abstraction too many. Native support for these things in osg would make it stand out. In comparison, Ogre3D have native support for these things, including hw skinning support/sse acceleration. However Ogre3D is a more specific solution to a problem, OSG is more general with less assumption on the final use... >From my point of view: 3DSMax: I have been using osgExp, its great, however it doesn't export any shaders, animations, skeletons. Maya: There is an osg exporter, but with more or less the same support for data. What is the status there? Is it being developed at all? Blender: is even more rudimentary, right? (The collada physics exporter from Collada is not very good at all). Lightwave - Osg has readers for both the geometry and the scene format. Creator: Recent versions has support for shaders and render passes, right? But the .flt reader does not handle that, or? As I see it right now, the only way in that in theory support what we need is: Collada. Another related thing is support for trees and bushes. Assume you want to have 20-30.000 trees + terrain + hw-animated bushes/grass. Is there any solutions available in the osg community today? Except perhaps for SpeedTree? Once again relating to a cousin scene graph out there on the cybernet: http://www.ogre3d.org/phpBB2/viewtopic.php?t=36655 Now Im not looking for comments such as: If its not there do it yourself. Once again, Im trying to get a picture of whats currently NOT in osg , but IS available/developed in the community commercial/non-commercial solutions. For example I know of EON Reality, which as a very complete VR authoring solution, which is using OpenSceneGraph, and of course have all of the above (perhaps not skeleton/skinning in hw though). Other "pipelines" solutions? Comments? -- Anders Backman Email:[EMAIL PROTECTED] HPC2N/VRlab Phone:+46 (0)90-786 9936 Umea university Cellular: +46 (0)70-392 64 67 S-901 87 UMEA SWEDEN Fax: +46 90-786 6126 http://www.cs.umu.se/~andersb ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] osgCal or osgCal2?
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Ben Cain wrote: > Hello, > > Are there compatibility issues with osgCal or osgCal2 when using OSG 2.X? osgCal2 works with current OSG, AFAIK, I know nothing about osgCal as I am not using it. > Also, since osgCal2 is LGPL, is it “preferred” by OSG developers? If memory > serves me correctly, osgCal is GPL. It is not "preferred" - these are two different libraries, with two different feature sets and different licenses. You need to make a choice which one is right for you. However, unless you are developing an application that will be GPL licensed, osgCal2 is your only legal option. Regards, Jan -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.7 (GNU/Linux) Comment: Using GnuPG with Mandriva - http://enigmail.mozdev.org iD8DBQFHaYqxn11XseNj94gRAt7zAJ9l1Zgr1OENGCQqCVRGe4P/O1Yf7QCfXByi 3Zi90rPnD3aJgTQG4Doatlk= =Ngq7 -END PGP SIGNATURE- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] osgFX and RTT?
Hi all, For one of the projects I'm working on I need to have several render passes which operate on the rendered scene as a texture. I was wondering if I could base the implementations on the osgFX::Effect class. I know the existing effects are all based around simply using different statesets, but would it be an inappropriate use of the Effect class to write Techniques which contain a render-to-texture camera and then operate on that texture? A few examples of the sort of thing I'm doing are as follows: 1) blurring the image using a Gaussian kernel. 2) computing the min and max pixel value in the image in order to "downgrade" HDR imagery to get the expected effects when an unusually bright object appears in the field of view. 3) adding noise to the image to simulate a poor quality camera. I am a little concerned that this may not be a proper use for the Effect class as this sort of process probably has to be done at the root of the scene graph, where as the existing effects can be applied to any subgraph. However, I do like the idea of implementing these processes as nodes in the graph that can be saved out to .osg files etc, but I can probably achieve this by writing my own class rather than extending Effect (though that would take me more time). I would greatly appreciate hearing people's thoughts on this matter. Thanks in advance, Rob. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Looking towards 2.4, and what might go into it.
On Wed, 2007-12-19 at 22:13 +0100, Jan Ciger wrote: > -BEGIN PGP SIGNED MESSAGE- > Hash: SHA1 > > Jeremy Moles wrote: > > On Tue, 2007-12-18 at 20:35 +, Robert Osfield wrote: > >> On Dec 18, 2007 7:47 PM, Jan Ciger <[EMAIL PROTECTED]> wrote: > >>> I guess RandR it is then, because some people voiced the support for > >>> changing the resolution on the fly. RandR is the only reasonable way how > >>> to do this on Unix at the moment. The older X extensions change > >>> resolution, but do not resize the root window, leaving you with a > >>> panning virtual desktop. > >> Any volunteers, pretty please ;-) > > > > Ask you and shall receive! :) Hell, less than 24 hours is a pretty > > decent turnaround time... > > > > Forwarding my patches to Submissions. > > Wow, that's called - "Lead with the code" :)) > > BTW, I have noticed a comment in your diff whether or not the original > resolution should be automatically restored. I would vote for yes, > because otherwise I would have to query the original screen settings, > store them somewhere and then pass them back to your code to restore the > screen on exit. That sounds as bit dumb thing to do, because your code > has all the information already. > > Furthermore, it enables the possibility of screwed up screen if the > applications throws an exception that is not caught or some library just > calls exit() (yes, some libs do that) and my cleanup code is not > reached. I would have to wrap everything into a class with a catch-all > exception handler around the code and deal with all this there. Quite a > complication for a small program. > > How does this work for Windows? Are the settings restored automatically? > One way or another, it would be good to be consistent across platforms. Yeah, I'm in total agreement here. It would be very easy to restore the settings in the destructor if other platforms do that kind of thing... > Regards, > > Jan > -BEGIN PGP SIGNATURE- > Version: GnuPG v1.4.7 (GNU/Linux) > Comment: Using GnuPG with Mandriva - http://enigmail.mozdev.org > > iD8DBQFHaYl9n11XseNj94gRAs9YAKDuoxpUOxxfu0UugqJq/Jzut8ss+gCcCxwU > ZouHebbc3rqkGY19k3LkLWc= > =xCNR > -END PGP SIGNATURE- > ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] Paged Terrain Question
Hi, Im new to osg and I have an Openflight database, it has a master.flt and would like to use osg to page it in rather than loading all in memory at once . I'm not sure if osgviewer is doing this already? or wether I should use osgpagedLOD example to load in my database - if so how? Also down the track I would like to know which tiles are being loaded in and which tiles are being loaded out. Where would I be able to find the relevant point in the source code? Thank you and Merry Xmas ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Paged Terrain Question
The process I use: - copy master.flt to another directory (hopefully the file references aren't absolute paths) - use osgDB:readNodeFile to read the copied master.flt. This places osg::ProxyNodes in place of the actual .flt reference files (because it can't find the referenced files) - write a custom NodeVisitor to convert the osg::ProxyNodes to osg::PagedLODs - at the same time I convert the referenced .flts to .ives and use their bounds to set the osg::PagedLODs center and radius. - save the master.flt as master.ive (or master.osg) Brian [EMAIL PROTECTED] wrote: - To: osg-users@lists.openscenegraph.org From: "[EMAIL PROTECTED]" <[EMAIL PROTECTED]> Sent by: [EMAIL PROTECTED] Date: 12/19/2007 05:00PM Subject: [osg-users] Paged Terrain Question Hi, Im new to osg and I have an Openflight database, it has a master.flt and would like to use osg to page it in rather than loading all in memory at once . I'm not sure if osgviewer is doing this already? or wether I should use osgpagedLOD example to load in my database - if so how? Also down the track I would like to know which tiles are being loaded in and which tiles are being loaded out. Where would I be able to find the relevant point in the source code? Thank you and Merry Xmas ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org This is a PRIVATE message. If you are not the intended recipient, please delete without copying and kindly advise us by e-mail of the mistake in delivery. NOTE: Regardless of content, this e-mail shall not operate to bind CSC to any order or other contract unless pursuant to explicit written agreement or government initiative expressly permitting the use of e-mail for such purpose. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Paged Terrain Question
Generally, the master.flt does not have any knowledge about the location and extents of the external files that it calls. This is the information that the pager would require. What we do is to run a separate app that runs through all of the db tiles one time, and creates a text file of the filenames and extents. This can then be used to create an osg file with pagedlod nodes. Each pagedlod node would reference a filename from the list, and contain the center point, etc. information. Once these pagelod nodes are created, OSG will take care of the rest through its paging support. Stephen Haithcock General Dynamics Land Systems 38500 Mound Rd. Sterling Heights, MI 48310 MZ 436-40-15 (586) 825-8573 "[EMAIL PROTECTED] node.on.net" <[EMAIL PROTECTED] To node.on.net> osg-users@lists.openscenegraph.org Sent by: cc osg-users-bounces @lists.opensceneg Subject raph.org [osg-users] Paged Terrain Question 12/19/2007 05:00 PM Please respond to [EMAIL PROTECTED] ode.on.net; Please respond to OpenSceneGraph Users <[EMAIL PROTECTED] openscenegraph.or g> Hi, Im new to osg and I have an Openflight database, it has a master.flt and would like to use osg to page it in rather than loading all in memory at once . I'm not sure if osgviewer is doing this already? or wether I should use osgpagedLOD example to load in my database - if so how? Also down the track I would like to know which tiles are being loaded in and which tiles are being loaded out. Where would I be able to find the relevant point in the source code? Thank you and Merry Xmas ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org This is an e-mail from General Dynamics Land Systems. It is for the intended recipient only and may contain confidential and privileged information. No one else may read, print, store, copy, forward or act in reliance on it or its attachments. If you are not the intended recipient, please return this message to the sender and delete the message and any attachments from your computer. Your cooperation is appreciated. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] State of content pipeline
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Anders Backman wrote: > Blender: is even more rudimentary, right? (The collada physics exporter from > Collada is not very good at all). > The problem with Blender is that data are there, but not the manpower to implement the exporters. I wrote my share of exporters for Blender, it is not difficult to do, but quite hard to justify the investment unless I have a specific need for the feature or somebody pays for it. A pity, because Blender is a great tool. Do you have specific issues with Collada exporter? Perhaps those are easily fixable (all is just Python, in the end). > As I see it right now, the only way in that in theory support what we need > is: Collada. +1 > Another related thing is support for trees and bushes. > Assume you want to have 20-30.000 trees + terrain + hw-animated > bushes/grass. > Is there any solutions available in the osg community today? > Except perhaps for SpeedTree? osgBillboards? Regards, Jan -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.7 (GNU/Linux) Comment: Using GnuPG with Mandriva - http://enigmail.mozdev.org iD8DBQFHaZ4in11XseNj94gRAnQKAJ9uvfCkkn8FMPqa7JSpnprchYkqrACeMVLG 42WlxomeamSLnu2lPN3Iw9k= =ZRbW -END PGP SIGNATURE- ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Paged Terrain Question
This is a good solution. Perhaps a possible new feature for the existing OpenFlight importer would be an Option to use PagedLOD nodes for external references (and not load the external model), rather than ProxyNodes (and loading the model). -Paul > The process I use: > > - copy master.flt to another directory (hopefully the file > references aren't absolute paths) > - use osgDB:readNodeFile to read the copied master.flt. This > places osg::ProxyNodes in place of the actual .flt reference > files (because it can't find the referenced files) > - write a custom NodeVisitor to convert the osg::ProxyNodes > to osg::PagedLODs > - at the same time I convert the referenced .flts to .ives > and use their bounds to set the osg::PagedLODs center and radius. > - save the master.flt as master.ive (or master.osg) > > Brian > > [EMAIL PROTECTED] wrote: - > > > To: osg-users@lists.openscenegraph.org > From: "[EMAIL PROTECTED]" > <[EMAIL PROTECTED]> Sent by: > [EMAIL PROTECTED] > Date: 12/19/2007 05:00PM > Subject: [osg-users] Paged Terrain Question > > Hi, Im new to osg and I have an Openflight database, it has a > master.flt and would like to use osg to page it in rather > than loading all in memory at once . I'm not sure if > osgviewer is doing this already? or wether I should use > osgpagedLOD example to load in my database - if so how? > > Also down the track I would like to know which tiles are > being loaded in and which tiles are being loaded out. Where > would I be able to find the relevant point in the source code? > > Thank you and Merry Xmas > ___ > osg-users mailing list > osg-users@lists.openscenegraph.org > http://lists.openscenegraph.org/listinfo.cgi/osg-users-opensce negraph.org--> -- > > > This is a PRIVATE message. If you are not the intended > recipient, please delete without copying and kindly advise us > by e-mail of the mistake in delivery. NOTE: Regardless of > content, this e-mail shall not operate to bind CSC to any > order or other contract unless pursuant to explicit written > agreement or government initiative expressly permitting the > use of e-mail for such purpose. > -- > -- > > > ___ > osg-users mailing list > osg-users@lists.openscenegraph.org > http://lists.openscenegraph.org/listinfo.cgi/osg-users-opensce negraph.org ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] osgFX and RTT?
Rob, I’ve written some classes that implement RTT and post-filtering using OSG and GLSL shaders. Let me know if interested. I thought about putting in Wiki when I get time. You can take the output of one RTT stage and apply it as an input to the next stage … ganging them together … allowing as many filters as needed (e.g. for creating a night vision scene … RTT of main scene -> color amplification stage -> bright pass stage -> horizontal Gauss blurring -> vertical Gauss blurring -> composition with original RTT of main stage -> noise -> change of resolution). The technique is from an idea of one of the users on Delta3D forum. Cheers, Ben _ From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Robert Hansford Sent: Wednesday, December 19, 2007 3:26 PM To: osg-users@lists.openscenegraph.org Subject: [osg-users] osgFX and RTT? Hi all, For one of the projects I'm working on I need to have several render passes which operate on the rendered scene as a texture. I was wondering if I could base the implementations on the osgFX::Effect class. I know the existing effects are all based around simply using different statesets, but would it be an inappropriate use of the Effect class to write Techniques which contain a render-to-texture camera and then operate on that texture? A few examples of the sort of thing I'm doing are as follows: 1) blurring the image using a Gaussian kernel. 2) computing the min and max pixel value in the image in order to "downgrade" HDR imagery to get the expected effects when an unusually bright object appears in the field of view. 3) adding noise to the image to simulate a poor quality camera. I am a little concerned that this may not be a proper use for the Effect class as this sort of process probably has to be done at the root of the scene graph, where as the existing effects can be applied to any subgraph. However, I do like the idea of implementing these processes as nodes in the graph that can be saved out to .osg files etc, but I can probably achieve this by writing my own class rather than extending Effect (though that would take me more time). I would greatly appreciate hearing people's thoughts on this matter. Thanks in advance, Rob. No virus found in this outgoing message. Checked by AVG Free Edition. Version: 7.5.503 / Virus Database: 269.17.5/1190 - Release Date: 12/19/2007 7:37 PM ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] osgCal or osgCal2?
Thanks Jan, Do you know where I can get a Visual Studio project to build the latest version of osgCal2 obtained via Subversion ... version 0.3.0? Cheers, Ben -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Jan Ciger Sent: Wednesday, December 19, 2007 3:19 PM To: OpenSceneGraph Users Subject: Re: [osg-users] osgCal or osgCal2? osgCal2 works with current OSG Regards, Jan No virus found in this outgoing message. Checked by AVG Free Edition. Version: 7.5.503 / Virus Database: 269.17.5/1190 - Release Date: 12/19/2007 7:37 PM ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Paged Terrain Question
Here's some code I hacked together. I tested it some, but . YMMV. Brian [EMAIL PROTECTED] wrote: - To: "'OpenSceneGraph Users'" From: "Paul Martz" <[EMAIL PROTECTED]> Sent by: [EMAIL PROTECTED] Date: 12/19/2007 05:51PM Subject: Re: [osg-users] Paged Terrain Question This is a good solution. Perhaps a possible new feature for the existing OpenFlight importer would be an Option to use PagedLOD nodes for external references (and not load the external model), rather than ProxyNodes (and loading the model). -Paul > The process I use: > > - copy master.flt to another directory (hopefully the file > references aren't absolute paths) > - use osgDB:readNodeFile to read the copied master.flt. This > places osg::ProxyNodes in place of the actual .flt reference > files (because it can't find the referenced files) > - write a custom NodeVisitor to convert the osg::ProxyNodes > to osg::PagedLODs > - at the same time I convert the referenced .flts to .ives > and use their bounds to set the osg::PagedLODs center and radius. > - save the master.flt as master.ive (or master.osg) > > Brian > > [EMAIL PROTECTED] wrote: - > > > To: osg-users@lists.openscenegraph.org > From: "[EMAIL PROTECTED]" > <[EMAIL PROTECTED]> Sent by: > [EMAIL PROTECTED] > Date: 12/19/2007 05:00PM > Subject: [osg-users] Paged Terrain Question > > Hi, Im new to osg and I have an Openflight database, it has a > master.flt and would like to use osg to page it in rather > than loading all in memory at once . I'm not sure if > osgviewer is doing this already? or wether I should use > osgpagedLOD example to load in my database - if so how? > > Also down the track I would like to know which tiles are > being loaded in and which tiles are being loaded out. Where > would I be able to find the relevant point in the source code? > > Thank you and Merry Xmas > ___ > osg-users mailing list > osg-users@lists.openscenegraph.org > http://lists.openscenegraph.org/listinfo.cgi/osg-users-opensce negraph.org--> -- > > > This is a PRIVATE message. If you are not the intended > recipient, please delete without copying and kindly advise us > by e-mail of the mistake in delivery. NOTE: Regardless of > content, this e-mail shall not operate to bind CSC to any > order or other contract unless pursuant to explicit written > agreement or government initiative expressly permitting the > use of e-mail for such purpose. > -- > -- > > > ___ > osg-users mailing list > osg-users@lists.openscenegraph.org > http://lists.openscenegraph.org/listinfo.cgi/osg-users-opensce negraph.org ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org This is a PRIVATE message. If you are not the intended recipient, please delete without copying and kindly advise us by e-mail of the mistake in delivery. NOTE: Regardless of content, this e-mail shall not operate to bind CSC to any order or other contract unless pursuant to explicit written agreement or government initiative expressly permitting the use of e-mail for such purpose. (See attached file: ConvertPagedLOD.cpp) ConvertPagedLOD.cpp Description: Binary data ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] How can I use glHint() in OSG 1.2?
> Hi Litingbaotou, > On Dec 19, 2007 9:25 AM, litingbaotou <[EMAIL PROTECTED]> wrote: > > I would like to use glHint() to smooth lines and polygons in my scene. Not > > like in OSG 2.0, ghHint is not a StateAttribute in OSG1.2, and I have no > > idea how to use it. I also tried MultiSample, but it doesn't help. May I > > have your answers? Thanks. > There is no glHint support in 1.2, so you'll either have to add the > osg::Hint StateAttribute from 2.x back into 1.2, or just upgrade... > Robert. Hi, Robert Thanks a lot. That means if I want to enable antialiasing I have to add the osg::Hint StateAttribute from 2.x back into 1.2, right? litingbaotou 2007-12-20 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] How to visit a custom node ?
Thanks for your answers. Bradford, Chase a écrit : > Unfortunately, that's just a limitation of the visitor pattern and > double dispatch in general. In order to accomplish what you want, you'd > have to overload apply(osg::Group) forward the call explicitly. > Something like: > > MyVisitor::apply(osg::Group& grp) > { > if( dynamic_cast(&grp) ) > apply( static_cast(grp) ); > else > /* general osg::Group handling */ > } > > > This visitor calls node->accept(*this), which turns around and calls > visitor->apply(*this). However, in node::accept, the visitor used of > type osg::NodeVisitor, the highest abstraction. Unless osg::NodeVisitor > has an apply overload that takes the type you want, then it won't get > called. Your apply(osg::MyGroup) isn't in NodeVisitor's vtable, which > is why it's not called. > > I hope that helps. > > > Chase > > >> -Original Message- >> From: [EMAIL PROTECTED] [mailto:osg-users- >> [EMAIL PROTECTED] On Behalf Of Stephane Lamoliatte >> Sent: Wednesday, December 19, 2007 9:32 AM >> To: OpenSceneGraph Users >> Subject: [osg-users] How to visit a custom node ? >> >> Hello, >> >> I created a new node, MyGroup, which extends osg::Group. >> I want to visit it in the scene graph with a NodeVisitor. So, I wrote >> MyNodeVisitor which extends osg::NodeVisitor. MyVisitor contains an >> apply function which takes MyGroup in parameter : >> MyVisitor::apply(osg::MyGroup &). >> >> The problem is that this function is never called : The application >> > call > >> MyVisitor::apply(osg::Group&) instead. >> >> Does somebdy know why ? >> >> Thanks in advance. >> -- >> Stephane. >> >> ___ >> 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 > ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org