// select view matrix from front of view matrix queue
FGMat4Wrapper tmp = current_view.follow.front();
sgCopyMat4( sgVIEW, tmp.m );
- while ( current_view.follow.size() > 10 ) {
+ while ( current_view.follow.size() > 40 ) {
current_view.follow.pop_front();
}
current_view.view_pos.y(),
current_view.view_pos.z() );
- // sgMat4 sgTMP;
+ sgVec3 ownship_up;
+ sgSetVec3( ownship_up, 0.0, 0.0, 1.0);
+
+ sgMat4 sgROT;
+ sgMakeRotMat4( sgROT, -90.0, ownship_up );
+
+ sgMat4 sgTMP;
sgMat4 sgTUX;
- // sgMultMat4( sgTMP, current_view.sgUP, sgTRANS );
- // sgMultMat4( sgTUX, current_view.sgLARC_TO_SSG, sgTMP );
- sgMultMat4( sgTUX, current_view.sgVIEW_ROT, sgTRANS );
+ sgMultMat4( sgTMP, sgROT, current_view.sgVIEW_ROT );
+ sgMultMat4( sgTUX, sgTMP, sgTRANS );
sgCoord tuxpos;
sgSetCoord( &tuxpos, sgTUX );
// distribution) specifically from the ssg tux example
//
- // ssgModelPath( "/stage/pinky01/src/Libs/plib-1.0.12/examples/ssg/tux/data/" );
- // ssgTexturePath( "/stage/pinky01/src/Libs/plib-1.0.12/examples/ssg/tux/data/" );
- ssgModelPath( "/h/curt/src/Libs/plib-1.0.12/examples/ssg/tux/data/" );
- ssgTexturePath( "/h/curt/src/Libs/plib-1.0.12/examples/ssg/tux/data/" );
+ FGPath modelpath( current_options.get_fg_root() );
+ modelpath.append( "Models" );
+ modelpath.append( "Geometry" );
+
+ FGPath texturepath( current_options.get_fg_root() );
+ texturepath.append( "Models" );
+ texturepath.append( "Textures" );
+
+ ssgModelPath( (char *)modelpath.c_str() );
+ ssgTexturePath( (char *)texturepath.c_str() );
scene = new ssgRoot;
terrain = new ssgBranch;
penguin_sel = new ssgSelector;
penguin_pos = new ssgTransform;
- ssgEntity *tux_obj = ssgLoadAC( "tuxedo.ac" );
+ ssgEntity *tux_obj = ssgLoadAC( "glider.ac" );
penguin_pos->addKid( tux_obj );
penguin_sel->addKid( penguin_pos );
ssgFlatten( tux_obj );