• <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>
            隨筆-38  評論-23  文章-0  trackbacks-0

                   在知道如何使用Viewer視景器來進行仿真循環之后.總不會一直嘗試著顯示一頭有著球面映射的牛進行觀賞著.總會想著如何搭建自己的模型.如何實現自己所要繪制的一切.如你一樣.我也擁有著這種沖動.如同我一開始學OpenGL的時候.我繪制出第一個三角形便覺得十分的興奮.但當我嘗試用它們建立各種奇怪的圖形的時候.就像是搭積木一樣.覺得怪異卻....
                  Drawable 故名 可繪制的.. 那么什么才是可繪制的.我們可以想象.常使用的點.線.三角形.四邊形.等.這些就是可繪制的.OpenGL大可只能實現繪制最終也只是這些..

                 經常使用的場景圖是一般都是一顆樹. 那么在OSG也不例外.它是一顆節點樹.其最末梢的節點是Geode.即葉子節點. 一個Geode可以包含多個Drawable.因此在OSG中我們想要繪制諸如三角形等.最終需要使用的肯定也是Geode葉子節點.然后將Drawable加入Geode下...

                 osg/Drawable 只是一個抽象類.那么實現它的類有多少呢? 還是比較多的.


            而這中間最常用的莫屬Geometry.幾何體繪制..而說到幾何體.需要的無非是點..顏色.以及如何組成圖元<Primitive>..
                  因此一個Geometry需要擁有的數據大可有點.法線坐標 紋理坐標.索引值...以及PrimitiveSet.
                  點,法線,顏色等 需要用到矢量 即 osg::Vec2 osg::Vec3 osg::Vec4
                  PrimitiveSet.則包含了組成如何組成一個圖元的規則..如GL_POINT GL_TRIANGLES.等.
                  用實例說明吧.如使用下面這段代碼將會創建一個多彩的三角形.和一個白色的立方體.
                
            Geode

                   這里我將解釋一些東西.
                   1.Geometry默認是使用顯示列表來繪制圖元的.你大可觀看源碼或文檔去了解.你可以設置
                   setUseDisplayList(false) 禁用它.或者若在綁定數據的時候使用了BING_PER_PRIMITIVE也將會禁用顯示列表
                   2.ShapeDrawable 則是內置一些形狀的圖元.諸如 圓柱.球體.圓錐等.自己實現嘗試一下.
                   3.BING_PER_VERTEX 則指的每個頂點對應于一種屬性(如例子中的顏色).
                   4.BING_OVERALL 則是全部頂點使用一樣的屬性(如例子中的法線)

            實例源代碼下載:  ..下載地址

            忘了說明一點.在OSG當中的坐標系是 z朝上.y朝里.x朝右..與OpenGL中剛好繞x軸旋轉了90度..
            還有一點則是.我們通常情況下默認使用視景器其中的一個關于攝像機漫游器其實默認是使用TrackballManipulator 因此.它會將視點中心指向整個場景的包圍球中心...

            最終結果圖:如下:


            posted on 2009-08-23 18:34 米游 閱讀(6185) 評論(2)  編輯 收藏 引用 所屬分類: OpenGL/OSG

            評論:
            # re: OSG學習 Drawable 與 幾何體創建[未登錄] 2009-09-30 11:12 | zero
            osg::Box* boxtest = new osg::Box(osg::Vec3(1.5,0.0,0.0),1.0);
            是如何決定立方體的方向???  回復  更多評論
              
            # re: OSG學習 Drawable 與 幾何體創建[未登錄] 2009-10-02 00:17 | 米游
            對于你想旋轉正方體或者其他別的變換操作,其實主要是變換矩陣的操作。那么你可以使用MatrixTransform 并將正方體加入到MatrixTransform子節點下,具體參考 我博客里另外一篇關于OSG教程@zero
              回復  更多評論
              
            国产精品丝袜久久久久久不卡 | 国产亚洲精品自在久久| 亚洲精品无码久久久久久| 久久夜色精品国产噜噜噜亚洲AV| 久久精品国产91久久综合麻豆自制 | 久久国产热这里只有精品| 久久婷婷五月综合色奶水99啪| 欧美黑人激情性久久| 欧美精品丝袜久久久中文字幕| 亚洲国产精品18久久久久久| 亚洲国产精久久久久久久| 伊人久久大香线蕉综合热线| 77777亚洲午夜久久多喷| 久久人人爽人人爽人人片AV麻烦 | 精品多毛少妇人妻AV免费久久| 69久久精品无码一区二区| 国产A级毛片久久久精品毛片| 久久久青草久久久青草| 亚洲国产精品无码久久98| 久久www免费人成精品香蕉| 狠狠狠色丁香婷婷综合久久五月| 77777亚洲午夜久久多人| 亚洲精品国精品久久99热| 精品一久久香蕉国产线看播放| 人妻久久久一区二区三区| 97精品依人久久久大香线蕉97| 亚洲国产精品成人久久蜜臀 | 久久久亚洲裙底偷窥综合 | 97久久精品人妻人人搡人人玩| 区久久AAA片69亚洲| 伊人色综合久久天天人守人婷| 久久国产一区二区| 国产∨亚洲V天堂无码久久久| 久久一日本道色综合久久| 亚洲国产精品久久电影欧美| 麻豆成人久久精品二区三区免费| 久久久久久久波多野结衣高潮| 久久人人爽人人爽人人片AV高清| 99久久精品国产一区二区| 国产偷久久久精品专区| 伊人久久大香线蕉综合影院首页|