锘??xml version="1.0" encoding="utf-8" standalone="yes"?>要久久爱在线免费观看,精品国产婷婷久久久,亚洲乱亚洲乱淫久久http://www.shnenglu.com/sunshinealike/archive/2009/10/28/99524.htmlSunshine AlikeSunshine AlikeWed, 28 Oct 2009 14:33:00 GMThttp://www.shnenglu.com/sunshinealike/archive/2009/10/28/99524.htmlhttp://www.shnenglu.com/sunshinealike/comments/99524.htmlhttp://www.shnenglu.com/sunshinealike/archive/2009/10/28/99524.html#Feedback0http://www.shnenglu.com/sunshinealike/comments/commentRss/99524.htmlhttp://www.shnenglu.com/sunshinealike/services/trackbacks/99524.html棣栧厛榪欐鍏堢敓鎴愪竴涓┖鐧界獥鍙o紝涓嶄嬌鐢⊿DK甯︾殑Example銆?br>鏂囦歡錛?br>MyApplication.h
MyListener.h
main.cpp

棣栧厛闇瑕佷簡瑙d竴涓婳gre紼嬪簭鐨勫熀鏈粨鏋勶紝鍦∣gre閲屼嬌鐢ㄤ竴涓彨鍦烘櫙綆$悊鍣紙SceneManager錛夌殑綾繪潵綆$悊鍦ㄥ睆騫曚笂鏄劇ず鐨勫悇縐嶇墿浣擄紝
榪欎釜綾繪槸涓娊璞$被錛坈lass Ogre::SceneManager abstract錛?鍙搗鍒板畾涔夋帴鍙g殑浣滅敤銆?br>涓嶅彲浠ョ洿鎺ュ疄渚嬪寲榪欎釜綾伙紝鍙兘鐢盧oot鑺傜偣璋冪敤createSceneManager鏂規硶鏉ョ敓鎴愮壒瀹氱被鍨嬬殑SceneManager
OGRE閲屾湁寰堝縐嶅満鏅鐞嗗櫒銆傛湁鐨勫満鏅鐞嗗櫒娓叉煋鍦伴潰錛屾湁鐨勫満鏅鐞嗗櫒娓叉煋BSP琛ㄧ瓑絳夈?

涓庡満鏅紙Scene錛夌浉鍏崇殑姒傚康錛氬疄浣擄紝鑺傜偣銆?br>瀹炰綋錛氱畝鍗曠殑璇村疄浣撳氨鐩稿綋浜庣┖闂翠腑鐨勪竴涓墿浣擄紝渚嬪娓告垙涓殑涓涓鑹層?br>鍦烘櫙鑺傜偣錛氳鎯沖湪鍦烘櫙涓嬌鐢ㄥ疄浣擄紝蹇呴』榪樿鐢ㄥ埌鑺傜偣錛圫ceneNode錛夛紝瀹冧細涓庡疄浣撶粦瀹氬湪涓璧鳳紝褰撴帶鍒惰繖涓妭鐐硅繘琛屽悇縐嶄綅縐繪棆杞搷浣滄椂
鍏跺搴旂殑瀹炰綋涔熷氨璺熺潃鐩稿簲鐨勮繘琛屾搷浣溿?br>##娉細
鏍規嵁浠ュ墠鐜╂父鎴忕殑緇忛獙錛屽湪娓告垙錛堟瘮濡傞琛屽皠鍑伙級涓垽鏂竴涓墿浣撴槸鍚﹁鎵撲腑涔熼兘鏄互鍦嗙偣涓轟腑蹇冪殑涓涓尯鍩熻岄潪鐗╀綋錛堥鏈猴級鏈韓
澶栧3鐨勫艦鐘跺彲鑳戒篃鏄敱浜庤繖涓師鍥犮?br>##

鎺ヤ笅鏉ュ啀鏉ヤ簡瑙d竴涓嬩竴涓噸瑕佺殑鍑芥暟void MyApplication::go()
榪欐槸涓涓叆鍙e嚱鏁幫紝榪欎竴嬈″湪鎴戠殑main鏂規硶閲屽氨鍙湁涓よ浠g爜錛?br>       MyApplication app;
       app.go();
鐜板湪鏉ョ湅鐪媑o閲屾湁鍋氫簡浜涗粈涔堜簨鎯呫?br>   void go()
   {
       //step 1 to 3 should be in this order
       CreateRoot();
       SetupRenderSystem();
       CreateRenderWindow();

       SetupInputSystem();
       CreateFrameListener();
       StartRenderLoop();
   }
