本發(fā)明涉及一種關(guān)聯(lián)的平視界面游戲編輯系統(tǒng)與方法,屬于計(jì)算機(jī)游戲領(lǐng)域。
背景技術(shù):
大多數(shù)游戲產(chǎn)品都需要定制的游戲編輯器工具,用來(lái)創(chuàng)建游戲內(nèi)容,如關(guān)卡布局和AI(人工智能)行為編輯等。真正優(yōu)秀的工具可以大大提高內(nèi)容開發(fā)團(tuán)隊(duì)的效率,成倍地增加內(nèi)容開發(fā)的數(shù)量。
例如,一款好的關(guān)卡編輯工具可以非常容易地讓關(guān)卡設(shè)計(jì)人員變得很高產(chǎn),其效率等同于3個(gè)使用劣質(zhì)工具的關(guān)卡設(shè)計(jì)人員。但是,傳統(tǒng)的游戲編輯器的開發(fā)非常費(fèi)時(shí)間,而且代碼常常失去良好的維護(hù)。游戲編輯器的界面多用硬編碼的方式完成,充斥著大量功能相似而重復(fù)的代碼,缺乏一個(gè)良好而統(tǒng)一的游戲編輯器界面系統(tǒng)設(shè)計(jì)。而導(dǎo)致游戲編輯器開發(fā)人員開發(fā)效率低下,工作量龐大,使用者使用不方便,進(jìn)而無(wú)法方便地編輯游戲的內(nèi)容及提高游戲內(nèi)容制作的效率和質(zhì)量。
技術(shù)實(shí)現(xiàn)要素:
針對(duì)現(xiàn)有技術(shù)無(wú)法提升開發(fā)者的開發(fā)效率,無(wú)法有效的減少工作量以及便利性的問題,本發(fā)明的技術(shù)方案提供了一種關(guān)聯(lián)的平視界面游戲編輯系統(tǒng)與方法
本發(fā)明的技術(shù)方案包括一種關(guān)聯(lián)的平視界面游戲編輯系統(tǒng),由系統(tǒng)界面、編輯器及平視界面,其中系統(tǒng)界面鋪設(shè)在人機(jī)交互界面中,編輯器和平視界面位于系統(tǒng)界面中,每個(gè)編輯器對(duì)應(yīng)一個(gè)主編輯界面及多個(gè)子平視界面,包括:主界面管理器,用于對(duì)每個(gè)編輯器下所有子平視界面的數(shù)據(jù)集在主編輯器中進(jìn)行展示,還用于對(duì)系統(tǒng)界面中鋪設(shè)的主編輯器及平視界面的位置及大小進(jìn)行動(dòng)態(tài)調(diào)整;平視界面管理器,用于為每個(gè)平視界面對(duì)應(yīng)的數(shù)據(jù)文檔提供單獨(dú)的編輯界面以及編輯工具,其中,對(duì)處于編輯狀態(tài)的數(shù)據(jù)文檔智能選擇對(duì)應(yīng)的處理工具;關(guān)聯(lián)調(diào)整器,用于根據(jù)選擇子平視界面對(duì)應(yīng)的數(shù)據(jù)文檔變動(dòng),動(dòng)態(tài)修改所選擇的子平視界面中的數(shù)據(jù)文檔及關(guān)聯(lián)數(shù)據(jù)文檔。
根據(jù)所述的關(guān)聯(lián)的平視界面游戲編輯系統(tǒng),所述的主界面管理器包括:展示模塊,用于截取當(dāng)前所有平視界面所編輯的數(shù)據(jù)文檔狀態(tài),在主編輯器中進(jìn)行預(yù)覽展示;系統(tǒng)界面模塊,用于對(duì)鋪設(shè)在系統(tǒng)界面的多個(gè)平視界面的位置及大小進(jìn)行調(diào)整,包括對(duì)每個(gè)平視界面的頂部框進(jìn)行透明強(qiáng)制顯示,進(jìn)一步,當(dāng)系統(tǒng)界面的平視界面達(dá)到預(yù)設(shè)數(shù)量時(shí),對(duì)平視界面進(jìn)行按比例縮小,同時(shí)當(dāng)系統(tǒng)界面的平視界面低于預(yù)設(shè)數(shù)量時(shí),對(duì)平視界面進(jìn)行按比例放大,還用于當(dāng)平視界面靠近系統(tǒng)界面邊界時(shí),將平視界面向系統(tǒng)界面中心位移。
在一個(gè)優(yōu)選的實(shí)施方案中,所述的數(shù)據(jù)文檔及子數(shù)據(jù)文檔包括:其中數(shù)據(jù)文檔用于表示主編輯器所展示的數(shù)據(jù),包括文本方案檔、三維模型及渲染數(shù)據(jù),每個(gè)數(shù)據(jù)文檔包括多個(gè)子數(shù)據(jù)文檔,子數(shù)據(jù)文檔包括多個(gè)圖表或/和文本。
根據(jù)所述的關(guān)聯(lián)的平視界面游戲編輯系統(tǒng),所述的平視界面管理器包括:顯示模塊,用于當(dāng)用戶點(diǎn)擊主編輯器中的平視界面預(yù)覽圖時(shí),自動(dòng)將該平視界面的上下關(guān)聯(lián)所有子平視界面進(jìn)行縮略展示,當(dāng)子數(shù)據(jù)文檔規(guī)模超過預(yù)設(shè)的閾值時(shí),自動(dòng)為該數(shù)據(jù)文檔分配獨(dú)立的平視界面,進(jìn)一步,在對(duì)子平視界面中的子數(shù)據(jù)文檔進(jìn)行編輯時(shí),在主編輯器中對(duì)平視界面預(yù)覽圖中對(duì)應(yīng)的部位進(jìn)行高亮顯示;編輯模塊,用于為每個(gè)子平視界面提供獨(dú)立的編輯工具,當(dāng)用戶的光標(biāo)放置于子數(shù)據(jù)文檔可提供工具的區(qū)域時(shí),獲取文檔類型,根據(jù)文檔類型自動(dòng)將可選擇的工具進(jìn)行展示。
根據(jù)所述的關(guān)聯(lián)的平視界面游戲編輯系統(tǒng),所述的關(guān)聯(lián)調(diào)整器包括:排序模塊,用于對(duì)每個(gè)編輯器下的多個(gè)子平視界面進(jìn)行排序,所排序的順序以用戶當(dāng)前所編輯的數(shù)據(jù)文檔對(duì)應(yīng)的子平視界面的關(guān)聯(lián)度進(jìn)行排序,其中關(guān)聯(lián)度越大的越排在前,同時(shí)所排序的子平視界面順序以界面形式展示在系統(tǒng)界面上,能夠進(jìn)行自定義選取對(duì)應(yīng)的子平視界面;關(guān)聯(lián)模塊,用于當(dāng)為子文檔數(shù)據(jù)進(jìn)行添加或者刪除時(shí),動(dòng)態(tài)為其關(guān)聯(lián)的子文檔數(shù)據(jù)及主編輯器中添加或刪除對(duì)應(yīng)的關(guān)聯(lián)變量;預(yù)警模塊,用于使用導(dǎo)航界面對(duì)用戶所編輯的過程進(jìn)行記錄,還提供回退功能,用于將編輯過程還原至之前編輯的記錄,還用于對(duì)用戶實(shí)時(shí)操作結(jié)果進(jìn)行檢查,若出現(xiàn)錯(cuò)誤步驟則進(jìn)行預(yù)警。
本發(fā)明的技術(shù)方案一種關(guān)聯(lián)的平視界面游戲編輯方法,其特征在于,該方法包括:
對(duì)每個(gè)編輯器下所有子平視界面的數(shù)據(jù)集在主編輯器中進(jìn)行展示,還用于對(duì)系統(tǒng)界面中鋪設(shè)的主編輯器及平視界面的位置及大小進(jìn)行動(dòng)態(tài)調(diào)整;為每個(gè)平視界面對(duì)應(yīng)的數(shù)據(jù)文檔提供單獨(dú)的編輯界面以及編輯工具,其中,對(duì)處于編輯狀態(tài)的數(shù)據(jù)文檔智能選擇對(duì)應(yīng)的處理工具;根據(jù)選擇子平視界面對(duì)應(yīng)的數(shù)據(jù)文檔變動(dòng),動(dòng)態(tài)修改所選擇的子平視界面中的數(shù)據(jù)文檔及關(guān)聯(lián)數(shù)據(jù)文檔。
進(jìn)一步,該方法還包括:截取當(dāng)前所有平視界面所編輯的數(shù)據(jù)文檔狀態(tài),在主編輯器中進(jìn)行預(yù)覽展示;對(duì)鋪設(shè)在系統(tǒng)界面的多個(gè)平視界面的位置及大小進(jìn)行調(diào)整,包括對(duì)每個(gè)平視界面的頂部框進(jìn)行透明強(qiáng)制顯示,進(jìn)一步,當(dāng)系統(tǒng)界面的平視界面達(dá)到預(yù)設(shè)數(shù)量時(shí),對(duì)平視界面進(jìn)行按比例縮小,同時(shí)當(dāng)系統(tǒng)界面的平視界面低于預(yù)設(shè)數(shù)量時(shí),對(duì)平視界面進(jìn)行按比例放大,還用于當(dāng)平視界面靠近系統(tǒng)界面邊界時(shí),將平視界面向系統(tǒng)界面中心位移。
進(jìn)一步,該方法還包括:其中數(shù)據(jù)文檔用于表示主編輯器所展示的數(shù)據(jù),包括文本方案檔、三維模型及渲染數(shù)據(jù),每個(gè)數(shù)據(jù)文檔包括多個(gè)子數(shù)據(jù)文檔,子數(shù)據(jù)文檔包括多個(gè)圖表或/和文本。
進(jìn)一步,該方法還包括:當(dāng)用戶點(diǎn)擊主編輯器中的平視界面預(yù)覽圖時(shí),自動(dòng)將該平視界面的上下關(guān)聯(lián)所有子平視界面進(jìn)行縮略展示,當(dāng)子數(shù)據(jù)文檔規(guī)模超過預(yù)設(shè)的閾值時(shí),自動(dòng)為該數(shù)據(jù)文檔分配獨(dú)立的平視界面,進(jìn)一步,在對(duì)子平視界面中的子數(shù)據(jù)文檔進(jìn)行編輯時(shí),在主編輯器中對(duì)平視界面預(yù)覽圖中對(duì)應(yīng)的部位進(jìn)行高亮顯示;編輯模塊,用于為每個(gè)子平視界面提供獨(dú)立的編輯工具,當(dāng)用戶的光標(biāo)放置于子數(shù)據(jù)文檔可提供工具的區(qū)域時(shí),獲取文檔類型,根據(jù)文檔類型自動(dòng)將可選擇的工具進(jìn)行展示。
進(jìn)一步,該方法還包括:對(duì)每個(gè)編輯器下的多個(gè)子平視界面進(jìn)行排序,所排序的順序以用戶當(dāng)前所編輯的數(shù)據(jù)文檔對(duì)應(yīng)的子平視界面的關(guān)聯(lián)度進(jìn)行排序,其中關(guān)聯(lián)度越大的越排在前,同時(shí)所排序的子平視界面順序以界面形式展示在系統(tǒng)界面上,能夠進(jìn)行自定義選取對(duì)應(yīng)的子平視界面;當(dāng)為子文檔數(shù)據(jù)進(jìn)行添加或者刪除時(shí),動(dòng)態(tài)為其關(guān)聯(lián)的子文檔數(shù)據(jù)及主編輯器中添加或刪除對(duì)應(yīng)的關(guān)聯(lián)變量;使用導(dǎo)航界面對(duì)用戶所編輯的過程進(jìn)行記錄,還提供回退功能,用于將編輯過程還原至之前編輯的記錄,還用于對(duì)用戶實(shí)時(shí)操作結(jié)果進(jìn)行檢查,若出現(xiàn)錯(cuò)誤步驟則進(jìn)行預(yù)警。
本發(fā)明的有益效果為:
1.即時(shí)獲取關(guān)鍵數(shù)據(jù),從大型數(shù)據(jù)集中精選最關(guān)鍵的數(shù)據(jù)片段,并顯示出來(lái);
2.將數(shù)據(jù)和主視區(qū)進(jìn)行融合,從而讓玩家不用脫離主視區(qū)就可以看到想看的數(shù)據(jù);
3.清楚、可視。對(duì)屏幕區(qū)域進(jìn)行合理布局,從而使被覆蓋的區(qū)域顯示的都是相對(duì)不太重要的信息。
附圖說明
圖1所示為根據(jù)本發(fā)明實(shí)施方式的總體結(jié)構(gòu)圖;
圖2所示為根據(jù)本發(fā)明實(shí)施方式的工具選擇流程圖。
具體實(shí)施方式
為了使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明進(jìn)行詳細(xì)描述。本發(fā)明的關(guān)聯(lián)的平視界面游戲編輯系統(tǒng)與方法適用于單機(jī)游戲、手機(jī)游戲、網(wǎng)頁(yè)游戲等游戲的開發(fā)。
圖1所示為根據(jù)本發(fā)明實(shí)施方式的總體結(jié)構(gòu)圖。其中主編輯器視區(qū)看上去就像一個(gè)傳統(tǒng)的編輯器。它顯示的是當(dāng)前正在編輯的文檔,這個(gè)文檔可能是文本方案檔、三維模型,或者其他任意的渲染數(shù)據(jù)。文檔是屏幕上顯示的數(shù)據(jù)集,可以保存或打開文檔。但文檔并不是界面編輯器的一部分。主視區(qū)不再顯示其他內(nèi)容,其他的所有事情都由平視界面來(lái)處理。這也為用戶提供了一個(gè)便捷的方式,讓他們可以確切地看到保存的內(nèi)容,而不會(huì)錯(cuò)把平視界面提供的紋理著色當(dāng)成模型和紋理的一部分,進(jìn)行錯(cuò)誤的保存。他們只須關(guān)閉所有的平視界面,然后就能得到一個(gè)所見即所得的結(jié)果。
如果文檔本身太過復(fù)雜,或許需要在核心渲染器中僅渲染部分文檔,然后在平視界面里渲染其他部分。例如,有些三維模型的文件格式會(huì)在一個(gè)單一文件里保存頂點(diǎn)數(shù)據(jù)、紋理數(shù)據(jù)、骨骼和動(dòng)畫等所有數(shù)據(jù)??梢詥?dòng)編輯器,讓它僅僅在核心渲染器中讀取頂點(diǎn)數(shù)據(jù)并進(jìn)行渲染,從而讓編輯器可以更快速地運(yùn)行。然后,再為每個(gè)更先進(jìn)的元素添加一個(gè)獨(dú)立的平視界面層,而且不需要改變現(xiàn)有的代碼。如果紋理渲染器中存在某些bug,那么用戶總是可以簡(jiǎn)單地關(guān)掉紋理渲染層,并繼續(xù)運(yùn)行頂點(diǎn)渲染器,就好像使用的是原先版本的編輯器一樣。
圖2所示為根據(jù)本發(fā)明實(shí)施方式的工具選擇流程圖。一個(gè)平視界面就是一系列其他平視界面和工具的代理。這個(gè)平視界面有大量上下文相關(guān)的渲染功能,包括用于每個(gè)所代理平視界面的激活符號(hào)。例如,如果它代理的是平移物體、旋轉(zhuǎn)物體和縮放物體,它就會(huì)在應(yīng)該激活的區(qū)域?yàn)槊總€(gè)物體顯示相應(yīng)的圖標(biāo)。例如,當(dāng)光標(biāo)位于物體的邊界之內(nèi),平移圖標(biāo)就會(huì)被激活;當(dāng)外圍物體距離某個(gè)窗口角落在10個(gè)像素以內(nèi)時(shí),旋轉(zhuǎn)圖標(biāo)就會(huì)被激活;而當(dāng)外圍物體距離某個(gè)角落超出了10個(gè)像素,但距離任意一個(gè)邊緣又在10個(gè)像素以內(nèi),拉伸圖標(biāo)就會(huì)被激活。
在激活區(qū)域(代表映射到該區(qū)域的其他平視界面和工具)單擊鼠標(biāo)左鍵,就可以把當(dāng)前的平視界面和工具放入堆棧中。這樣就可以隨意地嵌套代理平視界面。這對(duì)非常復(fù)雜的編輯環(huán)境特別有好處,而且還可以允許從幾個(gè)不同的上下文中申請(qǐng)同一個(gè)平視界面工具,而不需要什么上下文感知或是使用幾乎相同的代碼重新實(shí)現(xiàn)每一個(gè)不同的上下文。
以上所述,只是本發(fā)明的較佳實(shí)施例而已,本發(fā)明并不局限于上述實(shí)施方式,只要其以相同的手段達(dá)到本發(fā)明的技術(shù)效果,都應(yīng)屬于本發(fā)明的保護(hù)范圍。在本發(fā)明的保護(hù)范圍內(nèi)其技術(shù)方案和/或?qū)嵤┓绞娇梢杂懈鞣N不同的修改和變化。