Re: [osg-users] setProjectionMatrix and FOV
Many thanks Paul. I introduced _fovCoefficient to the TrackballManipularor subclass - by default (FOV=30) this coefficient is 1, when changing FOV, the coefficient needs to be changed to 30/newFOV. The coefficient is used in MatrixManipulator::computeHomePosition() subclass: -- setHomePosition(boundingSphere._center+osg::Vec3( 0.0,-3.5f * boundingSphere._radius * _fovCoefficient ,0.0f), boundingSphere._center, osg::Vec3(0.0f,0.0f,1.0f), _autoComputeHomePosition); -- By setting such coefficient to MatrixManipulator when changing projection FOV, the home() will fit the scene to the window by any FOV. To stay visually in the same distance when changing FOV, the last task is to change the distance of the matrixManipulator: matrixManipulator-setDistance(matrixManipulator-getDistance() / oldFOV * (30.0f / newFOV) ) Maybe this will help someone. Tomas Paul Martz napsal(a): You can either use a true orthographic projection, or you can set the TrackballManipulator home position so that the viewpoint is further away. If you are really trying to create a near orthographic (but not a true orthographic) projection, then setting the eye distance very far away is the right approach. At my former employer, we used to set the FOV to about 10 degrees to mimic the angle actually subtended by our render window on the screen. (10 degrees is not as extreme as what you're doing, but it's still pretty extreme compared to most 3D apps, and approaches orthographic.) But then we needed to see an entire aircraft in that window, so we had to set the viewpoint quite far away to get the entire aircraft into that 10 degree field. You'll need to do the same. Paul Martz Skew Matrix Software LLC http://www.skew-matrix.com +1 303 859 9466 -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Tomas Hnilica Sent: Friday, March 27, 2009 5:19 AM To: OpenSceneGraph Users Subject: [osg-users] setProjectionMatrix and FOV Hello osg users, I am trying to set the camera perspective projection to 'near' orthogonal. I achieve desired projection by setting the FOV to some low number (1.0). When the projection matrix is changed in this way, the scene is 'zoomed-in'. This means, that MatrixManipulator::home does also zoom-in and the scene does not fit to the view (using TrackBallManipulator). It is clear what happens, but how can I prevent the 'zooming' in the best way? I could apply some scaling factor to the MatrixManipulator, but this seems to me not a clean solution... many thanks, Tomas ___ 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] Object oriented coding
Thank you. I will check it out. Can you please edit the replies and remove my name and email? I have chosen the settings not to publish name and email, but they still appear just before quoted text it seems. -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=9597#9597 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Object oriented coding
Hello Tomas, I moderated the forum posts to hide your real name and e-mail address. However it is appreciated if you make your real name visible or at least sign your post with your name. Note that all forum posts also end up on the osg-users mailing list and therefore in the mailing list archive. Moderated forum posts do not end up on the ML so the ML archive will still contain your e-mail address and real name. kind regards, Roland Smeenk -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=9598#9598 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [osgPlugins] osgmovie problem
Hi Salvatore, Actually I can't understand what you mean. Please refer your problem in much understandable sentence. Regards. 2009/4/1 salvatore salvator...@gmail.com hello to all, I have a problem: osgmovie use to see a movie. mov but I see a shift in the top of the movie screen, you can help me? Thank you in advance -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=9578#9578 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org -- Ümit Uzun ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [build] Windows binary download
Try googling downloads/stable_releases/OpenSceneGraph-2.8/binaries/Windows/VisualStudio9 and get the directory list from Google cache. You don't have permission to access whole direcory, but links to files work perfectly. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [osgPlugins] osgmovie problem
hi, excuse my English is not the best. I have a quicktime movie of it and when I view with osgmovie you see a line at the top of the screen and the movie is delayed -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=9601#9601 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [build] Windows binary download
Hi Martin, Jose-Luis Hidalgo On Wed, Apr 1, 2009 at 10:55 PM, Martin Beckett m...@mgbeckett.com wrote: A user on general pointed out that the windows binary links on http://www.openscenegraph.org/projects/osg/wiki/Downloads point to the directory not the file and they can't access them. I noticed. I can't browse the download section either. I suppose Jose-Luis is securing the server (which is a good thing). If we can't access the folder we should provide some other way to browse the packages. It also seems that windows binaries are packed as .tar.gz - could we make them .zip? Windows users that are downloading binaries are unlikely to have cygwin/ming tools installed. It is possible. But we agreed early in the packaging support development to go with tar.gz across all platforms since few modern archiving tools for windows doesn't support tar.gz. I recommend http://www.7-zip.org/ That said - windows has inbuilt support for zip archives so I can see where you are coming from. On the other hand if you are doing development of any kind you'll need some archiving tool sooner or later and 7-zip is pretty good (open, support for many formats, simple (gui and usage), small footprint). It's all I need (right now at least). Mattias -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=9579#9579 ___ 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] testing for multisampling capability
Hi Peter, OpenGL doesn't provide any capability query system without first opening a graphics context... which means the OSG can't provide anything similar. The only way I know of doing what you want is to set up the GraphicsContext::Traits for what you want, then try to create the GraphicsWindow/Context, if this fails then fallback to using a Traits with less demanding requirements. You mention problems with doing something similar to the above suggestion, but without more specific explanation of how you are doing what you are doing I don't think anyone can help further with divining why it doesn't work as expected. Robert. On Wed, Apr 1, 2009 at 8:20 PM, Peter Amstutz peter.amst...@tseboston.comwrote: I'm trying to enable 4x multisampling in my application. When running on systems with decent video drivers this is a simple matter of setting traits-sampleBuffers when I create the graphics window and it just works. Unfortunately in testing I've run into a system with an integrated Intel graphics driver that appears to not support multisampling -- I get pixel format error when I try to create the graphics context. I need to fall back and disable multisampling in this case, but presently in our application this requires that the user edit an external xml configuration file. Ideally it should be able to probe the driver features to determine if multisampling is available. What is the best way to do this in Open Scene Graph? I tried creating the graphics window, testing for failure, and if so disabling multisampling and trying again. Unfortunately, in testing this approach on a different system I ran into a problem -- it seems that once you've requested a graphics context with one multisampling setting, you can't ask for a different setting? I created a multisample graphics context, forced the initialization to be considered to fail, deleted the context, then asked for a non-multisample context (with all the same settings), then reports an invalid pixel format on trying to change the multisample settings. It's very weird. I'm sort of out in the weeds, here. It would be nice if there was some way to use OSG to ask the driver what it supports rather than having to play guessing games with graphics context initialization. Does anyone have any ideas? Thanks, Peter ___ 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] [osgPlugins] osgmovie problem
Hi Salvatore; May be it could be general answer but it might be related about your graphic card. Sometimes streamed movie can't texture about the texturing way. As default osgmovie uses textureRectangle to show movie, try using Texture2D (osgmovie --texture2D xxx.mov). Hope this helps. Regards. 2009/4/2 salvatore salvator...@gmail.com hi, excuse my English is not the best. I have a quicktime movie of it and when I view with osgmovie you see a line at the top of the screen and the movie is delayed -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=9601#9601 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org -- Ümit Uzun ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] osgmovie problem
I also updated my driver to the newest. it is still the same. my quicktime version is 7.3. Is it too old? On Thu, Apr 2, 2009 at 1:57 AM, Ulrich Hertlein u.hertl...@sandbox.dewrote: On 2/4/09 5:32 AM, Lingyun Yu wrote: another warning TextureRectangle::apply(..) failed, texture rectangle is not support by your OpenGL drivers. That explains the white rectangle. The 8800 definitively supports texture rectangles. Maybe you need to update your driver? /ulrich ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org -- Cheers, Yun ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] PositionAttitudeTransform - How do I make a rotation
Hi, I'm kind of newbie in 3D developpment and in openSceneGraph. I want to rotate a node using PositionAttitudeTransform::setAttitude but I don't know how to do that. I've tried to make it rotate according ti the fact that x, y and z of the Quat is the coordinate of the vector from the origin (x, x, z) plus an angle (w). But the node has a strange behavior. Can anyone help me? Thank you. -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=9612#9612 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] Running OSG app across multiple GPUs (windows)
Hi all! I'm searching for information on how OSG behaves and possible should be setup in my application when running on a multi-display (4 monitors) in a multi GPU (2 graphics cards) PC running Windows XP. I'm using OSG 2.6.1. I have searched the forum/mailing lists and available documentation, but I don't seem to get the right information about how to do this. I have an OSG application that runs correct on a one GPU/graphics card system (with 2 monitors). The actual problem I'm seeing is the following: I have created a custom subload texture callback to speed up texture subloading (only subload the part of the texture that are actually updated.) This works fine on a 1 GPU system, but the texture is not subloaded on the displays on the second GPU. I have other textures that uses the default texture subloading and these works in both setups. Afaik the textures/texture objects has to be created and subloaded on both GPU/graphics cards in order to make this work. But here is my problem, where can I get information on how to do this? I would be grateful for any hints to my problem or any links to references about this. Thank you. Sincerely, Endre -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=9613#9613 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Depth buffer data is not clamp to [0.0,1.0].
Hi YangXiao, On 2/4/09 3:22 PM, YangXiao wrote: z = float ( (depthBuffer-data())[i*4] ); Could it be your cast is wrong? You're only reading every fourth byte and casting that to float, which explains why you're only seeing 0-255. Try z = ((float*) depthBuffer-data())[i]; instead. /ulrich ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] Minimizing OSG app window frees memory
Hi, I was wondering why my OSG application frees lots of memory when I minimize its window, and why that memory is not freed if I don't. I noticed that when I create some objects in the scene by loading flt model files and remove them from scene afterwards that not all memory is freed (when looking at application's allocated memory through Task Manager ). If I minimize application's window afterwards then application's allocated memory decreses to level as it was before creation of objects. Any ideas what could be causing this and if this freeing of memory can be executed by some function call ? I would be handy for me, to keep my allocated memory low. My application is using osgViewer::Viewer and dynamic terrain paging, OSG 2.8.0 rc3, Windows XP SP2, Visual Studio 2008. I'm newbie at OSG's mailing list so I hope this was not discussed already. I've been looking through mailing archives and I could not find answer to this question. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] About UV coordinates interpolation in a polygon
Hi all, I've a question about the interpolation (I guess) computed to set the texture coordinates given each vertex's one (is that sentence correct?). It seems the interpolation (or whatever) is done considering the polygon as a triangle fan. As my coordinates don't perfectly match, the result is quite ugly. Here's some screenshots, I highlighted the supposed triangles: [Image: http://img5.hostingpics.net/pics/164071Deformation1_traits.png ] [Image: http://img5.hostingpics.net/pics/634509Deformation2_traits.png ] [Image: http://img5.hostingpics.net/pics/605645Deformation3_traits.png ] Isn't there a way to compute the coordinates considering the whole polygon (probably using the barycenter) ? Is there an option to activate it? Thanks for all (at least for reading), -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=9609#9609 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [osgPlugins] osgmovie problem
my graphics card is a ati radeon x1600 512mb, I see the movie that has a resolution of 1400 x 1050, attaching a photo with the problem[/url] -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=9607#9607 attachment: Immagine.JPG___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] Multisample Coverage in FBO
Hi, I'm looking into using Multisampled Coverage in FBOs in our application, and I've run into an interesting snafu. According to the extension specification coverage_samples cannot be larger than color_samples. This is enforced in OSG in two places: osgUtil/RenderStage.cpp(352) and osg/FrameBufferObject.cpp(254). However, those two places take opposite actions to resolve the issue. The first one, osgUtil/RenderStage.cpp(352), decreases colorSamples to match (coverage)samples. The second one, osg/FrameBufferObject.cpp(254), increases (coverage)samples to match colorSamples. I haven't looked too hard at the code around this, but shouldn't this check only happen in one place (presumably FrameBufferObject.cpp)? RenderStage.cpp seems to lead into FrameBufferObject.cpp anyway, so it's doing a redundant check. I'm looking forward to hear your thoughts on this. Kind regards, Rick -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=9608#9608 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] Controlling the rendering order
Hi, When doing GUI elements in OpenGL, it's particularly useful to exactly control the rendering order. Usually, this goes like this: glDepthMask(0); glDisable(GL_DEPTH_TEST); glDisable(GL_LIGHTING); glEnable(GL_BLEND); /* Render GUI back to front */ /* Note that we use Z = 0.0 all the time */ glBegin(GL_QUADS); glVertex2f(x, y); /* ... */ It's very easy to do directly in OpenGL, but with OSG I've currently found it ridiculously hard. The reason is that OSG change to rendering order to optimize things (which is good in most cases, except this one). Is there any way to easily control the rendering order of nodes in OSG (e.g. set a node property to tell OSG to render children nodes in order)? I've found render bins to be over complicated to solve this (also they require the user to assign a unique and ordered id to each of them), and assigning a Z value to each GUI element is also tedious and error prone. Am I missing something? Cheers, Tanguy ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Running OSG app across multiple GPUs (windows)
Hi Endre, Just to be clear, do you have your app running across all displays right now? Is it just the subloading that isn't working? W.r.t subloading, this the unknown variable that makes it difficult to comment on. The best I can say is that osg::Texture* maintains a seperate OpenGL texture object for each graphics context. Have a look at the Texture*.cpp classes to see how these texture objects are managed. Robert. On Thu, Apr 2, 2009 at 10:46 AM, Endre Lidal emli...@broadpark.no wrote: Hi all! I'm searching for information on how OSG behaves and possible should be setup in my application when running on a multi-display (4 monitors) in a multi GPU (2 graphics cards) PC running Windows XP. I'm using OSG 2.6.1. I have searched the forum/mailing lists and available documentation, but I don't seem to get the right information about how to do this. I have an OSG application that runs correct on a one GPU/graphics card system (with 2 monitors). The actual problem I'm seeing is the following: I have created a custom subload texture callback to speed up texture subloading (only subload the part of the texture that are actually updated.) This works fine on a 1 GPU system, but the texture is not subloaded on the displays on the second GPU. I have other textures that uses the default texture subloading and these works in both setups. Afaik the textures/texture objects has to be created and subloaded on both GPU/graphics cards in order to make this work. But here is my problem, where can I get information on how to do this? I would be grateful for any hints to my problem or any links to references about this. Thank you. Sincerely, Endre -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=9613#9613 ___ 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] Controlling the rendering order
Hi Tanguy, The OSG sorts the objects in opaque bin to minimize state changes, this is crucial for performance - it's a pretty fundamental part to efficient rendering and standard practice in high performance graphics toolkts.. This does mean the ordering changes. You have complete control over the bins though, you can change the sort algorithm on them, you can create own bins, set the overall render order. Within a single geometry the order is drawn in the order that the primitives are placed in the geometry, so perhaps this is sufficient for your purposes. Robert. On Thu, Apr 2, 2009 at 11:02 AM, Tanguy Fautre tang...@aristechnologies.com wrote: Hi, When doing GUI elements in OpenGL, it's particularly useful to exactly control the rendering order. Usually, this goes like this: glDepthMask(0); glDisable(GL_DEPTH_TEST); glDisable(GL_LIGHTING); glEnable(GL_BLEND); /* Render GUI back to front */ /* Note that we use Z = 0.0 all the time */ glBegin(GL_QUADS); glVertex2f(x, y); /* ... */ It's very easy to do directly in OpenGL, but with OSG I've currently found it ridiculously hard. The reason is that OSG change to rendering order to optimize things (which is good in most cases, except this one). Is there any way to easily control the rendering order of nodes in OSG (e.g. set a node property to tell OSG to render children nodes in order)? I've found render bins to be over complicated to solve this (also they require the user to assign a unique and ordered id to each of them), and assigning a Z value to each GUI element is also tedious and error prone. Am I missing something? Cheers, Tanguy ___ 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] Controlling the rendering order
Hi Robert, Do you suggest I create an additional bin type (e.g. GUI_ELEMENT_BIN) in addition to OPAQUE_BIN and TRANSPARENT_BIN, and write my own sort algorithm for those (i.e. render in the same order children appears in) ? Would it be relatively easy to do so? The thing is I'm quite happy with the way OSG sorts nodes most of the time, but for GUI elements (at least in our case) there is no performance benefit to do so. Almost everything use the same states (blending on, no depth test/write, no lighting) while only the texture changes. Cheers, Tanguy From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Robert Osfield Sent: Thursday 02 April 2009 11:59 To: OpenSceneGraph Users Subject: Re: [osg-users] Controlling the rendering order Hi Tanguy, The OSG sorts the objects in opaque bin to minimize state changes, this is crucial for performance - it's a pretty fundamental part to efficient rendering and standard practice in high performance graphics toolkts.. This does mean the ordering changes. You have complete control over the bins though, you can change the sort algorithm on them, you can create own bins, set the overall render order. Within a single geometry the order is drawn in the order that the primitives are placed in the geometry, so perhaps this is sufficient for your purposes. Robert. On Thu, Apr 2, 2009 at 11:02 AM, Tanguy Fautre tang...@aristechnologies.com wrote: Hi, When doing GUI elements in OpenGL, it's particularly useful to exactly control the rendering order. Usually, this goes like this: glDepthMask(0); glDisable(GL_DEPTH_TEST); glDisable(GL_LIGHTING); glEnable(GL_BLEND); /* Render GUI back to front */ /* Note that we use Z = 0.0 all the time */ glBegin(GL_QUADS); glVertex2f(x, y); /* ... */ It's very easy to do directly in OpenGL, but with OSG I've currently found it ridiculously hard. The reason is that OSG change to rendering order to optimize things (which is good in most cases, except this one). Is there any way to easily control the rendering order of nodes in OSG (e.g. set a node property to tell OSG to render children nodes in order)? I've found render bins to be over complicated to solve this (also they require the user to assign a unique and ordered id to each of them), and assigning a Z value to each GUI element is also tedious and error prone. Am I missing something? Cheers, Tanguy ___ 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] Depth buffer data is not clamp to [0.0,1.0].
Thanks ulrich I paste this code from others,and not check! --- 09年4月2日,周四, Ulrich Hertlein u.hertl...@sandbox.de 写道: 发件人: Ulrich Hertlein u.hertl...@sandbox.de 主题: Re: [osg-users] Depth buffer data is not clamp to [0.0,1.0]. 收件人: OpenSceneGraph Users osg-users@lists.openscenegraph.org 日期: 2009年4月2日,周四,下午5:14 Hi YangXiao, On 2/4/09 3:22 PM, YangXiao wrote: z = float ( (depthBuffer-data())[i*4] ); Could it be your cast is wrong? You're only reading every fourth byte and casting that to float, which explains why you're only seeing 0-255. Try z = ((float*) depthBuffer-data())[i]; instead. /ulrich ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org ___ 好玩贺卡等你发,邮箱贺卡全新上线! http://card.mail.cn.yahoo.com/___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Controlling the rendering order
Maybe you should look at osgWidget which handles GUI elements. Guy. מאת: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] בשם Tanguy Fautre נשלח: Thursday, April 02, 2009 2:27 PM אל: OpenSceneGraph Users נושא: Re: [osg-users] Controlling the rendering order Hi Robert, Do you suggest I create an additional bin type (e.g. GUI_ELEMENT_BIN) in addition to OPAQUE_BIN and TRANSPARENT_BIN, and write my own sort algorithm for those (i.e. render in the same order children appears in) ? Would it be relatively easy to do so? The thing is I’m quite happy with the way OSG sorts nodes most of the time, but for GUI elements (at least in our case) there is no performance benefit to do so. Almost everything use the same states (blending on, no depth test/write, no lighting) while only the texture changes. Cheers, Tanguy From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Robert Osfield Sent: Thursday 02 April 2009 11:59 To: OpenSceneGraph Users Subject: Re: [osg-users] Controlling the rendering order Hi Tanguy, The OSG sorts the objects in opaque bin to minimize state changes, this is crucial for performance - it's a pretty fundamental part to efficient rendering and standard practice in high performance graphics toolkts.. This does mean the ordering changes. You have complete control over the bins though, you can change the sort algorithm on them, you can create own bins, set the overall render order. Within a single geometry the order is drawn in the order that the primitives are placed in the geometry, so perhaps this is sufficient for your purposes. Robert. On Thu, Apr 2, 2009 at 11:02 AM, Tanguy Fautre tang...@aristechnologies.com wrote: Hi, When doing GUI elements in OpenGL, it's particularly useful to exactly control the rendering order. Usually, this goes like this: glDepthMask(0); glDisable(GL_DEPTH_TEST); glDisable(GL_LIGHTING); glEnable(GL_BLEND); /* Render GUI back to front */ /* Note that we use Z = 0.0 all the time */ glBegin(GL_QUADS); glVertex2f(x, y); /* ... */ It's very easy to do directly in OpenGL, but with OSG I've currently found it ridiculously hard. The reason is that OSG change to rendering order to optimize things (which is good in most cases, except this one). Is there any way to easily control the rendering order of nodes in OSG (e.g. set a node property to tell OSG to render children nodes in order)? I've found render bins to be over complicated to solve this (also they require the user to assign a unique and ordered id to each of them), and assigning a Z value to each GUI element is also tedious and error prone. Am I missing something? Cheers, Tanguy ___ 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] ObjectType querry...
Hi Robert, Please ignor last email, and this request. I've just realised what to do. Put it down to temporary moment of insanity on my part. Thanks for help. Neil. neil.hug...@tesco.net wrote: Hi Robert, Thanks for coming back to me so quickly, however I don't think I made myself clear enough, as I'm not sure that osgconv is what I'm looking for. I'm sitting within the zip plugin code, and I have the stream of bytes that represents one of the files within the zip file. I need to know whether I should be passing this stream into a ReadImage, readNode, readObject, or readArchive function - like the Curl plugin does. Now, I can get the appropriate reader as the registry provides functions for doing that. What I need to know, within code, is what type of object that stream represents, so that I can call the appropriate function within the plugin code at runtime. I was hoping that a plugin might publish the type of object it creates via a call, but I've looked at the plugin codes and all that is really available seems to be the extensions that a reader addresses, and not the type of object it returns. So, for example, I would like the JPG,TGA,BMP,PNG...(A.N.Other image format) plugins to return IMAGE as the object type they create creates, whilst the OSG, 3DS, FLT, IVE and (A.N.Other object format) would return node. Any thoughts ? Thanks in advance. Neil. Robert Osfield robert.osfi...@gmail.com wrote: Hi Neil, In OSG-2.8 you can do osgconv --formats to get a listed of all the capabilities of the plugins. Robert. On Wed, Apr 1, 2009 at 5:29 PM, neil.hug...@tesco.net wrote: Hi All, Can anyone tell me whether there is a way (call) in OSG to say what type of object a plugin will produce ? i.e. if I have a file A.jpg and I call osgDB::Registry::instance()-getReaderWriterForExtension passing in the file extension, I get the readerwriter. What I would like to know is what ObjectType that readerwrite would return. The reason for the question is I'm updating the ReaderWriterZip plugin to handle in-memory zip extraction, and I want to be able to give it a zip file that contains many files of varying format. Rippling through the zip file I can get the individual files, and their content, and unzip them in memory, but the issue I have is that I don't really want to have a big If statement in the plugin to look at the known file extensions and to say whether I should be calling ReadNode or ReadImage. I would like to be able to enquire the type of Object that the reader would produce, and then have a simple switch statement like the Curl plugin. One route I thought of would be to add to extend each plugin to have a function based that returns the type of object, and I guess this would be fairly straight forward, but before delving in, I just wanted to check if there is a method already available. Many thanks for any help. Neil. ___ 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] Controlling the rendering order
HI Tanguy, 2009/4/2 Tanguy Fautre tang...@aristechnologies.com Do you suggest I create an additional bin type (e.g. GUI_ELEMENT_BIN) in addition to OPAQUE_BIN and TRANSPARENT_BIN, and write my own sort algorithm for those (i.e. render in the same order children appears in) ? Implicit rendering order is bound to be open to error, if the traversal order changes then you'll hit upon problems, so I would not recommend going this route. You can certainly implement your own RenderBin, just assign a RenderBinPrototype with the appropriate sort order and provide a name for it so that the StateSet's of your geometry can select it. However, while it's technically quite straight forward to do I would recommend doing it in the manner your are looking for, explcit control of rendering order is the best way to go. One route to making explictly render order easiler to manage would be via a Layer node. This Layer node would drop it's children in to different bins. I've been considering writing a osg::Layer node for quite a few years, but never have had the time nor something that critically needed it. Your welcome to collabroate on developing a new osg::Layer node :-) Robert. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Controlling the rendering order
Hi Guy, From what I’ve seen osgWidget would be an overkill for us, while not implementing the features we do need. In any case, I’ve quickly looked into osgWidget source code, and it seems it’s using a single transparent bin with z ordering (WindowManager.cpp, around line 400, assigns different z values to windows when changing the focus of a window). This is currently what we are doing, but I’ve found it very error prone in our case. Cheers, Tanguy From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Guy Sent: Thursday 02 April 2009 12:28 To: OpenSceneGraph Users Subject: Re: [osg-users] Controlling the rendering order Maybe you should look at osgWidget which handles GUI elements. Guy. מאת: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] בשם Tanguy Fautre נשלח: Thursday, April 02, 2009 2:27 PM אל: OpenSceneGraph Users נושא: Re: [osg-users] Controlling the rendering order Hi Robert, Do you suggest I create an additional bin type (e.g. GUI_ELEMENT_BIN) in addition to OPAQUE_BIN and TRANSPARENT_BIN, and write my own sort algorithm for those (i.e. render in the same order children appears in) ? Would it be relatively easy to do so? The thing is I’m quite happy with the way OSG sorts nodes most of the time, but for GUI elements (at least in our case) there is no performance benefit to do so. Almost everything use the same states (blending on, no depth test/write, no lighting) while only the texture changes. Cheers, Tanguy From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Robert Osfield Sent: Thursday 02 April 2009 11:59 To: OpenSceneGraph Users Subject: Re: [osg-users] Controlling the rendering order Hi Tanguy, The OSG sorts the objects in opaque bin to minimize state changes, this is crucial for performance - it's a pretty fundamental part to efficient rendering and standard practice in high performance graphics toolkts.. This does mean the ordering changes. You have complete control over the bins though, you can change the sort algorithm on them, you can create own bins, set the overall render order. Within a single geometry the order is drawn in the order that the primitives are placed in the geometry, so perhaps this is sufficient for your purposes. Robert. On Thu, Apr 2, 2009 at 11:02 AM, Tanguy Fautre tang...@aristechnologies.com wrote: Hi, When doing GUI elements in OpenGL, it's particularly useful to exactly control the rendering order. Usually, this goes like this: glDepthMask(0); glDisable(GL_DEPTH_TEST); glDisable(GL_LIGHTING); glEnable(GL_BLEND); /* Render GUI back to front */ /* Note that we use Z = 0.0 all the time */ glBegin(GL_QUADS); glVertex2f(x, y); /* ... */ It's very easy to do directly in OpenGL, but with OSG I've currently found it ridiculously hard. The reason is that OSG change to rendering order to optimize things (which is good in most cases, except this one). Is there any way to easily control the rendering order of nodes in OSG (e.g. set a node property to tell OSG to render children nodes in order)? I've found render bins to be over complicated to solve this (also they require the user to assign a unique and ordered id to each of them), and assigning a Z value to each GUI element is also tedious and error prone. Am I missing something? Cheers, Tanguy ___ 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] PositionAttitudeTransform - How do I make a rotation
Hi, have a look at the quaternion/Matrix member functions, e.g. makeRotate. Do not try to set the quat internal values directly. E.g. you can make a quat/Matrix from roll, pitch and yaw with three angles and 3 axes. go here: http://news.gmane.org/gmane.comp.graphics.openscenegraph.user and search for roll pitch yaw makeRotate and you'll see some examples. jp Adrien Joly wrote: Hi, I'm kind of newbie in 3D developpment and in openSceneGraph. I want to rotate a node using PositionAttitudeTransform::setAttitude but I don't know how to do that. I've tried to make it rotate according ti the fact that x, y and z of the Quat is the coordinate of the vector from the origin (x, x, z) plus an angle (w). But the node has a strange behavior. Can anyone help me? Thank you. -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=9612#9612 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org -- This message is subject to the CSIR's copyright terms and conditions, e-mail legal notice, and implemented Open Document Format (ODF) standard. The full disclaimer details can be found at http://www.csir.co.za/disclaimer.html. This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. MailScanner thanks Transtec Computers for their support. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Controlling the rendering order
Hi Robert, I do have a Layer class (although it's more than just a node), and I also have an Overlay class. An overlay sets up the orthogonal project and the common state set. It also contains several layers. The overlay guarantees that the layer are rendered in order (i.e. you add them to the overlay from back to front), and I was actually going to do that by the approach you're suggesting (that is, automatically create a different numbered rendering bin for each child). I would also like to achieve the same with layers. So that in the end, layers are rendered in order, and the elements in each layer are also drawn in order. I'm not so familiar with render bins, but is it possible to have such a hierarchical arrangement? This would be similar to having a hierarchy of osg::Layer nodes as you've described them. Cheers, Tanguy From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Robert Osfield Sent: Thursday 02 April 2009 12:46 To: OpenSceneGraph Users Subject: Re: [osg-users] Controlling the rendering order HI Tanguy, 2009/4/2 Tanguy Fautre tang...@aristechnologies.com Do you suggest I create an additional bin type (e.g. GUI_ELEMENT_BIN) in addition to OPAQUE_BIN and TRANSPARENT_BIN, and write my own sort algorithm for those (i.e. render in the same order children appears in) ? Implicit rendering order is bound to be open to error, if the traversal order changes then you'll hit upon problems, so I would not recommend going this route. You can certainly implement your own RenderBin, just assign a RenderBinPrototype with the appropriate sort order and provide a name for it so that the StateSet's of your geometry can select it. However, while it's technically quite straight forward to do I would recommend doing it in the manner your are looking for, explcit control of rendering order is the best way to go. One route to making explictly render order easiler to manage would be via a Layer node. This Layer node would drop it's children in to different bins. I've been considering writing a osg::Layer node for quite a few years, but never have had the time nor something that critically needed it. Your welcome to collabroate on developing a new osg::Layer node :-) Robert. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] How to get heightfield from ReadFileCallback VPB Terrain
Hi List Im trying to get the heightfiled data from a VPB terrain using ReadFileCallback. I use the code from readfile callback like this. class MyReadFileCallback : public osgDB::Registry::ReadFileCallback { public: virtual osgDB::ReaderWriter::ReadResult readNode(const std::string fileName, const osgDB::ReaderWriter::Options* options) { // note when calling the Registry to do the read you have to call readNodeImplementation NOT readNode, as this will // cause on infinite recusive loop. osgDB::ReaderWriter::ReadResult result = osgDB::Registry::instance()-readNodeImplementation(fileName,options); if (result.validHeightField()) { LOG_ERROR(Found a valid HeightField); } return result; } }; The idea was simply to see if I had the heightfield available, but even though I have verified that it gets called it is never a valid heightfield. This is on a terrain build using VPB with the --TERRAIN option. Shouldent I be able to get the heightfieldnodes? Brgs. Ralf Stokholm ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] osgUtil::Simplifier in OpenSceneGraph 1.1 or 1.2 Version
Hello everybody, Because i'm doing a work that a colligue started about 2 years ago, i'd like to improve performance and efficiecy for his program by adding a support for the osgUtil::Simplifier to use the Decimation algorithm implementation. Since the older version there was no support for the Simplifier option in OSG. Is it possible to integrate this option in older versions or no?. Please if you have any suggestion or answer or may be you already experience a problem like this let me know Thank you in advance. Cheers -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=9627#9627 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Running OSG app across multiple GPUs (windows)
Hi Robert, thank you for quick replay. robertosfield wrote: Hi Endre, Just to be clear, do you have your app running across all displays right now? Is it just the subloading that isn't working? Yes, that is correct. What I did was to run the my application unchanged on the multi-GPU computer, expand the application window by dragging the window sidebar cross all 4 displays. Everything except the textures that are affected by my subloading is working. For instance my skybox is rendered correctly on all 4 displays. B.t.w. it is an xwWidget application if it matters. robertosfield wrote: W.r.t subloading, this the unknown variable that makes it difficult to comment on. The best I can say is that osg::Texture* maintains a seperate OpenGL texture object for each graphics context. Have a look at the Texture*.cpp classes to see how these texture objects are managed. I was thinking about the graphics contexts too, but I added a printout to my sub-load callback, something like this: Code: ... void MySubloadCallback::subload(const osg::TextureRectangle texture,osg::State state) const { const osg::Image* img = texture.getImage(); const unsigned int contextID = state.getContextID(); printf(ContextID = %d, contextID); ... But I only get ContextID = 0 printed. This makes me suspect that I have only one graphics context.. I'm I right? This is where I cannot find any documentation (or examples) on where to look. Sorry if I'm a bad searcher. Is there a guide for how to setup multiple grapichs contexts (if I need them) across multiple GPUs? I used to work on SGI computers and multi-pipe rendering in the old days and maybe I'm not understanding how multi-GPU nowadays differs from that. Is for instance the driver handling all this multiple GPU stuff so that osg only sees one large screen? Sincerely, Endre robertosfield wrote: Robert. On Thu, Apr 2, 2009 at 10:46 AM, Endre Lidal () wrote: Hi all! I'm searching for information on how OSG behaves and possible should be setup in my application when running on a multi-display (4 monitors) in a multi GPU (2 graphics cards) PC running Windows XP. I'm using OSG 2.6.1. I have searched the forum/mailing lists and available documentation, but I don't seem to get the right information about how to do this. I have an OSG application that runs correct on a one GPU/graphics card system (with 2 monitors). The actual problem I'm seeing is the following: I have created a custom subload texture callback to speed up texture subloading (only subload the part of the texture that are actually updated.) This works fine on a 1 GPU system, but the texture is not subloaded on the displays on the second GPU. I have other textures that uses the default texture subloading and these works in both setups. Afaik the textures/texture objects has to be created and subloaded on both GPU/graphics cards in order to make this work. But here is my problem, where can I get information on how to do this? I would be grateful for any hints to my problem or any links to references about this. Thank you. Sincerely, Endre -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=9613#9613 (http://forum.openscenegraph.org/viewtopic.php?p=9613#9613) ___ osg-users mailing list () http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org (http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org) -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=9623#9623 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] How to get heightfield from ReadFileCallback VPB Terrain
Hi ralf Try casting the node to an osgTerrain::TerrainTile. If the cast works you'll be able to grab the elevation layer and cast it to a heightfieldlayer and grab the hf Jason Sent from my iPhone On Apr 2, 2009, at 8:05 AM, Ralf Stokholm alfma...@arenalogic.com wrote: Hi List Im trying to get the heightfiled data from a VPB terrain using ReadFileCallback. I use the code from readfile callback like this. class MyReadFileCallback : public osgDB::Registry::ReadFileCallback { public: virtual osgDB::ReaderWriter::ReadResult readNode(const std::string fileName, const osgDB::ReaderWriter::Options* options) { // note when calling the Registry to do the read you have to call readNodeImplementation NOT readNode, as this will // cause on infinite recusive loop. osgDB::ReaderWriter::ReadResult result = osgDB::Registry::instance()-readNodeImplementation(fileName,options); if (result.validHeightField()) { LOG_ERROR(Found a valid HeightField); } return result; } }; The idea was simply to see if I had the heightfield available, but even though I have verified that it gets called it is never a valid heightfield. This is on a terrain build using VPB with the --TERRAIN option. Shouldent I be able to get the heightfieldnodes? Brgs. Ralf Stokholm ___ 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] Running OSG app across multiple GPUs (windows)
Hi Endre, On Thu, Apr 2, 2009 at 12:56 PM, Endre Lidal emli...@broadpark.no wrote: Yes, that is correct. What I did was to run the my application unchanged on the multi-GPU computer, expand the application window by dragging the window sidebar cross all 4 displays. Everything except the textures that are affected by my subloading is working. For instance my skybox is rendered correctly on all 4 displays. B.t.w. it is an xwWidget application if it matters. If you are using a single window then you'll have a single graphics context, but the OS/OpenGL driver will be cloning it in some way the kid on that you have a single context across both contexts. While this might seem convenient it sucks for performance. The right way to do multiple graphics cards to open up a single graphics context for each graphics card, and use the OSG's master/slave camera support in osgViewer to do all the threading/context management. I've heard from Windows users that Windows might still be cloning contexts though. Personally I'd recommend using unix to do multi context work as X11 provides much better specific context of contexts assignment to GPUs. I was thinking about the graphics contexts too, but I added a printout to my sub-load callback, something like this: Code: ... void MySubloadCallback::subload(const osg::TextureRectangle texture,osg::State state) const { const osg::Image* img = texture.getImage(); const unsigned int contextID = state.getContextID(); printf(ContextID = %d, contextID); ... But I only get ContextID = 0 printed. This makes me suspect that I have only one graphics context.. I'm I right? This is where I cannot find any documentation (or examples) on where to look. Sorry if I'm a bad searcher. Is there a guide for how to setup multiple grapichs contexts (if I need them) across multiple GPUs? I used to work on SGI computers and multi-pipe rendering in the old days and maybe I'm not understanding how multi-GPU nowadays differs from that. Is for instance the driver handling all this multiple GPU stuff so that osg only sees one large screen? The driver is playing games, hiding the fact that there is really two graphics contexts doing the work, but only one at the application level. It sounds like it's mostly doing this approach successfully but fails with your subloading. So it's basically a driver bug, there won't be anything you can do about it on the OSG end with your current viewer/graphics context configuration. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Controlling the rendering order
Hi Tanguy, The rendering backend is set up to allow nesting of RenderBin, so you can implement layer within layers. The rendering backend also support multiple RenderStage for RTT and HUD purposes. A RenderStage is just a subclass from RenderBin that adds a clear at the begining of the stage, and does any data copying at the end. The rendering back therefore provides a great deal of flexibility for controlling fine grained ordering as well as high level order, but with this flexibility does come a bit of complexity is controlling it. It's worth mentioning that the OPAQUE_BIN and TRANSPARENT_BIN's aren't fixed bins, they are just default settings to make it convinient, the actually rendering back end doesn't actually have a specific opaque and transparent bin, the only fixed element is that there is root RenderStage for each viewer Camera, the rest of the bin layout is entirely generated on the fly, so one frame you might have a hundred bins, the next only two. Robert. 2009/4/2 Tanguy Fautre tang...@aristechnologies.com Hi Robert, I do have a Layer class (although it’s more than just a node), and I also have an Overlay class. An overlay sets up the orthogonal project and the common state set. It also contains several layers. The overlay guarantees that the layer are rendered in order (i.e. you add them to the overlay from back to front), and I was actually going to do that by the approach you’re suggesting (that is, automatically create a different numbered rendering bin for each child). I would also like to achieve the same with layers. So that in the end, layers are rendered in order, and the elements in each layer are also drawn in order. I’m not so familiar with render bins, but is it possible to have such a hierarchical arrangement? This would be similar to having a hierarchy of osg::Layer nodes as you’ve described them. Cheers, Tanguy *From:* osg-users-boun...@lists.openscenegraph.org [mailto: osg-users-boun...@lists.openscenegraph.org] *On Behalf Of *Robert Osfield *Sent:* Thursday 02 April 2009 12:46 *To:* OpenSceneGraph Users *Subject:* Re: [osg-users] Controlling the rendering order HI Tanguy, 2009/4/2 Tanguy Fautre tang...@aristechnologies.com Do you suggest I create an additional bin type (e.g. GUI_ELEMENT_BIN) in addition to OPAQUE_BIN and TRANSPARENT_BIN, and write my own sort algorithm for those (i.e. render in the same order children appears in) ? Implicit rendering order is bound to be open to error, if the traversal order changes then you'll hit upon problems, so I would not recommend going this route. You can certainly implement your own RenderBin, just assign a RenderBinPrototype with the appropriate sort order and provide a name for it so that the StateSet's of your geometry can select it. However, while it's technically quite straight forward to do I would recommend doing it in the manner your are looking for, explcit control of rendering order is the best way to go. One route to making explictly render order easiler to manage would be via a Layer node. This Layer node would drop it's children in to different bins. I've been considering writing a osg::Layer node for quite a few years, but never have had the time nor something that critically needed it. Your welcome to collabroate on developing a new osg::Layer node :-) Robert. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] osgUtil::Simplifier in OpenSceneGraph 1.1 or 1.2 Version
Hi Sam, You can should be able to back port osgUtil::Simplifier to OSG 1.2. The other approach you could take is just port your app to OSG 2.8, as this will bring you plenty of other benefits besides the Simplifier. Robert. On Thu, Apr 2, 2009 at 1:16 PM, Sam retc...@yahoo.fr wrote: Hello everybody, Because i'm doing a work that a colligue started about 2 years ago, i'd like to improve performance and efficiecy for his program by adding a support for the osgUtil::Simplifier to use the Decimation algorithm implementation. Since the older version there was no support for the Simplifier option in OSG. Is it possible to integrate this option in older versions or no?. Please if you have any suggestion or answer or may be you already experience a problem like this let me know Thank you in advance. Cheers -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=9627#9627 ___ 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 get heightfield from ReadFileCallback VPB Terrain
Hi Jason Thanks for the surgestion, tried the following. osgDB::ReaderWriter::ReadResult result = osgDB::Registry::instance()-readNodeImplementation(fileName,options); if (result.validNode()) { LOG_ERROR(Found a valid Node); if (dynamic_castosgTerrain::TerrainTile*(result.getNode())) { LOG_ERROR(Found a valid TerrainTile); } } There are plenty of valid nodes, but none of them will accept a cast to TerranTile, is there a way to verify that my generated dataset contains TerrainTiles ? Brgs. Ralf Stokholm 2009/4/2 Jason Beverage jasonbever...@gmail.com: Hi ralf Try casting the node to an osgTerrain::TerrainTile. If the cast works you'll be able to grab the elevation layer and cast it to a heightfieldlayer and grab the hf Jason Sent from my iPhone On Apr 2, 2009, at 8:05 AM, Ralf Stokholm alfma...@arenalogic.com wrote: Hi List Im trying to get the heightfiled data from a VPB terrain using ReadFileCallback. I use the code from readfile callback like this. class MyReadFileCallback : public osgDB::Registry::ReadFileCallback { public: virtual osgDB::ReaderWriter::ReadResult readNode(const std::string fileName, const osgDB::ReaderWriter::Options* options) { // note when calling the Registry to do the read you have to call readNodeImplementation NOT readNode, as this will // cause on infinite recusive loop. osgDB::ReaderWriter::ReadResult result = osgDB::Registry::instance()-readNodeImplementation(fileName,options); if (result.validHeightField()) { LOG_ERROR(Found a valid HeightField); } return result; } }; The idea was simply to see if I had the heightfield available, but even though I have verified that it gets called it is never a valid heightfield. This is on a terrain build using VPB with the --TERRAIN option. Shouldent I be able to get the heightfieldnodes? Brgs. Ralf Stokholm ___ 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] How to get heightfield from ReadFileCallback VPB Terrain
Hi Ralf, You'll need to write a custom NodeVisitor that traverses through the loaded scene graph and picks out the TerrainTile using dyanmic cast. It just so happens that I'm actually working on a ReadFileCallback/custom Visitor that does pick out all the TerrainTile's in a subgraph (there will typically be one, two or four due to the quad tree structure generated by VPB.) The visitor looks like: class FindTerrainTileVisitor : public osg::NodeVisitor { public: FindTerrainTileVisitor(): osg::NodeVisitor(osg::NodeVisitor::TRAVERSE_ALL_CHILDREN) { } void reset() { _terrainTiles.clear(); } void apply(osg::Group group) { osgTerrain::TerrainTile* terrainTile = dynamic_castosgTerrain::TerrainTile*(group); if (terrainTile) { _terrainTiles.push_back(terrainTile); } else { traverse(group); } } typedef std::list osg::ref_ptrosgTerrain::TerrainTile TerrainTiles; TerrainTiles _terrainTiles; }; The custom ReadFileCallback's readNode method looks like: virtual osgDB::ReaderWriter::ReadResult readNode(const std::string filename, const osgDB::ReaderWriter::Options* options) { osg::notify(osg::NOTICE)Loading tile filenamestd::endl; osgDB::ReaderWriter::ReadResult result = osgDB::Registry::instance()-readNodeImplementation(filename,options); if (result.validNode()) { FindTerrainTileVisitor fttv; result.getNode()-accept(fttv); for(FindTerrainTileVisitor::TerrainTiles::iterator itr = fttv._terrainTiles.begin(); itr != fttv._terrainTiles.end(); ++itr) { osgTerrain::TerrainTile* terrainTile = itr-get(); /// my stuff omitted, put your stuff here } } } Robert. On Thu, Apr 2, 2009 at 1:05 PM, Ralf Stokholm alfma...@arenalogic.comwrote: Hi List Im trying to get the heightfiled data from a VPB terrain using ReadFileCallback. I use the code from readfile callback like this. class MyReadFileCallback : public osgDB::Registry::ReadFileCallback { public: virtual osgDB::ReaderWriter::ReadResult readNode(const std::string fileName, const osgDB::ReaderWriter::Options* options) { // note when calling the Registry to do the read you have to call readNodeImplementation NOT readNode, as this will // cause on infinite recusive loop. osgDB::ReaderWriter::ReadResult result = osgDB::Registry::instance()-readNodeImplementation(fileName,options); if (result.validHeightField()) { LOG_ERROR(Found a valid HeightField); } return result; } }; The idea was simply to see if I had the heightfield available, but even though I have verified that it gets called it is never a valid heightfield. This is on a terrain build using VPB with the --TERRAIN option. Shouldent I be able to get the heightfieldnodes? Brgs. Ralf Stokholm ___ 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] osgUtil::Simplifier in OpenSceneGraph 1.1 or 1.2 Version
Thank you Robert for the answer. But updating the osg version of the application(it's a huge application with too many classes and dependencies) may cause some problems. I don't know realy the real impact of a such update but i remember that i tried to update the old version to the new one and finelly somthing was wrong. Is there way to update the OSG without causing problems later. Thank you in advance. Cheers -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=9634#9634 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [build] Windows binary download
Hi Martin, It also seems that windows binaries are packed as .tar.gz - could we make them .zip? Windows users that are downloading binaries are unlikely to have cygwin/ming tools installed. Most unzip tools support tarballs - 7-zip, winrar, etc. You could argue that Windows has native support for zip, but really, who uses that? Most people I know install 7-zip (it's open source) as soon as they start setting up a new machine. Pretty much the first thing to do on a new machine. I think it was done like that for consistency. I don't know if it would be hard to package to .zip on Windows and to .tar.gz on Linux/MacOS? Perhaps Mattias could help here since he did the packaging. J-S -- __ Jean-Sebastien Guayjean-sebastien.g...@cm-labs.com http://www.cm-labs.com/ http://whitestar02.webhop.org/ ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] How to get heightfield from ReadFileCallback VPB Terrain
Hi Robert Thanks a lot, was starting to get at this but using a more primitive approach of running through all the children of the node that I did get. Will try to implement your method. Brgs. Ralf Stokholm 2009/4/2 Robert Osfield robert.osfi...@gmail.com: Hi Ralf, You'll need to write a custom NodeVisitor that traverses through the loaded scene graph and picks out the TerrainTile using dyanmic cast. It just so happens that I'm actually working on a ReadFileCallback/custom Visitor that does pick out all the TerrainTile's in a subgraph (there will typically be one, two or four due to the quad tree structure generated by VPB.) The visitor looks like: class FindTerrainTileVisitor : public osg::NodeVisitor { public: FindTerrainTileVisitor(): osg::NodeVisitor(osg::NodeVisitor::TRAVERSE_ALL_CHILDREN) { } void reset() { _terrainTiles.clear(); } void apply(osg::Group group) { osgTerrain::TerrainTile* terrainTile = dynamic_castosgTerrain::TerrainTile*(group); if (terrainTile) { _terrainTiles.push_back(terrainTile); } else { traverse(group); } } typedef std::list osg::ref_ptrosgTerrain::TerrainTile TerrainTiles; TerrainTiles _terrainTiles; }; The custom ReadFileCallback's readNode method looks like: virtual osgDB::ReaderWriter::ReadResult readNode(const std::string filename, const osgDB::ReaderWriter::Options* options) { osg::notify(osg::NOTICE)Loading tile filenamestd::endl; osgDB::ReaderWriter::ReadResult result = osgDB::Registry::instance()-readNodeImplementation(filename,options); if (result.validNode()) { FindTerrainTileVisitor fttv; result.getNode()-accept(fttv); for(FindTerrainTileVisitor::TerrainTiles::iterator itr = fttv._terrainTiles.begin(); itr != fttv._terrainTiles.end(); ++itr) { osgTerrain::TerrainTile* terrainTile = itr-get(); /// my stuff omitted, put your stuff here } } } Robert. On Thu, Apr 2, 2009 at 1:05 PM, Ralf Stokholm alfma...@arenalogic.com wrote: Hi List Im trying to get the heightfiled data from a VPB terrain using ReadFileCallback. I use the code from readfile callback like this. class MyReadFileCallback : public osgDB::Registry::ReadFileCallback { public: virtual osgDB::ReaderWriter::ReadResult readNode(const std::string fileName, const osgDB::ReaderWriter::Options* options) { // note when calling the Registry to do the read you have to call readNodeImplementation NOT readNode, as this will // cause on infinite recusive loop. osgDB::ReaderWriter::ReadResult result = osgDB::Registry::instance()-readNodeImplementation(fileName,options); if (result.validHeightField()) { LOG_ERROR(Found a valid HeightField); } return result; } }; The idea was simply to see if I had the heightfield available, but even though I have verified that it gets called it is never a valid heightfield. This is on a terrain build using VPB with the --TERRAIN option. Shouldent I be able to get the heightfieldnodes? Brgs. Ralf Stokholm ___ 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] osgUtil::Simplifier in OpenSceneGraph 1.1 or 1.2 Version
I've migrated one small-medium project from 1.2 to 2.x and am preparing to migrate another really large project. The biggest issue is removing producer. If you don't do much with the internals of osgProducer::Viewer or Producer::Cameras then the upgrade should be pretty straight forward. If you do, then there is a bit of work to do. Another area that caused some pain was migrating our 1.x .ive files to 2.x. We use the .ive format exclusively for run time and distibution. The .ives are created from .flt files and the flt loader changed in 2.x. We found a couple differences in the loaders but were able to make changes on the .flt side. Just make sure you test the models extensively. Brian 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-boun...@lists.openscenegraph.org wrote: - To: osg-users@lists.openscenegraph.org From: Sam retc...@yahoo.fr Sent by: osg-users-boun...@lists.openscenegraph.org Date: 04/02/2009 08:54AM Subject: Re: [osg-users] osgUtil::Simplifier in OpenSceneGraph 1.1 or 1.2 Version Thank you Robert for the answer. But updating the osg version of the application(it's a huge application with too many classes and dependencies) may cause some problems. I don't know realy the real impact of a such update but i remember that i tried to update the old version to the new one and finelly somthing was wrong. Is there way to update the OSG without causing problems later. Thank you in advance. Cheers -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=9634#9634 ___ 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] Openscenegraph Image to Windows HBITMAP
Hi all, (and thank you for you help on previous occasions). I'm writing (in Visual studio 2005sp1) the Openscenegraph (2.6.1) part of an application for Windows (XP/Vista). I need to be able to record and take screenshots of my Openscenegraph viewports and also from non-viewport cameras. I'm going to do this with RTT cameras, and I'm implementing this now. However, I'm going to get my screenshots in the form of osg::Image and I need to convert them to HBITMAPs in order to use them further in the conversion chain of the application. Is there an easier method than reading the osg::image pixel for pixel and writing this to the HBITMAP? regards, and thanks in advance. Jesper D. Thomsen ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [build] Build problem with gdk-x11-2.0
Yes, there is a symbolic link: libgdk-x11-2.0.so - libgdk-x11-2.0.so.0.1000.6 libgdk-x11-2.0.so.0 - libgdk-x11-2.0.so.0.1000.6 libgdk-x11-2.0.so.0.1000.6 Harry -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=9639#9639 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] osgUtil::Simplifier in OpenSceneGraph 1.1 or 1.2 Version
Thank you Brian. But once again if i tried to use osgUtil::Simplifier in osg1.2 what should i do to get the Simplifier options in my program without updating the OSG version Thank you in advance. Cheers -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=9640#9640 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] osgUtil::Simplifier in OpenSceneGraph 1.1 or 1.2 Version
Hi Sam, On 4/2/09, Sam retc...@yahoo.fr wrote: Thank you Brian. But once again if i tried to use osgUtil::Simplifier in osg1.2 what should i do to get the Simplifier options in my program without updating the OSG version I'm lost. What are you looking for? The code to the OSG is all open source, you can grab what you want and back port to your heart's content. Exactly how you want to go about it is your problem, it should be just basic C++ issues such as modifying project/makefiles and tweaking code where necessary. It might just be worth your while pulling down OSG-2.8 and learning about it. You can test the Simplifer in OSG-2.8 and see if it suits your needs. You can also look the task o porting at the same-time, it needn't be a huge task if you application code was well written as the majority of the OSG API is very similar between 1.x and 2.x, the main difference is the viewer code. Robert. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] osgUtil::Simplifier in OpenSceneGraph 1.1 or 1.2 Version
Sam, Robert suggested back porting the osgUtil::Simplifier class. Grab those files and add them to your 1.x distribution. Brian 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-boun...@lists.openscenegraph.org wrote: - To: osg-users@lists.openscenegraph.org From: Sam retc...@yahoo.fr Sent by: osg-users-boun...@lists.openscenegraph.org Date: 04/02/2009 09:40AM Subject: Re: [osg-users] osgUtil::Simplifier in OpenSceneGraph 1.1 or 1.2 Version Thank you Brian. But once again if i tried to use osgUtil::Simplifier in osg1.2 what should i do to get the Simplifier options in my program without updating the OSG version Thank you in advance. Cheers -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=9640#9640 ___ 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] default coordinate system and camera - newbie
Hello Paul, I have made the following changes, still having the same value: *** int main() { //Creating the viewer osgViewer::Viewer viewer ; *viewer.setCameraManipulator(new osgGA::TrackballManipulator());* //add some event handler //to show the statistics viewer.addEventHandler(new osgViewer::StatsHandler); /* get camera related information */ osg::Vec3f eye; osg::Vec3f dir; osg::Vec3f up; viewer.getCamera()-getViewMatrixAsLookAt(eye,dir,up); cout The eye vector: eye.x() eye.y() eye.z() endl; cout The look at position: dir.x() dir.y() dir.z() endl; cout The up vector is: up.x() up.y() up.z() endl; *** -- Forwarded message -- From: ami guru dosto.wa...@gmail.com Date: Thu, Apr 2, 2009 at 2:39 AM Subject: Fwd: [osg-users] default coordinate system and camera - newbie To: OpenSceneGraph Users osg-users@lists.openscenegraph.org Hello Paul, I have the following snippet that deals with the viewer **' int main() { //Creating the viewer osgViewer::Viewer viewer ; //add some event handler //to show the statistics viewer.addEventHandler(new osgViewer::StatsHandler); /* get camera related information */ osg::Vec3f eye; osg::Vec3f dir; osg::Vec3f up; viewer.getCamera()-getViewMatrixAsLookAt(eye,dir,up); cout The eye vector: eye.x() eye.y() eye.z() endl; cout The look at position: dir.x() dir.y() dir.z() endl; cout The up vector is: up.x() up.y() up.z() endl; //Creating the root node osg::ref_ptrosg::Node root = createSceneGraph(); '** Could you provide some hint where the bug might be , at least the way to find it? I want to implement a very simple scenario. A camera that moves along with the key press event. I already have that implemented in OpenGL program where i can roll, pitch yaw and slide with user key press event. I want to map that in the scene graph system. I have the following information predefined *n* = eye - look; *u* = *up* * *n*; *v* = *n* * *u*; To move the camera in an ineractive way i have to have the access to there values . there is a function in the Camera Class called getViewMatrix() , i hope that it is one to access these values. Any more reference would be of great help. -- Forwarded message -- From: Paul Martz pma...@skew-matrix.com Date: 2009/4/2 Subject: Re: [osg-users] default coordinate system and camera - newbie To: OpenSceneGraph Users osg-users@lists.openscenegraph.org The CameraManipulator (like TrackballManipulator, for example) determines the default orientation. You can change this default by setting the up vector in the TrackballManipulator. By default, the TrackballManipulator uses positive Z up, so if your code is getting positive Y up, either you have a bug or you are not using the TrackballManipulator or you have changed its default. The default view position is also determined by the CameraManipulator. The TrackballManipulator, for example, has a home position that you can set. By default, it considers the scene bounding volume and tries to position the view so that the entire scene fits within a 50 degree FOV (I think it's 50, not sure). Paul Martz *Skew Matrix Software LLC* http://www.skew-matrix.com +1 303 859 9466 -- *From:* osg-users-boun...@lists.openscenegraph.org [mailto: osg-users-boun...@lists.openscenegraph.org] *On Behalf Of *ami guru *Sent:* Wednesday, April 01, 2009 1:58 PM *To:* OpenSceneGraph Users *Subject:* [osg-users] default coordinate system and camera - newbie Hello forum, osgViewer , by default uses the world coordinate system that is oriented with positive X to right , positive Z up, and positive Y into the screen. Does that mean the camera' s defualt position is at the origin looking down into the screen which is positive Y? I have tried to extract the vectors using the function ' osg::Vec3f eye; osg::Vec3f dir; osg::Vec3f up; viewer.getCamera()-getViewMatrixAsLookAt(eye,dir,up); cout The eye vector: eye.x() eye.y() eye.z() endl; cout The look at position: dir.x() dir.y() dir.z() endl; cout The up vector is: up.x() up.y() up.z() endl; The eye vector: 0 0 0 The look at position: 0 0 -1 The up vector is: 0 1 0 I was wondering if the up vector be Z axis instead Regards Sajjad ___ osg-users mailing list osg-users@lists.openscenegraph.org
Re: [osg-users] osgUtil::Simplifier in OpenSceneGraph 1.1 or 1.2 Version
Thank you Robert and Brian i appreciate your help :) :o -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=9644#9644 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Object oriented coding
Note that the e-mail address was only viewable by forum members. I'm not a member and couldn't see it. May be small consolation, I guess. -Paul Tomas Lundberg wrote: Thank you. I will check it out. Can you please edit the replies and remove my name and email? I have chosen the settings not to publish name and email, but they still appear just before quoted text it seems. -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=9597#9597 ___ 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] PositionAttitudeTransform - How do I make a rotation
Look through the examples in the OSG src and also look through the tuorials on the Web site, you will find code that's shows you how to do this Gordon Product Manager 3d __ Gordon Tomlinson Email : gtomlinson @ overwatch.textron.com __ -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Adrien Joly Sent: Thursday, April 02, 2009 5:39 AM To: osg-users@lists.openscenegraph.org Subject: [osg-users] PositionAttitudeTransform - How do I make a rotation Hi, I'm kind of newbie in 3D developpment and in openSceneGraph. I want to rotate a node using PositionAttitudeTransform::setAttitude but I don't know how to do that. I've tried to make it rotate according ti the fact that x, y and z of the Quat is the coordinate of the vector from the origin (x, x, z) plus an angle (w). But the node has a strange behavior. Can anyone help me? Thank you. -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=9612#9612 ___ 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] osgmovie plugins supported
Hi guys, I want to add a movie in my scenegraph builded with openscenegraph 1.2 (on a windows machine). The problem is that I have a .flv video and I don't know what types of formats are supported in order to convert it in a supported format. How can I see this? I have already done some tests with .asf, .avi, .mpg, .mp4, .flv and .wmv but the message is always the same: Warning: Could not find plugin to read objects from file filename.ext What types of formats are supported in a native way on Windows without install other plugins? Thanks in advance Francesco Argese ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] osgmovie plugins supported
Hi Francesco, I don't recall there being support for the Quicktime plugin back in the days of OSG-1.2, so if you want video support you'll have to backport either the Quicktime plugin or the new ffmpeg plugin. Or... just upgrade to OSG-2.8 to get acess to the Quicktime plugin, or OSG-2.9.x/svn for the ffmpeg plugin. Robert. On Thu, Apr 2, 2009 at 4:15 PM, Francesco Argese kekk...@gmail.com wrote: Hi guys, I want to add a movie in my scenegraph builded with openscenegraph 1.2 (on a windows machine). The problem is that I have a .flv video and I don't know what types of formats are supported in order to convert it in a supported format. How can I see this? I have already done some tests with .asf, .avi, .mpg, .mp4, .flv and .wmv but the message is always the same: Warning: Could not find plugin to read objects from file filename.ext What types of formats are supported in a native way on Windows without install other plugins? Thanks in advance Francesco Argese _ 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] Viewer::frame() thread-safety
Hi Robert, Chasing a set of bugs, I'm very sceptical about the update logic of our application. In a nutshell, here is currently what we are doing: while (! done) { const double time = elapsedTime(); updateScene(time); osgViewer::Viewer::frame(time); } The updateScene() function makes several changes to the scenegraph (including: changing object positions, adding new nodes, changing text, etc). This looks however very suspicious to me as far as thread-safety is concerned. Could you confirm or deny my fears? Cheers, Tanguy ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Node to Geode
Thanks for your help but you were right robertosfield, I realised I could get what I wanted without using geodes so, my fault. Thanks anyway. -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=9656#9656 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] PositionAttitudeTransform - How do I make a rotation
Thank you for the answers. I finally found, thanks to you, how to make it work ! -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=9657#9657 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [build] Windows binary download
Hi J-S, Martin, On Thu, Apr 2, 2009 at 3:04 PM, Jean-Sébastien Guay jean-sebastien.g...@cm-labs.com wrote: Hi Martin, It also seems that windows binaries are packed as .tar.gz - could we make them .zip? Windows users that are downloading binaries are unlikely to have cygwin/ming tools installed. Most unzip tools support tarballs - 7-zip, winrar, etc. You could argue that Windows has native support for zip, but really, who uses that? Most people I know install 7-zip (it's open source) as soon as they start setting up a new machine. Pretty much the first thing to do on a new machine. I think it was done like that for consistency. I don't know if it would be hard to package to .zip on Windows and to .tar.gz on Linux/MacOS? Perhaps Mattias could help here since he did the packaging. Wouldn't be hard at all. It's a matter of if(WIN32) set(CPACK_GENERATOR ZIP) else() set(CPACK_GENERATOR TGZ) endif() To late for 2.8.0 but definitely possible in 2.8.1. Personally I prefer the consistency of shipping tgz for all platforms but recognize the fact that many windows users are (still) accustomed to having zip archives supplied. On the other hand (again) we are not providing a basic app that everyone should be able to use (and unpack) but a fairly advanced development tool. One should also consider that so far, and it's been a few weeks now, this is the first request for zip archives. This is a q about user-friendliness so perhaps others would care to have an opinion. If the support for zip archives is demanded to some degree (and Robert approves) I'll be happy to implement it in our build scripts. cheers Mattias J-S -- __ Jean-Sebastien Guay jean-sebastien.g...@cm-labs.com http://www.cm-labs.com/ http://whitestar02.webhop.org/ ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [build] Windows binary download
Hi Mattias, This is a q about user-friendliness so perhaps others would care to have an opinion. If the support for zip archives is demanded to some degree (and Robert approves) I'll be happy to implement it in our build scripts. I agree with all your points. If we had had lots of requests for .zip since 2.8 shipped, that would be a different story, but since this has been the first (and it was discussed on osg-submissions when the packaging was being developed and no one objected) it probably doesn't affect many people. Nevertheless, Robert has put lots of emphasis on providing a good out-of-the-box experience on each platform, so since zip support is built-in on Windows, perhaps this falls into that category. What do you think? J-S -- __ Jean-Sebastien Guayjean-sebastien.g...@cm-labs.com http://www.cm-labs.com/ http://whitestar02.webhop.org/ ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Openscenegraph Image to Windows HBITMAP
Not sure, but the code in the bmp plugin might help. Glenn Waldron : Pelican Mapping : http://pelicanmapping.com : +1.703.652.4791 2009/4/2 Jesper D. Thomsen j...@anybodytech.com Hi all, (and thank you for you help on previous occasions). I'm writing (in Visual studio 2005sp1) the Openscenegraph (2.6.1) part of an application for Windows (XP/Vista). I need to be able to record and take screenshots of my Openscenegraph viewports and also from non-viewport cameras. I'm going to do this with RTT cameras, and I'm implementing this now. However, I'm going to get my screenshots in the form of osg::Image and I need to convert them to HBITMAPs in order to use them further in the conversion chain of the application. Is there an easier method than reading the osg::image pixel for pixel and writing this to the HBITMAP? regards, and thanks in advance. Jesper D. Thomsen * * ___ 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] [build] Windows binary download
Jean-Sébastien Guay wrote: I agree with all your points. If we had had lots of requests for .zip since 2.8 shipped, that would be a different story, but since this has been the first (and it was discussed on osg-submissions when the packaging was being developed and no one objected) it probably doesn't affect many people. Nevertheless, Robert has put lots of emphasis on providing a good out-of-the-box experience on each platform, so since zip support is built-in on Windows, perhaps this falls into that category. What do you think? I'd suggest switching to .zip on Windows for the 2.10 release. I don't think it is a big problem for most people, but it's one less obstacle for a potential new user to overcome. BTW, J-S, I think the order of installation is actually Firefox first, then Nvidia driver, then 7-zip ;-) --J ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Openscenegraph Image to Windows HBITMAP
I believe an HBITMAP is more than just an array of pixels. It's more like a drawing context (HDC). I think no matter what you do, you'll have to create your HBITMAP from scratch and copy data to it. Do you really need an HBITMAP for what you're doing? --J Glenn Waldron wrote: Not sure, but the code in the bmp plugin might help. Glenn Waldron : Pelican Mapping : http://pelicanmapping.com : +1.703.652.4791 2009/4/2 Jesper D. Thomsen j...@anybodytech.com mailto:j...@anybodytech.com Hi all, (and thank you for you help on previous occasions). I'm writing (in Visual studio 2005sp1) the Openscenegraph (2.6.1) part of an application for Windows (XP/Vista). I need to be able to record and take screenshots of my Openscenegraph viewports and also from non-viewport cameras. I'm going to do this with RTT cameras, and I'm implementing this now. However, I'm going to get my screenshots in the form of osg::Image and I need to convert them to HBITMAPs in order to use them further in the conversion chain of the application. Is there an easier method than reading the osg::image pixel for pixel and writing this to the HBITMAP? regards, and thanks in advance. Jesper D. Thomsen */*/*/ /*/*/* ___ osg-users mailing list osg-users@lists.openscenegraph.org mailto: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] Euler angle rotation
Hi, Robert, I'm porting an old Performer application to OSG. It's not a problem for me, but I noticed that there is practically no support for Euler angle rotations (heading, pitch, roll) in OSG anywhere. (I'm not sure how I missed this all this time, but there it is.) I ended up having to implement my own version of pfCoord and write the routines to extract Euler angles from quaternions. Good fun! :-) I guess I'm just curious if this was a design decision from the start. Had you been burned by singularities one too many times? :-) --J ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [build] Windows binary download
Hi Jason, BTW, J-S, I think the order of installation is actually Firefox first, then Nvidia driver, then 7-zip ;-) Diff'rent strokes for diff'rent folks :-) If you really want to be nitpicky, I agree for Firefox, because I need it to download 7-zip (IE should only ever be used to download Firefox ;-) ). Nvidia driver and 7-zip can be installed in parallel since there's no dependency there. J-S -- __ Jean-Sebastien Guayjean-sebastien.g...@cm-labs.com http://www.cm-labs.com/ http://whitestar02.webhop.org/ ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Viewer::frame() thread-safety
Hi Tanguy, It all depends upon the threading model your are using. Lots has been written on this topic so searching the archives will reveal lots of info. The threading models that require extra care are DrawTheadPerContext and CullThreadPerCameraDrawTheadPerContext, for these the draw thread can run in a parallel with the main frame loop thead so does have potential threading issues if you don't take care. The way to manage things safely is to make sure the StateSet and Drawables that are dynamically updated have their DataVariance set to DYNAMIC. I've written this hundreds of times before so go have a look through the archive. Robert. On Thu, Apr 2, 2009 at 5:48 PM, Tanguy Fautre tang...@aristechnologies.comwrote: Hi Robert, Chasing a set of bugs, I'm very sceptical about the update logic of our application. In a nutshell, here is currently what we are doing: while (! done) { const double time = elapsedTime(); updateScene(time); osgViewer::Viewer::frame(time); } The updateScene() function makes several changes to the scenegraph (including: changing object positions, adding new nodes, changing text, etc). This looks however very suspicious to me as far as thread-safety is concerned. Could you confirm or deny my fears? Cheers, Tanguy ___ 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] Euler angle rotation
Hi Jason, Well there is many different ways to define an Euler angle, which convention would you go for??? Rather than go down this tangled route the OSG just uses quaternions for rotation, they are far more robust and lack the ambiguities of Euler angles. Robert. On Thu, Apr 2, 2009 at 7:34 PM, Jason Daly jd...@ist.ucf.edu wrote: Hi, Robert, I'm porting an old Performer application to OSG. It's not a problem for me, but I noticed that there is practically no support for Euler angle rotations (heading, pitch, roll) in OSG anywhere. (I'm not sure how I missed this all this time, but there it is.) I ended up having to implement my own version of pfCoord and write the routines to extract Euler angles from quaternions. Good fun! :-) I guess I'm just curious if this was a design decision from the start. Had you been burned by singularities one too many times? :-) --J ___ 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] default coordinate system and camera - newbie
My guess is that, at the time you do the query, you haven't rendered a frame yet. If so, the Viewer object hasn't queried the manipulator matrix yet. You have the source code, so you can easily verify this with a debugger. Paul Martz Skew Matrix Software LLC http://www.skew-matrix.com http://www.skew-matrix.com/ +1 303 859 9466 _ From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of ami guru Sent: Thursday, April 02, 2009 8:05 AM To: OpenSceneGraph Users Subject: [osg-users] default coordinate system and camera - newbie Hello Paul, I have made the following changes, still having the same value: *** int main() { //Creating the viewer osgViewer::Viewer viewer ; viewer.setCameraManipulator(new osgGA::TrackballManipulator()); //add some event handler //to show the statistics viewer.addEventHandler(new osgViewer::StatsHandler); /* get camera related information */ osg::Vec3f eye; osg::Vec3f dir; osg::Vec3f up; viewer.getCamera()-getViewMatrixAsLookAt(eye,dir,up); cout The eye vector: eye.x() eye.y() eye.z() endl; cout The look at position: dir.x() dir.y() dir.z() endl; cout The up vector is: up.x() up.y() up.z() endl; *** -- Forwarded message -- From: ami guru dosto.wa...@gmail.com Date: Thu, Apr 2, 2009 at 2:39 AM Subject: Fwd: [osg-users] default coordinate system and camera - newbie To: OpenSceneGraph Users osg-users@lists.openscenegraph.org Hello Paul, I have the following snippet that deals with the viewer **' int main() { //Creating the viewer osgViewer::Viewer viewer ; //add some event handler //to show the statistics viewer.addEventHandler(new osgViewer::StatsHandler); /* get camera related information */ osg::Vec3f eye; osg::Vec3f dir; osg::Vec3f up; viewer.getCamera()-getViewMatrixAsLookAt(eye,dir,up); cout The eye vector: eye.x() eye.y() eye.z() endl; cout The look at position: dir.x() dir.y() dir.z() endl; cout The up vector is: up.x() up.y() up.z() endl; //Creating the root node osg::ref_ptrosg::Node root = createSceneGraph(); '** Could you provide some hint where the bug might be , at least the way to find it? I want to implement a very simple scenario. A camera that moves along with the key press event. I already have that implemented in OpenGL program where i can roll, pitch yaw and slide with user key press event. I want to map that in the scene graph system. I have the following information predefined n = eye - look; u = up * n; v = n * u; To move the camera in an ineractive way i have to have the access to there values . there is a function in the Camera Class called getViewMatrix() , i hope that it is one to access these values. Any more reference would be of great help. -- Forwarded message -- From: Paul Martz pma...@skew-matrix.com Date: 2009/4/2 Subject: Re: [osg-users] default coordinate system and camera - newbie To: OpenSceneGraph Users osg-users@lists.openscenegraph.org The CameraManipulator (like TrackballManipulator, for example) determines the default orientation. You can change this default by setting the up vector in the TrackballManipulator. By default, the TrackballManipulator uses positive Z up, so if your code is getting positive Y up, either you have a bug or you are not using the TrackballManipulator or you have changed its default. The default view position is also determined by the CameraManipulator. The TrackballManipulator, for example, has a home position that you can set. By default, it considers the scene bounding volume and tries to position the view so that the entire scene fits within a 50 degree FOV (I think it's 50, not sure). Paul Martz Skew Matrix Software LLC http://www.skew-matrix.com http://www.skew-matrix.com/ +1 303 859 9466 _ From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of ami guru Sent: Wednesday, April 01, 2009 1:58 PM To: OpenSceneGraph Users Subject: [osg-users] default coordinate system and camera - newbie Hello forum, osgViewer , by default uses the world coordinate system that is oriented with positive X to right , positive Z up, and positive Y into the screen. Does that mean the camera' s defualt position is at the origin looking down into the screen which is positive Y? I have tried to extract the vectors using the function ' osg::Vec3f eye; osg::Vec3f dir; osg::Vec3f up;
Re: [osg-users] [build] Windows binary download
Hi J-S On Thu, Apr 2, 2009 at 7:45 PM, Jean-Sébastien Guay jean-sebastien.g...@cm-labs.com wrote: Hi Mattias, This is a q about user-friendliness so perhaps others would care to have an opinion. If the support for zip archives is demanded to some degree (and Robert approves) I'll be happy to implement it in our build scripts. I agree with all your points. If we had had lots of requests for .zip since 2.8 shipped, that would be a different story, but since this has been the first (and it was discussed on osg-submissions when the packaging was being developed and no one objected) it probably doesn't affect many people. Nevertheless, Robert has put lots of emphasis on providing a good out-of-the-box experience on each platform, so since zip support is built-in on Windows, perhaps this falls into that category. What do you think? Yes, I know. And I agree. The user experience is the only reason to provide zips but it's a good one. We could do set(CPACK_GENERATOR ZIP TGZ) for win32 and get both. Will require more space on server but no biggie I guess. Mattias J-S -- __ Jean-Sebastien Guay jean-sebastien.g...@cm-labs.com http://www.cm-labs.com/ http://whitestar02.webhop.org/ ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] Minimizing OSG app window frees memory
I don't believe this has anything to do with OSG. This looks like typical MS Windows memory management. Are you saying you don't see this same kind of behavior in non-OSG apps? I certainly have. Paul Martz Skew Matrix Software LLC http://www.skew-matrix.com +1 303 859 9466 -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Miro Janosik Sent: Thursday, April 02, 2009 3:18 AM To: osg-users@lists.openscenegraph.org Subject: [osg-users] Minimizing OSG app window frees memory Hi, I was wondering why my OSG application frees lots of memory when I minimize its window, and why that memory is not freed if I don't. I noticed that when I create some objects in the scene by loading flt model files and remove them from scene afterwards that not all memory is freed (when looking at application's allocated memory through Task Manager ). If I minimize application's window afterwards then application's allocated memory decreses to level as it was before creation of objects. Any ideas what could be causing this and if this freeing of memory can be executed by some function call ? I would be handy for me, to keep my allocated memory low. My application is using osgViewer::Viewer and dynamic terrain paging, OSG 2.8.0 rc3, Windows XP SP2, Visual Studio 2008. I'm newbie at OSG's mailing list so I hope this was not discussed already. I've been looking through mailing archives and I could not find answer to this question. ___ 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] About UV coordinates interpolation in a polygon
This behavior is allowed by the OpenGL spec. It's one good reason why polygons are removed in OpenGL 3.1. Paul Martz Skew Matrix Software LLC http://www.skew-matrix.com +1 303 859 9466 -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Max Sent: Thursday, April 02, 2009 3:15 AM To: osg-users@lists.openscenegraph.org Subject: [osg-users] About UV coordinates interpolation in a polygon Hi all, I've a question about the interpolation (I guess) computed to set the texture coordinates given each vertex's one (is that sentence correct?). It seems the interpolation (or whatever) is done considering the polygon as a triangle fan. As my coordinates don't perfectly match, the result is quite ugly. Here's some screenshots, I highlighted the supposed triangles: [Image: http://img5.hostingpics.net/pics/164071Deformation1_traits.png ] [Image: http://img5.hostingpics.net/pics/634509Deformation2_traits.png ] [Image: http://img5.hostingpics.net/pics/605645Deformation3_traits.png ] Isn't there a way to compute the coordinates considering the whole polygon (probably using the barycenter) ? Is there an option to activate it? Thanks for all (at least for reading), -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=9609#9609 ___ 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] [build] Windows binary download
Hi Mattias, We could do set(CPACK_GENERATOR ZIP TGZ) for win32 and get both. Will require more space on server but no biggie I guess. I don't see a reason to get both... Who on Windows can't open zip files and would prefer .tar.gz? Let's just pick one convention (probably one convention per platform) and be done with it. J-S -- __ Jean-Sebastien Guayjean-sebastien.g...@cm-labs.com http://www.cm-labs.com/ http://whitestar02.webhop.org/ ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [build] Windows binary download
Hi guys, ANECDOTE WARNING! Have to share or head will explode: My company's computer and network admins (outsourced) decided that firefox is not secure, scanned every computer on the intranet for firefox.exe and sent mail warnings instructing people to remove it or... Now I have a bad conscience for no going to war on this but it just makes me speechless. I mean - what hopes could I have to convince people that came up with this idea of anything...sigh Mattias On Thu, Apr 2, 2009 at 8:35 PM, Jean-Sébastien Guay jean-sebastien.g...@cm-labs.com wrote: Hi Jason, BTW, J-S, I think the order of installation is actually Firefox first, then Nvidia driver, then 7-zip ;-) Diff'rent strokes for diff'rent folks :-) If you really want to be nitpicky, I agree for Firefox, because I need it to download 7-zip (IE should only ever be used to download Firefox ;-) ). Nvidia driver and 7-zip can be installed in parallel since there's no dependency there. J-S -- __ Jean-Sebastien Guay jean-sebastien.g...@cm-labs.com http://www.cm-labs.com/ http://whitestar02.webhop.org/ ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [build] Windows binary download
It's not a big deal - it's just one of those detail things that puts off new users if to try OSG they have to go and install some other third party app to open the download. If making them zip on windows is as easy as Mattias said, we should do it. -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=9674#9674 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
[osg-users] SGI declares bankruptcy (UNCLASSIFIED)
Classification: UNCLASSIFIED Caveats: NONE A moment of silence please ... http://www.modsim.org/index.php?name=Newsfile=articlesid=1999 They sure were amazing. Classification: UNCLASSIFIED Caveats: NONE ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [build] Windows binary download
Hi All, I'm open to OSG's CPack support being tweaked support generated of .zip's under Windows, but am against support multiple archive formats for each platform. The decision to go for .tar.gz under Windows was discussed on osg-users and there was no one who thought it an problem at the time so I think it's not a critical issue. Changing to .zip for 2.8.1 would be fine. Robert. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] SGI declares bankruptcy (UNCLASSIFIED)
Again They died the day they killed their logo and changed name, the head had gone but the tale took some time to catch up Found memorys though of great hunking Iron and I loved Irix.. Gordon Product Manager 3d __ Gordon Tomlinson Email : gtomlinson @ overwatch.textron.com __ -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Buckley, Bob CTR MDA/IC Sent: Thursday, April 02, 2009 3:39 PM To: OpenSceneGraph Users Subject: [osg-users] SGI declares bankruptcy (UNCLASSIFIED) Classification: UNCLASSIFIED Caveats: NONE A moment of silence please ... http://www.modsim.org/index.php?name=Newsfile=articlesid=1999 They sure were amazing. Classification: UNCLASSIFIED Caveats: NONE ___ 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] Euler angle rotation
Robert Osfield wrote: Hi Jason, Well there is many different ways to define an Euler angle, which convention would you go for??? Rather than go down this tangled route the OSG just uses quaternions for rotation, they are far more robust and lack the ambiguities of Euler angles. I'm well aware of that, and I even think it's a good idea. I'm sure it avoids a lot of support issues as well. As I said, I was just curious about the history behind it (I guess I'm feeling nostalgic looking at all this Performer code). Was OSG always this way, or did it evolve over time? If you'd rather not take the time to talk about it, I understand. --J ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [build] Windows binary download
Hello Martin, It's not a big deal - it's just one of those detail things that puts off new users if to try OSG they have to go and install some other third party app to open the download. If making them zip on windows is as easy as Mattias said, we should do it. Agreed. It's just that as Robert said, we had discussed it and no one had objected at the time. You're the first to bring it up since then (in about 2 months since the 2.8.0 release). But changing it is fine. J-S -- __ Jean-Sebastien Guayjean-sebastien.g...@cm-labs.com http://www.cm-labs.com/ http://whitestar02.webhop.org/ ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] SGI declares bankruptcy (UNCLASSIFIED)
I grew up on SGI's starting with the VGX (1990) all the way through the IR-3 (2001). It was a fun and exciting time. Brian 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-boun...@lists.openscenegraph.org wrote: - To: OpenSceneGraph Users osg-users@lists.openscenegraph.org From: Tomlinson, Gordon gtomlin...@overwatch.textron.com Sent by: osg-users-boun...@lists.openscenegraph.org Date: 04/02/2009 03:41PM Subject: Re: [osg-users] SGI declares bankruptcy (UNCLASSIFIED) Again They died the day they killed their logo and changed name, the head had gone but the tale took some time to catch up Found memorys though of great hunking Iron and I loved Irix.. Gordon Product Manager 3d __ Gordon Tomlinson Email : gtomlinson @ overwatch.textron.com __ -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Buckley, Bob CTR MDA/IC Sent: Thursday, April 02, 2009 3:39 PM To: OpenSceneGraph Users Subject: [osg-users] SGI declares bankruptcy (UNCLASSIFIED) Classification: UNCLASSIFIED Caveats: NONE A moment of silence please ... http://www.modsim.org/index.php?name=Newsfile=articlesid=1999 They sure were amazing. Classification: UNCLASSIFIED Caveats: NONE ___ 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
Re: [osg-users] SGI declares bankruptcy (UNCLASSIFIED)
Tomlinson, Gordon wrote: Again They died the day they killed their logo and changed name, the head had gone but the tale took some time to catch up Found memorys though of great hunking Iron and I loved Irix.. I agree. IRIX was such a great platform to develop on. --J ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] SGI declares bankruptcy (UNCLASSIFIED)
So sad. I had the first Indigo that would digitize video back in '92, and later on I had an Onyx in my house for about a year. It did use a lot of electricity though... This certainly wasn't a surprise, but I will miss them. -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=9683#9683 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] setPolygonMode for Geometry?
Yes, attach a PolygonMode StateAttribute to the StateSet. See the osggeometry example, which does this. Paul Martz Skew Matrix Software LLC http://www.skew-matrix.com +1 303 859 9466 -Original Message- From: osg-users-boun...@lists.openscenegraph.org [mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Martin Beckett Sent: Thursday, April 02, 2009 4:22 PM To: osg-users@lists.openscenegraph.org Subject: [osg-users] setPolygonMode for Geometry? I would like to render objects in a scene in different polygon modes -some as points, others as mesh etc. Is there anyway to set a polygon mode for a Geometry rather than a global view or camera? Thanks Martin -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=9687#9687 ___ 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] [vpb] osgdem with mesa drivers?
I've seen a few other threads about osgdem with non-accelerated graphics, I've tried it myself and am curious about the details of why it won't work. I have ubuntu 8.10 running in virtualbox, have libgl1-mesa-glx installed (which has mesa '7.2-1ubuntu2'), and osg 2.8.0 builds fine and running osgviewer cow.osg also works. VPB also built okay. When running osgdem, these errors are output (and no processing of textures or height maps is done, and no output files created): Error: :0.0 no Pbuffer support in GLX available. Error: Not able to create requested visual. Error: Unable to create graphis context, problem with running osgViewer-2.8.0, cannot run compression. Elapsed time = 0.174421 The first error is because glXQueryVersion says the opengl version number is only 1.2 (and glxInfo concurs). The mesa website claims support for 1.3 for years, so I don't understand this. And the last error is because the creation of a GraphicsContext fails- I haven't look too deeply at that one. osgprerender cow.osg --pbuffer runs as if it is working, but also outputs an error about 'no Pbuffer support in GLX available'- maybe falling through to another prerendering method? I'll probably inquire on a mesa forum, but if anyone can point out the opengl functions OSG is calling that might be failing that would help. Thanks -Lucas -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=9689#9689 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] setPolygonMode for Geometry?
Thanks Paul - for the archives here's the code sample: Code: osg::StateSet* stateSet = new osg::StateSet(); model-setStateSet(stateSet); osg::PolygonMode* state = new osg::PolygonMode; state-setMode(osg::PolygonMode::FRONT_AND_BACK,osg::PolygonMode::POINT); stateSet-setAttributeAndModes(state,osg::StateAttribute::OVERRIDE|osg::StateAttribute::ON); Change the second arg to setMode() to change to line. -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=9690#9690 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] setPolygonMode for Geometry?
For the record, basic concepts like setting state are covered pretty well in the Quick Start Guide: http://www.lulu.com/content/paperback-book/openscenegraph-quick-start-guide/ 767629 Paul Martz Skew Matrix Software LLC http://www.skew-matrix.com +1 303 859 9466 ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] [build] Windows binary download
On Thu, Apr 2, 2009 at 3:57 PM, Jean-Sébastien Guay jean-sebastien.g...@cm-labs.com wrote: Hello Martin, It's not a big deal - it's just one of those detail things that puts off new users if to try OSG they have to go and install some other third party app to open the download. If making them zip on windows is as easy as Mattias said, we should do it. Agreed. It's just that as Robert said, we had discussed it and no one had objected at the time. You're the first to bring it up since then (in about 2 months since the 2.8.0 release). But changing it is fine. I also think this is a good idea for end users. -- Philip Lowman ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org