Hi

one reason for binary files to be huge is embedded media like textures, as they 
are stored as uncompressed data. you can use binary formats with external image 
files (pngs \ jpegs) in this case to cut down file size.
you can use osgconv with various options to sort htis out, check "osgconv 
--format IVE" to see ive readerwriter options.

Cheers.

19.09.2012, 10:44, "Koduri Lakshmi" <[email protected]>:
> Hi robertosfield and hybr,
>
> Thanks a lot for the nice help.
>
> My develop environment is windows XP 32 bit with SP3. On 32 bit machines the 
> code works well.
>
> When I run on Win - 7 Ultimate  64 bit then I am getting run time error some 
> times. I dont have development environment on 64 bit machine.  I don't know 
> how to provide stack trace on this testing machine.
>
> I modified my code such that the thread has only reading statement. I want to 
> run all threads simultaneously (so reading will be fast). I dont want sysnc 
> of threads.
>
> Here is my modified code.
>
> Code:
> //Globles
>
> struct ModelObj
> {
>         int id;
> };
> ModelObj obj[NUM_OF_MODELS];
>
> Model model;//OBJ OF MODEL HANDLING CLASS
>
> HANDLE T[NUM_OF_MODELS];
> CWinThread *pThread[NUM_OF_MODELS];
>
> UINT ThreadProc1(LPVOID lpvoid)
> {
>                 ModelObj *temp = (ModelObj*)lpvoid;
>
>                 //model.mtForMarker[temp->id] = new osg::MatrixTransform;
>                 //model.modelSwitch->addChild(model.mtForMarker[temp->id].get());
>
> model.modelForMarker[temp->id] = 
> osgDB::readNodeFile(model.fileNames[temp->id]);
>
>                 if(model.modelForMarker[temp->id])
>                 {
>                         model.mtForMarker[temp->id]->addChild(model.modelForMarker[temp->id].get());
>
>                         //model.mtForMarker[temp->id]->addChild(model.sound_root.get());
>                    // model.mtForMarker[temp->id]->setUpdateCallback( 
> model.soundCB.get() );
>                 }
>
>         return 0;
> }
>
> In main
>
> Code:
> Code:
> .........
>
> for(int i=0;i<NUM_OF_MODELS;i++)
>                         {
>                                 obj[i].id=i;
>
>                         }
>
> strcpy(model.fileNames[0],"osg_01.osg");
>                         strcpy(model.fileNames[1],"osg_02.OSG");
>                         strcpy(model.fileNames[2],"osg_03.OSG");
>
> DWORD ThreadId[NUM_OF_MODELS];
>                         for(int i=0;i<NUM_OF_MODELS;i++)
>                         {
>                               model.mtForMarker[i] = new osg::MatrixTransform;
>                                 model.modelSwitch->addChild(model.mtForMarker[i].get());
>
>                                 model.mtForMarker[i]->addChild(model.sound_root.get());
>                                  model.mtForMarker[i]->setUpdateCallback( 
> model.soundCB.get() );
>
>                                 //pThread[i]=new CWinThread;
>                                 std::cout<<"Thread: "<<i<<std::endl;
>                                 pThread[i] = AfxBeginThread (ThreadProc1, 
> (LPVOID)&obj[i]);
>
>                                 pThread[i]->m_bAutoDelete=FALSE;
>
>                         }
>
>                         for (int j = 0; j < NUM_OF_MODELS; j ++)
>                         {
>                                 T[j] = pThread[j]->m_hThread;
>                         }
>
>                         ::WaitForMultipleObjects(NUM_OF_MODELS, T, TRUE, 
> INFINITE);
>
>                         for (int j = 0; j < NUM_OF_MODELS; j ++)
>                         {
>                                 delete pThread[j];
>                         }
>
> Once I tried to use binary formats. But when compared to OSG files its size 
> is huge. So I stopped. I will try once again. (I am changing textures 
> dynamically. Is it possible with binary formats?)
>
> Can you please guide me how to solve this problem?
>
> ...
>
> Thank you!
>
> Cheers,
> Koduri
>
> ------------------
> Read this topic online here:
> http://forum.openscenegraph.org/viewtopic.php?p=50181#50181
>
> _______________________________________________
> osg-users mailing list
> [email protected]
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to