鍓嶉潰鐨勪笁姝ラ渶瑕佹寜鐗瑰畾鐨勯『搴忔潵榪涜錛屽悗闈㈢殑鍒欎笉涓瀹氥傚悇涓嚱鏁扮殑鍔熻兘鐢卞嚱鏁板悕鑷鏄庝簡錛屽唴瀹逛篃寰堢畝鍗曘?br>璋冪敤go鍚庯紝棣栧厛闇瑕佸垱寤烘牴鑺傜偣m_pRoot = new Root()榪欐槸鏁翠釜寮曟搸涓渶鏍稿績鐨勪竴涓璞★紝鍦ㄥ仛鍏跺畠浜嬫儏鍓嶅繀欏昏棣栧厛鍒涘緩瀹冦?br>鎺ヤ笅鏉ヨ緗覆鏌撶郴緇烻etupRenderSystem() :
       if(!m_pRoot->showConfigDialog())
           exit(0);
Ogre鏈変釜榛樿鐨勮緗璇濇錛岀洿鎺ヨ皟鐢ㄥ畠灝卞彲浠ヤ簡錛屽鏋滅敤鎴峰彇娑堣繖涓姝ワ紝閭d箞鐩存帴閫鍑虹▼搴忓氨濂姐?br>
鍒涘緩紿楀彛榪欎竴姝ワ紝鍙互鏈夊縐嶉夋嫨錛屽洜涓洪儴鍒嗗唴瀹硅窡鍏蜂綋鐨勬搷浣滅郴緇熺浉鍏籌紝鍙互浣跨敤Windows SDK鎴栬匨FC鐢熸垚紿楀彛錛屼篃鍙互浣跨敤
Ogre榛樿鐨勭獥鍙g郴緇燂紝涓轟簡綆渚匡紝榪欓噷浣跨敤Ogre榛樿紿楀彛
       m_pRoot->initialise(true, "MyApplication Rendering Window");

鐢變簬鏄┖鐨勭獥鍙o紝鎵浠ヤ笉闇瑕佺敓鎴愬満鏅強鍋氱浉鍏崇殑宸ヤ綔銆傚湪榪欐鐨勭▼搴忎腑錛屽皢瑕佺洃鍚竴涓敭鐩樹簨浠訛紝鎸変笅ESC鐨勬椂鍊欓鍑虹▼搴忋?br>榪欓儴鍒嗗伐浣滃湪鎺ヤ笅鐨勪袱涓嚱鏁癝etupInputSystem鍜孋reateFrameListener涓畬鎴愩?br>
FrameListener鏄竴涓撫鐩戝惉鍣紝鏄劇ず鍣ㄤ笂鐨勫浘鍍忛兘鏄竴甯т竴甯х殑鏄劇ず鍑烘潵鐨勶紝鎴戜滑鍙互鍦ㄨ繖鍒囨崲榪欎簺甯х殑鏃跺欏仛涓浜涘鐞嗗伐浣滐紝
姣斿錛岃幏鍙栧拰澶勭悊閿洏浜嬩歡銆傚湪Ogre鐨勪富寰幆涓ぇ姒傚彲鑳戒細鏄繖涓牱瀛愶細
  1. Root object璋冪敤frameStarted鏂規硶鍦ㄦ墍鏈夊凡緇忔敞鍐岀殑FrameListeners涓?
  2. Root object娓叉煋涓甯с?
  3. Root object璋冪敤frameEnded鏂規硶鍦ㄦ墍鏈夊凡緇忔敞鍐岀殑FrameListeners涓?

