一種游戲角色行為的控制方法
【技術領域】
[0001 ]本發明涉及一種游戲角色行為的控制方法。
【背景技術】
[0002]隨著智能觸屏手機的普及,手游已經成為主流的游戲形式,為了保留傳統的搖桿體驗感,應用于手游的虛擬搖桿應運而生,虛擬搖桿即通過在屏幕上滑動來實現傳統搖桿的功能。
[0003]虛擬搖桿在手游中的應用非常廣泛,多見于格斗游戲和FPS游戲(First-PersonShooting Game,第一人稱射擊類游戲)中,然而因受限于觸屏技術,目前的虛擬搖桿都是基于二維平面的二軸操控方式,主要用來控制角色的方位,例如:通過朝某一方向滑動屏幕實現角色朝該方向的移動或者瞄準該方向進行技能釋放。對角色的更多操控往往需要借助于其他控件或者增加虛擬搖桿,亦或是對二軸虛擬搖桿進行功能復合。例如,根據操作虛擬搖桿時的滑動幅度來控制角色產生開始移動時的加速度感和停止移動時的慣性緩沖感,但是此種方式下,滑動幅度對角色移動的控制只體現在“開始移動”和“停止移動”兩個短暫的時間點,移動過程中角色該以什么樣的速度移動是玩家無法控制的,限制了玩家;另外由于屏幕尺寸有限,滑動屏幕的幅度有限,對速度控制的范圍相應減少,導致對速度控制的靈敏度降低。又如,在虛擬搖桿控制角色移動的基礎上,若玩家以非長按方式觸發并滑動虛擬搖桿,則控制角色的移動,若玩家以長按的方式觸發并滑動虛擬搖桿,則觸發射擊技能(此時的虛擬搖桿控制射擊方位),此種方式中,在同一個虛擬搖桿上將兩種并無關聯的功能進行合并,導致玩家的學習成本增大,并且僅通過長按/非長按兩種狀態來區分兩種不同功能,導致玩家容易操作失誤。
[0004]可見,通過二軸虛擬搖桿對角色進行控制的游戲中,仍然存在可控功能單一和操作復雜的缺陷。
【發明內容】
[0005]本發明的主要目的在于基于觸控壓力感應技術,將觸控壓力值作為Z軸輸入變量來構建三軸虛擬搖桿,以使玩家能夠在不增加操作復雜度的前提下通過三軸虛擬搖桿對游戲角色進行更多的操控。為了實現該目的,本發明提出以下技術方案:
[0006]—種游戲角色行為的控制方法,包括:
[0007]以屏幕上游戲界面中的一預定點為原點構建一空間直角坐標系,該空間直角坐標系的X軸和Y軸構成的平面與屏幕平行,Z軸垂直于屏幕;基于所述空間直角坐標系構建以所述原點為中心點的用于控制角色行為的三軸虛擬搖桿,并且,以用戶觸控操作時控制點的坐標作為三軸虛擬搖桿的X軸和Y軸的變量輸入,以用戶觸控操作時對屏幕產生的壓力作為三軸虛擬搖桿的Z軸變量輸入;游戲運行過程中,獲取用戶當前操作三軸虛擬搖桿的觸控信號,提取所述觸控信號中控制點的坐標以及觸控壓力值,并計算所述控制點相對所述中心點的偏移量;根據所述偏移量和所述觸控壓力值來控制角色作出相應的行為。在本技術方案中,所述控制方法通過將用戶觸控操作時的按壓力作為變量賦予Z軸,構建三軸虛擬搖桿,能夠較為逼真地模擬實物搖桿,并且將控制點位置和觸控壓力值共同作為決定因素,兩者結合來控制角色的相應行為,與現有技術的二軸虛擬搖桿控制方法相比,相同的操作手勢下,本發明不僅能夠實現目前的二軸虛擬搖桿對角色的控制功能,還能在此基礎上根據具體游戲具體需求,賦予Z軸變量(觸屏壓力)不同的控制功能,在不需要增加搖桿數量和操作手勢的前提下,實現對游戲角色的更多操控,使得用戶操作體驗更具沉浸感。
[0008]更進一步地,根據所述偏移量和所述觸控壓力值來控制角色作出相應的行為具體包括:當所述偏移量大于一第一閾值時,將用戶當前的觸控操作判為滑動手勢,并對所述觸控壓力值進行數據處理以生成模擬控制信號,通過所述模擬控制信號來控制角色進行一第一行為的速度或頻率,以使得角色執行所述第一行為的速度或頻率與所述觸控壓力值成正比;當所述偏移量小于或等于所述第一閾值時,將用戶當前的觸控操作判為點擊手勢,并比較所述觸控壓力值與一第二閾值的大小:若所述觸控壓力值大于所述第二閾值,則生成第一控制信號;否則,生成第二控制信號;其中,所述第一控制信號用于控制角色進入一第二行為的第一狀態,所述第二控制信號用于控制角色進入所述第二行為的第二狀態。在本技術方案中,通過判斷偏移量的大小,來決定應對角色執行何種功能的控制,在不同的偏移量范圍內,對角色進行不同的功能控制,尤其是可以將觸控壓力值生成模擬控制信號來控制角色進行第一行為的速度或頻率,相比于現有技術中只能通過長按/非長按等只具有兩種狀態的控制輸出而言,多種狀態的控制輸出使得控制更加精準,更接近于實物搖桿,游戲體驗更佳。
[0009]更進一步地,根據所述偏移量和所述觸控壓力值來控制角色作出相應的行為具體包括:比較所述觸控壓力值與一第二閾值的大小:若所述觸控壓力值大于所述第二閾值,則生成第一控制信號;否則,生成第二控制信號;當所述偏移量大于一第一閾值時,將用戶當前的觸控操作判為滑動手勢,并通過所述第一控制信號控制角色以第一速度或第一頻率或第一方式進行一第一行為,通過所述第二控制信號控制角色以第二速度或第二頻率或第二方式進行所述第一行為;當所述偏移量小于或等于所述第一閾值時,將用戶當前的觸控操作判為點擊手勢,并通過所述第一控制信號控制角色進入一第二行為的第一狀態,通過所述第二控制信號控制角色進入所述第二行為的第二狀態。
[0010]更進一步地,所述第一速度大于所述第二速度,所述第一頻率大于所述第二頻率。[0011 ]更進一步地,所述第一行為包括角色移動、角色釋放技能或角色發動攻擊;所述第二行為是具有兩種不同狀態的行為,并且一個角色在一個時間點上擇一地處于所述兩種不同狀態中的一種。
[0012]更進一步地,所述第一閾值為所述中心點至所述三軸虛擬搖桿邊緣的距離。
【附圖說明】
[0013]圖1是三軸虛擬搖桿的架構示意圖;
[0014]圖2是用戶操作三軸虛擬搖桿時的示意圖。
【具體實施方式】
[0015]下面結合附圖和優選的實施方式對本發明作進一步說明。
[0016]本發明的【具體實施方式】提供一種游戲角色行為的控制方法,用于控制觸屏移動終端游戲中角色的至少部分行為,參考圖1,所述控制方法如下:
[0017]首先,以屏幕100上游戲界面中的一預定點為原點構建一空間直角坐標系,該空間直角坐標系的X軸和Y軸構成的平面與屏幕平行,Z軸垂直于屏幕。其次,參考圖1,基于所述空間直角坐標系構建以所述原點為中心點0的用于控制角色行為的三軸虛擬搖桿K,并且,以用戶觸控操作時控制點P(即用戶手指所定位的點)的坐標作為三軸虛擬搖桿的X軸和Y軸的變量輸入,以用戶觸控操作時對屏幕產生的壓力作為三軸虛擬搖桿的Z軸變量輸入。在游戲運行過程中,獲取用戶當前操作三軸虛擬搖桿K的觸控信號,提取所述觸控信號中控制點P的坐標以及觸控壓力值,并計算所述控制點P相對于所述中心點0的偏移量D,然后根據所述偏移量D和所述觸控壓力值來控制角色作出相應的行為。
[0018]在一種具體的實施例A中,根據所述偏移量D和所述觸控壓力值來控制角色作出相應的行為具體包括:
[0019]情況A1:當所述偏移量D大于一第一閾值d 1時,即當D>d 1時,將用戶當前的觸控操作判為滑動手勢,并對所述觸控壓力值進行數據處理以生成模擬控制信號,通過所述模擬控制信號來控制角色進行一第一行為的速度或頻率,以使得角色執行所述第一行為的速度或頻率與所述觸控壓力值成正比。其中,第一閾值例如可以是中心點0至三軸虛擬搖桿邊緣的距離R。以圖2為例,用戶操作三軸虛擬搖桿K時,手指沿方向S滑動到控制點P處,相對于中心點0產生的偏移量為D,可以判斷出偏移量D大于R,即D>dl,此種情況下:若第一行為是角色移動,則移動速度與用戶滑動手勢過程中(即從三軸虛擬搖桿處滑動到控制點P處的過程中)所用的觸控壓力成正比,用戶按壓力度越大(即重(zhong)按點擊)則角色移動越