跨平臺同步方法與系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計算機技術(shù),具體涉及一種跨平臺的用戶界面設計中的同步方法與系統(tǒng)。
【背景技術(shù)】
[0002]隨著互聯(lián)網(wǎng)和移動互聯(lián)網(wǎng)的發(fā)展,游戲產(chǎn)業(yè)正日益壯大。傳統(tǒng)的游戲開發(fā)工具多只能開發(fā)適用于單個系統(tǒng)的游戲,而為了提高開發(fā)效率,跨平臺游戲開發(fā)工具應運而生,如國外的U3D使用腳本和內(nèi)建虛擬機執(zhí)行,實現(xiàn)了跨平臺游戲的開發(fā)功能,國內(nèi)的Cyclone也采用C++版本進行游戲開發(fā),實現(xiàn)了快速從Android游戲移植到1S或者Windows的平臺下的功能。
[0003]UI即User Interface (用戶界面)的簡稱。UI設計則是指對軟件的人機交互、操作邏輯、界面美觀的整體設計。要實現(xiàn)游戲開發(fā)工具的跨平臺開發(fā)工作,其中要解決的一個重要問題就是開發(fā)工具中的UI編輯器的跨平臺工作問題。因為不同的平臺下UI編輯器是使用不同的平臺API來繪圖UI效果的,為此需要單獨編寫相關(guān)程序來實現(xiàn)相應功能,但這樣比較耗費開發(fā)時間。
[0004]目前可以選擇使用跨平臺的UI框架工具GTK為UI編輯器提供UI效果。GTK(GIMP Toolkit)是一套源碼以LGPL許可協(xié)議分發(fā)、跨平臺的圖形工具包,作為圖形用戶界面(⑶I)工具包,GTK支持創(chuàng)建基于⑶I的應用程序,目前已成為功能強大、設計靈活的通用圖形庫,是GNU/Linux下開發(fā)圖形界面的應用程序的主流開發(fā)工具之一。
[0005]在MAC下,GTK只能調(diào)用系統(tǒng)API來繪圖簡單的圖形,無法提供游戲渲染繪圖,為此將GTK和OPENGL整合在一起來實現(xiàn)渲染效果和UI界面效果的結(jié)合,即在GTK所形成的UI界面內(nèi)單獨運行一個調(diào)用OPENGL來生成渲染效果的窗口。OpenGL是行業(yè)領(lǐng)域中最為廣泛接納的2D/3D圖形API,其自誕生至今已催生了各種計算機平臺及設備上的數(shù)千優(yōu)秀應用程序。OpenGL是獨立于視窗操作系統(tǒng)或其它操作系統(tǒng)的,幫助程序員實現(xiàn)在PC、工作站、超級計算機等硬件設備上的高性能、極具沖擊力的高視覺表現(xiàn)力圖形處理軟件的開發(fā),使用OpenGL進行圖形渲染,可以讓移動設備的GPU性能發(fā)揮到極致。
[0006]在某些情況下,比如當拖動整個UI編輯器的時候,GTK的UI界面會進行拖動,而GTK上預留的空白區(qū)域也會隨之移動,但是調(diào)OPENGL的渲染窗口卻不會移動,因此該窗口可能會覆蓋住UI界面上的某些按鈕而無法進行相應的操作。再比如調(diào)整UI編輯器變小的時候,GTK上預留的空白區(qū)域也會隨之變小,而調(diào)用OPENGL的渲染窗口的大小依然不變,有可能會覆蓋住UI界面上的某些按鈕而無法進行相應的操作。特別是在MAC系統(tǒng)下,用戶調(diào)整跨平臺游戲開發(fā)工具的UI界面時,比如用戶移動UI界面窗口或者改變UI界面窗口的面積,GTK會根據(jù)用戶的調(diào)整來改變自身的窗口,但是OPENGL進行游戲渲染的窗口獨立于GTK的控制,因此該窗口不會隨著調(diào)整而做出同步的改變,導致整個UI界面上的一些功能受到影響無法工作,并且整個UI界面也非常不美觀和友好,無法讓開發(fā)人員繼續(xù)進行工作。
[0007]因此,需要解決OPENGL窗口和GTK的UI界面不能同步變化的問題,導致在設計時最初的UI設計初衷無法很好地表現(xiàn)甚至無法實現(xiàn),進而降低用戶滿意度,實需要改善。
【發(fā)明內(nèi)容】
[0008]本發(fā)明的目的是提供于跨平臺的用戶界面設計中的同步方法與系統(tǒng),
為了實現(xiàn)上述目的,本發(fā)明采用的技術(shù)方案是
一種跨平臺的同步方法,其中,包括:
設置第一顯示區(qū)域,
設置第二顯示區(qū)域;
同步模塊將第一顯示區(qū)域的顯示對象同步到該第二顯示區(qū)域內(nèi)。
[0009]所述的同步方法,其中,該同步模塊對第一顯示區(qū)域的記錄有一間隔時間;該同步模塊對第二顯示區(qū)域的顯示有一刷新時間;該間隔時間與刷新時間的范圍為0-0.5秒。
[0010]所述的同步方法,其中,該間隔時間與刷新時間的延遲時間范圍為0-0.5秒。
[0011]所述的同步方法,其中,該間隔時間、刷新時間以及延遲時間為0.1秒。
[0012]所述的同步方法,其中,該顯示對象為坐標值、面積值、顏色值、紋理值或渲染值。
[0013]一種跨平臺的同步系統(tǒng),其中,該系統(tǒng)包括:
第一顯示區(qū)域,
第二顯示區(qū)域;
同步模塊,與第一顯示區(qū)域以及第二顯示區(qū)域相連,該同步模塊將第一顯示區(qū)域的顯示對象同步到該第二顯示區(qū)域內(nèi)。
[0014]所述的同步系統(tǒng),其中,該同步模塊對第一顯示區(qū)域的記錄有一間隔時間;該同步模塊對第二顯示區(qū)域的顯示有一刷新時間;該間隔時間與刷新時間的范圍為0-0.5秒。
[0015]所述的同步系統(tǒng),其中,該間隔時間與刷新時間的延遲時間范圍為0-0.5秒。
[0016]所述的同步系統(tǒng),其中,該間隔時間、刷新時間以及延遲時間為0.1秒。
[0017]所述的同步系統(tǒng),其中,該顯示對象為坐標值、面積值、顏色值、紋理值或渲染值。
[0018]本發(fā)明的其它特征和優(yōu)點將在隨后的說明書中闡述,并且,部分地從說明書中變得顯而易見,或者通過實施本發(fā)明而了解。本發(fā)明的目的和其他優(yōu)點可通過在所寫的說明書、權(quán)利要求書中所特別指出的結(jié)構(gòu)來實現(xiàn)和獲得。
[0019]下面通過實施例,對本發(fā)明的技術(shù)方案做進一步的詳細描述。
[0020]
【具體實施方式】
[0021]下面對本發(fā)明作進一步詳細的說明。
[0022]
【實施例1】
一種跨平臺的同步方法,其中,包括:設置第一顯示區(qū)域,設置第二顯示區(qū)域;同步模塊將第一顯示區(qū)域的顯示對象同步到該第二顯示區(qū)域內(nèi)。
[0023]該同步模塊對第一顯示區(qū)域的記錄有一間隔時間;該同步模塊對第二顯示區(qū)域的顯示有一刷新時間;該間隔時間與刷新時間的范圍為0-0.5秒。該間隔時間與刷新時間的延遲時間范圍為0-0.5秒,為了達到同步效果,必須要騙過人的眼睛。該間隔時間、刷新時間以及延遲時間最佳為0.1秒。
[0024]該顯示對象為坐標值、面積值、顏色值、紋理值或渲染值。
[0025]【實施例2】
一種跨平臺的同步系統(tǒng),其中,該系統(tǒng)包括:第一顯示區(qū)域,第二顯示區(qū)域;同步模塊,與第一顯示區(qū)域以及第二顯示區(qū)域相連,該同步模塊將第一顯示區(qū)域的顯示對象同步到該第二顯示區(qū)域內(nèi)。
[0026]該同步模塊對第一顯示區(qū)域的記錄有一間隔時間;該同步模塊對第二顯示區(qū)域的顯示有一刷新時間;該間隔時間與刷新時間的范圍為0-0.5秒。該間隔時間與刷新時間的延遲時間范圍為0-0.5秒,為了達到同步效果,必須要騙過人的眼睛。該間隔時間、刷新時間以及延遲時間為0.1秒。
[0027]該顯示對象為坐標值、面積值、顏色值、紋理值或渲染值。
[0028]【實施例3】
以蘋果電腦系統(tǒng)為例(MAC系統(tǒng)),首先,GTK調(diào)用MAC系統(tǒng)自身的API來繪制UI編輯器的UI界面,在繪制好的UI界面上GTK會預留第一顯示區(qū)域。該第一顯示區(qū)域為一個空白區(qū)域,該空白區(qū)域是矩形形狀。
[0029]在UI編輯器的后臺設有一個同步模塊,每隔一段時間記錄第一顯示區(qū)域,該時間稱為間隔時間。為了達到同步效果,必須要騙過人的眼睛,因此該間隔時間必須要小于0.5秒。該同步記錄模塊會根據(jù)間隔時間不斷更新對第一顯示區(qū)域的坐標值(比如選取矩形的中心二維坐標作為其坐標值)和面積值(比如屏幕的像素點數(shù))等等的記錄的顯