鍦ㄨ繖閲屾坊鍔犱竴涓狹yListener綾葷敤鏉ュ仛榪欎歡浜嬫儏銆?br> class CombatListener : public FrameListener
{
public:
   CombatListener(OIS::Keyboard *pkeyboard)
       : m_pKeyboard(pkeyboard)
   {
   }

   bool frameStarted(const FrameEvent& evt)
   {
       m_pKeyboard->capture();
       return !(m_pKeyboard->isKeyDown(OIS::KC_ESCAPE));
   }

private:
   OIS::Keyboard *m_pKeyboard;
};
鍚屾牱鐨勶紝Ogre涔熷凡緇忓噯澶囧ソ浜嗕竴涓熀綾伙紝鍙渶瑕佺戶鎵垮啀紼嶅姞淇敼灝卞彲浠ヤ簡錛屽叾涓璒IS鏄?strong>Object Oriented Input System錛?br>瀹冩湰韜笉灞炰簬Ogre錛屾槸涓涓畝鍗曟槗鐢ㄧ殑璺ㄥ鉤鍙板紑婧愮郴緇燂紝鍙互鐢ㄥ畠鏉ュ鐞嗛敭鐩橀紶鏍囧拰娓告垙鎵嬫焺絳夎澶囥?br>榪欓噷鎴戝湪姣忎竴甯у紑濮嬬殑鏃跺欒幏鍙栭敭鐩樼姸鎬侊紝褰揈SC閿寜涓嬫椂錛岃繑鍥瀎alse錛岃繖灝嗗鑷寸▼搴忔甯擱鍑恒?br>
OIS浣跨敤涓涓粺涓鐨処nputManager錛屽畠姣旇緝闅鵑厤緗紝浣嗕竴鏃︽紜湴鍒涘緩涔嬪悗錛岄潪甯稿ソ浣跨敤銆? 棣栧厛鍦⊿etupInputSystem鏂規硶涓姞鍏?br>       size_t windowHnd = 0;
       std::ostringstream windowHndStr;
       OIS::ParamList pl;
       RenderWindow *win = m_pRoot->getAutoCreatedWindow();

       win->getCustomAttribute("WINDOW", &windowHnd);
       windowHndStr<<windowHnd;
       pl.insert(std::make_pair(std::string("WINDOW"), windowHndStr.str()));
       m_pInputManager = OIS::InputManager::createInputSystem(pl);
璇存槑涓鐐癸紝getCustomAttribute鏂規硶鐨勫姛鑳芥槸鐢ㄦ潵鑾峰彇鐗瑰畾騫沖彴鐨勪俊鎭紝鍦ˋPI涓婄敤涓涓瘝Horrid鏉ュ艦瀹硅繖涓柟娉曪紝鍝堝搱錛屾棤濂圖3D闇瑕佽繖浜涗俊鎭?br>涓嬮潰鍐嶆妸涓嬮潰鐨勪唬鐮佸洖鍒癝etupInputSystem鏂規硶涓氨OK浜嗐?br>       try
       {
           m_pKeyboard = static_cast<OIS::Keyboard*>(
               m_pInputManager->createInputObject(OIS::OISKeyboard, false));
       }
       catch(const OIS::Exception &e)
       {
           throw Exception(42, e.eText, "MyApplication::SetupInputSystem()");
       }

InputSystem璁劇疆濂戒簡錛屽氨鍙互浣跨敤甯х洃鍚櫒浜嗭紝鍦ㄥ垱寤哄撫鐩戝惉鍣ㄧ殑鏂規硶涓細
       m_pListener = new MyListener(m_pKeyboard);
       m_pRoot->addFrameListener(m_pListener);
濂斤紝鍒拌繖閲岀▼搴忓熀鏈笂瀹屾垚浜嗭紝鍓╀笅鍙渶瑕佸惎鍔ㄦ覆鏌撳驚鐜紙StartRenderLoop錛夊氨鍙互璁╃▼搴忚窇璧鋒潵浜?br>       m_pRoot->startRendering();




Sunshine Alike 2009-10-28 22:33 鍙戣〃璇勮
]]>
国内精品久久久久影院老司| 久久久老熟女一区二区三区| 色婷婷综合久久久中文字幕| 久久99热这里只有精品66| 狠狠精品干练久久久无码中文字幕| 国产国产成人精品久久| 亚洲国产精品久久久久婷婷软件 | 97久久超碰成人精品网站| 久久精品国产亚洲av水果派| 国产高潮国产高潮久久久91 | 久久精品国产一区二区三区日韩| 99久久精品国产一区二区三区| 国产69精品久久久久APP下载| 国产一级持黄大片99久久| 色偷偷91久久综合噜噜噜噜| 91精品国产9l久久久久| 香蕉久久久久久狠狠色| 91精品婷婷国产综合久久| 老男人久久青草av高清| 久久久久亚洲AV无码专区桃色| 2021久久国自产拍精品| 性做久久久久久久| 午夜精品久久久久久影视riav| 国产高潮久久免费观看| 久久r热这里有精品视频| 亚洲国产精品无码久久久蜜芽 | 亚洲AV无一区二区三区久久| 亚洲精品NV久久久久久久久久| 久久se精品一区二区| 久久婷婷五月综合97色| 日韩av无码久久精品免费| 久久国产欧美日韩精品免费| 久久青青草原亚洲av无码 | 色狠狠久久综合网| 2020久久精品亚洲热综合一本| 久久无码国产| 久久久黄色大片| 久久精品国产99久久久古代| 性做久久久久久久| AV无码久久久久不卡蜜桃| 精品久久久久久国产91|