html5和c++封裝webkit內核實現開放式游戲大廳設計(一)


在公司近期做一個關於用html5和c++封裝webkit內核實現游戲大廳的項目;簡稱html5游戲大廳,可以以APP方式接入各種技術實現的游戲,比如webgame,客戶端游戲,flash游戲等。


游戲大廳其實C++早就做的很成熟了並且已經運營多年,但由於近期HTML5的勢頭強勁,加之google的v8 javascript引擎之強力,公司決定嘗試性用c++打包webkit內核,在webkit上用html5來實現游戲大廳的游戲界面布局,本地緩存,通信等;
========== C++實現的游戲大廳有以下幾點弊端 =======
1、UI布局比較困難;
2、一旦UI上有一點點變化,則需要用戶更新整個或部分游戲大廳安裝包重新下載安裝;
3、C++開發周期較長;
 
========== HTML5實現的游戲大廳有以下幾個優點=======
1、由css3配合html5標簽實現UI布局非常快速;
2、由於是HTML,可以說大部分的界面或游戲內容更新不需要用戶重新下載客戶端安裝;
3、html ,javascript,css這些技術使用簡單,可以有效降低開發周期
 
========== HTML5實現的游戲大廳有以下幾個缺點=======
1、由於是web安全性一直受到質疑
2、websocket還是沒有很好的實現
=========================================  i am 分割線  =========================================  
 
 
html5游戲大廳實現思路:
 
1、用C++打包webkit實現一個自己的瀏覽器環境。用css3+html5+javascript實現大廳UI繪制及用戶操作;
2、 每一個window即一個單一的webkit進程,每個APP即一個單獨的window;
3、 由C++開放各種本地API供javascript調用,以讓web擁有操作本地API的能力,即每個app都可以通過調用C++開放的接口用javascript訪問或設置本地窗口環境;
4、專門設置一個window用作全局的消息管理,我們命令為messageCenter用於各app與服務器通信,服務器也通過 messageCenter發送消息給APP;
 
 
大廳流程:
所有窗體內的內容由HTML5繪制
1、安裝完游戲大廳安裝包后,雙擊顯示登陸口窗體,類似於QQ登陸窗口,;
2、驗證用戶名密碼后C++負責啟動游戲大廳窗體;
3、HTML5繪制大廳UI,繪制游戲列表
4、雙擊某個游戲,啟動游戲房間窗體
5、雙擊某個游戲啟動游戲窗體,即啟動了一個app


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM