麻豆精品无码国产在线播放,国产亚洲精品成人AA片新蒲金,国模无码大尺度一区二区三区,神马免费午夜福利剧场

游戲系統中虛擬鏡頭的控制方法及控制裝置與流程

文檔序號:12347274閱讀:264來源:國知局
游戲系統中虛擬鏡頭的控制方法及控制裝置與流程

本申請涉及手機游戲領域,具體地,本申請涉及一種游戲系統中虛擬鏡頭的控制方法及控制裝置。



背景技術:

在PC端游上,大部分即時戰斗游戲(RTS),都是支持以多人小隊為單位進行集體指令操作,也支持對單獨一個作戰單位進行細致操作。玩家的輸入都是靠“鍵盤+鼠標”的方式,而鏡頭(或玩家的視野),一般是隨著鼠標觸碰屏幕邊緣進行同方向的移動。PC端游的鏡頭方案的優勢在于自由,但它實現的前提是因為“鍵盤+鼠標”這種組合輸入方式。到了智能移動設備(手機、PAD)上,輸入方式只靠觸摸屏實現,即使是現階段已經支持多點觸摸,但依然達不到PC端游的自由度。

所以,現在市場上大部分以單玩家操縱多虛擬角色組隊進行戰斗的RPG手游,都是以一個虛擬角色為主操縱角色,其他多個虛擬角色作為AI跟隨。玩家在同一時間內,只能操作一名虛擬角色,如果需要控制其他虛擬角色,則必須先進行主操控角色的切換操作以將其他虛擬角色切換為主操控角色。但現有技術中,游戲中的虛擬攝像機往往以一定的方式跟隨主操作角色移動,常常出現部分虛擬角色不在虛擬鏡頭范圍內(即:不在顯示范圍內),從而導致在以組隊協作為核心的游戲中,進行主操作角色的切換或控制存在困難。



技術實現要素:

本申請實施例提供了一種游戲系統中虛擬鏡頭的控制方法及控制裝置,以至少解決在屏幕中難以同時展現虛擬角色隊伍中的全部虛擬角色的技術問題。

根據本申請實施例的一個方面,提供了一種游戲系統中虛擬鏡頭的控制方法,包括以下步驟:檢測游戲系統中的虛擬角色隊伍中的每個虛擬角色的坐標,虛擬角色隊伍包括一個或多個虛擬角色,一個或多個虛擬角色中的至少一個由游戲的玩家控制;計算各個虛擬角色的坐標所圍成的多邊形的重心坐標;以及控制游戲系統的虛擬鏡頭的視點中心跟隨重心坐標移動。

根據本申請實施例的另一方面,還提供了一種游戲系統中虛擬鏡頭的控制裝置,包括:虛擬角色檢測單元,用于檢測游戲系統中的虛擬角色隊伍中的每個虛擬角色的坐標,虛擬角色隊伍包括一個或多個虛擬角色,一個或多個虛擬角色中的至少一個由游戲的玩家控制;重心計算單元,用于計算各個虛擬角色的坐標所圍成的多邊形的重心坐標;以及虛擬鏡頭設置單元,用于控制游戲系統的虛擬鏡頭的視點中心跟隨重心坐標移動。

本申請所要解決的技術問題是:在以多人小隊戰斗為核心玩法的手游上,提供一個自動的虛擬鏡頭跟隨方案,保證盡可能多的虛擬角色隊伍中的虛擬角色能夠同時展現在屏幕中。

本申請利用算法,保證隊伍移動時,所有虛擬角色均可見,提高游戲的“隊伍集體作戰”體驗;保證戰斗時,所有虛擬角色和目標虛擬角色(例如,玩家在游戲中的虛擬角色的對手虛擬角色)均可見,同時可以響應玩家操作,提高游戲的“指揮”體驗。

附圖說明

圖1是根據本申請一實施例的游戲系統中虛擬鏡頭的控制方法的流程圖;

圖2是根據本申請另一實施例的游戲系統中虛擬鏡頭的控制方法的流程圖;

圖3是根據本申請一實施例的游戲系統中虛擬鏡頭的控制裝置的框圖;

圖4是根據本申請一示例性實施例的游戲系統中虛擬鏡頭的控制方法的流程圖;

圖5是根據本申請另一示例性實施例的游戲系統中虛擬鏡頭的控制方法的流程圖。

具體實施方式

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

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

圖1是根據本申請一實施例的游戲系統中虛擬鏡頭的控制方法的流程圖。如圖1所示,根據本申請實施例,提供了一種游戲系統中虛擬鏡頭的控制方法,包括:步驟S101,檢測游戲系統中的虛擬角色隊伍中的每個虛擬角色的坐標,虛擬角色隊伍包括一個或多個虛擬角色,一個或多個虛擬角色中的至少一個由游戲的玩家控制;步驟S103,計算各個虛擬角色的坐標所圍成的多邊形的重心坐標;以及步驟S105,控制游戲系統的虛擬鏡頭的視點中心跟隨重心坐標移動。例如,游戲中的虛擬角色隊伍由一個或多個虛擬角色構成,虛擬角色可以是玩家控制的虛擬角色。在虛擬角色隊伍中,玩家控制其中的一個虛擬角色,也可以控制其中的多個虛擬角色或者全部虛擬角色。在現有手游的操作中,通常玩家只能操作一個虛擬角色,而虛擬角色隊伍中的其余虛擬角色由AI控制,虛擬鏡頭也以玩家操作的虛擬角色為中心,這使得當玩家控制的虛擬角色移動時,虛擬鏡頭的移動使玩家經常看不到虛擬角色隊伍中的其他虛擬角色,也限制了玩家僅能操作一個虛擬角色,游戲體驗不佳。通常,在游戲中的例如“非戰斗狀態”的對手虛擬角色不與玩家控制的虛擬角色互動的狀態下,玩家只需關注該虛擬角色隊伍中的虛擬角色。在本申請實施例中,將虛擬鏡頭的視點中心設定在虛擬角色隊伍的中心。具體地,本申請實施例還計算虛擬角色的坐標的連線所圍成的多邊形的重心坐標,然后根據該重心坐標設置虛擬鏡頭的視點中心,以此方式,虛擬鏡頭的視點中心被設定在虛擬角色隊伍中間使得虛擬角色隊伍中的虛擬角色相對均勻地分布在虛擬鏡頭的視野中,而不是固定在某個特定的虛擬角色上。

在根據本申請實施例的控制方法中,如果虛擬角色隊伍包括的虛擬角色的數量為1,則重心坐標為虛擬角色的坐標,如果虛擬角色隊伍包括的虛擬角色的數量大于1,則重心坐標A=(xb,yb)的計算公式為

其中,虛擬角色的數量為n,n≥1,xi是n個虛擬角色中的第i個虛擬角色的x軸坐標,yi是n個虛擬角色中的第i個虛擬角色的y軸坐標。也就是說,如果該虛擬角色隊伍中只有一個虛擬角色,則該虛擬角色的坐標即虛擬角色隊伍的重心坐標,虛擬鏡頭的視點中心根據該重心坐標設置。如果虛擬角色隊伍包括多個虛擬角色,則虛擬角色隊伍的重心坐標的x軸坐標為虛擬角色隊伍中的所有虛擬角色的x軸坐標的平均值,虛擬角色隊伍的重心坐標的y軸坐標為虛擬角色隊伍中的所有虛擬角色的y軸坐標的平均值。以此方式可以計算出虛擬角色隊伍的重心坐標。

根據本申請實施例的控制方法還包括:檢測基準虛擬角色的坐標,基準虛擬角色是虛擬角色隊伍中與目標虛擬角色最近的虛擬角色,計算重心坐標到基準虛擬角色的坐標的向量,如果基準虛擬角色的坐標位移為新的坐標,則將向量平移使得基準虛擬角色的坐標與新的坐標重合,根據重心坐標平移后得到的坐標設置新的虛擬鏡頭的視點中心。如果虛擬角色隊伍中的虛擬角色移動,例如,玩家控制虛擬角色隊伍中的一個或多個虛擬角色移動,使得該虛擬角色的坐標發生位移,則為了保證虛擬鏡頭跟隨虛擬角色,需要重新定位虛擬鏡頭的視點中心。在本申請實施例中,可以將虛擬角色隊伍中的與目標虛擬角色最近的一個虛擬角色設為基準虛擬角色,目標虛擬角色例如是玩家的虛擬角色在游戲中的對手虛擬角色或敵人虛擬角色,基準虛擬角色例如是虛擬角色隊伍中與該對手虛擬角色或敵人虛擬角色最近的虛擬角色。當基準虛擬角色移動時,虛擬角色隊伍的重心改變,虛擬鏡頭相應發生變化。在本申請實施例中,虛擬鏡頭的視點中心通過計算出中心的坐標與基準虛擬角色的坐標的向量,當基準虛擬角色移動到新的坐標時,該向量跟隨基準虛擬角色的移動而移動,這樣向量另一端的重心坐標將跟隨向量,即,跟隨基準虛擬角色的移動而移動,得到重心坐標平移后的新的坐標,然后以該新的坐標為依據設置新的虛擬鏡頭的中心。以此方式,可以得出虛擬角色隊伍中的虛擬角色移動后虛擬鏡頭的合適位置。

