• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            4D星宇

            c++

              C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
              57 隨筆 :: 0 文章 :: 39 評論 :: 0 Trackbacks

            該項目使用INI來實現數據的讀取。
            比如:
            1.節點讀取
            INI部分:
            外觀
            Look
             Body
              model=impreza.3ds
              scale=1 1 1
             Wheels
              model=wheel.3ds
              scale=1 1 1
            聲音
            Sound
             Engine
              wave=206_engine.wav
              pitch_low=0.2
              pitch_high=1.5
            程序部分:
            //load car

             body.node=loadModel(cfg, "Look/Body/", device, sm, driver);

             body.node_debug=sm->addCubeSceneNode(1, 0, -1, core::vector3df(0, 0, 0), core::vector3df(0, 0, 0),
              cfg.Getval_vector("Body/Chassis/1/scale", core::vector3df(1, 1, 1))
              );
             body.node_debug->setMaterialTexture(0, driver->getTexture("data/misc/checked.jpg"));
            2.車輪的屬性
             Wheel #default
              damp=30000
              spring=50000
              radius=0.38
              weight=20
              width=0.10 #not yet used if user specifies wheel model
              brakes=0 # 0.0 - 1.0
             Wheel_1 #fl
              pos=1.39 -0.145 0.823
              attr=STEER
              brakes=0.8
              rotation_z=1.5707963 #used just by client part
             Wheel_2 #fr
              pos=1.39 -0.145 -0.823
              attr=STEER
              brakes=0.8
              rotation_z=4.7123889
             Wheel_3 #rl
              pos=-1.350 -0.15 0.823
              attr=STRAIGHT|THURST
              brakes=0.2
              rotation_z=1.5707963
             Wheel_4 #rr
              pos=-1.350 -0.15 -0.823
              attr=STRAIGHT|THURST
              brakes=0.2
              rotation_z=4.7123889
            for (int i=0; ; i++) {
              char buf2[128];

              sprintf(buf2, "Body/Wheel_%d/", i+1);
              buf=buf2;

              if (!cfg.Getval_exists(buf+"attr")) break;

              double radius=cfg.Getval_double((string)buf+"radius", cfg.Getval_double("Body/Wheel/radius", 1));
              double width=cfg.Getval_double((string)buf+"width", cfg.Getval_double("Body/Wheel/width", 1));

              scene::ISceneNode* node=loadModel(cfg, "Look/Wheels/", device, sm, driver);
              CModelAttr wm;

              scene::IMesh* cm=CreateCylinder(25, 2, 1);
              scene::ISceneNode* node_debug=sm->addMeshSceneNode(cm);
              node_debug->setScale(core::vector3df((f32)(radius), (f32)width, (f32)(radius)));
              node_debug->setMaterialTexture(0, driver->getTexture("data/misc/checked.jpg"));
              node_debug->getMaterial(0).EmissiveColor.set(255,255,255,255);

              wm.arot=core::vector3df((f32)cfg.Getval_double(buf+"rotation_x", 0),
                (f32)cfg.Getval_double(buf+"rotation_y", 0),
                (f32)cfg.Getval_double(buf+"rotation_z", 0));
              wm.node=node;
              wm.node_debug=node_debug;

              wheels.push_back(wm);
             }
            3.聲音---車開動時的轟鳴聲
             //load sounds
             try {
              snd_engine = new openalpp::Source((ALbyte*)("data/cars/"+profile+"/"+cfg.Getval_str("Sound/Engine/wave")).c_str());
              if (!snd_engine.valid())
               DBGCOUT("ALUT", "Coulnd't load file", ("data/cars/"+profile+"/"+cfg.Getval_str("Sound/Engine/wave")).c_str());
              else {
               snd_engine->setGain(1);
               snd_engine->setPosition(0.0,0.0,0.0);
               snd_engine->setLooping(true);
              }
              snd_engine_pitch_low=cfg.Getval_double("Sound/Engine/pitch_low");
              snd_engine_pitch_high=cfg.Getval_double("Sound/Engine/pitch_high");
             } catch(openalpp::Error e) {
              std::cerr << e << "\n";
             }

            posted on 2008-05-08 10:31 bloodbao 閱讀(201) 評論(0)  編輯 收藏 引用 所屬分類: c++
            久久精品视频免费| 久久精品综合网| 久久久久免费精品国产| 99久久超碰中文字幕伊人| 99久久精品无码一区二区毛片 | 99久久婷婷免费国产综合精品| 久久青青草原亚洲av无码app| 国产一区二区精品久久凹凸| 狠狠色丁香婷婷久久综合| 久久国产亚洲精品无码| 久久青青草原精品国产不卡| 日产精品久久久久久久性色| 久久99精品久久久久久水蜜桃| 精品国产乱码久久久久久呢| 久久久久一区二区三区| 久久精品国产AV一区二区三区 | 久久男人中文字幕资源站| 久久久久久综合网天天| 久久中文娱乐网| 久久久精品国产sm调教网站| 亚洲精品无码久久久久AV麻豆| 2021久久国自产拍精品| 超级97碰碰碰碰久久久久最新| 久久青青草原国产精品免费 | 久久精品人妻中文系列| 久久精品一区二区三区中文字幕| 久久99精品国产麻豆| 精品国产乱码久久久久久人妻| 欧美激情精品久久久久久| 久久综合久久综合九色| 精品久久久噜噜噜久久久| 日韩精品久久无码中文字幕| 国产精品乱码久久久久久软件| 久久久久久毛片免费看| 久久WWW免费人成—看片| 伊人久久免费视频| 99久久国产热无码精品免费久久久久| 久久久女人与动物群交毛片| 久久精品国产2020| 午夜精品久久久久久久久| 亚洲欧美日韩中文久久|