Hi adegli,

Thanks for your reply.

My ive-format models are exported from 3dsmax with osgExp plugin.

Yes, I get the whole database loaded into memory. Actually, after loading the 
whole database, my harddisk works busily, I think maybe this is because my 
application use up all the memory. Then, how can I avoid this? 

As far as paged or LOD, I have not used them in my application because that I 
don't know how to use them. Is there any tools to get lower level of detail 
models from my original ive models?

Owing to my poor English, I wish I could descript my question clearly?


Regards.





----- Original Message ----- 
  From: Adrian Egli 
  To: OpenSceneGraph Users 
  Sent: Wednesday, January 16, 2008 10:23 PM
  Subject: Re: [osg-users] Performance Problem


  Hi Jin, 

  quit hard to say what exactly going wrong or not. you just mention the size 
of the database, but nothing about the structure of it. 1.15GB is a huge 
database if you have to hold the hole in your local memory. the ive is more or 
less a memory dump, when you like to open a file it gets hole loaded or 
nothing. so i guess your application consume a lot of memory. may the GPU is 
the bottle neck (nbr of primitives, triangles,...) or just the CPU or memory. 
so what kind of data are you working on? paged? LOD? ... 

  /adegli 


  2008/1/16, Jin WZ <[EMAIL PROTECTED]>:
    Hi,

    I have written a viewer on Window XP using MFC based on osviewerMFC example 
code.  I add eighteen IVE-format models(about 1.15GB on harddisk) as children 
node to the scene's root group node, then, the rendering process gives a sharp 
slowdown and the FPS decrease to less than 1.0 . Could anyone give me some help 
on how to enhance the rendering performance?

    I am using OSG 2.0. The code I used to add a IVE-format model to scene is:

    ......
    // Load the model from the model name
    osg::ref_ptr<osg::Node> m_pNewModel;
    m_pNewModel = osgDB::readNodeFile(strModel.GetString());        //strModel 
is CString variable contains the model's full path.
    if (m_pNewModel.get())
    {
          osgUtil::Optimizer optimizer; 
          optimizer.optimize(m_pNewModel.get());
          optimizer.reset();

          // Add the model to the scene
          mRoot->addChild(m_pNewModel.get());                                   
 //mRoot is the scene's root node defined as osg::ref_ptr<osg::Group> 
    }
    ......
    _______________________________________________
    osg-users mailing list
    osg-users@lists.openscenegraph.org
    http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org




  -- 
  ********************************************
  Adrian Egli 


------------------------------------------------------------------------------


  _______________________________________________
  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

Reply via email to