青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

C++優雅之旅

探索C++

  C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
  15 隨筆 :: 0 文章 :: 20 評論 :: 0 Trackbacks
本系列文章部分內容來源于http://ogre3d.cn 的Ogre系列教程的中文翻譯版,加上一些我自己學習時的筆記。

Ogre三基石

SceneManager 場景管理器

    屏幕上顯示的所有東西都有場景管理器來管理。當往場景中添加物體時,場景管理器會記錄物體的位置,當添加攝像機來觀察某個場景時,場景管理器會記錄攝像機的位置。Ogre里有多種場景管理器

Entity 實體

    一個實體是可以在場景中渲染的物體之一。可以把實體理解為任何一個3D模型。一個機器人可以使一個實體,一條魚可以是一個實體,大地草原可以是一個非常大的實體。燈光,攝像機,粒子,廣告牌等不能成為實體。
    Ogre中你不能直接將一個實體放入場景中,而是將實體與場景節點綁在一起,這個場景節點則包括了實體的方位信息。

SceneNode 場景節點
  
    場景節點將持續跟蹤與它綁在一起的實體的方位。當你創建了一個實體時,它直到與一個場景節點綁定后才會被渲染。同樣,一個場景節點也不能單獨的在屏幕上顯示出來,只有與一個實體綁定后才能在屏幕上顯示。一個場景節點可以綁定多個實體,場景節點同樣可以和其他場景節點綁定,但是一個實體不能被多個場景節點綁定。
    每個場景管理器都有一個根節點,而場景節點都是在根節點的基礎上建立,其位置總是相對于根節點的。

實踐

    要創建一個實體,可以調用SceneManager的createEntity方法:
   
// 創建一個實體, 加載Athena網格。
Entity
* entity1 = mSceneMgr->createEntity("athene1""athene.mesh");
    createEntity的第一個參數為實體指定了一個唯一的標識符,第二個參數表示要加載的資源名稱,在這里是一個名為athene的網格模型。

    我們可以為這個實體代表的網格模式指定一個材質:
// 設置網格材質。
entity1->setMaterialName("Examples/Athene/NormalMapped");

    創建了一個實體后,還要創建一個場景節點與它綁定起來:
// 創建一個子場景節點。
SceneNode* node1 = mSceneMgr->getRootSceneNode()->createChildSceneNode("athene1");
    與實體一樣,場景節點的名字也是唯一的,在這里是athene1。

    然后將實體和場景節點綁定:
// 將實體綁定到場景節點上。
node1->attachObject(entity1);
    綁定之后實體就會被渲染出來,默認情況下實體會被渲染到世界坐標的原點(0, 0, 0)處。

    要改變實體在場景中的位置,可以使用與之綁定的場景節點的setPosition方法:
node1->setPosition(3000);
    這樣場景節點就相對于根節點往X軸正方向移動了10個單位。

    同樣,還可以使用場景節點的translate方法達到相同的目的:
node1->translate(Vector3(3000));
    setPosition位置的改變是相對于父節點的,translate則可以設置變換相對于哪個坐標系。

    要得到場景節點的父節點,可以調用getParentNode:
SceneNode* parentNode = node1->getParentSceneNode();
    
    要得到場景節點的名稱,可以調用getName:
String nodeName = nod1->getName();

    因為場景節點的移動都是相對于父節點的,所以很容易實現兩個節點一起移動:
Entity *entity1 = mSceneMgr->createEntity( "Athene1""Athene.mesh" );
SceneNode 
*node1 = mSceneMgr->getRootSceneNode()->createChildSceneNode( "AtheneNode1" );
ode1
->attachObject( entity1 );

Entity 
*entity2 = mSceneMgr->createEntity( "Athene2""Athene.mesh" );
SceneNode 
*node2 = node1->createChildSceneNode( "AtheneNode2", Vector3( 5000 ) );
node2
->attachObject( entity2 );
    這樣一來,node1就成了node2的父節點,移動node1會使node2跟著一起移動,而移動node2不會影響node1。

縮放

    使用場景節點可以對網格模型進行縮放:
node1->scale(1.51.51.5);
    scale的三個參數分別對應x, y, z方向上的縮放比例,上面的例子將網格模型放大到1.5倍。

旋轉

    還可以對網格模型進行旋轉,其中yaw是Y軸的旋轉,pitch是X軸的旋轉,roll是Z軸的旋轉:
node1->yaw(Degree(-90));
node1
->pitch(Degree(-90));
node1
->roll(Degree(-90));



posted on 2009-05-20 11:48 林公子 閱讀(1213) 評論(0)  編輯 收藏 引用 所屬分類: OGRE

