如何使用CocoStudio场景编辑器制作魔卡幻想
1?CocoStudio 場景編輯器
使用 CocoStudio 場景編輯器來創(chuàng)建游戲場景,其中包含游戲 UI 與動畫,來定制一個游戲主界面。
2?使用 CocoStudio 完成《魔卡幻想》場景編輯
對于環(huán)境的搭建使用,請參考之前的文章,或者實時關(guān)注?官方?最新版本的安裝使用方法。
2.1?UI 編輯器制作游戲主界面
創(chuàng)建項目(項目名稱:MysticalCard),并導(dǎo)入項目 UI 資源,添加 一圖片框設(shè)定背景圖片。注意在工具攔設(shè)置 “畫布” 的大小(如果需要),這將決定著你的設(shè)計分辨率,在運行時還需要注意屏幕的適配問題,如放大縮小,位置偏移等,視具體情況而定。
為界面添加 UI 元素,圖片框等,請根據(jù)自己的需要定制
實踐過程中的注意事項
- 添加控件時注意必要的屬性設(shè)置 
- 控件的命名規(guī)范,這有助于我們今后在后臺編寫代碼獲取界面元素 
- 可交互的控件的 “可交互屬性” 開啟 
2.2?建立關(guān)鍵幀動畫
除了主界面一些必要的 UI 控件,我們還需要一個 “對話框指示” 的動畫效果。這是一個幀動畫。
準(zhǔn)備工作。
如下圖所示:
- 打開 CocoStudio ,啟動 動畫編輯器 
- 創(chuàng)建一個新的項目,后導(dǎo)入資源(在 “資源窗口” 中,點擊 “文件” 或者 “文件夾” 標(biāo)示,添加需要的素材資源) 
- 在 “資源窗口中” 點擊關(guān)鍵幀動畫的守幀圖片,拖動至 “渲染窗口” 
2.3?場景編輯器的 資源“整合”
使用 CocoStudio 可以很好的幫助游戲開發(fā)過程中 分工合作。動畫編輯器 和 UI 編輯器可以由多個人進行編輯,最后再由一個人統(tǒng)合資源,這也就是場景編輯器的優(yōu)點了,它除了能支持 CocoStudio 本身所自帶的動畫編輯器,UI 編輯器,它還能支持,Tmx 地圖資源,粒子編輯器的粒子效果資源,聲音資源等~并且不斷擴展中。以下將給出如何在 場景編輯器整合我們之前所創(chuàng)建的動畫與 UI 界面的資源,來實現(xiàn)我們一個場景的運行效果。它的步驟如下:
1.啟動場景編輯器,新建一個場景項目。并設(shè)置 “畫布” 大小。畫布大小要適量。
2.我們拖動一個 UI 控到畫布之上,它作為我們之前導(dǎo)出的 UI 資源的承載。
? ??
3.我們將之前的 UI 編輯器所導(dǎo)出的資源,導(dǎo)入到當(dāng)前場景項目中來,導(dǎo)入方式與 UI 編輯器導(dǎo)入資源方式同樣,如下圖:? ??
?
4.為 UI 控件的 “文件” 屬性賦值:我們在資源視圖中找到 UI 編輯器所導(dǎo)出的 UI 資源,其目錄下包含 json 文件資源(如這里的 “MysticalCard_1.json”),將其拖動到?
UI 控件的文件 屬性中去,如下圖所示:
前面的步驟已經(jīng)將 UI 資源導(dǎo)入場景之內(nèi),現(xiàn)在需要添加之前所創(chuàng)建的動畫資源。
- 我們以相同的方式導(dǎo)入動畫編輯器所導(dǎo)出的動畫資源文件。 
- 拖動一個骨骼控件至場景界面,如下圖所示。 
- 為骨骼控件的 “文件” 屬性賦值,其值為 動畫資源中的 ExportJson(或者 json 文件,這取決于動畫資源的導(dǎo)出方式) 文件。 
3?在 Cocos2d-x 中加載場景資源 并運行之
3.1?加載場景內(nèi)容
前面那么多步驟,使用 CocoStudio 來創(chuàng)建了 UI,動畫,還有一個場景,而要將其運行在實際的項目中,就非常的簡單與方便了,只需幾行代碼,就能夠?qū)⑵浼虞d到項目中去,當(dāng)然在這之前我們需要將場景編輯器的資源(場景項目目錄中 “Resources” 目錄,其中將包含一個 json 文件)復(fù)制到項目資源目錄中去:
// 加載場景資源 CCNode *pNode = CCJsonReader::sharedJsonReader()->createNodeWithJsonFile("McScene.json"); this->addChild(pNode);通過 CCJsonReader 來讀取解析 json,從而獲得場景中的節(jié)點內(nèi)容,直接添加到當(dāng)前的場景就能運行。
3.2?在場景中播放動畫
默認加載的場景資源 動畫 組件是沒有播放的,需要手動獲取動畫組件對象,然后調(diào)用其播放方法,當(dāng)然這個步驟也是非常簡單的:
// pNode 為 之前所獲取的場景資源根節(jié)點,通過此節(jié)點獲取到動畫對象,獲取方式根據(jù)在場景編輯其中設(shè)置的層次關(guān)系而定 CCComRender *pLoadRender = (CCComRender*)(pNode->getChildByTag(1)->getChildByTag(1)->getComponent("CCArmature")); CCArmature* armLoad = (CCArmature*)(pLoadRender->getRender());// 播放動畫 armLoad->getAnimation()->playByIndex(0);3.3?對場景的一些編碼說明
使用 CocoStudio 就是為了幫助我們快速的建立 UI 原型,然后通過編碼可以獲取到里面的任意一個元素對象,并修改其屬性值,調(diào)用其方法,正如上面所示播放一個動畫的方法同樣。其步驟如下:
- 通過 CCJsonReader 類讀取 json 文件,將會自動解析構(gòu)建對象,返回一個節(jié)點 CCNode 
- 任何元素都能通過這個 CCNode 節(jié)點,獲取到,它其實就是一個樹,所不同的是層級關(guān)系(樹節(jié)點的位置) 
- 找到需要對象所在的 “樹枝”,后通過 getComponent 方法獲取 所在的 CCComRender 對象 
- 通過 CCComRender 的 getRender 方法獲取最終對象 
- 得到我們所需要的具體對象之后,我們就能夠?qū)R進行草,設(shè)置屬性,調(diào)用方法等,諸如此類 
來自:泰然
轉(zhuǎn)自:http://cocos2d.9tech.cn/news/2013/0925/29092.html
轉(zhuǎn)載于:https://blog.51cto.com/kenkao/1554709
總結(jié)
以上是生活随笔為你收集整理的如何使用CocoStudio场景编辑器制作魔卡幻想的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: Laravel学习笔记(二)
- 下一篇: c语言结构体使用方法
