• <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>
            posts - 311, comments - 0, trackbacks - 0, articles - 0
              C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理
            NGUI官網(wǎng)示例11 –Drag ; Drop(圖標(biāo)與物體拖拽放置)
            游戲中經(jīng)常會(huì)用到儲(chǔ)物箱等GUI,GUI的一邊是物品的圖標(biāo),另一邊是一個(gè)角色,你可以拖動(dòng)這些圖標(biāo)放置到角色上,為它裝配裝備。那么我們首先來實(shí)現(xiàn)較為簡單的Drag;Drop功能。如圖所示:
            請(qǐng)輸入描述
             
            首先來制作三維的場(chǎng)景:
            1.         使用Create a new UI對(duì)話框創(chuàng)建一個(gè)Advanced3D UI,如圖所示:
            請(qǐng)輸入描述
            把Panel拖出來,脫離Anchor父物體,然后改名為3D,接著把Camera作為子物體拖動(dòng)到Panel下面,reset一下Camera對(duì)象,最后刪除UI Root(3D)對(duì)象和Anchor對(duì)象,這里刪除UIRoot是因?yàn)檫@個(gè)對(duì)象只是用于調(diào)整GUI大小的,
            而我們這個(gè)層級(jí)只要顯示一個(gè)立方體和一個(gè)背景而已,如圖所示
            請(qǐng)輸入描述
            選擇Camera,使用WidgetTool對(duì)話框在Camera下創(chuàng)建一個(gè)SlicedSprite對(duì)象,調(diào)整其大小和位置,作為其背景,如圖所示
            請(qǐng)輸入描述
            創(chuàng)建一個(gè)空的游戲?qū)ο螅⒚麨閟tage,該對(duì)象用來使得其子物體能夠自動(dòng)旋轉(zhuǎn),把該游戲?qū)ο蠓胖玫?D對(duì)象下,成為其子物體,并reset一下,如圖所示
            請(qǐng)輸入描述
            在stage下創(chuàng)建一個(gè)Cube,并為該Cube賦予一個(gè)brick材質(zhì),在project窗中,打開NGUI-> Example->brick。并調(diào)整它的大小,如圖所示
            請(qǐng)輸入描述
            選擇stage對(duì)象,調(diào)整它的位置,如圖所示
            請(qǐng)輸入描述
            再次選擇stage對(duì)象,為它添加一個(gè)spin組件(Component->NUI->Example->spin),這個(gè)組件可以旋轉(zhuǎn)自身,并設(shè)置其參數(shù),點(diǎn)擊播放,可以看到立方體旋轉(zhuǎn)起來了。當(dāng)然這里大家應(yīng)該知道,子物體會(huì)繼承父物體的所有變換
            (平移、縮放和旋轉(zhuǎn))。如圖所示
            請(qǐng)輸入描述
            選擇cube對(duì)象,為其添加一個(gè)SpinWithMouse組件(Component->NGUI->Example->Spin With Mouse),該組件可以使得物體隨著鼠標(biāo)的拖動(dòng)而轉(zhuǎn)動(dòng),如圖所示
            請(qǐng)輸入描述
            在3D對(duì)象下創(chuàng)建一個(gè)Direction Light,這樣就把場(chǎng)景照亮了,這樣場(chǎng)景就漂亮多了,如圖所示
            請(qǐng)輸入描述
            接下來,我們來制作GUI部分。使用Create a new UI對(duì)話框,創(chuàng)建一個(gè)Simple 2D,如圖所示
            請(qǐng)輸入描述把Anchor對(duì)象改名為Anchor Bottom,并設(shè)置其side參數(shù)為Bottom。如圖所示
            請(qǐng)輸入描述
            選擇Panel,改名為Window Panel,使用WidgetTool創(chuàng)建一個(gè)SlicedSprite,設(shè)置參數(shù),并把該元件改名為background,并調(diào)整它的大小和位置,如圖所示
            請(qǐng)輸入描述現(xiàn)在看到視口中間還有一個(gè)正方形,這個(gè)東西是我們上面那個(gè)3D對(duì)象層級(jí)的背景,我們選擇UIRoot(2D)對(duì)象包括其子對(duì)象,為其添加一個(gè)2DGUI layer(如何添加Layer和Layer的作用在unity文檔中有描述,這里不再贅述)。選擇UIRoot(2D)中的Camera,設(shè)置其Culling Mask為2DGUI,也就是說這個(gè)攝像機(jī)只顯示這個(gè)Layer中的對(duì)象,其他Layer的對(duì)象不會(huì)在這個(gè)攝像機(jī)中顯示。最后效果如圖所示
            請(qǐng)輸入描述
            選擇WindowPanel,為其添加一個(gè)新的Panel(NGUI->create a Panel),并重新命名為ListPanel,如圖所示
            請(qǐng)輸入描述
            為ListPanel創(chuàng)建一個(gè)空的游戲?qū)ο螅⒚麨镈ragDropContainer,reset一下,并為它添加一個(gè)Collider(NGUI->Attach a collider),如圖所示
            請(qǐng)輸入描述
            精品久久久久久国产| 亚洲AV乱码久久精品蜜桃| 国内精品免费久久影院| 国内精品伊人久久久久影院对白| 午夜视频久久久久一区| 欧洲精品久久久av无码电影| 免费国产99久久久香蕉| 性做久久久久久久久| 久久99国产精品尤物| 中文字幕精品无码久久久久久3D日动漫| 欧美亚洲国产精品久久久久| 久久精品人人做人人爽电影蜜月| 品成人欧美大片久久国产欧美| 久久AV高潮AV无码AV| 国产日韩欧美久久| 精品永久久福利一区二区| 亚洲午夜福利精品久久 | 欧美精品一本久久男人的天堂| 久久精品国产亚洲7777| 粉嫩小泬无遮挡久久久久久| 久久久无码精品亚洲日韩蜜臀浪潮| 色综合合久久天天综合绕视看| 久久九九精品99国产精品| 一级a性色生活片久久无少妇一级婬片免费放 | 蜜臀久久99精品久久久久久| 久久91精品国产91久久户| 久久九九久精品国产免费直播| 久久久久九九精品影院| 草草久久久无码国产专区| 99久久99这里只有免费费精品| 久久99久久99精品免视看动漫| 久久一区二区三区免费| 久久男人中文字幕资源站| 久久不射电影网| 青青青青久久精品国产| 国产成人精品久久亚洲| 国产精品久久久久久久午夜片| 成人午夜精品久久久久久久小说| 88久久精品无码一区二区毛片 | 99久久精品日本一区二区免费| 亚洲国产另类久久久精品黑人|