一種電子游戲資源的加載方法及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及電子游戲領(lǐng)域,特別是一種電子游戲資源的加載方法及系統(tǒng)。
【背景技術(shù)】
[0002]電子游戲是目前一種十分普及的游戲,用戶通過對游戲內(nèi)人物角色的控制,在游戲場景里完成場景中設(shè)置的任務(wù)。但用戶在體驗當(dāng)中,仍然存在不少問題。在多數(shù)電子游戲中,當(dāng)玩家操控的人物在電子游戲場景內(nèi)快速奔跑、飛行時,游戲程序的主邏輯單元仍會向渲染單元發(fā)起加載/渲染人物移動路線上的各種資源的請求,這一方面會使得加載單元繁忙,另一方面也使得系統(tǒng)內(nèi)存需求明顯增長,渲染開銷增大,幀率下降和卡頓現(xiàn)象加劇。
【發(fā)明內(nèi)容】
[0003]為解決上述問題,本發(fā)明的目的在于提供一種電子游戲資源的加載方法及系統(tǒng),減少資源的渲染,降低了內(nèi)存使用量和CPU利用率,并減少資源的加載,節(jié)省了磁盤讀寫。
[0004]本發(fā)明解決其問題所采用的技術(shù)方案是:
一種電子游戲資源的加載方法,包括:
根據(jù)用戶對當(dāng)前游戲人物角色的操作,判斷游戲人物角色的狀態(tài);
根據(jù)游戲人物角色的狀態(tài),識別該狀態(tài)中游戲人物角色的運(yùn)動方向,根據(jù)該運(yùn)動方向創(chuàng)建設(shè)定距離和角度內(nèi)各類資源的渲染請求,并將渲染請求發(fā)送至渲染任務(wù)隊列中;
從渲染任務(wù)隊列中獲取對應(yīng)的渲染請求,進(jìn)行渲染處理,同時,發(fā)起渲染處理中對相應(yīng)資源的加載請求,并將加載請求發(fā)送至加載任務(wù)隊列;
從加載任務(wù)隊列中提取加載請求,進(jìn)行加載。
[0005]優(yōu)選的,所述根據(jù)運(yùn)動方向創(chuàng)建設(shè)定距離和角度內(nèi)各類資源的渲染請求時,創(chuàng)建從該方向上的當(dāng)前點(diǎn)到設(shè)定點(diǎn)之間的距離為設(shè)定距離,創(chuàng)建沿該方向?qū)ΨQ兩側(cè)相同角度的大小之和為對應(yīng)的設(shè)定角度。
[0006]優(yōu)選的,當(dāng)所述游戲人物角色的狀態(tài)為正常步行/移動狀態(tài)時,創(chuàng)建沿該方向?qū)ΨQ兩側(cè)的相同角度均為90度。
[0007]優(yōu)選的,當(dāng)所述游戲人物角色的狀態(tài)為快速奔跑/飛行狀態(tài)時,創(chuàng)建沿該方向?qū)ΨQ兩側(cè)的相同角度均為45度。
[0008]優(yōu)選的,所述發(fā)起渲染處理中對相應(yīng)資源的加載請求時,若收到取消加載請求的通知,則取消對應(yīng)的加載請求。
[0009]一種電子游戲資源的加載系統(tǒng),包括:
主邏輯模塊,用于根據(jù)用戶對當(dāng)前游戲人物角色的操作,判斷游戲人物角色的狀態(tài),并根據(jù)游戲人物角色的狀態(tài),識別該狀態(tài)中游戲人物角色的運(yùn)動方向,根據(jù)該運(yùn)動方向創(chuàng)建設(shè)定距離和角度內(nèi)各類資源的渲染請求,并將渲染請求發(fā)送至渲染任務(wù)隊列中;
渲染模塊,用于從渲染任務(wù)隊列中獲取對應(yīng)的渲染請求,進(jìn)行渲染處理,同時,發(fā)起渲染處理中對相應(yīng)資源的加載請求,并將加載請求發(fā)送至加載任務(wù)隊列; 加載模塊,用于從加載任務(wù)隊列中提取加載請求,進(jìn)行加載。
[0010]優(yōu)選的,所述主邏輯模塊根據(jù)運(yùn)動方向創(chuàng)建設(shè)定距離和角度內(nèi)各類資源的渲染請求時,創(chuàng)建從該方向上的當(dāng)前點(diǎn)到設(shè)定點(diǎn)之間的距離為設(shè)定距離,創(chuàng)建沿該方向?qū)ΨQ兩側(cè)相同角度的大小之和為對應(yīng)的設(shè)定角度。
[0011]優(yōu)選的,當(dāng)渲染模塊收到取消加載的通知時,則通知加載模塊,加載模塊則直接返回處理完畢。
[0012]本發(fā)明的有益效果是:
本發(fā)明采用一種電子游戲資源的加載方法及系統(tǒng),在用戶操作游戲人物角色時,只是在設(shè)定的距離和方向才進(jìn)行渲染和加載,減少資源的渲染同時又不降低用戶體驗,反而加快了對游戲任務(wù)的處理,提升了用戶體驗的流暢感,也有效降低了內(nèi)存使用量和CPU利用率,同時,也減少了資源的加載,節(jié)省磁盤10。
【附圖說明】
[0013]下面結(jié)合附圖和實例對本發(fā)明作進(jìn)一步說明。
[0014]圖1是本發(fā)明所述方法的流程示意圖。
【具體實施方式】
[0015]參照圖1所示,本發(fā)明的一種電子游戲資源的加載方法,包括:
根據(jù)用戶對當(dāng)前游戲人物角色的操作,判斷游戲人物角色的狀態(tài);
根據(jù)游戲人物角色的狀態(tài),識別該狀態(tài)中游戲人物角色的運(yùn)動方向,根據(jù)該運(yùn)動方向創(chuàng)建設(shè)定距離和角度內(nèi)各類資源的渲染請求,并將渲染請求發(fā)送至渲染任務(wù)隊列中;
從渲染任務(wù)隊列中獲取對應(yīng)的渲染請求,進(jìn)行渲染處理,同時,發(fā)起渲染處理中對相應(yīng)資源的加載請求,并將加載請求發(fā)送至加載任務(wù)隊列;
從加載任務(wù)隊列中提取加載請求,進(jìn)行加載。
[0016]所述根據(jù)運(yùn)動方向創(chuàng)建設(shè)定距離和角度內(nèi)各類資源的渲染請求時,創(chuàng)建從該方向上的當(dāng)前點(diǎn)到設(shè)定點(diǎn)之間的距離為設(shè)定距離,創(chuàng)建沿該方向?qū)ΨQ兩側(cè)相同角度的大小之和為對應(yīng)的設(shè)定角度。
[0017]由于游戲人物角色狀態(tài)不同,因此,創(chuàng)建的設(shè)定距離和角度需要根據(jù)狀態(tài)的變化而進(jìn)行調(diào)整,通常游戲人物角色無外乎正常步行/移動狀態(tài)和快速奔跑/飛行狀態(tài),設(shè)定的距離和角度可以分別進(jìn)行設(shè)定,優(yōu)選的是,當(dāng)所述游戲人物角色的狀態(tài)為正常步行/移動狀態(tài)時,創(chuàng)建沿該方向?qū)ΨQ兩側(cè)的相同角度均為90度。當(dāng)所述游戲人物角色的狀態(tài)為快速奔跑/飛行狀態(tài)時,創(chuàng)建沿該方向?qū)ΨQ兩側(cè)的相同角度均為45度。
[0018]所述發(fā)起渲染處理中對相應(yīng)資源的加載請求時,若收到取消加載請求時,則取消對應(yīng)的加載請求。
[0019]參照圖1所示,本發(fā)明還提供了一種電子游戲資源的加載系統(tǒng),包括:
主邏輯模塊,用于根據(jù)用戶對當(dāng)前游戲人物角色的操作,判斷游戲人物角色的狀態(tài),并根據(jù)游戲人物角色的狀態(tài),識別該狀態(tài)中游戲人物角色的運(yùn)動方向,根據(jù)該運(yùn)動方向創(chuàng)建設(shè)定距離和角度內(nèi)各類資源的渲染請求,并將渲染請求發(fā)送至渲染任務(wù)隊列中;
渲染模塊,用于從渲染任務(wù)隊列中獲取對應(yīng)的渲染請求,進(jìn)行渲染處理,同時,發(fā)起渲染處理中對相應(yīng)資源的加載請求,并將加載請求發(fā)送至加載任務(wù)隊列;
加載模塊,用于從加載任務(wù)隊列中提取加載請求,進(jìn)行加載。
[0020]所述主邏輯模塊根據(jù)運(yùn)動方向創(chuàng)建設(shè)定距離和角度內(nèi)各類資源的渲染請求時,創(chuàng)建從該方向上的當(dāng)前點(diǎn)到設(shè)定點(diǎn)之間的距離為設(shè)定距離,創(chuàng)建沿該方向?qū)ΨQ兩側(cè)相同角度的大小之和為對應(yīng)的設(shè)定角度。
[0021]其中,當(dāng)渲染模塊收取取消加載語法時,則通知加載模塊,加載模塊則直接返回處理完畢。
[0022]本發(fā)明在用戶操作游戲人物角色時,只是在設(shè)定的距離和方向才進(jìn)行渲染和加載,減少資源的渲染同時又不降低用戶體驗,有效降低了內(nèi)存使用量和CPU利用率,同時,也減少了資源的加載,節(jié)省磁盤10。
[0023]以上所述,只是本發(fā)明的較佳實施例而已,本發(fā)明并不局限于上述實施方式,只要其以相同的手段達(dá)到本發(fā)明的技術(shù)效果,都應(yīng)屬于本發(fā)明的保護(hù)范圍。
【主權(quán)項】
1.一種電子游戲資源的加載方法,其特征在于,包括: 根據(jù)用戶對當(dāng)前游戲人物角色的操作,判斷游戲人物角色的狀態(tài); 根據(jù)游戲人物角色的狀態(tài),識別該狀態(tài)中游戲人物角色的運(yùn)動方向,根據(jù)該運(yùn)動方向創(chuàng)建設(shè)定距離和角度內(nèi)各類資源的渲染請求,并將渲染請求發(fā)送至渲染任務(wù)隊列中; 從渲染任務(wù)隊列中獲取對應(yīng)的渲染請求,進(jìn)行渲染處理,同時,發(fā)起渲染處理中對相應(yīng)資源的加載請求,并將加載請求發(fā)送至加載任務(wù)隊列; 從加載任務(wù)隊列中提取加載請求,進(jìn)行加載。
2.根據(jù)權(quán)利要求1所述的加載方法,其特征在于,所述根據(jù)運(yùn)動方向創(chuàng)建設(shè)定距離和角度內(nèi)各類資源的渲染請求時,創(chuàng)建從該方向上的當(dāng)前點(diǎn)到設(shè)定點(diǎn)之間的距離為設(shè)定距離,創(chuàng)建沿該方向?qū)ΨQ兩側(cè)相同角度的大小之和為對應(yīng)的設(shè)定角度。
3.根據(jù)權(quán)利要求2所述的加載方法,其特征在于,當(dāng)所述游戲人物角色的狀態(tài)為正常步行/移動狀態(tài)時,創(chuàng)建沿該方向?qū)ΨQ兩側(cè)的相同角度均為90度。
4.根據(jù)權(quán)利要求2所述的加載方法,其特征在于,當(dāng)所述游戲人物角色的狀態(tài)為快速奔跑/飛行狀態(tài)時,創(chuàng)建沿該方向?qū)ΨQ兩側(cè)的相同角度均為45度。
5.根據(jù)權(quán)利要求1所述的加載方法,其特征在于,所述發(fā)起渲染處理中對相應(yīng)資源的加載請求時,若收到取消加載請求的通知,則取消對應(yīng)的加載請求。
6.一種電子游戲資源的加載系統(tǒng),其特征在于,包括: 主邏輯模塊,用于根據(jù)用戶對當(dāng)前游戲人物角色的操作,判斷游戲人物角色的狀態(tài),并根據(jù)游戲人物角色的狀態(tài),識別該狀態(tài)中游戲人物角色的運(yùn)動方向,根據(jù)該運(yùn)動方向創(chuàng)建設(shè)定距離和角度內(nèi)各類資源的渲染請求,并將渲染請求發(fā)送至渲染任務(wù)隊列中; 渲染模塊,用于從渲染任務(wù)隊列中獲取對應(yīng)的渲染請求,進(jìn)行渲染處理,同時,發(fā)起渲染處理中對相應(yīng)資源的加載請求,并將加載請求發(fā)送至加載任務(wù)隊列; 加載模塊,用于從加載任務(wù)隊列中提取加載請求,進(jìn)行加載。
7.根據(jù)權(quán)利要求6所述的加載系統(tǒng),其特征在于,所述主邏輯模塊根據(jù)運(yùn)動方向創(chuàng)建設(shè)定距離和角度內(nèi)各類資源的渲染請求時,創(chuàng)建從該方向上的當(dāng)前點(diǎn)到設(shè)定點(diǎn)之間的距離為設(shè)定距離,創(chuàng)建沿該方向?qū)ΨQ兩側(cè)相同角度的大小之和為對應(yīng)的設(shè)定角度。
8.根據(jù)權(quán)利要求6所述的加載系統(tǒng),其特征在于,當(dāng)渲染模塊收到取消加載的通知時,則通知加載模塊,加載模塊則直接返回處理完畢。
【專利摘要】本發(fā)明公開了一種電子游戲資源的加載方法及系統(tǒng),所述方法根據(jù)用戶對當(dāng)前游戲人物角色的操作,判斷游戲人物角色的狀態(tài);之后,根據(jù)游戲人物角色的狀態(tài),識別該狀態(tài)中游戲人物角色的運(yùn)動方向,根據(jù)該運(yùn)動方向創(chuàng)建設(shè)定距離和角度內(nèi)各類資源的渲染請求,并將渲染請求發(fā)送至渲染任務(wù)隊列中;之后,從渲染任務(wù)隊列中獲取對應(yīng)的渲染請求,進(jìn)行渲染處理,同時,發(fā)起渲染處理中對相應(yīng)資源的加載請求,并將加載請求發(fā)送至加載任務(wù)隊列;之后,從加載任務(wù)隊列中提取加載請求,進(jìn)行加載。所述系統(tǒng)與方法對應(yīng)。本發(fā)明減少資源渲染同時提升了用戶體驗流暢度,并節(jié)省了內(nèi)存、CPU資源和磁盤IO。
【IPC分類】G06F9-445
【公開號】CN104572184
【申請?zhí)枴緾N201410812151
【發(fā)明人】彭達(dá), 鄒濤, 陳飛舟, 顧露
【申請人】珠海金山網(wǎng)絡(luò)游戲科技有限公司, 成都西山居互動娛樂科技有限公司
【公開日】2015年4月29日
【申請日】2014年12月23日