[發明專利]CS架構下的物理計算網絡同步方法無效
| 申請號: | 201010149174.6 | 申請日: | 2010-04-16 |
| 公開(公告)號: | CN101841538A | 公開(公告)日: | 2010-09-22 |
| 發明(設計)人: | 朱德棟 | 申請(專利權)人: | 上海亞圖軟件有限公司 |
| 主分類號: | H04L29/06 | 分類號: | H04L29/06;H04L29/08;H04L7/00 |
| 代理公司: | 上海東亞專利商標代理有限公司 31208 | 代理人: | 羅習群 |
| 地址: | 200241 上海市閔*** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | cs 架構 物理 計算 網絡 同步 方法 | ||
技術領域
本發明涉及一種CS架構下的網絡同步技術,特別涉及在有物理計算情況下的網絡同步。
背景技術
物理引擎是由計算機模擬牛頓力學模型的一套完整API。它使用物體的質量、速度、受力情況等信息,來計算一定時間里物體的運動狀態。在多個物體的場景中,利用碰撞檢測判斷物體之間是否有接觸,從而對受力物體施加力沖擊,以模擬真實情況下的物理碰撞。
CS架構表示客戶端與服務端架構,可以將服務部署于用戶PC(客戶端)和大型服務器(服務端),客戶端可以向服務端發送數據和請求,由服務端處理后再返還給客戶端。一般的CS架構下的一個服務僅涉及一個客戶端,不同的客戶端之間相互獨立,不存在網絡同步問題。而在另一些領域,客戶端之間需要通過服務端進行交互,并且需要保證時間一致性,例如網絡游戲、網絡會議等,那么客戶端之間就需要進行同步。
目前,CS架構下的網絡同步在網絡游戲領域應用十分廣泛,客戶端主要發送一些用戶的操作數據,由服務端進行計算得到狀態數據,然后轉發給這個服務涉及的所有客戶端,服務的同步范圍因應用的不同而有差異。通常情況下,服務端計算的狀態數據計算量很小。
隨著物理引擎在單機游戲領域的使用越來越廣泛,我們逐漸體會到物理引擎給玩家帶來的震撼和真實的體驗。物理引擎也開始在網絡游戲中開始了應用。對于現有的CS架構,服務器端無法承受如此大量的計算任務。
1.物理計算屬于實時計算,需要消耗大量處理器的計算能力。
2.物理引擎中的非剛體計算,涉及的數據量很大,不適合通過網絡傳輸同步。
3.物理計算的初始狀態會對后續計算產生累積的蝴蝶效應,對用戶的交互有影響,同步要求很高。
因此,本文中涉及的技術,需要就以上幾點進行改進,在有物理計算的情況下,解決CS架構下的一些同步問題。
發明內容
物理計算的特點是實時性較高、非剛體計算涉及數據量很大、初始條件的設置對后續計算結果影響很大。針對前兩點,物理計算需要放在客戶端進行。對于第三點,需要有精確的同步性。
為了兼顧計算的效率和同步的精確,對CS架構下含有物理計算的交互服務,針對物理計算相關部分和客戶端服務端之間的通信流程做改進。
服務端不進行物理計算,僅負責接受客戶端數據,并同步到其它客戶端。客戶端對用戶控制的物體進行物理計算,將其狀態發送給服務端。
本發明是在客戶端和服務端具備雙向通訊機制,在客戶端進行物理計算,并發送數據;服務端只接收數據,并據此發送同步信號,不進行物理計算;客戶端和服務端雙向通訊實施同步的步驟,其中對于受控物體是:
(1)客戶端接受客戶受控物體操作;
(2)對受控物體進行物理量計算;
(3)更新場景中所有物體物理信息;
(4)向服務端發送受控物體狀態數據;
(5)服務端接收客戶端發送的受控物體狀態的數據;
(6)服務端更新鏡像物體狀態數據;
(7)服務端向客戶端發送鏡像物體狀態數據;
(8)客戶端接收服務端的同步信息;
(9)選擇更新;
(10)結束;
其中對于非受控物體,同步策略為“碰撞交換控制權”,即由客戶端的受控物體撞擊非受控物體獲得物體的數據“發送權”,其步驟是:
(1)對非控受物體進行物理量計算;
(2)檢測碰撞;
(3)如有碰撞,檢測碰撞類型;如無碰撞,直接更新“發送權”;
(4)如有碰撞,碰撞類型是一般物體,則向服務端發送碰撞信息;如碰撞是其他客戶端受控物體,則直接更新發送權;
(5)檢測有、無“發送權”,如無,直接更新發送權;如有,則向服務端發送物體的物理信息;
(6)服務端接收碰撞信息;
(7)更新用戶“發送權”;
(8)服務端接收客戶端物體的物理信息;
(9)檢測“發送權”一致否?
(10)如不一致,則向客戶端發送更新的“發送權”;
(11)如一致,則更新物體物理信息后,再向客戶端發送更新的“發送權”;
(12)結束。
本發明的優點是,服務端節省了大量物體物理量計算,加快了實時控制的速度。
附圖說明
圖1客戶端與服務端同步示意圖;
圖2客戶端與服務端交換通信流程圖;
圖3非受控物體“發送權”更新策略流程圖。
具體實施方式
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于上海亞圖軟件有限公司,未經上海亞圖軟件有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201010149174.6/2.html,轉載請聲明來源鉆瓜專利網。