只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            久久婷婷久久一区二区三区| 亚洲免费观看高清完整版在线观看熊| 亚洲午夜精品久久久久久浪潮| 91久久久在线| 欧美日韩一二区| 亚洲精品久久久一区二区三区| 亚洲高清不卡在线| 亚洲电影免费观看高清完整版在线| 欧美aaaaaaaa牛牛影院| 亚洲电影免费在线 | 午夜精品一区二区在线观看| 亚洲自啪免费| 久久久www| 欧美激情在线狂野欧美精品| 欧美体内谢she精2性欧美| 国产欧美日韩亚州综合| 狠狠色2019综合网| 日韩午夜电影| 久久国产色av| 亚洲黄网站在线观看| 亚洲一区二区在线看| 欧美在线视频观看| 欧美日本中文| 国产综合色产在线精品| 亚洲免费成人| 久久伊人精品天天| 99在线精品观看| 久久久噜噜噜久久| 国产精品多人| 91久久精品久久国产性色也91| 亚洲综合色激情五月| 欧美成人精品福利| 亚洲欧美日韩国产一区| 国产精品久久久久久久久久尿| 亚洲欧美色一区| 亚洲黄色免费网站| 久久爱www久久做| 国产亚洲午夜| 香港久久久电影| 午夜国产不卡在线观看视频| 欧美人与禽性xxxxx杂性| 亚洲免费久久| 亚洲精品一区二区网址| 欧美日一区二区三区在线观看国产免| 很黄很黄激情成人| 欧美激情女人20p| 欧美激情小视频| 亚洲欧美偷拍卡通变态| 欧美激情一区三区| 久久久青草青青国产亚洲免观| 亚洲精品久久久久久久久久久久 | 国产毛片一区| 亚洲一区欧美| 亚洲美女诱惑| 欧美日韩高清在线一区| 亚洲久久一区二区| 免费看亚洲片| 久久精品女人天堂| 国产日韩亚洲欧美综合| 午夜一区不卡| 亚洲一区二区精品在线| 欧美福利在线| 国产精品久久久久国产精品日日| 在线看片欧美| 老司机久久99久久精品播放免费| 亚洲线精品一区二区三区八戒| 欧美日韩精选| 国产精品高清网站| 亚洲亚洲精品在线观看 | 久久久国产精品一区二区三区| 在线亚洲电影| 国产精品毛片a∨一区二区三区|国 | 国产精品v欧美精品∨日韩| 一区二区三区高清不卡| 日韩视频第一页| 欧美午夜一区二区福利视频| 亚洲欧美视频在线| 久久成人精品视频| 亚洲日韩欧美视频| 99亚洲精品| 国产欧美一二三区| 欧美成人精品在线| 欧美视频亚洲视频| 久久精选视频| 欧美黄色大片网站| 亚洲女ⅴideoshd黑人| 久久不射电影网| 亚洲精选中文字幕| 亚洲欧美日本国产专区一区| 好看不卡的中文字幕| 亚洲精品视频在线播放| 国产乱码精品一区二区三区不卡 | 欧美一区二区在线播放| 久久免费国产精品| 亚洲无限乱码一二三四麻| 亚洲一区二区三区精品在线| 狠狠色丁香久久婷婷综合_中| 一区二区精品国产| 久久大香伊蕉在人线观看热2| 国模 一区 二区 三区| 欧美高清日韩| 国产精品一区二区久久久| 免费美女久久99| 国产精品theporn| 免费亚洲视频| 国产精品久久二区| 欧美大片91| 国产精品自拍网站| 亚洲精品日韩在线| 黄色成人在线网站| 在线视频欧美日韩精品| 亚洲电影下载| 欧美亚洲一级| 亚洲深夜福利网站| 久久综合伊人77777| 午夜免费久久久久| 欧美日韩在线一二三| 亚洲第一精品电影| 好吊成人免视频| 午夜亚洲福利| 亚洲欧美在线免费观看| 欧美日韩精品三区| 亚洲一区视频| 亚洲第一免费播放区| 一本一本久久a久久精品综合麻豆| 好看的亚洲午夜视频在线| 亚洲直播在线一区| 亚洲视频免费在线观看| 蜜桃精品一区二区三区| 久久久精品tv| 国产一区白浆| 性色av一区二区三区在线观看| 亚洲一区二区在线免费观看| 欧美极品一区二区三区| 欧美成人亚洲成人日韩成人| 伊人久久大香线蕉综合热线| 午夜亚洲视频| 久久久久久精| 在线成人av| 免费欧美视频| 亚洲国产综合在线| 夜夜嗨av色一区二区不卡| 欧美看片网站| 一本久道久久久| 亚洲淫性视频| 国产精品亚洲综合| 欧美亚洲三级| 毛片一区二区三区| 在线精品视频免费观看| 免费观看成人www动漫视频| 亚洲国产另类精品专区 | 久久国产精品久久w女人spa| 久久精品最新地址| 亚洲高清资源| 欧美日本成人| 亚洲尤物视频在线| 久久综合色婷婷| 亚洲激情中文1区| 欧美日韩一区二区在线视频| 亚洲香蕉视频| 免费观看成人www动漫视频| 亚洲国产免费| 欧美日韩国产丝袜另类| 国产日韩欧美| 久久久久一本一区二区青青蜜月| 美女精品一区| 这里只有精品视频| 国产亚洲综合在线| 欧美精品久久一区二区| 亚洲免费网址| 欧美激情网友自拍| 亚洲一区二区动漫| 在线观看亚洲a| 国产精品白丝jk黑袜喷水| 欧美在线国产| 日韩亚洲一区二区| 蜜桃av一区二区在线观看| 亚洲素人一区二区| 在线精品国精品国产尤物884a| 欧美日本一道本在线视频| 欧美资源在线观看| 一本色道久久综合亚洲精品不卡 | 国产精品天天摸av网| 久久麻豆一区二区| 亚洲图片欧美一区| 亚洲国产cao| 久久久噜噜噜| 亚洲在线视频观看| 亚洲欧洲一区二区天堂久久 | 在线观看中文字幕亚洲| 国产精品高潮在线| 欧美精品福利在线| 久久久久久婷| 亚洲在线观看视频网站| 亚洲精品极品| 欧美电影免费观看| 久久婷婷综合激情| 欧美中文字幕在线视频| 亚洲尤物视频网| 亚洲毛片在线|