如何在MFC中加入OBJ到场景中?怎么动态定位它的位置?

来源:互联网 发布:java工程师发展规划 编辑:程序博客网 时间:2024/06/05 02:39


#include <vg.h>
      main( int argc, char *argv[] )
      {
           float      h;
           vgDataSet  *ds;
           vgObject   *obj;
           vgScene    *scene;
           vgObserver *obs;
           vgPosition *pos;

           vgInitSys();
            vgDefineSys( "my.adf" );
           vgConfigSys();
            ds = vgNewDS();
            vgName( ds, "town.flt" );

           /* 触发数据加载*/
           vgLoadDS( ds );

           /* 制造一个空对象并设定相关参数*/
           obj = vgNewObj();
           vgName( obj, "town" );
           vgProp( obj, VGOBJ_CS, VGOBJ_STATIC );//静态定位物体

           /* 设定一个位置 */
           pos = vgNewPos();
           vgPosVec( pos, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f );
           vgPos( obj, pos );

           /* 转化数据集为对象*/
           vgObjDS( obj, ds );
           vgMakeObj( obj, VGOBJ_USE );

           /* 加入对象到场景*/
           scene = vgNewScene();
           vgAddSceneObj( scene, obj );

           /* 将观察器加入到场景,使得场景可视*/
           obs = vgGetObserv( 0 );     /* use the first one defined */
           vgObservScene( obs, scene );

           /* 循环 */
           h = 0.0f;
           while( 1 ) {

           /* 定位观察器*/
           vgPosVec( pos, 2500.0f, 2500.0f, 10.0f, h, 0.0f, 0.0f );
           vgPos( obs, pos );
           h += 1.0;

           /* 渲染 */
        vgSyncFrame();
        vgFrame();
      }
}

原创粉丝点击