国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      編輯器的開發(fā)方法和裝置,編輯方法及編輯器與流程

      文檔序號:12362898閱讀:1668來源:國知局
      編輯器的開發(fā)方法和裝置,編輯方法及編輯器與流程

      本發(fā)明涉及計算機領域,具體而言,涉及一種編輯器的開發(fā)方法和裝置,編輯方法及編輯器。



      背景技術:

      如圖1所示,游戲編輯器是游戲編輯開發(fā)工具,是游戲開發(fā)中以非代碼的形式組織邏輯或者產(chǎn)生美術資源的工具。一般游戲編輯器為美術設計開發(fā)提供的各種游戲資源的開發(fā)編輯器,也有為游戲設計開發(fā)各種布怪,關卡,劇情動畫編輯器,AI編輯器。游戲引擎游戲系統(tǒng)的核心組件,提供游戲的通用的圖形渲染,物理碰撞,尋路,音效,腳本引擎,AI等模塊,也根據(jù)需要為游戲提供一部分編輯器,比如美術資源編輯器一般由游戲引擎提供。

      在一種方案中,現(xiàn)有的游戲編輯器可以利用游戲引擎代碼上直接開發(fā)游戲編輯器,集成在游戲引擎的支持中去。例如Unity引擎提供了一整套游戲開發(fā)的編輯器。如圖2所示,Unity游戲引擎提供了工業(yè)化的,一整套的游戲開發(fā)編輯器的解決方案,包括了美術資源,UI,特效,以及游戲設計相關的編輯開發(fā)。這種方式由引擎提供方按照盡量通用化的需求設計,功能強大,適用于通用推廣,適用于商業(yè)化比較強,以強大的編輯能力吸引開發(fā)用戶購買使用的商業(yè)引擎中。但是,利用游戲引擎代碼直接開發(fā)編輯器的缺點有:開發(fā)的技術門檻很高,只有引擎相關技術人員才能進行編輯器相關的開發(fā);由于技術要求高,開發(fā)成本高,這種編輯器,難以迎合各種各樣的項目的需求,只能做通用的編輯部分;使用人員難以根據(jù)項目的需求自己定制編輯器的功能;基于復雜的通用化需求設計導致編輯器上手成本比較高。對于自研引擎來說,設計開發(fā)功能如此強大的編輯器的開發(fā)成本,維護成本和測試成本都難以承擔。

      在另一種方案中,在游戲中可以利用游戲的開發(fā)功能直接開發(fā)一套編輯器,就是在開發(fā)項目的同時,開發(fā)編輯功能,編輯功能就是游戲功能的一部分。這種方案經(jīng)常在端游中采用,因為端游的生命周期長。游戲中自帶有UI編輯功能,模型,特效等編輯也有引擎接口提供,所以項目開發(fā)人員可以基于自己的開發(fā)封裝,開發(fā)適用于自己項目的內(nèi)置于游戲內(nèi)的編輯器。但是,利用游戲功能,在其基礎上開發(fā)一套編輯器的缺點有:開發(fā)成本高,需要每個項目自行去開發(fā),包括UI,控件等都需要自定義一套;與游戲開發(fā)本身耦合,游戲不穩(wěn)定的時候編輯器也難以使用;維護成本高,因為跟游戲本身耦合,開發(fā)期間并不會考慮兼容在線編輯器,經(jīng)常造成接口的改變使得編輯器無法使用。在追求效率和速度的手游項目中,長期處于人手短缺的情況,使用這種開發(fā)方式浪費開發(fā)人工,維護成本也高。

      目前游戲編輯器開發(fā)的技術門檻很高,只有引擎相關技術人員才能進行編輯器相關的開發(fā)。由于技術要求高,開發(fā)成本高,這種編輯器,難以迎合各種各樣的項目的需求,只能做通用的編輯部分。使用人員難以根據(jù)項目的需求自己定制編輯器的功能。也有在線游戲編輯器,其與游戲開發(fā)本身耦合,游戲不穩(wěn)定的時候編輯器也難以使用,維護成本高,因為跟游戲本身耦合,開發(fā)期間并不會考慮兼容在線編輯器,經(jīng)常造成接口的改變使得編輯器無法使用。

      針對現(xiàn)有技術中游戲編輯器的開發(fā)成本高,導致難以迎合項目需求,只能做通用的編輯部分,通用性差的問題,目前尚未提出有效的解決方案。



      技術實現(xiàn)要素:

      本發(fā)明實施例提供了一種編輯器的開發(fā)方法和裝置,編輯方法及編輯器,以至少解決現(xiàn)有技術中游戲編輯器的開發(fā)成本高,導致難以迎合項目需求,只能做通用的編輯部分,通用性差的技術問題。

      根據(jù)本發(fā)明實施例的一個方面,提供了一種編輯器的開發(fā)方法,包括:利用開發(fā)引擎開發(fā)客戶端,其中,客戶端用于編輯目標元素,客戶端至少包括:編輯目標元素的接口和通信接口;利用用戶界面開發(fā)框架開發(fā)編輯器的用戶界面,其中,用戶界面用于顯示和編輯目標元素;通過通信接口在客戶端與用戶界面之間建立通信連接,以使當用戶界面編輯目標元素時,客戶端更改相應的業(yè)務邏輯。

      根據(jù)本發(fā)明實施例的另一方面,還提供了一種編輯器的開發(fā)裝置,包括:第一開發(fā)模塊,用于利用開發(fā)引擎開發(fā)客戶端,其中,客戶端用于編輯目標元素,客戶端至少包括:編輯目標元素的接口和通信接口;第二開發(fā)模塊,用于利用用戶界面開發(fā)框架開發(fā)編輯器的用戶界面,其中,用戶界面用于顯示和編輯目標元素;連接模塊,用于通過通信接口在客戶端與用戶界面之間建立通信連接,以使當用戶界面編輯目標元素時,客戶端更改相應的業(yè)務邏輯。

      根據(jù)本發(fā)明實施例的另一方面,還提供了一種編輯方法,包括:獲取操作信息,其中,操作信息至少包括對目標元素進行編輯所生成的操作信息;調用客戶端的通信接口建立與客戶端的通信連接,將操作信息發(fā)送至客戶端,其中,客戶端根據(jù)操作信息更改相應的業(yè)務邏輯。

      根據(jù)本發(fā)明實施例的另一方面,還提供了一種編輯器,包括:客戶端,用于編輯目標元素,客戶端至少包括:編輯目標元素的接口和通信接口;用戶界面,與客戶端具有通信關系,用于獲取操作信息,以及顯示和編輯目標元素;客戶端還用于根據(jù)操作信息更改相應的業(yè)務邏輯。

      在本發(fā)明實施例中,利用開發(fā)引擎開發(fā)客戶端,利用用戶界面開發(fā)框架開發(fā)編輯器的用戶界面,并通過通信接口在客戶端與用戶界面之間建立通信連接,以使當用戶界面編輯目標元素時,客戶端更改相應的業(yè)務邏輯,從而實現(xiàn)編輯器的開發(fā)。

      容易注意到,由于客戶端與用戶界面分離,而客戶端是與項目無關的,可以采用公用引擎進行開發(fā),并且可以根據(jù)編輯器需求制作各種各樣的功能,而不必考慮游戲功能上的實現(xiàn)和相互干擾,并且可以針對項目開發(fā)用戶界面。因此,通過本發(fā)明實施例所提供的方案,可以達到通用性強、可維護性高、穩(wěn)定性好、開發(fā)成本低以及可定制的效果。

      由此,解決了現(xiàn)有技術中游戲編輯器的開發(fā)成本高,導致難以迎合項目需求,只能做通用的編輯部分,通用性差的技術問題。

      附圖說明

      此處所說明的附圖用來提供對本發(fā)明的進一步理解,構成本申請的一部分,本發(fā)明的示意性實施例及其說明用于解釋本發(fā)明,并不構成對本發(fā)明的不當限定。在附圖中:

      圖1是根據(jù)現(xiàn)有技術的一種編輯器分類的示意圖;

      圖2是根據(jù)現(xiàn)有技術的一種基于游戲引擎開發(fā)的編輯器的示意圖;

      圖3是根據(jù)本發(fā)明實施例的一種編輯器的開發(fā)方法的計算機終端的硬件結構框圖;

      圖4是根據(jù)本發(fā)明實施例的一種編輯器的開發(fā)方法的流程圖;

      圖5是根據(jù)本發(fā)明實施例的一種游戲編輯器的技術框架的示意圖;

      圖6是根據(jù)本發(fā)明實施例的一種游戲編輯器的啟動過程的示意圖;

      圖7是根據(jù)本發(fā)明實施例的一種關卡游戲編輯器的示意圖;

      圖8是根據(jù)本發(fā)明實施例的一種編輯器的開發(fā)裝置的示意圖;

      圖9是根據(jù)本發(fā)明實施例的一種可選的編輯器的開發(fā)裝置的示意圖;

      圖10是根據(jù)本發(fā)明實施例的一種可選的編輯器的開發(fā)裝置的示意圖;

      圖11是根據(jù)本發(fā)明實施例的一種可選的編輯器的開發(fā)裝置的示意圖;

      圖12是根據(jù)本發(fā)明實施例的一種可選的編輯器的開發(fā)裝置的示意圖;

      圖13是根據(jù)本發(fā)明實施例的一種可選的編輯器的開發(fā)裝置的示意圖;

      圖14是根據(jù)本發(fā)明實施例的一種編輯方法的流程圖;

      圖15是根據(jù)本發(fā)明實施例的一種編輯器的示意圖;以及

      圖16是根據(jù)本發(fā)明實施例的一種計算機終端的結構框圖。

      具體實施方式

      為了使本技術領域的人員更好地理解本發(fā)明方案,下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分的實施例,而不是全部的實施例。基于本發(fā)明中的實施例,本領域普通技術人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都應當屬于本發(fā)明保護的范圍。

      需要說明的是,本發(fā)明的說明書和權利要求書及上述附圖中的術語“第一”、“第二”等是用于區(qū)別類似的對象,而不必用于描述特定的順序或先后次序。應該理解這樣使用的數(shù)據(jù)在適當情況下可以互換,以便這里描述的本發(fā)明的實施例能夠以除了在這里圖示或描述的那些以外的順序實施。此外,術語“包括”和“具有”以及他們的任何變形,意圖在于覆蓋不排他的包含,例如,包含了一系列步驟或單元的過程、方法、系統(tǒng)、產(chǎn)品或設備不必限于清楚地列出的那些步驟或單元,而是可包括沒有清楚地列出的或對于這些過程、方法、產(chǎn)品或設備固有的其它步驟或單元。

      下面,首先對本發(fā)明實施例中涉及的相關技術術語進行解釋,以方便對本發(fā)明實施例的理解。

      UI Framework:User Interface Framework,用戶界面開發(fā)框架。

      API:Application Programming Interface,應用程序編程接口。

      Windows API:微軟公司提供的Windows操作系統(tǒng)中一系列應用程序編程接口,是應用軟件與Windows系統(tǒng)最直接的交互方式。

      IPC,Interprocess communication:進程間通信。進程間通信是一組編程接口,讓程序員能夠協(xié)調不同的進程,使之能在一個操作系統(tǒng)里同時運行,并相互傳遞、交換信息。

      socket:套接字,用于描述IP地址和端口,是一個通信鏈的句柄。應用程序通常通過"套接字"向網(wǎng)絡發(fā)出請求或者應答網(wǎng)絡請求。

      實施例一

      根據(jù)本發(fā)明實施例,提供了一種編輯器的開發(fā)方法的方法實施例,需要說明的是,在附圖的流程圖示出的步驟可以在諸如一組計算機可執(zhí)行指令的計算機系統(tǒng)中執(zhí)行,并且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。

      本發(fā)明實施例一所提供的方法實施例可以在通信設備、計算機終端或者類似的運算裝置中執(zhí)行。以運行在移動設備為例,圖3是根據(jù)本發(fā)明實施例的一種編輯器的開發(fā)方法的計算機終端的硬件結構框圖。如圖3所示,計算機終端30可以包括一個或多個(圖中僅示出一個)處理器302(處理器302可以包括但不限于微處理器MCU或可編程邏輯器件FPGA等的處理裝置)、用于存儲數(shù)據(jù)的存儲器304、以及用于通信功能的傳輸模塊306。本領域普通技術人員可以理解,圖3所示的結構僅為示意,其并不對上述電子裝置的結構造成限定。例如,計算機終端30還可包括比圖3中所示更多或者更少的組件,或者具有與圖3所示不同的配置。

      存儲器304可用于存儲應用軟件的軟件程序以及模塊,如本發(fā)明實施例中的編輯器的開發(fā)方法對應的程序指令/模塊,處理器302通過運行存儲在存儲器304內(nèi)的軟件程序以及模塊,從而執(zhí)行各種功能應用以及數(shù)據(jù)處理,即實現(xiàn)上述的編輯器的開發(fā)方法。存儲器304可包括高速隨機存儲器,還可包括非易失性存儲器,如一個或者多個磁性存儲裝置、閃存、或者其他非易失性固態(tài)存儲器。在一些實例中,存儲器304可進一步包括相對于處理器302遠程設置的存儲器,這些遠程存儲器可以通過網(wǎng)絡連接至計算機終端30。上述網(wǎng)絡的實例包括但不限于互聯(lián)網(wǎng)、企業(yè)內(nèi)部網(wǎng)、局域網(wǎng)、移動通信網(wǎng)及其組合。

      傳輸裝置306用于經(jīng)由一個網(wǎng)絡輸入或者發(fā)送數(shù)據(jù)。上述的網(wǎng)絡具體實例可包括計算機終端30的通信供應商提供的無線網(wǎng)絡。在一個實例中,傳輸裝置306包括一個網(wǎng)絡適配器(Network Interface Controller,NIC),其可通過基站與其他網(wǎng)絡設備相連從而可與互聯(lián)網(wǎng)進行通訊。在一個實例中,傳輸裝置306可以為射頻(Radio Frequency,RF)模塊,其用于通過無線方式與互聯(lián)網(wǎng)進行通訊。

      在上述運行環(huán)境下,本發(fā)明提供了如圖4所示的編輯器的開發(fā)方法。圖4是根據(jù)本發(fā)明實施例的一種編輯器的開發(fā)方法的流程圖,如圖4所示,上述方法可以包括如下步驟:

      步驟S402,利用開發(fā)引擎開發(fā)客戶端,其中,客戶端用于編輯目標元素,客戶端至少包括:編輯目標元素的接口和通信接口。

      具體的,上述開發(fā)引擎可以是游戲引擎,上述客戶端可以是游戲端,游戲端是指利用游戲引擎開發(fā)一個具有游戲元素編輯功能游戲端。這里需要在游戲端響應用戶的鼠標鍵盤操作,以及開發(fā)好UI端需要的改變操作狀態(tài)的接口,比如切換視角,改變操作模式,響應熱鍵等等。上述目標元素可以是游戲元素,可以包括基本游戲元素和擴展的游戲元素,基礎游戲元素可以包括模型,場景,音效等,擴展的游戲元素可以包括怪物,尋路路線,陷阱等。

      在一種可選的方案中,游戲端可以基于根據(jù)各個項目開發(fā)的使用的游戲引擎進行開發(fā),例如Neox引擎,Messiah引擎,以及Unity,Unreal等商業(yè)引擎進行制作。而一經(jīng)制作此引擎的游戲端,那么所有基于此引擎開發(fā)的項目組都可以在此游戲端上開發(fā)自己的編輯器。游戲端是與項目無關的,采用項目公用引擎開發(fā)的專門用于編輯器的游戲端,這個游戲端可以根據(jù)編輯器需求制作各種各樣的功能,而不必考慮游戲功能上的實現(xiàn)和相互干擾。

      例如,以如圖5所示的游戲編輯器的技術框架圖進行詳細說明。圖5中左邊的專用游戲端,即上述的客戶端,是編輯器開發(fā)通用的,基本不變的部分,是利用游戲引擎開發(fā)的各種游戲元素的編輯游戲端。對于游戲端,可以配套多種編輯器,所以游戲端是可以復用的。

      步驟S404,利用用戶界面開發(fā)框架開發(fā)編輯器的用戶界面,其中,用戶界面用于顯示和編輯目標元素。

      具體的,上述編輯器可以是游戲編輯器,用于對游戲元素進行編輯。

      在一種可選的方案中,編輯器的用戶界面(UI)開發(fā)可以采用現(xiàn)有的所有支持windows系統(tǒng)的UI開發(fā)框架,比如QT,MFC等進行開發(fā)。這些UI框架可以很方便的進行編輯器界面開發(fā),功能強大。

      例如,仍以如圖5所示的游戲編輯器的技術框架圖進行詳細說明。圖5中左邊的通用庫,以及右邊的編輯器1、編輯器2可以指用戶界面的開發(fā)。通用庫是所有編輯器可以共用的組件,比如屬性顯示編輯器,文件資源管理等等,是編輯器開發(fā)通用的,基本不變的部分,可以在各個項目開發(fā)中不斷迭代完善和開發(fā),不斷地充實通用庫的內(nèi)容,以達到復用的目的。而編輯器1,編輯器2,由于每個項目的表達形式不一,可以針對自己項目開發(fā)外部的UI編輯,這樣在保證通用性,復用性的情況下又提供了靈活性,讓各個項目快速構建編輯器。

      步驟S406,通過通信接口在客戶端與用戶界面之間建立通信連接,以使當用戶界面編輯目標元素時,客戶端更改相應的業(yè)務邏輯。

      具體的,上述編輯器的用戶界面與上述客戶端通信可以采用任何進程間通信的方法,例如socket,管道,共享內(nèi)存等,但不僅限于此,其他形式的進程間通信的方法也可以實現(xiàn)上述實施例的目的。上述業(yè)務邏輯可以是編輯目標元素所對應的邏輯。

      在一種可選的方案中,由于游戲端和外部UI端是兩個進程,所以需要實現(xiàn)游戲端與UI端之間的進程通信。可以通過將UI操作與進程通信接口的調用對接,實現(xiàn)UI端與游戲的信息交互,保證兩者組合后如在操作一個軟件。游戲元素在編輯的時候的所有改變邏輯都是在游戲端進行的,使用者可以如同使用一般編輯器一樣,在游戲端進行各種操作個體的創(chuàng)建,拖拉,改變外觀以及屬性,實時地觀察游戲元素在游戲場景中的效果,也可以在UI端改變操作個體的具體屬性到具體的數(shù)值,并在游戲端驗證自己的設計。

      由上可知,本發(fā)明上述實施例一公開的方案中,利用開發(fā)引擎開發(fā)客戶端,利用用戶界面開發(fā)框架開發(fā)編輯器的用戶界面,并通過通信接口在客戶端與用戶界面之間建立通信連接,以使當用戶界面編輯目標元素時,客戶端更改相應的業(yè)務邏輯,從而實現(xiàn)編輯器的開發(fā)。

      容易注意到,由于客戶端與用戶界面分離,客戶端是與項目無關的,可以采用公用引擎進行開發(fā),并且可以根據(jù)編輯器需求制作各種各樣的功能,而不必考慮游戲功能上的實現(xiàn)和相互干擾,并且可以針對項目開發(fā)用戶界面。因此,通過本發(fā)明實施例所提供的方案,可以達到通用性強、可維護性高、穩(wěn)定性好、開發(fā)成本低以及可定制的效果。

      由此,本發(fā)明提供的上述實施例一的方案解決了現(xiàn)有技術中游戲編輯器的開發(fā)成本高,導致難以迎合項目需求,只能做通用的編輯部分,通用性差的技術問題。

      可選的,根據(jù)本發(fā)明上述實施例,步驟S406,用戶界面編輯目標元素可以包括如下步驟:

      步驟S4062,當用戶界面中檢測到輸入操作時,獲取輸入操作對應的操作信息。

      步驟S4064,通過調用通信接口,將輸入操作對應的操作信息發(fā)送給客戶端。

      具體的,上述通信接口可以是游戲端封裝好的進行通信接口的調用函數(shù)。

      在一種可選的方案中,用戶可以在編輯器的用戶界面中點擊控件或者修改游戲元素的屬性的數(shù)值,當檢測到用戶的輸入操作時,可以獲取對應的操作信息,例如點擊控件的名稱,或者修改的游戲元素的名稱和數(shù)值,用戶界面調用封裝好的進程通信接口的調用函數(shù),將操作信息發(fā)送給游戲端,由游戲端對游戲元素進行編輯。

      步驟S406,客戶端更改相應的業(yè)務邏輯可以包括如下步驟:

      步驟S4066,客戶端根據(jù)操作信息調用對應的編輯目標元素的接口,對目標元素執(zhí)行對應的編輯,并實時顯示編輯后的結果。

      在一種可選的方案中,客戶端可以根據(jù)對應的操作信息,例如修改的游戲元素的名稱和數(shù)值,調用對應的編輯游戲元素的接口,對游戲元素的名稱和數(shù)據(jù)進行相應的修改,并實時顯示修改后的游戲元素,由于游戲元素在編輯的時候的所有改變邏輯都是在游戲端進行的,所以用戶界面程序(UI)與游戲端的通信只有屬性的傳遞和少量的接口調用,保證了編輯器的流程度。

      可選的,根據(jù)本發(fā)明上述實施例,步驟S402,利用開發(fā)引擎開發(fā)客戶端可以包括如下步驟:

      步驟S4022,根據(jù)第一預設需求,構建客戶端可執(zhí)行的操作,其中,可執(zhí)行的操作至少包括如下任意一種或多種:響應用戶的輸入操作,場景資源操作,音效音樂操作和美術資源操作。

      具體的,上述第一預設需求可以是編輯器的通用需求,是編輯器開發(fā)通用的,基本不變的部分。根據(jù)編輯器的需要,游戲端可以主要包括如下幾個部分:用戶操作響應、場景資源操作、音效音樂操作、美術資源操作以及與外部的通信。

      步驟S4024,利用開發(fā)引擎接口和腳本語言,封裝目標元素的編輯功能,得到編輯目標元素的接口,其中,目標元素的編輯功能與客戶端可執(zhí)行的操作對應。

      在一種可選的方案中,可以封裝游戲端的各種操作游戲元素的屬性獲取,改變,操作的接口,即利用游戲引擎的腳本接口,可以封裝這些元素的編輯功能,與游戲端的操作對應起來。

      步驟S4026,封裝通信接口,用于在客戶端與用戶界面之間建立通信連接。

      在一種可選的方案中,可以利用各種進程通信技術封裝接口的調用函數(shù),比如RPC,管道,socket等等技術都可以實現(xiàn)進程間的通信。

      此處需要說明的是,編輯目標元素的接口以及進程通信接口的調用函數(shù)等可由游戲引擎接口加上腳本開發(fā)完成,不需要引擎開發(fā)人員在引擎層去開發(fā)這些編輯器,降低了技術門檻,例如,一般引擎開發(fā)為C/C++開發(fā)成本,開發(fā)門檻高。

      通過上述方案,客戶端直接直接采用引擎制作,不需要引擎的相關支持,直接使用引擎接口,開發(fā)人員只需要使用腳本開發(fā),開發(fā)速度快,開發(fā)成本低。

      可選的,根據(jù)本發(fā)明上述實施例,步驟S404,利用用戶界面開發(fā)框架開發(fā)編輯器的用戶界面可以包括如下步驟:

      步驟S4042,根據(jù)第二預設需求,利用用戶界面開發(fā)框架開發(fā)用戶界面,其中,用戶界面可執(zhí)行的功能至少包括:文件操作,目標元素的顯示和編輯,以及資源管理。

      具體的,上述第二預設需求可以是根據(jù)每個游戲開發(fā)項目的表達形式,針對項目確定的用戶界面的開發(fā)需求,這樣在保證通用性,復用性的情況下又提供了靈活性,讓各個項目快速構建編輯器。

      在一種可選的方案中,UI界面的制作主要是利用現(xiàn)有的各種UI框架定制編輯器的UI界面(比如QT),包括文件操作,元素屬性的顯示和編輯,資源管理等等。

      可選的,根據(jù)本發(fā)明上述實施例,在步驟S406,將編輯器的用戶界面的操作與進程通信接口的調用對接之后,上述方法還可以包括如下步驟:

      步驟S408,將客戶端嵌入到用戶界面中。

      在一種可選的方案中,可以基于應用程序編程接口,例如Windows API,將客戶端嵌入到編輯器的用戶界面中。編輯器主要的啟動過程如下:啟動一個用戶界面程序(可以用各種通用的UI框架例如QT編寫),然后這個用戶界面程序去啟動一個游戲端,然后將游戲端嵌入到用戶界面程序中作為用戶界面程序的一部分,兩者通過進程通信的方式進行交互。如圖6所示,圖6中的編輯器主要指用戶界面程序(UI),它作為首個啟動程序去啟動游戲端然后指使它嵌入到自己之中。整個程序啟動以后,游戲端負責編輯功能,用戶界面程序(UI)主要負責顯示和屬性的改變。

      可選的,根據(jù)本發(fā)明上述實施例,步驟S408,將客戶端嵌入到用戶界面中可以包括如下步驟:

      步驟S4082,刪除客戶端的窗口外邊沿。

      步驟S4084,將用戶界面的預設區(qū)域進行透明化處理,其中,預設區(qū)域為用戶界面上用于放置客戶端的區(qū)域。

      具體的,上述預設區(qū)域可以是用戶界面的一部分,這一部分主要是要放置游戲端,這一部分可以是編輯機UI的某個顯示層中的一部分。

      步驟S4086,將客戶端放置在用戶界面的預設區(qū)域上。

      步驟S4088,對用戶界面的窗口信息和/或客戶端的窗口信息進行配置,以使當用戶界面實施控制時,客戶端的窗口執(zhí)行相應的控制,其中,控制至少包括如下之一:移動位置、改變大小、關閉和開啟。

      在一種可選的方案中,游戲端嵌入編輯器UI主要通過windows api完成,將游戲端的窗口外沿去掉,將編輯器UI的一部分透明化,將游戲端的窗口置于編輯器UI上,將所有編輯器UI窗口的所有窗口信息劫持,并附加對游戲端窗口的相應操作,實現(xiàn)窗口的同步,即在拖動用戶界面的時候,可以同時控制內(nèi)嵌的客戶端窗口。例如,用戶對UI窗口的拉大、縮小等操作,需要附加到游戲端窗口上,對游戲端窗口進行拉大、縮小等操作,使得用戶感覺在使用同一個軟件。具體的實施方式為:以拖拽UI為例,用戶想要移動UI的位置,那么通過鼠標發(fā)送了一條拖拽指令,該拖動指令由Windows發(fā)送給UI時,同時還抄送了一份發(fā)給了內(nèi)嵌的客戶端窗口,以實現(xiàn)兩者可以同步地進行移動。

      例如,以圖7所示的關卡編輯器為例,對本發(fā)明上述實施例進行詳細說明??梢詫⒂螒蚨说拇翱谕膺呇厝サ?,將用戶界面左側透明化,并將游戲端嵌入,用戶可以通過在用戶界面上通過點擊、拖動等操作,改變游戲元素的屬性,用戶界面將接收到的操作信息通過調用進程通信接口的調用函數(shù),將操作信息發(fā)送給游戲端,游戲端根據(jù)接收到的操作信息,進行響應,并對游戲元素進行相應的編輯。

      本發(fā)明上述實施例提供的方案可以適用于Windows平臺,具有以下優(yōu)點:

      1.通用性強,根據(jù)本發(fā)明提供的方案開發(fā)的編輯器與項目無關,開發(fā)出來后每個項目都可以使用;

      2.可維護性高,根據(jù)本發(fā)明提供的方案開發(fā)的編輯器代碼不隨著游戲開發(fā)而改變,從而維護成本低;

      3.穩(wěn)定性好,根據(jù)本發(fā)明提供的方案開發(fā)的編輯器可以獨立迭代從而穩(wěn)定功能;

      4.開發(fā)成本低,根據(jù)本發(fā)明提供的方案開發(fā)的編輯器不涉及引擎部分,直接使用腳本便可開發(fā);

      5.可定制,根據(jù)本發(fā)明提供的方案開發(fā)的編輯器可以復用,并根據(jù)項目需求少量的開發(fā)來定制功能。

      需要說明的是,對于前述的各方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領域技術人員應該知悉,本發(fā)明并不受所描述的動作順序的限制,因為依據(jù)本發(fā)明,某些步驟可以采用其他順序或者同時進行。其次,本領域技術人員也應該知悉,說明書中所描述的實施例均屬于優(yōu)選實施例,所涉及的動作和模塊并不一定是本發(fā)明所必須的。

      通過以上的實施方式的描述,本領域的技術人員可以清楚地了解到根據(jù)上述實施例的方法可借助軟件加必需的通用硬件平臺的方式來實現(xiàn),當然也可以通過硬件,但很多情況下前者是更佳的實施方式?;谶@樣的理解,本發(fā)明的技術方案本質上或者說對現(xiàn)有技術做出貢獻的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品存儲在一個存儲介質(如ROM/RAM、磁碟、光盤)中,包括若干指令用以使得一臺終端設備(可以是手機,計算機,服務器,或者網(wǎng)絡設備等)執(zhí)行本發(fā)明各個實施例所述的方法。

      實施例二

      根據(jù)本發(fā)明實施例,還提供了一種編輯器的開發(fā)裝置的實施例。

      圖8是根據(jù)本發(fā)明實施例的一種編輯器的開發(fā)裝置的示意圖,如圖8所示,該裝置包括:第一開發(fā)模塊81,第二開發(fā)模塊83和連接模塊85。

      其中,第一開發(fā)模塊81用于利用開發(fā)引擎開發(fā)客戶端,其中,客戶端用于編輯目標元素,客戶端至少包括:編輯目標元素的接口和通信接口;第二開發(fā)模塊83用于利用用戶界面開發(fā)框架開發(fā)編輯器的用戶界面,其中,用戶界面用于顯示和編輯目標元素;連接模塊85用于通過通信接口在客戶端與用戶界面之間建立通信連接,以使當用戶界面編輯目標元素時,客戶端更改相應的業(yè)務邏輯。

      具體的,上述開發(fā)引擎可以是游戲引擎,上述客戶端可以是游戲端,游戲端是指利用游戲引擎開發(fā)一個具有游戲元素編輯功能游戲端。這里需要在游戲端響應用戶的鼠標鍵盤操作,以及開發(fā)好UI端需要的改變操作狀態(tài)的接口。比如切換視角,改變操作模式,響應熱鍵等等。上述目標元素可以是游戲元素,可以包括基本游戲元素和擴展的游戲元素,基礎游戲元素可以包括模型,場景,音效等,擴展的游戲元素可以包括怪物,尋路路線,陷阱等。上述編輯器可以是游戲編輯器,用于對游戲元素進行編輯。上述編輯器的用戶界面與上述客戶端通信可以采用任何進程間通信的方法,例如socket,管道,共享內(nèi)存等,但不僅限于此,其他形式的進程間通信的方法也可以實現(xiàn)上述實施例的目的。上述業(yè)務邏輯可以是編輯目標元素所對應的邏輯。

      此處需要說明的是,上述第一開發(fā)模塊81,第二開發(fā)模塊83和連接模塊85對應于實施例一中的步驟S402至步驟S406,三個模塊與對應的步驟所實現(xiàn)的實例和應用場景相同,但不限于上述實施例一所公開的內(nèi)容。需要說明的是,上述模塊作為裝置的一部分可以運行在實施例一提供的計算機終端30中。

      由上可知,本發(fā)明上述實施例二公開的方案中,利用開發(fā)引擎開發(fā)客戶端,利用用戶界面開發(fā)框架開發(fā)編輯器的用戶界面,并通過通信接口在客戶端與用戶界面之間建立通信連接,以使當用戶界面編輯目標元素時,客戶端更改相應的業(yè)務邏輯,從而實現(xiàn)編輯器的開發(fā)。

      容易注意到,由于客戶端與用戶界面分離,而客戶端是與項目無關的,可以采用公用引擎進行開發(fā),并且可以根據(jù)編輯器需求制作各種各樣的功能,而不必考慮游戲功能上的實現(xiàn)和相互干擾,并且可以針對項目開發(fā)用戶界面。因此,通過本發(fā)明實施例所提供的方案,可以達到通用性強、可維護性高、穩(wěn)定性好、開發(fā)成本低以及可定制的效果。

      由此,本發(fā)明提供的上述實施例二的方案解決了現(xiàn)有技術中游戲編輯器的開發(fā)成本高,導致難以迎合項目需求,只能做通用的編輯部分,通用性差的技術問題。

      可選的,根據(jù)本發(fā)明上述實施例,如圖9所示,連接模塊85可以包括:獲取子模塊91,發(fā)送子模塊93和執(zhí)行子模塊95。

      其中,獲取子模塊91用于當用戶界面中檢測到輸入操作時,獲取輸入操作對應的操作信息;發(fā)送子模塊93用于通過調用通信接口,將輸入操作對應的操作信息發(fā)送給客戶端;執(zhí)行子模塊95用于使客戶端根據(jù)操作信息調用對應的編輯目標元素的接口,對目標元素執(zhí)行對應的編輯,并實時顯示編輯后的結果。

      具體的,上述通信接口可以是游戲端封裝好的進行通信接口的調用函數(shù)。

      此處還需要說明的是,上述獲取子模塊91,發(fā)送子模塊93和執(zhí)行子模塊95對應于實施例一中的步驟S4062至步驟S4066,三個模塊與對應的步驟所實現(xiàn)的實例和應用場景相同,但不限于上述實施例一所公開的內(nèi)容。需要說明的是,上述模塊作為裝置的一部分可以運行在實施例一提供的計算機終端30中。

      可選的,根據(jù)本發(fā)明上述實施例,如圖10所示,上述第一開發(fā)模塊81可以包括:構建子模塊101,第一封裝子模塊103和第二封裝子模塊105。

      其中,構建子模塊101用于根據(jù)第一預設需求,構建客戶端可執(zhí)行的操作,其中,客戶端可執(zhí)行的操作至少包括如下任意一種或多種:響應用戶的輸入操作,場景資源操作,音效音樂操作和美術資源操作;第一封裝子模塊103用于利用開發(fā)引擎,封裝目標元素的編輯功能,得到編輯目標元素的接口,其中,目標元素的編輯功能與客戶端可執(zhí)行的操作對應;第二封裝子模塊105用于封裝通信接口,用于在客戶端與用戶界面之間建立通信連接。

      具體的,上述第一預設需求可以是編輯器的通用需求,是編輯器開發(fā)通用的,基本不變的部分。根據(jù)編輯器的需要,游戲端可以主要包括如下幾個部分:用戶操作響應、場景資源操作、音效音樂操作、美術資源操作以及與外部的通信。

      此處需要說明的是,編輯目標元素的接口以及進程通信接口的調用函數(shù)等可由游戲引擎接口加上腳本開發(fā)完成,不需要引擎開發(fā)人員在引擎層去開發(fā)這些編輯器,降低了技術門檻,例如,一般引擎開發(fā)為C/C++開發(fā)成本,開發(fā)門檻高。

      此處還需要說明的是,上述構建子模塊101,第一封裝子模塊103和第二封裝子模塊105對應于實施例一中的步驟S4022至步驟S4026,三個模塊與對應的步驟所實現(xiàn)的實例和應用場景相同,但不限于上述實施例一所公開的內(nèi)容。需要說明的是,上述模塊作為裝置的一部分可以運行在實施例一提供的計算機終端30中。

      通過上述方案,客戶端直接直接采用引擎制作,不需要引擎的相關支持,直接使用引擎接口,開發(fā)人員只需要使用腳本開發(fā),開發(fā)速度快,開發(fā)成本低。

      可選的,根據(jù)本發(fā)明上述實施例,如圖11所示,上述第二開發(fā)模塊83可以包括:開發(fā)子模塊111。

      其中,開發(fā)子模塊111用于根據(jù)第二預設需求,利用用戶界面開發(fā)框架開發(fā)編輯器的用戶界面,其中,用戶界面可執(zhí)行的功能至少包括:文件操作,目標元素的顯示和編輯,以及資源管理。

      具體的,上述第二預設需求可以是根據(jù)每個游戲開發(fā)項目的表達形式,針對項目確定的用戶界面的開發(fā)需求,這樣在保證通用性,復用性的情況下又提供了靈活性,讓各個項目快速構建編輯器。

      此處需要說明的是,上述開發(fā)子模塊111對應于實施例一中的步驟S4042,該模塊與對應的步驟所實現(xiàn)的實例和應用場景相同,但不限于上述實施例一所公開的內(nèi)容。需要說明的是,上述模塊作為裝置的一部分可以運行在實施例一提供的計算機終端30中。

      可選的,根據(jù)本發(fā)明上述實施例,如圖12所示,上述裝置還可以包括:嵌入模塊121。

      其中,嵌入模塊121用于將客戶端嵌入到用戶界面中。

      此處需要說明的是,上述嵌入模塊121對應于實施例一中的步驟S408,該模塊與對應的步驟所實現(xiàn)的實例和應用場景相同,但不限于上述實施例一所公開的內(nèi)容。需要說明的是,上述模塊作為裝置的一部分可以運行在實施例一提供的計算機終端30中。

      可選的,根據(jù)本發(fā)明上述實施例,如圖13所示,上述嵌入模塊121可以包括:刪除子模塊131,處理子模塊133,放置子模塊135和配置子模塊137。

      其中,刪除子模塊131用于刪除客戶端的窗口外邊沿;處理子模塊133,用于將用戶界面的預設區(qū)域進行透明化處理,其中,預設區(qū)域為用戶界面上用于放置客戶端的區(qū)域;放置子模塊135,用于將客戶端放置在用戶界面的預設區(qū)域上;配置子模塊137,用于對所述用戶界面的窗口信息和/或所述客戶端的窗口信息進行配置,以使當所述用戶界面實施控制時,所述客戶端的窗口執(zhí)行相應的控制,其中,所述控制至少包括如下之一:移動位置、改變大小、關閉和開啟。

      具體的,上述預設區(qū)域可以是用戶界面的一部分,這一部分主要是要放置游戲端,這一部分可以是編輯機UI的某個顯示層中的一部分。

      此處需要說明的是,上述刪除子模塊131,處理子模塊133,放置子模塊135和配置子模塊137對應于實施例一中的步驟S4082至步驟S4088,四個模塊與對應的步驟所實現(xiàn)的實例和應用場景相同,但不限于上述實施例一所公開的內(nèi)容。需要說明的是,上述模塊作為裝置的一部分可以運行在實施例一提供的計算機終端30中。

      實施例三

      根據(jù)本發(fā)明實施例,還提供了一種編輯方法的方法實施例,需要說明的是,在附圖的流程圖示出的步驟可以在諸如一組計算機可執(zhí)行指令的計算機系統(tǒng)中執(zhí)行,并且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。

      圖14是根據(jù)本發(fā)明實施例的一種編輯方法的流程圖,如圖14所示,上述方法可以包括如下步驟:

      步驟S1402,獲取操作信息,其中,操作信息至少包括對目標元素進行編輯所生成的操作信息。

      在一種可選的方案中,編輯器主要的啟動過程如下:啟動一個用戶界面程序(可以用各種通用的UI框架例如QT編寫),然后這個用戶界面程序去啟動一個游戲端,然后將游戲端嵌入到用戶界面程序中作為用戶界面程序的一部分,兩者通過進程通信的方式進行交互。如圖6所示,圖6中的編輯器主要指用戶界面程序(UI),它作為首個啟動程序去啟動游戲端然后指使它嵌入到自己之中。用戶可以在編輯器的用戶界面中點擊控件或者修改游戲元素的屬性的數(shù)值,可以獲取對應的操作信息,例如點擊控件的名稱,或者修改的游戲元素的名稱和數(shù)值,用戶界面調用封裝好的進程通信接口的調用函數(shù),將操作信息發(fā)送給游戲端,由游戲端對游戲元素進行編輯。

      步驟S1404,調用客戶端的通信接口建立與客戶端的通信連接,將操作信息發(fā)送至客戶端,其中,客戶端根據(jù)操作信息更改相應的業(yè)務邏輯。

      具體的,上述通信接口可以是游戲端封裝好的進行通信接口的調用函數(shù)。

      在一種可選的方案中,在一種可選的方案中,由于游戲端和外部UI端是兩個進程,所以需要實現(xiàn)游戲端與UI端之間的進程通信。可以通過將UI操作與進程通信接口的調用對接,實現(xiàn)UI端與游戲的信息交互,保證兩者組合后如在操作一個軟件。使用者可以如同使用一般編輯器一樣,在游戲端進行各種操作個體的創(chuàng)建,拖拉,改變外觀以及屬性,實時地觀察游戲元素在游戲場景中的效果,也可以在UI端改變操作個體的具體屬性到具體的數(shù)值,并在游戲端驗證自己的設計。由于游戲元素在編輯的時候的所有改變邏輯都是在游戲端進行的,所以用戶界面程序(UI)與游戲端的通信只有屬性的傳遞和少量的接口調用,保證了編輯器的流程度。

      由上可知,本發(fā)明上述實施例三公開的方案中,獲取操作信息,調用客戶端的通信接口建立與客戶端的通信連接,將操作信息發(fā)送至客戶端,客戶端根據(jù)操作信息更改相應的業(yè)務邏輯,從而實現(xiàn)對目標元素的編輯。

      容易注意到,由于客戶端與用戶界面分離,客戶端是與項目無關的,可以采用公用引擎進行開發(fā),并且可以根據(jù)編輯器需求制作各種各樣的功能,而不必考慮游戲功能上的實現(xiàn)和相互干擾,并且可以針對項目開發(fā)用戶界面。因此,通過本發(fā)明實施例所提供的方案,可以達到通用性強、可維護性高、穩(wěn)定性好、開發(fā)成本低以及可定制的效果。

      由此,本發(fā)明提供的上述實施例三的方案解決了現(xiàn)有技術中游戲編輯器的開發(fā)成本高,導致難以迎合項目需求,只能做通用的編輯部分,通用性差的技術問題。

      可選的,根據(jù)本發(fā)明上述實施例,步驟S1404,客戶端根據(jù)操作信息更改相應的業(yè)務邏輯包括:

      步驟S14042,客戶端根據(jù)操作信息調用對應的編輯目標元素的接口。

      步驟S14044,客戶端對目標元素執(zhí)行對應的編輯,并實時顯示編輯后的結果。

      在一種可選的方案中,客戶端可以根據(jù)對應的操作信息,例如修改的游戲元素的名稱和數(shù)值,調用對應的編輯游戲元素的接口,對游戲元素的名稱和數(shù)據(jù)進行相應的修改,并實時顯示修改后的游戲元素,由于游戲元素在編輯的時候的所有改變邏輯都是在游戲端進行的,所以用戶界面程序(UI)與游戲端的通信只有屬性的傳遞和少量的接口調用,保證了編輯器的流程度。

      可選的,根據(jù)本發(fā)明上述實施例,步驟S1402,獲取操作信息包括:

      步驟S14020,接收輸入操作,并生成與輸入操作對應的操作信息。

      在一種可選的方案中,用戶可以在編輯器的用戶界面中點擊控件或者修改游戲元素的屬性的數(shù)值,當檢測到用戶的輸入操作時,可以獲取對應的操作信息,例如點擊控件的名稱,或者修改的游戲元素的名稱和數(shù)值,用戶界面調用封裝好的進程通信接口的調用函數(shù),將操作信息發(fā)送給游戲端,由游戲端對游戲元素進行編輯。

      實施例四

      根據(jù)本發(fā)明實施例,還提供了一種編輯器的產(chǎn)品實施例。

      圖15是根據(jù)本發(fā)明實施例的一種編輯器的示意圖,如圖15所示,上述編輯器可以包括:

      客戶端151,用于編輯目標元素,客戶端至少包括:編輯目標元素的接口和通信接口。

      具體的,上述客戶端可以是游戲端,游戲端是指利用游戲引擎開發(fā)一個具有游戲元素編輯功能游戲端。這里需要在游戲端響應用戶的鼠標鍵盤操作,以及開發(fā)好UI端需要的改變操作狀態(tài)的接口,比如切換視角,改變操作模式,響應熱鍵等等。上述目標元素可以是游戲元素,可以包括基本游戲元素和擴展的游戲元素,基礎游戲元素可以包括模型,場景,音效等,擴展的游戲元素可以包括怪物,尋路路線,陷阱等。

      在一種可選的方案中,游戲端可以基于根據(jù)各個項目開發(fā)的使用的游戲引擎進行開發(fā),例如Neox引擎,Messiah引擎,以及Unity,Unreal等商業(yè)引擎進行制作。而一經(jīng)制作此引擎的游戲端,那么所有基于此引擎開發(fā)的項目組都可以在此游戲端上開發(fā)自己的編輯器。游戲端是與項目無關的,采用項目公用引擎開發(fā)的專門用于編輯器的游戲端,這個游戲端可以根據(jù)編輯器需求制作各種各樣的功能,而不必考慮游戲功能上的實現(xiàn)和相互干擾。

      例如,以如圖5所示的游戲編輯器的技術框架圖進行詳細說明。圖5中左邊的游戲端,即上述的客戶端,是編輯器開發(fā)通用的,基本不變的部分,是利用游戲引擎開發(fā)的各種游戲元素的編輯游戲端。對于游戲端,可以配套多種編輯器,所以游戲端是可以復用的。

      用戶界面153,通過通信接口與客戶端建立通信連接,用于獲取操作信息,以及顯示和編輯目標元素,其中,操作信息至少包括對目標元素進行編輯所生成的操作信息。

      具體的,上述編輯器的用戶界面與上述客戶端通信可以采用任何進程間通信的方法,例如socket,管道,共享內(nèi)存等,但不僅限于此,其他形式的進程間通信的方法也可以實現(xiàn)上述實施例的目的。

      在一種可選的方案中,編輯器的用戶界面(UI)開發(fā)可以采用現(xiàn)有的所有支持windows系統(tǒng)的UI開發(fā)框架,比如QT,MFC等進行開發(fā)。這些UI框架可以很方便的進行編輯器界面開發(fā),功能強大。

      例如,仍以如圖5所示的游戲編輯器的技術框架圖進行詳細說明。圖5中左邊的通用庫,以及右邊的編輯器1、編輯器2可以指用戶界面的開發(fā)。通用庫是所有編輯器可以共用的組件,比如屬性顯示編輯器,文件資源管理等等,是編輯器開發(fā)通用的,基本不變的部分,可以在各個項目開發(fā)中不斷迭代完善和開發(fā),不斷地充實通用庫的內(nèi)容,以達到復用的目的。而編輯器1,編輯器2,由于每個項目的表達形式不一,可以針對自己項目開發(fā)外部的UI編輯,這樣在保證通用性,復用性的情況下又提供了靈活性,讓各個項目快速構建編輯器。

      客戶端還用于根據(jù)操作信息更改相應的業(yè)務邏輯。

      具體的,上述業(yè)務邏輯可以是編輯目標元素所對應的邏輯。

      在一種可選的方案中,由于游戲端和外部UI端是兩個進程,所以需要實現(xiàn)游戲端與UI端之間的進程通信??梢酝ㄟ^將UI操作與進程通信接口的調用對接,實現(xiàn)UI端與游戲的信息交互,保證兩者組合后如在操作一個軟件。使用者可以如同使用一般編輯器一樣,在游戲端進行各種操作個體的創(chuàng)建,拖拉,改變外觀以及屬性,實時地觀察游戲元素在游戲場景中的效果,也可以在UI端改變操作個體的具體屬性到具體的數(shù)值,并在游戲端驗證自己的設計。

      由上可知,本發(fā)明上述實施例一公開的方案中,利用開發(fā)引擎開發(fā)客戶端,利用用戶界面開發(fā)框架開發(fā)編輯器的用戶界面,并通過通信接口在客戶端與用戶界面之間建立通信連接,以使當用戶界面編輯目標元素時,客戶端更改相應的業(yè)務邏輯,從而實現(xiàn)編輯器的開發(fā)。

      容易注意到,由于客戶端與用戶界面分離,客戶端是與項目無關的,可以采用公用引擎進行開發(fā),并且可以根據(jù)編輯器需求制作各種各樣的功能,而不必考慮游戲功能上的實現(xiàn)和相互干擾,并且可以針對項目開發(fā)用戶界面。因此,通過本發(fā)明實施例所提供的方案,可以達到通用性強、可維護性高、穩(wěn)定性好、開發(fā)成本低以及可定制的效果。

      由此,本發(fā)明提供的上述實施例一的方案解決了現(xiàn)有技術中游戲編輯器的開發(fā)成本高,導致難以迎合項目需求,只能做通用的編輯部分,通用性差的技術問題。

      可選的,根據(jù)本發(fā)明上述實施例,客戶端還用于根據(jù)操作信息調用對應的編輯目標元素的接口,對目標元素執(zhí)行對應的編輯,并實時顯示編輯后的結果。

      在一種可選的方案中,游戲元素在編輯的時候的所有改變邏輯都是在游戲端進行的,所以用戶界面程序(UI)與游戲端的通信只有屬性的傳遞和少量的接口調用,保證了編輯器的流程度。

      可選的,根據(jù)本發(fā)明上述實施例,用戶界面還用于當檢測到輸入操作時,獲取操作信息,并通過調用通信接口,將輸入操作對應的操作信息發(fā)送給客戶端。

      在一種可選的方案中,用戶可以在編輯器的用戶界面中點擊控件或者修改游戲元素的屬性的數(shù)值,當檢測到用戶的輸入操作時,可以獲取對應的操作信息,例如點擊控件的名稱,或者修改的游戲元素的名稱和數(shù)值,用戶界面調用封裝好的進程通信接口的調用函數(shù),將操作信息發(fā)送給游戲端,由游戲端對游戲元素進行編輯。

      可選的,根據(jù)本發(fā)明上述實施例,客戶端放置在用戶界面的預設區(qū)域,其中,刪除客戶端的窗口外邊沿,對預設區(qū)域進行透明化處理。

      具體的,上述預設區(qū)域可以是用戶界面的一部分,這一部分主要是要放置游戲端,這一部分可以是編輯機UI的某個顯示層中的一部分。

      客戶端還用于當用戶界面實施控制時,客戶端的窗口執(zhí)行相應的控制,其中控制至少包括如下之一:移動位置、改變大小、關閉和開啟其中。

      在一種可選的方案中,游戲端嵌入編輯器UI主要通過windows api完成,將游戲端的窗口外沿去掉,將編輯器UI的一部分透明化,將游戲端的窗口置于編輯器UI上,將所有編輯器UI窗口的所有窗口信息劫持,并附加對游戲端窗口的相應操作,實現(xiàn)窗口的同步,即在拖動用戶界面的時候,可以同時控制內(nèi)嵌的客戶端窗口。例如,用戶對UI窗口的拉大、縮小等操作,需要附加到游戲端窗口上,對游戲端窗口進行拉大、縮小等操作,使得用戶感覺在使用同一個軟件。具體的實施方式為:以拖拽UI為例,用戶想要移動UI的位置,那么通過鼠標發(fā)送了一條拖拽指令,該拖動指令由Windows發(fā)送給UI時,同時還抄送了一份發(fā)給了內(nèi)嵌的客戶端窗口,以實現(xiàn)兩者可以同步地進行移動。

      例如,以圖7所示的關卡編輯器為例,對本發(fā)明上述實施例進行詳細說明??梢詫⒂螒蚨说拇翱谕膺呇厝サ?,將用戶界面左側透明化,并將游戲端嵌入,用戶可以通過在用戶界面上通過點擊、拖動等操作,改變游戲元素的屬性,用戶界面將接收到的操作信息通過調用進程通信接口的調用函數(shù),將操作信息發(fā)送給游戲端,游戲端根據(jù)接收到的操作信息,進行響應,并對游戲元素進行相應的編輯。

      實施例五

      本發(fā)明的實施例可以提供一種計算機終端,該計算機終端可以是計算機終端群中的任意一個計算機終端設備。可選地,在本實施例中,上述計算機終端也可以替換為通信設備等終端設備。

      可選地,在本實施例中,上述計算機終端可以位于計算機網(wǎng)絡的多個網(wǎng)絡設備中的至少一個網(wǎng)絡設備。

      在本實施例中,上述計算機終端可以執(zhí)行編輯器的開發(fā)方法中以下步驟的程序代碼:利用開發(fā)引擎開發(fā)客戶端,其中,客戶端用于編輯目標元素,客戶端至少包括:編輯目標元素的接口和通信接口;利用用戶界面開發(fā)框架開發(fā)編輯器的用戶界面,其中,用戶界面用于顯示和編輯目標元素;通過通信接口在客戶端與用戶界面之間建立通信連接,以使當用戶界面編輯目標元素時,客戶端更改相應的業(yè)務邏輯。

      可選地,圖16是根據(jù)本發(fā)明實施例的一種計算機終端的結構框圖。如圖16所示,該計算機終端A可以包括:一個或多個(圖中僅示出一個)處理器161、存儲器163、以及傳輸裝置165。

      其中,存儲器可用于存儲軟件程序以及模塊,如本發(fā)明實施例中的編輯器的開發(fā)方法和裝置對應的程序指令/模塊,處理器通過運行存儲在存儲器內(nèi)的軟件程序以及模塊,從而執(zhí)行各種功能應用以及數(shù)據(jù)處理,即實現(xiàn)上述的編輯器的開發(fā)方法。存儲器可包括高速隨機存儲器,還可以包括非易失性存儲器,如一個或者多個磁性存儲裝置、閃存、或者其他非易失性固態(tài)存儲器。在一些實例中,存儲器可進一步包括相對于處理器遠程設置的存儲器,這些遠程存儲器可以通過網(wǎng)絡連接至終端A。上述網(wǎng)絡的實例包括但不限于互聯(lián)網(wǎng)、企業(yè)內(nèi)部網(wǎng)、局域網(wǎng)、移動通信網(wǎng)及其組合。

      處理器可以通過傳輸裝置調用存儲器存儲的信息及應用程序,以執(zhí)行下述步驟:利用開發(fā)引擎開發(fā)客戶端,其中,客戶端用于編輯目標元素,客戶端至少包括:編輯目標元素的接口和通信接口;利用用戶界面開發(fā)框架開發(fā)編輯器的用戶界面,其中,用戶界面用于顯示和編輯目標元素;通過通信接口在客戶端與用戶界面之間建立通信連接,以使當用戶界面編輯目標元素時,客戶端更改相應的業(yè)務邏輯。

      可選的,上述處理器還可以執(zhí)行如下步驟的程序代碼:當用戶界面中檢測到輸入操作時,用戶界面獲取輸入操作對應的操作信息,其中,操作信息至少包括對目標元素進行編輯所生成的操作信息;用戶界面通過調用通信接口,將輸入操作對應的操作信息發(fā)送給客戶端;客戶端根據(jù)操作信息調用對應的編輯目標元素的接口,對目標元素執(zhí)行對應的編輯,并實時顯示編輯后的結果。

      可選的,上述處理器還可以執(zhí)行如下步驟的程序代碼:根據(jù)第一預設需求,構建客戶端可執(zhí)行的操作,其中,可執(zhí)行的操作至少包括如下任意一種或多種:響應用戶的輸入操作,場景資源操作,音效音樂操作和美術資源操作;利用開發(fā)引擎,封裝目標元素的編輯功能,得到編輯目標元素的接口,其中,目標元素的編輯功能與客戶端可執(zhí)行的操作對應;封裝通信接口,用于在客戶端與用戶界面之間建立通信連接。

      可選的,上述處理器還可以執(zhí)行如下步驟的程序代碼:根據(jù)第二預設需求,利用用戶界面開發(fā)框架開發(fā)用戶界面,其中,用戶界面可執(zhí)行的功能至少包括:文件操作,目標元素的顯示和編輯,以及資源管理。

      可選的,上述處理器還可以執(zhí)行如下步驟的程序代碼:將客戶端嵌入到用戶界面中。

      可選的,上述處理器還可以執(zhí)行如下步驟的程序代碼:刪除客戶端的窗口外邊沿;將用戶界面的預設區(qū)域進行透明化處理,其中,預設區(qū)域為用戶界面上用于放置客戶端的區(qū)域;將客戶端放置在用戶界面的預設區(qū)域上;對用戶界面的窗口信息和/或客戶端的窗口信息進行配置,以使當用戶界面實施控制時,客戶端的窗口執(zhí)行相應的控制,其中,控制至少包括如下之一:移動位置、改變大小、關閉和開啟。

      采用本發(fā)明實施例,利用開發(fā)引擎開發(fā)客戶端,利用用戶界面開發(fā)框架開發(fā)編輯器的用戶界面,并通過通信接口在客戶端與用戶界面之間建立通信連接,以使當用戶界面編輯目標元素時,客戶端更改相應的業(yè)務邏輯,從而實現(xiàn)編輯器的開發(fā)。

      容易注意到,由于客戶端與用戶界面分離,客戶端是與項目無關的,可以采用公用引擎進行開發(fā),并且可以根據(jù)編輯器需求制作各種各樣的功能,而不必考慮游戲功能上的實現(xiàn)和相互干擾,并且可以針對項目開發(fā)用戶界面。因此,通過本發(fā)明實施例所提供的方案,可以達到通用性強、可維護性高、穩(wěn)定性好、開發(fā)成本低以及可定制的效果。

      由此,本發(fā)明實施例解決了現(xiàn)有技術中游戲編輯器的開發(fā)成本高,導致難以迎合項目需求,只能做通用的編輯部分,通用性差的技術問題。

      本領域普通技術人員可以理解,圖16所示的結構僅為示意,計算機終端也可以是智能手機(如Android手機、iOS手機等)、平板電腦、掌聲電腦以及移動互聯(lián)網(wǎng)設備(Mobile Internet Devices,MID)、PAD等終端設備。圖16其并不對上述電子裝置的結構造成限定。例如,計算機終端A還可包括比圖16中所示更多或者更少的組件(如網(wǎng)絡接口、顯示裝置等),或者具有與圖16所示不同的配置。

      本領域普通技術人員可以理解上述實施例的各種方法中的全部或部分步驟是可以通過程序來指令終端設備相關的硬件來完成,該程序可以存儲于一計算機可讀存儲介質中,存儲介質可以包括:閃存盤、只讀存儲器(Read-Only Memory,ROM)、隨機存取器(Random Access Memory,RAM)、磁盤或光盤等。

      實施例六

      本發(fā)明的實施例還提供了一種存儲介質??蛇x地,在本實施例中,上述存儲介質可以用于保存上述實施例一所提供的編輯器的開發(fā)方法所執(zhí)行的程序代碼。

      可選地,在本實施例中,上述存儲介質可以位于計算機網(wǎng)絡中計算機終端群中的任意一個計算機終端中,或者位于通信設備群中的任意一個通信設備中。

      可選地,在本實施例中,存儲介質被設置為存儲用于執(zhí)行以下步驟的程序代碼:利用開發(fā)引擎開發(fā)客戶端,其中,客戶端用于編輯目標元素,客戶端至少包括:編輯目標元素的接口和通信接口;利用用戶界面開發(fā)框架開發(fā)編輯器的用戶界面,其中,用戶界面用于顯示和編輯目標元素;通過通信接口在客戶端與用戶界面之間建立通信連接,以使當用戶界面編輯目標元素時,客戶端更改相應的業(yè)務邏輯。

      可選地,存儲介質還被設置為存儲用于執(zhí)行以下步驟的程序代碼:當用戶界面中檢測到輸入操作時,用戶界面獲取輸入操作對應的操作信息,其中,操作信息至少包括對目標元素進行編輯所生成的操作信息;用戶界面通過調用通信接口,將輸入操作對應的操作信息發(fā)送給客戶端;客戶端根據(jù)操作信息調用對應的編輯目標元素的接口,對目標元素執(zhí)行對應的編輯,并實時顯示編輯后的結果。

      可選地,存儲介質還被設置為存儲用于執(zhí)行以下步驟的程序代碼:根據(jù)第一預設需求,構建客戶端可執(zhí)行的操作,其中,可執(zhí)行的操作至少包括如下任意一種或多種:響應用戶的輸入操作,場景資源操作,音效音樂操作和美術資源操作;利用開發(fā)引擎,封裝目標元素的編輯功能,得到編輯目標元素的接口,其中,目標元素的編輯功能與客戶端可執(zhí)行的操作對應;封裝通信接口,用于在客戶端與用戶界面之間建立通信連接。

      可選地,存儲介質還被設置為存儲用于執(zhí)行以下步驟的程序代碼:根據(jù)第二預設需求,利用用戶界面開發(fā)框架開發(fā)用戶界面,其中,用戶界面可執(zhí)行的功能至少包括:文件操作,目標元素的顯示和編輯,以及資源管理。

      可選地,存儲介質還被設置為存儲用于執(zhí)行以下步驟的程序代碼:將客戶端嵌入到用戶界面中。

      可選地,存儲介質還被設置為存儲用于執(zhí)行以下步驟的程序代碼:刪除客戶端的窗口外邊沿;將用戶界面的預設區(qū)域進行透明化處理,其中,預設區(qū)域為用戶界面上用于放置客戶端的區(qū)域;將客戶端放置在用戶界面的預設區(qū)域上;對用戶界面的窗口信息和/或客戶端的窗口信息進行配置,以使當用戶界面實施控制時,客戶端的窗口執(zhí)行相應的控制,其中,控制至少包括如下之一:移動位置、改變大小、關閉和開啟。

      上述本發(fā)明實施例序號僅僅為了描述,不代表實施例的優(yōu)劣。

      在本發(fā)明的上述實施例中,對各個實施例的描述都各有側重,某個實施例中沒有詳述的部分,可以參見其他實施例的相關描述。

      在本申請所提供的幾個實施例中,應該理解到,所揭露的技術內(nèi)容,可通過其它的方式實現(xiàn)。其中,以上所描述的裝置實施例僅僅是示意性的,例如所述單元的劃分,可以為一種邏輯功能劃分,實際實現(xiàn)時可以有另外的劃分方式,例如多個單元或組件可以結合或者可以集成到另一個系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,單元或模塊的間接耦合或通信連接,可以是電性或其它的形式。

      所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個單元上??梢愿鶕?jù)實際的需要選擇其中的部分或者全部單元來實現(xiàn)本實施例方案的目的。

      另外,在本發(fā)明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以采用硬件的形式實現(xiàn),也可以采用軟件功能單元的形式實現(xiàn)。

      所述集成的單元如果以軟件功能單元的形式實現(xiàn)并作為獨立的產(chǎn)品銷售或使用時,可以存儲在一個計算機可讀取存儲介質中?;谶@樣的理解,本發(fā)明的技術方案本質上或者說對現(xiàn)有技術做出貢獻的部分或者該技術方案的全部或部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品存儲在一個存儲介質中,包括若干指令用以使得一臺計算機設備(可為個人計算機、服務器或者網(wǎng)絡設備等)執(zhí)行本發(fā)明各個實施例所述方法的全部或部分步驟。而前述的存儲介質包括:U盤、只讀存儲器(ROM,Read-Only Memory)、隨機存取存儲器(RAM,Random Access Memory)、移動硬盤、磁碟或者光盤等各種可以存儲程序代碼的介質。

      以上所述僅是本發(fā)明的優(yōu)選實施方式,應當指出,對于本技術領域的普通技術人員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也應視為本發(fā)明的保護范圍。

      當前第1頁1 2 3 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1