Changeset 8256

Show
Ignore:
Timestamp:
04/28/08 23:15:22
Author:
robert
Message:

Implement frame loop and camea control loops

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • OpenSceneGraph-TrainingMaterials/trunk/Sources/Exercises/08_viewer/8a_frameloop/8a_frameloop.cpp

    r8120 r8256  
    11#include <osg/ArgumentParser> 
    22#include <osgDB/ReadFile> 
     3#include <osgViewer/Viewer> 
    34 
    45#include <iostream> 
     
    67int main( int argc, char **argv ) 
    78{ 
    8     std::cout<<"TODO "<<argv[0]<<std::endl; 
     9    osgViewer::Viewer viewer; 
     10 
     11    viewer.setSceneData(osgDB::readNodeFile("glider.osg")); 
     12     
     13    // write frame loop by replacing 
     14    // viewer.run() with equivilant 
     15    // individual Viewer calls... 
     16 
    917     
    1018    return 0; 
  • OpenSceneGraph-TrainingMaterials/trunk/Sources/Exercises/08_viewer/8b_cameracontrol/8b_cameracontrol.cpp

    r8120 r8256  
    1 #include <osg/ArgumentParser> 
    21#include <osgDB/ReadFile> 
     2#include <osgGA/TrackballManipulator> 
     3#include <osgViewer/Viewer> 
    34 
    45#include <iostream> 
     
    67int main( int argc, char **argv ) 
    78{ 
    8     std::cout<<"TODO "<<argv[0]<<std::endl; 
     9    osgViewer::Viewer viewer; 
     10 
     11    viewer.setSceneData(osgDB::readNodeFile("dumptruck.osg")); 
     12 
     13    // 1. register a manipulator 
     14    // viewer.setCameraManipulator(new osgGA::TrackballManipulator()); 
     15 
     16    viewer.realize(); 
    917     
     18    while(!viewer.done()) 
     19    { 
     20        viewer.advance(); 
     21        viewer.updateTraversal(); 
     22        viewer.eventTraversal(); 
     23         
     24        { 
     25            // 2. Comment out camera manipulator and compute the view matrix 
     26            //    to position the eye point so that the center on scene graph 
     27            //    is at the center of the scene, and the model is entirely  
     28            //    within view. 
     29            //     
     30            //    Hint - to get position of scene graph hints: 
     31            //  
     32            //       viewer.getSceneData()->getBound(); 
     33            // 
     34            //    Hint - to set the position of the master camera: 
     35            // 
     36            //       set viewer.getCamera()->setViewMatrix(viewMatrix); 
     37  
     38        } 
     39         
     40        viewer.renderingTraversals(); 
     41    } 
     42 
    1043    return 0; 
    1144}