圖2是根據本申請另一實施例的游戲系統中虛擬鏡頭的控制方法的流程圖。如圖2所示,根據本申請實施例的方法還包括:步驟S201,檢測游戲系統中的目標虛擬角色的坐標;步驟S203,計算重心坐標到目標虛擬角色的坐標之間的線段的中點的坐標,以及步驟S205,根據中點的坐標設置新的視點中心。通常,在游戲中的例如“戰斗狀態”的對手虛擬角色與玩家控制的虛擬角色互動的狀態下,玩家需要看到作為目標虛擬角色的對手或者敵人的虛擬角色,因此,如果虛擬鏡頭的視點中心設定在特定虛擬角色的坐標或者虛擬角色隊伍中的某個坐標處將產生不便。為了方便將虛擬角色隊伍和目標虛擬角色均勻分布在虛擬鏡頭的視野中,在本申請實施例中,根據虛擬角色隊伍的重心坐標和目標虛擬角色的坐標之間的線段的中點的坐標設置虛擬鏡頭的視點中心。以這樣的方式,方便玩家看到虛擬角色隊伍與目標虛擬角色。

在根據本申請實施例的控制方法中,如果一個或多個虛擬角色和目標虛擬角色中的任一個的坐標發生位移,則重新計算新的中點的坐標。通常,在戰斗狀態下,虛擬角色隊伍中的虛擬角色與目標虛擬角色可能移動。其中,每個虛擬角色的移動都會產生重心坐標和目標虛擬角色的坐標之間的線段的中點的坐標的變化,因此,如果任一個坐標變化,需要重新計算新的中點的坐標。以這樣的方式,隨時更新設置虛擬鏡頭所需要的中點的坐標。

在根據本申請實施例的控制方法中,如果新的中點的坐標與中點的坐標之間的距離大于預定閾值,將新的虛擬鏡頭的視點中心設置為新的中點的坐標。通常,例如在“戰斗狀態”下,任一個虛擬角色的移動可能會比較頻繁,或者移動的幅度較小。若對于任何虛擬角色的移動都改變虛擬鏡頭的視點中心的定位,屏幕的頻繁、或者微小的移動是不必要的甚至是不便的。因此,在本申請實施例中,設置預定閾值,只有當新的中點的坐標與中點的坐標之間的距離大于預定閾值時才設定新的虛擬鏡頭的視點中心。例如,該預定閾值可以是2個虛擬角色模型單位。這時,根據新的中點的坐標設置虛擬鏡頭的視點中心。以這樣的方式,避免了不必要的虛擬鏡頭的移動,玩家體驗更好。

根據本申請實施例的控制方法還包括:將虛擬鏡頭的視點中心勻速移動到新的虛擬鏡頭的視點中心。虛擬鏡頭的視點中心的改變使給玩家呈現的畫面發生改變,突然的改變會使玩家難以找到虛擬角色或者目標,因此在本申請實施例中采用平滑處理,在虛擬角色隊伍重心改變、虛擬角色隊伍中虛擬角色移動和中點移動超過預定閾值等的任一種情況下導致虛擬鏡頭的視點中心改變,可以將原虛擬鏡頭的視點中心勻速移動到新的虛擬鏡頭的視點中心。以這樣的方式,給玩家呈現的畫面平滑移動,玩家體驗更好。

圖3是根據本申請一實施例的游戲系統中虛擬鏡頭的控制裝置的框圖。如圖3所示,本申請實施例還提供了一種游戲系統中虛擬鏡頭的控制裝置,包括:虛擬角色檢測單元302,用于檢測游戲中的虛擬角色隊伍中的每個虛擬角色的坐標,虛擬角色隊伍包括一個或多個虛擬角色,一個或多個虛擬角色中的至少一個虛擬角色由游戲的玩家控制;重心計算單元304,用于計算各個虛擬角色的坐標的所圍成的多邊形的重心坐標;虛擬鏡頭設置單元306,用于控制游戲系統的虛擬鏡頭的視點中心跟隨所述重心坐標移動。

根據本申請實施例的裝置還包括:基準虛擬角色檢測單元308,用于獲得基準虛擬角色的坐標,基準虛擬角色是虛擬角色隊伍中與目標虛擬角色最近的虛擬角色;向量計算單元310,用于計算重心坐標與基準虛擬角色的坐標的向量;以及新虛擬鏡頭設置單元312,如果基準虛擬角色的坐標位移為新的坐標,則將向量平移使得基準虛擬角色的坐標與新的坐標重合,根據重心坐標平移后得到的坐標設置新的虛擬鏡頭的視點中心。

根據本申請實施例的裝置還包括:目標檢測單元314,用于獲得游戲中的目標虛擬角色的坐標;中點計算單元316,用于計算重心坐標到目標虛擬角色的坐標之間的線段的中點的坐標,視點更新單元318,根據中點的坐標設置新的虛擬鏡頭的視點中心。

根據本申請實施例的裝置還包括:視點移動單元320,用于將虛擬鏡頭的視點中心勻速移動到新的虛擬鏡頭的視點中心。

