本發(fā)明涉及游戲領(lǐng)域,尤其涉及一種游戲系統(tǒng)中NPC對象優(yōu)先響應(yīng)的方法及裝置。
背景技術(shù):
隨著網(wǎng)絡(luò)技術(shù)的發(fā)展,網(wǎng)絡(luò)游戲逐漸成了很重要的娛樂方式,在游戲系統(tǒng)中,通常設(shè)有玩家與非玩家控制角色(Non Player Character,簡稱NPC)的交互以增強(qiáng)游戲的娛樂性,但是在一些游戲場景內(nèi)經(jīng)常會出現(xiàn)大量玩家聚集在一起,而游戲世界內(nèi)玩家、NPC等游戲?qū)ο蠖际前凑找欢ㄒ?guī)則進(jìn)行前后層次排序形成前后遮擋顯示的,同樣在響應(yīng)玩家的請求操作時也是按照這個層次從上到下的順序依次響應(yīng)的;但是游戲系統(tǒng)中的NPC對象并不是總是處于顯示的最上層的,這樣就會出現(xiàn)NPC對象被玩家或者其他游戲?qū)ο笳趽醯膯栴},而玩家與NPC對象的交互主要是通過點(diǎn)擊NPC對象操作來進(jìn)行交互的,NPC對象被遮擋后就會影響玩家正常游戲體驗(yàn)。
現(xiàn)有的游戲系統(tǒng)中,當(dāng)NPC對象被遮擋后,如果需要NPC對象響應(yīng)玩家的請求操作,根據(jù)現(xiàn)有的響應(yīng)邏輯,必須按照從上到下的層次順序,逐個遍歷所有對象,第一個響應(yīng)的對象獲取后,如果該對象不是NPC對象,就繼續(xù)遍歷,并記錄第一個響應(yīng)的對象,直到找到一個NPC對象作為請求響應(yīng)的對象,然后返回,而如果遍歷結(jié)束都找不到一個NPC對象,就會用記錄的第一個響應(yīng)的對象作為請求響應(yīng)的對象,這樣的話,如果NPC對象所處位置處有多個非NPC對象,請求響應(yīng)的效率將會很低。為了讓玩家可以與NPC對象較快速地進(jìn)行交互,現(xiàn)有技術(shù)有兩種解決方案,分別是:
第一,在游戲系統(tǒng)中添加對象隱藏接口,根據(jù)對象的類型實(shí)現(xiàn)對象隱藏或顯示,當(dāng)玩家需要與NPC對象進(jìn)行交互時,手動開啟非NPC對象隱藏功能,將其他玩家的非NPC對象都隱藏后,NPC對象就不再會被遮擋,玩家就能通過點(diǎn)擊NPC對象來進(jìn)行交互操作。通過非NPC對象隱藏功能雖然解決了玩家與NPC 對象交互的問題,但是在隱藏非NPC對象等其他玩家對象之后,就會對網(wǎng)絡(luò)游戲的氛圍造成影響,原本熱鬧的游戲環(huán)境氛圍就會類似單機(jī)游戲,而若玩家在進(jìn)行NPC對象交互后忘記取消非NPC對象隱藏功能,就會大大減弱游戲的玩家之間的交互性,長期下去對游戲發(fā)展不利。
第二,當(dāng)玩家需要與NPC對象進(jìn)行交互時,通過一些特殊的操作,如按住鍵盤CTRL鍵或者其他操作等,遍歷游戲系統(tǒng)中所有對象,并測試所有對象與當(dāng)前玩家鼠標(biāo)或點(diǎn)擊的位置是否重合,如果重合則記錄為可響應(yīng)的對象,再將這些可響應(yīng)的對象以列表的形式顯示給玩家進(jìn)行選擇交互操作。該方案在每次開啟該功能時都需要進(jìn)行額外的操作,之后遍歷當(dāng)前場景內(nèi)所有對象與玩家鼠標(biāo)或點(diǎn)擊的位置進(jìn)行重合檢測,效率低下,而且如果符合條件的對象很多,列表顯示的效果也將大打折扣,最后玩家選擇交互對象時也不夠簡單方便,而導(dǎo)致容易出錯。
技術(shù)實(shí)現(xiàn)要素:
為解決上述技術(shù)問題,本發(fā)明提供一種游戲系統(tǒng)中NPC對象優(yōu)先響應(yīng)的方法及裝置,在不打亂原有的對象遍歷和響應(yīng)邏輯的情況下,用戶不需額外操作就能夠使NPC對象可以優(yōu)先響應(yīng)用戶的請求操作。
為達(dá)到上述目的,本發(fā)明采用以下技術(shù)方案:
本發(fā)明公開了一種游戲系統(tǒng)中NPC對象優(yōu)先響應(yīng)的方法,包括:
對所述NPC對象創(chuàng)建響應(yīng)子對象,所述響應(yīng)子對象與對應(yīng)的所述NPC對象相互關(guān)聯(lián),所述響應(yīng)子對象與對應(yīng)的所述NPC對象的坐標(biāo)位置重合,所述響應(yīng)子對象的層次高于游戲系統(tǒng)中的其他對象的層次;
監(jiān)聽用戶在所述NPC對象的輪廓范圍內(nèi)的請求操作;
與所述NPC對象對應(yīng)的所述響應(yīng)子對象接收所述請求操作;
所述NPC對象對所述請求操作進(jìn)行響應(yīng)。
優(yōu)選地,所述請求操作是鼠標(biāo)點(diǎn)擊操作或觸屏操作。
優(yōu)選地,所述響應(yīng)子對象是無需渲染的空對象。
優(yōu)選地,該方法還包括:所述響應(yīng)子對象是以與對應(yīng)的所述NPC對象相同的輪廓線和/或與對應(yīng)的所述NPC對象相同的形象來進(jìn)行顯示的。
優(yōu)選地,所述響應(yīng)子對象是半透明顯示的。
優(yōu)選地,該方法還包括:當(dāng)監(jiān)聽到用戶在所述NPC對象的輪廓范圍內(nèi)的請求操作后,提供第一視覺參考標(biāo)識供用戶觀察所述NPC對象的響應(yīng)狀態(tài)。
本發(fā)明還公開了一種游戲系統(tǒng)中NPC對象優(yōu)先響應(yīng)的裝置,包括:
創(chuàng)建模塊,用于對所述NPC對象創(chuàng)建響應(yīng)子對象,所述響應(yīng)子對象與對應(yīng)的所述NPC對象相互關(guān)聯(lián),所述響應(yīng)子對象與對應(yīng)的所述NPC對象的坐標(biāo)位置重合,所述響應(yīng)子對象的層次高于游戲系統(tǒng)中的其他對象的層次;
監(jiān)聽模塊,用于監(jiān)聽用戶在所述NPC對象的輪廓范圍內(nèi)的請求操作;
接收模塊,用于使與所述NPC對象對應(yīng)的所述響應(yīng)子對象接收所述請求操作;
響應(yīng)模塊,用于使所述NPC對象對所述請求操作進(jìn)行響應(yīng)。
優(yōu)選地,該裝置還包括第一顯示模塊,用于顯示所述響應(yīng)子對象,其中所述響應(yīng)子對象是以與對應(yīng)的所述NPC對象相同的輪廓線和/或與對應(yīng)的所述NPC對象相同的形象來進(jìn)行顯示的。
優(yōu)選地,所述響應(yīng)子對象是半透明顯示的。
優(yōu)選地,該裝置還包括第二顯示模塊,用于當(dāng)監(jiān)聽到用戶在所述NPC對象的輪廓范圍內(nèi)的請求操作后,提供第一視覺參考標(biāo)識供用戶觀察所述NPC對象的響應(yīng)狀態(tài)。
與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果在于:本發(fā)明的方法中不會打亂游戲系統(tǒng)中原有的對象遍歷和響應(yīng)邏輯,而且也不需要隱藏非NPC對象或者額外操作來遍歷多個可以響應(yīng)的對象生成列表,而是通過對NPC對象創(chuàng)建響應(yīng)子對象,并將響應(yīng)子對象的層次設(shè)置為最高層次,當(dāng)用戶在需要與NPC對象交互時,通過在NPC對象的輪廓范圍內(nèi)進(jìn)行請求操作,響應(yīng)子對象接收到該操作,即可使得NPC對象優(yōu)先進(jìn)行響應(yīng),從而讓用戶不需要進(jìn)行額外操作,就可快速使NPC對象優(yōu)先進(jìn)行響應(yīng),相對于現(xiàn)有的其他方案,本發(fā)明的效率大大提升,從而極大地提高了用戶的游戲體驗(yàn)效果。
在部分優(yōu)選的方案中,響應(yīng)子對象可以包括與對應(yīng)的NPC對象相同的輪廓線和/或半透明的與NPC對象相同的形象,以使得在不影響正常的層次遮擋顯示效果的同時,用戶可以更加高效快速地確定NPC對象的位置以通過對響應(yīng)子對象的請求操作來使得NPC對象進(jìn)行響應(yīng);在另一部分優(yōu)選的方案中,響應(yīng)子對 象還可以是無需渲染的空對象,這樣不僅不影響正常的層次遮擋顯示效果,而且不會增加游戲系統(tǒng)的任何渲染負(fù)擔(dān)的情況下就使得NPC對象可以優(yōu)先進(jìn)行響應(yīng)。
在部分更加優(yōu)選的方案中,在監(jiān)聽到用戶在NPC對象的輪廓范圍內(nèi)的請求操作后,提供第一視覺參考標(biāo)識可以供用戶觀察NPC對象的響應(yīng)狀態(tài),從而使得用戶能夠準(zhǔn)確判斷NPC對象的響應(yīng)情況。
附圖說明
圖1是本發(fā)明的實(shí)施例的游戲系統(tǒng)中NPC對象優(yōu)先響應(yīng)的方法流程圖。
具體實(shí)施方式
下面對照附圖并結(jié)合優(yōu)選的實(shí)施方式對本發(fā)明作進(jìn)一步說明。
如圖1所示,本發(fā)明的實(shí)施例公開了一種游戲系統(tǒng)中NPC對象優(yōu)先響應(yīng)的方法,包括:
對NPC對象創(chuàng)建響應(yīng)子對象,響應(yīng)子對象與對應(yīng)的NPC對象相互關(guān)聯(lián),響應(yīng)子對象與對應(yīng)的NPC對象的坐標(biāo)位置重合,響應(yīng)子對象的層次高于游戲系統(tǒng)中的其他對象的層次;
監(jiān)聽用戶在NPC對象的輪廓范圍內(nèi)的請求操作;
與NPC對象對應(yīng)的響應(yīng)子對象接收請求操作;
NPC對象對請求操作進(jìn)行響應(yīng)。
進(jìn)一步地,請求操作是鼠標(biāo)點(diǎn)擊操作或觸屏操作。
在部分實(shí)施例中,響應(yīng)子對象是包含無需渲染的空對象、或者是以包括與對應(yīng)的NPC對象相同的輪廓線和/或與對應(yīng)的NPC對象相同的形象進(jìn)行顯示的(優(yōu)選可以是半透明顯示的)。
在更佳的實(shí)施例中,當(dāng)監(jiān)聽到用戶在NPC對象的輪廓范圍內(nèi)的請求操作后,提供第一視覺參考標(biāo)識供用戶觀察NPC對象的響應(yīng)狀態(tài)。
本發(fā)明的實(shí)施例還公開了一種游戲系統(tǒng)中NPC對象優(yōu)先響應(yīng)的裝置,包括:
創(chuàng)建模塊,用于對NPC對象創(chuàng)建響應(yīng)子對象,響應(yīng)子對象與對應(yīng)的NPC對象相互關(guān)聯(lián),響應(yīng)子對象與對應(yīng)的NPC對象的坐標(biāo)位置重合,響應(yīng)子對象的層 次高于游戲系統(tǒng)中的其他角色的層次;
監(jiān)聽模塊,用于監(jiān)聽用戶在NPC對象的輪廓范圍內(nèi)的請求操作;
接收模塊,用于使與NPC對象對應(yīng)的響應(yīng)子對象接收請求操作;
響應(yīng)模塊,用于使NPC對象對請求操作進(jìn)行響應(yīng)。
進(jìn)一步地,該裝置還包括第一顯示模塊,用于顯示響應(yīng)子對象,其中響應(yīng)子對象是以與對應(yīng)的NPC對象相同的輪廓線和/或與對應(yīng)的NPC對象相同的形象來進(jìn)行顯示的,優(yōu)選的方案中,響應(yīng)子對象是半透明顯示的。
更進(jìn)一步地,該裝置還包括第二顯示模塊,用于當(dāng)監(jiān)聽到用戶在NPC對象的輪廓范圍內(nèi)的請求操作后,提供第一視覺參考標(biāo)識供用戶觀察NPC對象的響應(yīng)狀態(tài)。
下述先結(jié)合實(shí)例一中計算機(jī)終端的網(wǎng)絡(luò)游戲A中實(shí)現(xiàn)NPC對象優(yōu)先響應(yīng)來作進(jìn)一步說明。在網(wǎng)絡(luò)游戲A中,設(shè)置有多個NPC對象,同時在玩家所控制的非NPC對象進(jìn)入該游戲中時,也有多個其他玩家所控制的非NPC對象在游戲系統(tǒng)中同時進(jìn)行游戲,其中的NPC對象可能被多個非NPC對象所遮擋,在本發(fā)明中,對每個NPC對象創(chuàng)建一個對應(yīng)的響應(yīng)子對象,各個響應(yīng)子對象與對應(yīng)的NPC對象相互關(guān)聯(lián),并且各個響應(yīng)子對象共用對應(yīng)的NPC對象的除層次數(shù)據(jù)以外的所有數(shù)據(jù),同時給各個響應(yīng)子對象設(shè)置一個高于游戲A中的其他對象的層次數(shù)據(jù),使得各個響應(yīng)子對象根據(jù)遮擋層次順序可以優(yōu)先響應(yīng)鼠標(biāo)點(diǎn)擊操作;當(dāng)響應(yīng)子對象捕獲到鼠標(biāo)點(diǎn)擊操作的時候就使得與之關(guān)聯(lián)的對應(yīng)的NPC對象響應(yīng)鼠標(biāo)點(diǎn)擊操作。
為了不影響游戲A中各個對象的遮擋層次顯示效果,在渲染各個響應(yīng)子對象時設(shè)置一個透明度參數(shù),使用半透明的渲染模式渲染各個響應(yīng)子對象,這樣既不會影響正常的游戲系統(tǒng)中的遮擋層次顯示效果,而且還可以更加高效快速地實(shí)現(xiàn)NPC對象優(yōu)先響應(yīng)鼠標(biāo)點(diǎn)擊操作的功能。
在響應(yīng)子對象接收到鼠標(biāo)點(diǎn)擊操作的時候,還可以設(shè)置一個特殊的鼠標(biāo)手勢(如小對話框、圓圈等),同時還可將NPC對象的名字以區(qū)別于其他對象的名字的顏色或字樣(如紅色或加粗斜體)顯示,以更加突出鼠標(biāo)點(diǎn)擊操作時,響應(yīng)子對象接收該請求操作,NPC對象對該請求操作進(jìn)行響應(yīng)時的界面,讓用戶能夠更清楚地觀察到NPC對象的響應(yīng)狀態(tài)情況。
該實(shí)例中,網(wǎng)絡(luò)游戲A中的響應(yīng)子對象使用半透明的對應(yīng)的NPC對象的形象渲染顯示的方式,可以讓用戶更加方便地與NPC對象進(jìn)行交互,同時使NPC對象的顯示更加直觀和易于被玩家發(fā)現(xiàn),尤其當(dāng)NPC對象的體型較小,而有體型較大的非NPC對象擋在NPC對象前面時,在高于其他玩家的層次上顯示半透明的NPC形象就更有利于用戶與NPC對象進(jìn)行交互。
該實(shí)例中當(dāng)用戶在需要與NPC對象交互時,高層次的響應(yīng)子對象將優(yōu)先獲取鼠標(biāo)消息,并使用響應(yīng)子對象所關(guān)聯(lián)的NPC對象的輪廓范圍與當(dāng)前鼠標(biāo)位置進(jìn)行位置重合計算以確定是否需要消息響應(yīng),若確定響應(yīng)子對象需要鼠標(biāo)消息響應(yīng),即鼠標(biāo)點(diǎn)擊的位置在NPC對象的輪廓范圍內(nèi),則觸發(fā)與該響應(yīng)子對象關(guān)聯(lián)的NPC對象對應(yīng)的鼠標(biāo)響應(yīng)操作,即可使得NPC對象優(yōu)先進(jìn)行鼠標(biāo)消息響應(yīng),從而讓用戶不需要進(jìn)行額外操作,就可快速使NPC對象優(yōu)先進(jìn)行鼠標(biāo)消息響應(yīng),相對于現(xiàn)有的其他方案,該方案效率提升非常明顯,而且極大地提高了用戶的游戲體驗(yàn)效果。
下述結(jié)合實(shí)例二中手機(jī)終端的網(wǎng)絡(luò)游戲B中實(shí)現(xiàn)NPC對象優(yōu)先響應(yīng)來作進(jìn)一步說明。在網(wǎng)絡(luò)游戲B中,設(shè)置有多個NPC對象,同時在玩家所控制的非NPC對象進(jìn)入該游戲中時,也有多個其他玩家所控制的非NPC對象在游戲系統(tǒng)中同時進(jìn)行游戲,其中NPC對象可能被多個非NPC對象所遮擋,在本發(fā)明中,對每個NPC對象創(chuàng)建一個對應(yīng)的響應(yīng)子對象,各個響應(yīng)子對象與對應(yīng)的NPC對象相互關(guān)聯(lián),各個響應(yīng)子對象復(fù)用其對應(yīng)的NPC對象的坐標(biāo)位置以及輪廓范圍數(shù)據(jù),同時給各個響應(yīng)子對象設(shè)置一個高于游戲A中的其他對象的層次數(shù)據(jù),使得各個響應(yīng)子對象根據(jù)遮擋層次順序可以優(yōu)先響應(yīng)用戶觸屏操作;當(dāng)響應(yīng)子對象在對應(yīng)的NPC對象的輪廓范圍內(nèi)捕捉到觸屏操作時就使得該NPC對象響應(yīng)用戶的觸屏操作。
在該實(shí)例中,設(shè)置響應(yīng)子對象為無需渲染的空對象,不在游戲B的界面中進(jìn)行渲染顯示,當(dāng)用戶在響應(yīng)子對象所對應(yīng)的NPC對象的輪廓范圍內(nèi)進(jìn)行觸屏操作時,響應(yīng)子對象捕捉到該觸屏操作,使得與之關(guān)聯(lián)的NPC對象來對該觸屏操作進(jìn)行響應(yīng)。該實(shí)例中的響應(yīng)子對象為空對象,不需要系統(tǒng)增加額外的渲染就可以實(shí)現(xiàn)NPC對象優(yōu)先響應(yīng)用戶的請求操作,尤其適用于在游戲系統(tǒng)中的NPC對象的數(shù)量較多時的情形,大大減輕系統(tǒng)的渲染負(fù)擔(dān)。
在響應(yīng)子對象接收到觸屏操作時,可以使得響應(yīng)子對象根據(jù)對應(yīng)的NPC對象的圖像資源渲染出一個邊緣高亮的半透明NPC對象,以提示用戶當(dāng)前實(shí)際交互的操作對象。
在一些實(shí)施方式中,響應(yīng)子對象還可以是只渲染出對應(yīng)的NPC對象的輪廓線以便用戶識別NPC對象的位置。在游戲系統(tǒng)設(shè)計過程中,可以根據(jù)NPC對象的數(shù)量來選擇如何設(shè)置響應(yīng)子對象的渲染方式,可以是只渲染半透明的NPC對象的形象,或者只渲染對應(yīng)的NPC對象的輪廓線,或者只是空對象而不進(jìn)行渲染,或者是前兩種的結(jié)合。其中只渲染半透明的NPC對象的形象或只渲染對應(yīng)的NPC對象的輪廓線適用于游戲系統(tǒng)中NPC對象的數(shù)量較少、NPC對象的體型較小的情況,而不對響應(yīng)子對象進(jìn)行渲染適用于游戲系統(tǒng)中NPC對象的數(shù)量較多,NPC對象的體型較大的情況。
在另外一些實(shí)施例中,如果有多個NPC對象的輪廓范圍部分或全部重疊,則該多個NPC對象的響應(yīng)子對象的層次順序也按照多個NPC對象的層次順序進(jìn)行層疊,各個響應(yīng)子對象對重疊部分的請求操作的響應(yīng)順序則按照相應(yīng)的層次順序進(jìn)行先后響應(yīng)。
本發(fā)明的方法中不會打亂游戲系統(tǒng)中原有的對象遍歷和響應(yīng)邏輯,而且也不需要隱藏非NPC對象或者額外操作來遍歷多個可以響應(yīng)的對象生成列表,而是通過對NPC對象創(chuàng)建響應(yīng)子對象,并將響應(yīng)子對象的層次設(shè)置為最高層次,當(dāng)用戶在需要與NPC對象交互時,通過在NPC對象的輪廓范圍內(nèi)進(jìn)行請求操作,響應(yīng)子對象接收到該操作,即可使得NPC對象優(yōu)先進(jìn)行響應(yīng),從而讓用戶不需要進(jìn)行額外操作,就可快速使NPC對象優(yōu)先進(jìn)行響應(yīng),不僅不用依次遍歷所有對象與請求操作的位置是否重合而降低游戲運(yùn)行系統(tǒng)消耗,而且大大提高用戶的游戲體驗(yàn)效果。
以上內(nèi)容是結(jié)合具體的優(yōu)選實(shí)施方式對本發(fā)明所作的進(jìn)一步詳細(xì)說明,不能認(rèn)定本發(fā)明的具體實(shí)施只局限于這些說明。對于本發(fā)明所屬技術(shù)領(lǐng)域的技術(shù)人員來說,在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干等同替代或明顯變型,而且性能或用途相同,都應(yīng)當(dāng)視為屬于本發(fā)明的保護(hù)范圍。