本發(fā)明的實施方式涉及網(wǎng)絡游戲技術領域,更具體地,本發(fā)明的實施方式涉及一種在游戲中使用的模擬方法和裝置。
背景技術:
本部分旨在為權(quán)利要求書中陳述的本發(fā)明的實施方式提供背景或上下文。此處的描述不因為包括在本部分中就承認是現(xiàn)有技術。
網(wǎng)絡游戲(Online Game)簡稱“網(wǎng)游”,又稱“在線游戲”。是指以互聯(lián)網(wǎng)為傳輸媒介,以游戲運營商服務器和用戶計算機為處理終端,以游戲客戶端軟件為信息交互窗口的旨在實現(xiàn)娛樂、休閑、交流和取得虛擬成就的、具有可持續(xù)性的個體性多人在線游戲。網(wǎng)絡游戲的區(qū)別與單機游戲,因為用戶必須通過互聯(lián)網(wǎng)連接來進行多人游戲。
技術實現(xiàn)要素:
現(xiàn)有的網(wǎng)絡游戲僅為用戶提供與游戲角色進行互動以完成游戲任務等的功能,游戲場景中包含的其他游戲?qū)ο?,例如,場景中包含的一些樹葉、雪花等游戲?qū)ο髢H用于布景,而沒有與用戶互動的功能。
因此,在現(xiàn)有技術中,用戶在通過游戲客戶端進行游戲的過程中,與游戲場景中除了游戲角色以外的游戲?qū)ο蠡有暂^低,影響了用戶的體驗。
為此,非常需要一種改進的游戲互動方法,以使游戲場景中一些用于布景的游戲?qū)ο缶邆浠幽芰?,并與用戶進行互動,提高用戶體驗。
在本上下文中,本發(fā)明的實施方式期望提供一種在游戲中使用的模擬方法和裝置。
在本發(fā)明實施方式的第一方面中,提供了一種在游戲中使用的模擬方法,包括:
按照預設的第一力場參數(shù)對在指定范圍內(nèi)產(chǎn)生的物理粒子施加第一作用力,使得所述物理粒子在所述第一作用力的作用下向預設的隱藏位圖運動;
當所述物理粒子運動至所述隱藏位圖上的特定圖案時,控制所述物理粒子的運動速度為零,以便聚集的物理粒子逐漸形成所述特定圖案。
在本發(fā)明實施方式的第二方面中,提供了一種在游戲中使用的模擬裝置,包括:
第一控制單元,用于按照預設的第一力場參數(shù)對在指定范圍內(nèi)產(chǎn)生的物理粒子施加第一作用力,使得所述物理粒子在所述第一作用力的作用下向預設的隱藏位圖運動;
第二控制單元,用于當所述物理粒子運動至所述隱藏位圖上的特定圖案時,控制所述物理粒子的運動速度為零,以便聚集的物理粒子逐漸形成所述特定圖案。
在本發(fā)明實施方式的第三方面中,提供了一種在游戲中使用的模擬裝置,例如,可以包括存儲器和處理器,其中,處理器可以用于讀取存儲器中的程序,執(zhí)行下列過程:按照預設的第一力場參數(shù)對在指定范圍內(nèi)產(chǎn)生的物理粒子施加第一作用力,使得所述物理粒子在所述第一作用力的作用下向預設的隱藏位圖運動;當所述物理粒子運動至所述隱藏位圖上的特定圖案時,控制所述物理粒子的運動速度為零,以便聚集的物理粒子逐漸形成所述特定圖案。
在本發(fā)明實施方式的第四方面中,提供了一種程序產(chǎn)品,其包括程序代碼,當所述程序產(chǎn)品運行時,所述程序代碼用于執(zhí)行以下過程:按照預設的第一力場參數(shù)對在指定范圍內(nèi)產(chǎn)生的物理粒子施加第一作用力,使得所述物理粒子在所述第一作用力的作用下向預設的隱藏位圖運動;當所述物理粒子運動至所述隱藏位圖上的特定圖案時,控制所述物理粒子的運動速度為零,以便聚集的物理粒子逐漸形成所述特定圖案。
根據(jù)本發(fā)明實施方式的在游戲中使用的模擬方法和裝置,通過控制游戲場景中的物理粒子向預設的隱藏位圖運動,當其運動至隱藏位圖上的特定圖案時,控制物理粒子的速度為零,使得聚集的物理逐漸形成所述特定圖案,實現(xiàn)了游戲場景中除了游戲角色以外的游戲?qū)ο蟮幕庸δ?,為用戶帶來了更好的體驗。
附圖說明
通過參考附圖閱讀下文的詳細描述,本發(fā)明示例性實施方式的上述以及其他目的、特征和優(yōu)點將變得易于理解。在附圖中,以示例性而非限制性的方式示出了本發(fā)明的若干實施方式,其中:
圖1示意性地示出了根據(jù)本發(fā)明實施方式的應用場景示意圖;
圖2示意性地示出了根據(jù)本發(fā)明實施方式的在游戲中使用的模擬方法的實施流程示意圖;
圖3示意性地示出了根據(jù)本發(fā)明實施方式的第一種給物理粒子施加作用力的側(cè)視圖;
圖4示意性地示出了根據(jù)本發(fā)明實施方式的第一種給物理粒子施加作用力的俯視圖;
圖5示意性地示出了根據(jù)本發(fā)明實施方式的位圖生成流程示意圖;
圖6示意性地示出了根據(jù)本發(fā)明另一實施例的在游戲中使用的模擬裝置結(jié)構(gòu)示意圖;
在附圖中,相同或?qū)臉颂柋硎鞠嗤驅(qū)牟糠帧?/p>
具體實施方式
下面將參考若干示例性實施方式來描述本發(fā)明的原理和精神。應當理解,給出這些實施方式僅僅是為了使本領域技術人員能夠更好地理解進而實現(xiàn)本發(fā)明,而并非以任何方式限制本發(fā)明的范圍。相反,提供這些實施方式是為了使本公開更加透徹和完整,并且能夠?qū)⒈竟_的范圍完整地傳達給本領域的技術人員。
本領域技術人員知道,本發(fā)明的實施方式可以實現(xiàn)為一種系統(tǒng)、裝置、設備、方法或計算機程序產(chǎn)品。因此,本公開可以具體實現(xiàn)為以下形式,即:完全的硬件、完全的軟件(包括固件、駐留軟件、微代碼等),或者硬件和軟件結(jié)合的形式。
根據(jù)本發(fā)明的實施方式,提出了一種在游戲中使用的模擬方法和裝置。
在本文中,需要理解的是,所涉及的術語中:
物理引擎:物理引擎是一種仿真程序,可用來創(chuàng)建一種虛擬環(huán)境,在其中集成來自物理世界的規(guī)律。在這個虛擬的環(huán)境中包括的物體,除了物體之間的相互作用(比如碰撞)外,還包括施加到它們身上的力(比如重力)。物理引擎可在仿真環(huán)境內(nèi)模擬牛頓物理學并處理這些力和相互作用。
粒子系統(tǒng):粒子系統(tǒng)表示三維計算機圖形學中模擬一些特定的現(xiàn)象的技術。通常粒子系統(tǒng)在三維空間中的位置與運動是由發(fā)射器控制的。發(fā)射器主要由一組粒子行為參數(shù)以及在三維空間中的位置所表示。粒子行為參數(shù)可以包括粒子生成速度(即單位時間粒子生成的數(shù)目)、粒子初始速度向量(例如什么時候向什么方向運動)、粒子壽命(經(jīng)過多長時間粒子湮滅)等等。
典型的粒子系統(tǒng)更新循環(huán)可以劃分為兩個不同的階段:參數(shù)更新/模擬階段以及渲染階段。每個循環(huán)執(zhí)行每一幀動畫。
剛體(rigidbody):物理引擎中的基本物體,有形狀,位置,方向,速度,角速度等基本屬性。剛體在物理引擎中不會因為受力而形變。
人偶(ragdoll):人偶是物理引擎中的一個概念,游戲角色對應有一套由多個剛體構(gòu)成的人偶,比如游戲角色的軀干是一個剛體,手臂是一個剛體,這些剛體組合成人偶。游戲角色在做動作的時候,對應剛體也在動,它們動的時候能接觸到場景中其它剛體,并對其它剛體施加一定的作用力。
物理粒子:即是帶有物理屬性的粒子系統(tǒng),粒子擁有形狀,位置、速度、方向等物理屬性。物理粒子在更新/模擬階段受物理規(guī)律約束,比如碰到剛體會反彈,受到重力影響,粒子當前位置p0,當前速度v,每幀更新的時間間隔是t,那么粒子下一幀的位置是P1=P0+vt。當前速度會受重力等物理力影響。
力場:在物理引擎中,對一定范圍以內(nèi)的物理粒子,根據(jù)物理粒子的位置,速度,方向產(chǎn)生一定的力、力矩的場,它是控制粒子運動的關鍵。
此外,附圖中的任何元素數(shù)量均用于示例而非限制,以及任何命名都僅用于區(qū)分,而不具有任何限制含義。
下面參考本發(fā)明的若干代表性實施方式,詳細闡釋本發(fā)明的原理和精神。
發(fā)明概述
本發(fā)明人發(fā)現(xiàn),現(xiàn)有的網(wǎng)絡游戲中通過為用戶提供與游戲中特定的游戲角色進行互動的功能來完成游戲任務,但是對于游戲場景中用于布景作用的游戲?qū)ο笈c用戶之間無法進行互動。
有鑒于此,本發(fā)明實施例提供了一種在游戲中使用的模擬方法,通過對指定范圍內(nèi)產(chǎn)生的物理粒子施加一定的作用力,控制其向預設的隱藏位圖運動,當物理粒子運動到隱藏位圖上的特定圖案時,控制物理粒子的運動速度為0,這樣,聚集的物理粒子可以逐漸形成隱藏位圖上的特定圖案。其中,預設的隱藏位圖可以為系統(tǒng)提供的游戲LOGO(商標)圖,也可以為根據(jù)用戶輸入的文字生成的圖片,由此,實現(xiàn)了用戶與游戲場景中的除游戲角色以外的游戲?qū)ο蟮幕庸δ?,提高了用戶體驗。
在介紹了本發(fā)明的基本原理之后,下面具體介紹本發(fā)明的各種非限制性實施方式。
應用場景總覽
首先參考圖1,其為本發(fā)明實施例的應用場景示意圖。本發(fā)明實施例提供的在游戲中使用的模擬方法可以應用于網(wǎng)絡游戲中,涉及的物理粒子可以為游戲場景中的樹葉、雪花等有體積有形狀的物體。
具體實施時,物理粒子以每秒n個的發(fā)射速度在指定的范圍(例如圓柱體、正方體等)內(nèi)均勻地產(chǎn)生,粒子的生命周期為m秒,即物理粒子從產(chǎn)生后開始計時,m秒后消失。
示例性方法
下面結(jié)合圖1的應用場景,參考圖2-圖5來描述根據(jù)本發(fā)明示例性實施方式的在游戲中使用的模擬方法。需要注意的是,上述應用場景僅是為了便于理解本發(fā)明的精神和原理而示出,本發(fā)明的實施方式在此方面不受任何限制。相反,本發(fā)明的實施方式可以應用于適用的任何場景。
如圖2所示,其為本發(fā)明實施例提供的在游戲中使用的模擬方法的實施流程示意圖,可以包括:
S21、按照預設的第一力場參數(shù)對在指定范圍內(nèi)產(chǎn)生的物理粒子施加第一作用力,使得所述物理粒子在所述第一作用力的作用下向預設的隱藏位圖運動。
S22、當所述物理粒子運動至所述隱藏位圖上的特定圖案時,控制所述物理粒子的運動速度為零,以便聚集的物理粒子逐漸形成所述特定圖案。
物理粒子需要在游戲中運動起來,這需要力場對它們施加作用力,為了更好地理解本發(fā)明,以下列舉兩種力場進行說明。
一、環(huán)形風力場
如圖3所示,其為給物理粒子施加作用力的側(cè)視圖,對于水平高度小于h的粒子,為其施加向上的作用力F1;如圖4所示,其為給物理粒子施加作用力的俯視圖,以指定點為中心,設定兩個半徑a和b,在半徑a~b之間的物理粒子,為其施加朝向圓心的作用力F2,另外,對于所有距中心距離小于b的粒子,再施加切向力F3。物理粒子在滿足以上條件力場的作用下,以中心點為圓心,a為半徑,h為高度的圓柱形范圍內(nèi)繞中心旋轉(zhuǎn)運動。
二、方向風力場
同樣如圖3所示,其為給物理粒子施加作用力的側(cè)視圖,對于水平高度小于h的粒子,為其施加向上的作用力F1;再對所有物理粒子施加朝向一個平面方向的作用力,物理粒子在這兩個作用力的共同作用下運動,看起來類似于物理粒子被朝向某個方向的風“吹動”。
基于此,本發(fā)明實施例中,可以預先指定一張位圖,該位圖可以為任意的圖片,例如其可以為游戲LOGO等,將彩色位圖轉(zhuǎn)化為黑白位圖,該位圖對應到物理世界里一片俯視的區(qū)域里(即只考慮物理粒子的平面位置,不考慮高度位置,例如,可以將位圖隱藏設置在游戲場景中的地面上),物理粒子在對其施加的第一作用力的作用下向預設的隱藏位圖運動,當物理粒子運動到該隱藏位圖上的特定圖案時,控制物理粒子的運動速度為零。這樣,隨著時間的推移,聚集的物理粒子可以逐漸形成隱藏位圖上的特定圖案。
具體的,可以通過計算物理粒子在屏幕上的坐標與設置的位圖中的圖案在屏幕上的坐標是否相同判斷物理粒子是否運動到隱藏位圖的特定圖案上,如果兩者坐標相同,則判定物理粒子運動到隱藏位圖的特定圖案上。
需要說明的是,具體實施時,針對每一位圖,如果為彩色位圖,則將位圖中非透明像素所在位置確定為該位圖上的特定圖案所在位置,如果為黑白位圖,則將位圖中非白色像素(即黑色像素)所在位置確定為該位圖上的特定圖案所在位置。
較佳地,為了增加與用戶之間的互動性,本發(fā)明實施例中的位圖可以按照圖5所示的流程生成:
S51、接收用戶輸入的文字。
例如,用戶可以輸入表達當前心情的文字,或者祝福文字等等,本發(fā)明實施例對此不進行限定。
S52、以接收到的文字作為所述特定圖案生成所述隱藏位圖。
將接收到的文字作為特定圖案生成隱藏位圖,以用戶輸入的文字為“生日快樂”為例,生成包含“生日快樂”的位圖圖片,將該位圖設置于游戲場景中的地面上(需預先對其進行隱藏處理,即對用戶而言是不可見),并確定記錄“生日快樂”所在的屏幕坐標。對游戲場景中產(chǎn)生的樹葉按照預設第一力場參數(shù)施加第一作用力,使其向地面上設置的隱藏位圖上運動,當樹葉運動至隱藏位圖上的“生日快樂”所在位置時,置樹葉運動速度為零,即樹葉變?yōu)殪o止狀態(tài),由于樹葉產(chǎn)生時間不一樣,使得不同的樹葉達到隱藏位圖上的圖案“生日快樂”的時間也不一樣,從而,聚集的樹葉逐漸形成“生日快樂”圖案。
具體實施時,還可以針對形成特定圖案的每一物理粒子,對該物理粒子運動速度為零的時長進行計時,例如,可以從置該物理粒子速度為零的時間開始計時,如果計時時長達到預設時長則按照預設的第二力場參數(shù)對該物理粒子施加第二作用力,使得所述物理粒子在所述第二作用力的作用下繼續(xù)運動。
例如,對于計時時長達到預設時長的物理粒子,可以按照上述的方向風力場控制該物理粒子運動,由于形成特定圖案的物理粒子速度為零的時間不同,則對形成特定圖案的物理粒子施加第二作用力的時間也不同,因此,根據(jù)本發(fā)明實施例,形成特定圖案的物理粒子在達到預設時長后將逐漸消散。
較佳地,驅(qū)動物理粒子運動的力場,其參數(shù)能隨時間改變而變動,例如高度逐漸降低,半徑a和b逐漸增大等。使得物理粒子在不同力場作用下改變運動狀態(tài),例如改變物理粒子的運動速度和運動方向等。具體實施時,還可以根據(jù)實際需要,按照預設的更換周期替換預設的隱藏位圖,這樣,使得物理粒子形成的位圖圖案隨著隱藏位圖的周期性更換而變化。
由于物理粒子本身具有一定的生命周期,本發(fā)明實施例中,物理粒子在達到預設的生命周期時長后消失。
對于游戲場景中的剛體,針對形成所述特定圖案的每一物理粒子,如果該物理粒子與游戲場景中的剛體接觸,則控制該物理粒子在兩者接觸所產(chǎn)生的第三作用力的作用下運動。例如,游戲場景中的剛體,如游戲場景中的人偶等接觸到物理粒子時能帶動物理粒子運動,給用戶帶來互動感。
本發(fā)明實施例提供的在游戲中使用的模擬方法,可以按照預設的力場參數(shù)對指定范圍內(nèi)產(chǎn)生的物理粒子施加作用力,使得粒子在該作用力的作用下向預設的隱藏位圖運動,當粒子運動至隱藏位圖上的特定圖案時,置物理粒子的運動速度為零,這樣,聚集的物理粒子逐漸形成隱藏位圖上的特定圖案。其中,涉及的位圖可以為指定的位圖,也可以為根據(jù)用戶輸入的文字生成的位圖,當游戲場景中的剛體接觸到物理粒子時能夠帶動物理粒子運動,實現(xiàn)了游戲場景中除游戲角色以外的游戲?qū)ο笈c用戶之間互動的功能,提高了用戶體驗。
示例性設備
在介紹了本發(fā)明示例性實施方式的方法之后,接下來,參考圖6對本發(fā)明示例性實施方式的在游戲中使用的模擬裝置。
如圖6所示,其為本發(fā)明實施例提供的在游戲中使用的模擬裝置的結(jié)構(gòu)示意圖,可以包括:
第一控制單元61,用于按照預設的第一力場參數(shù)對在指定范圍內(nèi)產(chǎn)生的物理粒子施加第一作用力,使得所述物理粒子在所述第一作用力的作用下向預設的隱藏位圖運動;
第二控制單元62,用于當所述物理粒子運動至所述隱藏位圖上的特定圖案時,控制所述物理粒子的運動速度為零,以便聚集的物理粒子逐漸形成所述特定圖案。
可選地,本發(fā)明實施例提供的在游戲中使用的模擬裝置,還可以包括:
接收單元63,用于接收用戶輸入的文字;
生成單元64,用于以接收到的文字為所述特定圖案生成所述隱藏位圖。
可選地,本發(fā)明實施例提供的在游戲中使用的模擬裝置,還可以包括:
計時單元65,用于針對形成所述特定圖案的每一物理粒子,對該物理粒子運動速度為零的時長進行計時;
第三控制單元66,如果計時時長達到預設時長,則按照預設的第二力場參數(shù)對該物理粒子施加第二作用力,使得所述物理粒子在所述第二作用力的作用下繼續(xù)運動。
可選地,本發(fā)明實施例提供的在游戲中使用的模擬裝置,還可以包括:
第四控制單元67,用于針對形成所述特定圖案的每一物理粒子,如果該物理粒子與游戲場景中的剛體接觸,則控制該物理粒子在兩者接觸所產(chǎn)生的第三作用力的作用下運動。
在一些可能的實施方式中,根據(jù)本發(fā)明的在游戲中使用的模擬裝置可以包括至少一個處理單元、以及至少一個存儲單元。其中,所述存儲單元存儲有程序代碼,當所述程序代碼被所述處理單元執(zhí)行時,使得所述處理單元執(zhí)行本說明書上述“示例性方法”部分中描述的根據(jù)本發(fā)明各種示例性實施方式的在游戲中使用的模擬方法中的各種步驟。例如,所述處理單元可以執(zhí)行如圖2中所示的步驟S21,按照預設的第一力場參數(shù)對在指定范圍內(nèi)產(chǎn)生的物理粒子施加第一作用力,使得所述物理粒子在所述第一作用力的作用下向預設的隱藏位圖運動,步驟S22,當所述物理粒子運動至所述隱藏位圖上的特定圖案時,控制所述物理粒子的運動速度為零,以便聚集的物理粒子逐漸形成所述特定圖案。
應當注意,盡管在上文詳細描述中提及了裝置的若干單元或子單元,但是這種劃分僅僅是示例性的并非強制性的。實際上,根據(jù)本發(fā)明的實施方式,上文描述的兩個或更多單元的特征和功能可以在一個單元中具體化。反之,上文描述的一個單元的特征和功能可以進一步劃分為由多個單元來具體化。
此外,盡管在附圖中以特定順序描述了本發(fā)明方法的操作,但是,這并非要求或者暗示必須按照該特定順序來執(zhí)行這些操作,或是必須執(zhí)行全部所示的操作才能實現(xiàn)期望的結(jié)果。附加地或備選地,可以省略某些步驟,將多個步驟合并為一個步驟執(zhí)行,和/或?qū)⒁粋€步驟分解為多個步驟執(zhí)行。
雖然已經(jīng)參考若干具體實施方式描述了本發(fā)明的精神和原理,但是應該理解,本發(fā)明并不限于所公開的具體實施方式,對各方面的劃分也不意味著這些方面中的特征不能組合以進行受益,這種劃分僅是為了表述的方便。本發(fā)明旨在涵蓋所附權(quán)利要求的精神和范圍內(nèi)所包括的各種修改和等同布置。