根據本申請實施例的裝置執行上述實施例中對應的方法,在此不再贅述。

在本申請的示例性實施例中,提供一套完整的虛擬鏡頭追隨虛擬角色隊伍移動的算法,包含:

1、非戰斗狀態下的虛擬鏡頭追隨算法。

非戰斗狀態下,敵人虛擬角色不在虛擬鏡頭中。虛擬角色隊伍以一個陣型整體移動,虛擬鏡頭固定于虛擬角色隊伍中心點。但由于地形變化,陣型不會一直保持規則多邊形,虛擬角色隊伍中心點可能會出現抖動,所以本申請也提供了解決平滑鏡頭移動軌跡的算法。

2、戰斗狀態下的虛擬鏡頭追隨算法。

戰斗狀態下,本申請的算法保證目標敵人虛擬角色和玩家控制的虛擬角色都在同一虛擬鏡頭的視野里,并且保證盡可能少的發生虛擬鏡頭位置的變化。

以下結合圖4和圖5詳細說明本申請示例性實施例的設置虛擬鏡頭的視點中心的方法。

1、非戰斗狀態下,全隊移動時的虛擬鏡頭追隨算法。

圖4是根據本申請一示例性實施例的設置虛擬鏡頭的視點中心的方法的流程圖。如圖4所示,在圖4中:

S401,輸入所有虛擬角色的2D坐標(1至4個);

S402,計算2D坐標連線圍成的多邊形的重心2D坐標;

當虛擬角色隊伍虛擬角色數量==1,則重心2D坐標=S401獲得的2D坐標;

當虛擬角色隊伍虛擬角色數量>1,則重心2D坐標A=(xb,yb)的計算公式為

S403,獲取目標敵人坐標,求出最靠近敵人的虛擬角色(命名為H)2D坐標B=(xh,yh);其中,虛擬角色的數量為n,n≥1,xi是n個虛擬角色中的第i個虛擬角色的x軸坐標,yi是n個虛擬角色中的第i個虛擬角色的y軸坐標。

S404,計算S402重心坐標A與S403虛擬角色(H)坐標B的向量

S405,將鏡頭視點中心設置為A;

S406,開啟定時器,檢查虛擬角色坐標是否發生位移;

S407,當虛擬角色(H)坐標發生位移時,通過新的坐標B′將S404的向量平移后,可以計算得到新的視點中心A′;

S408,將虛擬鏡頭勻速移動到A′;

S409,重復S406的流程,直到進入戰斗狀態。

2、戰斗狀態下,鏡頭定位算法。

圖5是根據本申請另一示例性實施例的游戲系統中虛擬鏡頭的控制方法的流程圖。如圖5所示,在圖5中:

S501,輸入所有虛擬角色的2D坐標(1至4個),目標敵人虛擬角色(命名為N)的2D坐標E(取最靠近虛擬角色的1個);

S502,計算虛擬角色2D坐標連線組成的多邊形的重心2D坐標A(同S402);

S503,計算線段AE的中點C;

S504,鏡頭視點設置為C;

S505,開啟定時器,檢查所有虛擬角色和敵人虛擬角色(N)的坐標是否發生位移;

S506,當有任意一個坐標發生位移時,通過重復S501、S502、S503的步驟,可以算得新的中點坐標C′;

S507,當S504坐標C與S506坐標C′距離大于2個虛擬角色模型單位時,更新S504鏡頭視點中心為C′;

S508,將鏡頭勻速移動到C′;

S509,重復S505的流程,直到退出戰斗狀態。

本申請在以多人小隊戰斗為核心玩法的手游上,提供一個自動的鏡頭跟隨方案,保證盡可能多的小隊成員能夠同時展現在屏幕中。本申請利用算法,保證虛擬角色隊伍移動時,所有虛擬角色均可見,提高游戲的“隊伍集體作戰”體驗;保證戰斗時,所有虛擬角色和目標虛擬角色均可見,同時可以響應玩家操作,提高游戲的“指揮”體驗。

以上所述僅是本申請的示例性實施方式,應當指出,對于本技術領域的普通技術人員來說,在不脫離本申請原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也應視為本申請的保護范圍。

當前第1頁1 2 3 
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
主站蜘蛛池模板: 曲水县| 麟游县| 富川| 驻马店市| 合肥市| 双城市| 新疆| 时尚| 惠水县| 庄河市| 浏阳市| 徐水县| 铜梁县| 清苑县| 吉林省| 栾川县| 成都市| 手游| 辽源市| 宜黄县| 方山县| 仙游县| 贡觉县| 昌都县| 荔波县| 瓮安县| 疏勒县| 白水县| 内丘县| 娄烦县| 丹阳市| 镇江市| 宁武县| 长海县| 元江| 梅河口市| 福建省| 灌阳县| 芦山县| 双柏县| 九江县|