Hi Jesper; As I can see from attached codes you didn't used traits->samples = (any int value); but you may be set multisampling in your code from using
osg::DisplaySettings* ds = new osg::DisplaySettings(); ds->setNumMultiSamples( 4 ); or osgUtil namespaces function(I have forgotten the name of this function.). If you try to anti aliasing operation by using MultiSampling, this could be cause full screen problem which I had had kind of that before and solved by removing multisampling operation. HTH.Regards. 2009/4/27 Jesper D. Thomsen <j...@anybodytech.com> > Hi all (again), and thanks for your help in the past. > > We have now shipped an application using OpenSceneGraph for the 3D > viewports of a model. We are now receiving a couple of bug-reports (2 so > far) from users running the application on laptops with Intel integrated > graphics (GMA 950 and 3100). We are using OpenSceneGraph in an MFC window in > the application, but whenever these two users open the viewport window (and > thus starting the OpenSceneGraph part of the application), the > OpenSceneGraph viewer starts in fullscreen (no menus or windows bar > visible), which of course means that they have to use the task manager to > quit the application. > > Both users are using Windows XP pro. The OSG version used is 2.6.1, > compiled with Visual Studio 2005 SP1 under Vista. The application is using > MFC, and the OpenSceneGraph viewport is based on the MFCViewer example. The > code for creating the viewer can be found below. Does anybody know why OSG > suddenly will be forced to work in fullscreen, and is it generally because > of some specific lack of OpenGL support? > > Any help will be much appreciated. > > --- Code: -------------- > > void > cOSG::InitCameraConfig(void) > > { > > // Local Variable to hold window size data > > RECT rect; > > // Create the viewer for this window > > mViewer = > new osgViewer::Viewer(); > > mViewer->setThreadingModel(osgViewer::Viewer::SingleThreaded); > > // Get the current window size > > ::GetWindowRect(m_hWnd, &rect); > > // Init the GraphicsContext Traits > > osg::ref_ptr<osg::GraphicsContext::Traits> traits = > new osg::GraphicsContext::Traits; > > // Init the Windata Variable that holds the handle for the Window to > display OSG in. > > osg::ref_ptr<osg::Referenced> windata = > new osgViewer::GraphicsWindowWin32::WindowData(m_hWnd); > > // Setup the traits parameters > > traits->x = 0; > > traits->y = 0; > > traits->width = rect.right - rect.left; > > traits->height = rect.bottom - rect.top; > > traits->windowDecoration = > false; > > traits->doubleBuffer = > true; > > traits->sharedContext = 0; > > traits->setInheritedWindowPixelFormat = > true; > > traits->inheritedWindowData = windata; > > // Create the Graphics Context > > osg::GraphicsContext* gc = > osg::GraphicsContext::createGraphicsContext(traits.get()); > > // Init a new Camera (Master for this View) > > camera = mViewer->getCamera(); > > // Assign Graphics Context to the Camera > > camera->setGraphicsContext(gc); > > // Set the viewport for the Camera > > camera->setViewport( > new osg::Viewport(traits->x, traits->y, traits->width, traits->height)); > > // Add the Camera to the Viewer > > mViewer->setCamera(camera.get()); > > // Add the Camera Manipulator to the Viewer > > //-----------------Picking Test-------------- > > mViewer->addEventHandler(m_PickHandler.get()); > > //------------------------------------------- > > // Set the Scene Data > > mViewer->setSceneData(mRoot.get()); > > mViewer->getCamera()->setProjectionResizePolicy(osg::Camera::FIXED); > > } > --- end code ---------- > > Regards, > > > Jesper D. Thomsen > > * * > > _______________________________________________ > 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