Robert Osfield Thanks for helping me.

can tell me if this translation is correct:

OSG 1.2

Producer::RenderSurface *pRS = NULL;
   Producer::ref_ptr<Producer::CameraConfig> pCamCfg = new
Producer::CameraConfig();
   for (unsigned int i=0;i<getNumViews();i++)
   {
           Producer::ref_ptr<Producer::Camera> pRightCamera = new
Producer::Camera();
           Producer::ref_ptr<Producer::Camera> pLeftCamera = new
Producer::Camera();

           pRightCamera->setShareLens(false);
           pRightCamera->setLensAutoAspect(false);
          
           std::stringstream nombre;
           nombre<<"RightCamera"<<i;       
           pCamCfg->addCamera(nombre.str(),pRightCamera.get());

           if (pRS==NULL)
                   pRS=pRightCamera->getRenderSurface();
           else
                   pRightCamera->setRenderSurface(pRS);
          
           pRS->useCursor(true);   
           pRS->setCustomFullScreenRectangle(
                   GetSystemMetrics(SM_XVIRTUALSCREEN),
                   GetSystemMetrics(SM_YVIRTUALSCREEN),
                   GetSystemMetrics(SM_CXVIRTUALSCREEN),
                   GetSystemMetrics(SM_CYVIRTUALSCREEN)
                   );         
           
           std::cout <<"Resolución de Escritorio: " 
                    << GetSystemMetrics(SM_XVIRTUALSCREEN) << ","
                    << GetSystemMetrics(SM_YVIRTUALSCREEN) << ","
                    << GetSystemMetrics(SM_CXVIRTUALSCREEN) << ","
                            << GetSystemMetrics(SM_CYVIRTUALSCREEN);
           pLeftCamera->setShareLens(false);
           pLeftCamera->setLensAutoAspect(false);
           pLeftCamera->setRenderSurface(pRS);
           nombre<<"LeftCamera"<<i;        
           pCamCfg->addCamera(nombre.str(),pLeftCamera.get());
           
   }
   m_pViewer = new osgProducer::Viewer(pCamCfg.get());

##############################
OSG 2.8
##############################
for (unsigned int i=0; i < getNumViews(); i++)
   {
                osg::ref_ptr<osg::GraphicsContext::Traits> traits = new
osg::GraphicsContext::Traits;        
                traits->x = GetSystemMetrics(SM_XVIRTUALSCREEN);
        traits->y = GetSystemMetrics(SM_YVIRTUALSCREEN);
        traits->width = GetSystemMetrics(SM_CXVIRTUALSCREEN);
        traits->height = GetSystemMetrics(SM_CYVIRTUALSCREEN);
        traits->windowDecoration = true;
        traits->doubleBuffer = true;
        traits->sharedContext = 0;
                
                osg::ref_ptr<osg::GraphicsContext> gc =
osg::GraphicsContext::createGraphicsContext(traits.get());              
           
                osg::ref_ptr<osg::Camera> pRightCamera = new osg::Camera;
                osg::ref_ptr<osg::Camera> pLeftCamera = new osg::Camera;
                
                // Camara Der      
            pRightCamera->setGraphicsContext(gc.get());
        pRightCamera->setViewport(new osg::Viewport(0,0, traits->width,
traits->height));
        GLenum buffer = traits->doubleBuffer ? GL_BACK : GL_FRONT;
        pRightCamera->setDrawBuffer(buffer);
        pRightCamera->setReadBuffer(buffer);
                
            m_pViewer->addSlave(pRightCamera.get(),
osg::Matrixd::translate(-1.0,0.0,0.0), osg::Matrixd());                 
            
                //Camara Izq       
                pLeftCamera->setGraphicsContext(gc.get());
        pLeftCamera->setViewport(new osg::Viewport(0,0, traits->width,
traits->height));        
        pLeftCamera->setDrawBuffer(buffer);
        pLeftCamera->setReadBuffer(buffer);
           m_pViewer->addSlave(pLeftCamera.get(),
osg::Matrixd::translate(-1.0,0.0,0.0), osg::Matrixd());
   }

I get an execution error.

Error:
Unhandled exception at 0xXXXXXX (osg55-osgd.dll) in XXXXXX.exe:
0xC0000005: Access violation reading location 0x0000006c.

Sorry my english. I am Spanish
--
------------------------------------------------------
David Tapia
[email protected]


_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to