999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

2D游戲精靈的設(shè)計

2009-04-29 00:00:00肖承勇,向偉銘
電腦知識與技術(shù) 2009年25期

摘要:雖然目前3D游戲大行其道,但2D游戲仍然有強大的生存空間。在2D游戲中,精靈的設(shè)計是實現(xiàn)游戲效果,提高游戲可玩性的最基本部分,該文就這方面進行了探討和分析。

關(guān)鍵詞:2D游戲;3D游戲;幀;動畫;精靈

中圖分類號:TP311文獻標識碼:A文章編號:1009-3044(2009)25-7249-02

The Design of Sprite in 2D Games

XIAO Cheng-yong, XIANG Wei-ming

(School of Applied Technology, South University of Science and Technology, Mianyang 621010, China)

Abstract: Although the popularity of 3D games, 2D games but there are still a powerful surviving space. The design of sprite is the most fundamental part of realizing game effect and improving game playability in 2D games. In this paper, we discuss the design of sprite.

Key words: 2D Games; 3D Games; frame; animation; sprite

隨著3D技術(shù)的成熟和硬件性能的大幅提升,3D游戲已經(jīng)慢慢形成了主流。無論是單機游戲還是網(wǎng)絡(luò)游戲,3D游戲在整體畫面表現(xiàn)力以及戰(zhàn)斗感、移動跑位、視覺等方面都具有2D游戲不可比擬的優(yōu)勢。但是,就目前而言,2D游戲與3D游戲相比,仍然有其自身的優(yōu)點。首先,2D游戲?qū)﹄娔X硬件的配置要求要比3D游戲低很多。其次,2D游戲的唯美風(fēng)格、畫面細膩度就目前的3D技術(shù)而言還無法追上,尤其在武俠、Q版等網(wǎng)絡(luò)游戲中尤為突出。最后,隨著手機游戲的流行和3G的普及,2D游戲配置要求低、操作簡單、游戲引擎容易實現(xiàn)等優(yōu)點將會使2D游戲在手機游戲領(lǐng)域有長足的發(fā)展。因此,2D游戲仍然有強大的生存空間及研究的價值。

1 2D游戲中的精靈

精靈,英文為Sprite,在計算機圖形學(xué)中是指一個2D/3D的圖形或動畫集合到一個大的圖片(場景)中去的方法。在2D游戲中,精靈,是指游戲場景中用來表示角色或其他物體的2D圖像,它是顯示在背景上層的動畫(也可以靜止不動)。精靈也被稱為游戲?qū)ο蟆?/p>

一款優(yōu)秀的游戲必須具備精美細致的畫面、眩目的特效、優(yōu)美的音樂、逼真的音效、引人入勝的故事情節(jié),這些因素都會影響游戲的可玩性。精靈的動畫處理和精靈的設(shè)計是實現(xiàn)游戲效果,提高游戲可玩性的最基本部分。下面我們就對2D游戲中的精靈的實現(xiàn)進行分析。

2 動畫

動畫原理的實質(zhì)是人眼的視覺暫留作用,即人眼看到的景物消失后,視神經(jīng)對景物的印象還能保留大約0.1秒。因此,可以預(yù)先制作好一些圖片,在屏幕上不間斷地按順序切換,由于切換的時間較短,上一副圖片的景象在人的印象中還沒有消失,下一副圖片的景象又進入視神經(jīng),這樣,雖然我們間隔的看到一幅副圖片,但是,由于視覺殘留的作用,就會覺得這些圖片的景象是連續(xù)的,就會形成動畫。圖1的8張Number先生的圖片,如果快速切換,就會形成Number先生走路的動畫。

圖1 Number先生行走圖片

2.1 幀

這些預(yù)先制作好的圖片,我們將其稱為“幀”,它是組成動畫的一部分,例如圖1的每一張Number先生的圖片就是每一幀。因此,動畫是由一組幀組成的,當(dāng)這一組幀順序播放時,動畫的感覺就出來了。

默認情形下,一個游戲每秒繪制60幀,即幀速率為60fps(60幀/秒)。每一幀顯示的時間(也叫幀延遲)為16毫秒,即1000毫秒 ÷ 60幀 ≈ 16 毫秒/幀。2個動畫,它們的幀數(shù)一樣,如果它們的幀延遲不同,則動畫的顯示速度就不同,即動畫有快慢之分。例如:對圖1的8個Number先生幀構(gòu)成的動畫,默認情形下16×8=128毫秒就可以顯示完成。如果我們將每個幀的延遲都改變?yōu)?2毫秒/幀(既幀速率為30幀/秒),則這個動畫就需要32×8=256毫秒才能顯示完成,因此動畫顯得變慢了。所以可以調(diào)節(jié)幀延遲來改變動畫的顯示速度。

2.2 動畫播放

2D游戲中的動畫是由一系列的幀組成,按照順序進行播放,并在播放每張圖片間有特定的延遲。

動畫從第一幀開始播放,直到最后一幀。當(dāng)動畫播放完后,我們可以再次從第一幀開始循環(huán)播放動畫,或者使動畫停止并消失,或者使動畫保持在最后一幀。

為了方便起見,我們一般將構(gòu)成動畫的一組幀保存在一個圖像文件中的,這樣就可以一次將整個動畫所需要的幀加載到計算機內(nèi)存中,然后按照特定的順序依次從內(nèi)存中取出單獨的動畫幀(即整個圖像的某一個區(qū)域),輪流依次繪制,來形成動畫。

3 構(gòu)成精靈的要素和精靈的類型

通常,精靈表示游戲中所有運動的部分,可以包括:玩家角色、敵人、子彈、背景活動的部分等。因此,精靈需要存儲以下信息:

1)動畫集:精靈的動畫可以有多個,比如一個游戲精靈可以有幾個方向的行走動畫,可以有技能動畫,當(dāng)游戲精靈死亡后,可能還有死亡動畫等。

2)即時位置:精靈應(yīng)該出現(xiàn)在當(dāng)前屏幕上的位置。一般來講,精靈是可以在屏幕上移動的,要在屏幕上移動精靈,需要在幀與幀之間修改精靈的位置。

3)即時速度:精靈擁有的即時速度,一般用一個向量表示。這個向量用來決定每個精靈在幀間的移動距離。

4)即時方向:精靈當(dāng)前運動的方向,一般用一個向量表示。這個變量決定精靈運動的方向。

5)活動性:精靈可以設(shè)定為活動和不活動,當(dāng)精靈不活動時,所有行為是失效的,并且在屏幕上是不可見的。不活動的精靈在游戲循環(huán)中不能執(zhí)行操作。不活動精靈在需要精靈原型時,經(jīng)常使用。

6)可見度:精靈當(dāng)前是否在屏幕上可見。在每個游戲循環(huán)中,代碼將處理所有的游戲?qū)ο蟮母潞屠L制。當(dāng)精靈可見時,它將被更新和繪制。當(dāng)精靈不可見時,它可以被更新,但不被繪制。

7)層深度(ZOrder): 默認情況下,游戲引擎會在之前繪制的圖像上面繪制新的圖像,造成圖像在屏幕上的層疊,形成圖像遮蓋。我們可以通過層深度來改變圖像在屏幕上的層疊次序。

在圖2中,Z軸表示深度,層深度的值越大,說明在屏幕上的對象越深。人物圖像的層深度值比武器圖像的層深度值低,因此,人物圖像就會出現(xiàn)在武器圖像的上面。

8)縮放:一般情況下動畫是按照原始比例繪制出來的,但是在某些特定情況下,可以對動畫進行縮放。

9)翻轉(zhuǎn):一個動畫可以在某些情況下進行翻轉(zhuǎn)繪制,比如:水平翻轉(zhuǎn)、垂直翻轉(zhuǎn)。默認情形下是不翻轉(zhuǎn)的。

10)染色:一個動畫可以通過對其染色來達到某種特殊的效果,比如游戲中的玩家角色中毒后,可以使整個動畫幀都染上一種淡青色,來達到一種中毒的效果,而不需要在去制作另一組中毒的動畫幀。

11)用于碰撞檢測的包圍盒:各種精靈在屏幕上移動,碰撞是肯定會發(fā)生地,因此,我們必須對精靈是否發(fā)生碰撞進行檢測。

碰撞檢測算法是游戲中關(guān)鍵的一個部分。一種最簡單和快速的方法來實現(xiàn)碰撞檢測是通過包圍盒算法。即將屏幕上的每個物體周圍“畫”一個盒子,然后通過檢查這些盒子是否相交來判斷碰撞是否發(fā)生。如果相交,就有碰撞發(fā)生。圖3顯示了人物和武器兩個精靈的碰撞檢查包圍盒。

以上是對游戲?qū)ο?精靈的普遍分析,實際上,我們應(yīng)該想到,對于游戲中的精靈來說,有些精靈我們可以直接控制,比如游戲中的玩家角色,它可以在屏幕上移動。而大部分精靈都是由游戲本身控制的。這樣的精靈也可以分為幾種:

一種是不能移動的精靈,也就是說它是固定在地圖上的某個位置,并不移動,當(dāng)然,這類精靈對象仍然可以進行自己的動畫,例如原地跳舞等,也可以不進行動畫,例如只是一顆樹、一間客棧等。

另一種是可以移動的精靈對象,該精靈對象的特點就是它不是固定在屏幕上的某個位置,隨著游戲的進行,它的位置、動畫形式都可以發(fā)生改變,具體怎樣變化,由游戲設(shè)計的算法決定。

因此,2D游戲中的精靈可以分為:玩家控制的精靈對象、非玩家控制的不能移動的精靈對象、非玩家控制可以移動的精靈對象。

4 結(jié)束語

通過上面的分析,我們已經(jīng)可以設(shè)計出2D游戲中的精靈類,但是這樣的精靈類還是比較簡陋的,還有待進一步分析和完善,例如我們應(yīng)該在哪里檢測各個精靈之間是否發(fā)生碰撞,精靈的人工智能如何實現(xiàn),以及對于玩家控制的精靈來說,還應(yīng)當(dāng)響應(yīng)的鍵盤、鼠標、游戲桿等輸入設(shè)備。

參考文獻:

[1] Reed A.Learning XNA 3.0[M].Sebastopol: O’Reilly Media Inc,2009.

[2] 曾旭晟,倪勝巧,彭艦.一種2D游戲引擎的設(shè)計與實現(xiàn)[J].計算機與信息技術(shù),2007(9):77-79.

[3] 金鑫.游戲引擎在游戲開發(fā)中的應(yīng)用[J].電腦知識與技術(shù):學(xué)術(shù)交流,2007(19):170-171.

[4] 百度.游戲引擎[DB/OL].http://baike.baidu.com/view/33343.htm.

主站蜘蛛池模板: 日韩国产综合精选| 国产毛片高清一级国语| 丁香综合在线| 奇米精品一区二区三区在线观看| 中文字幕有乳无码| 啊嗯不日本网站| 波多野结衣无码中文字幕在线观看一区二区| 高潮爽到爆的喷水女主播视频| 色播五月婷婷| 在线免费亚洲无码视频| 九色视频一区| 免费中文字幕一级毛片| 又爽又大又黄a级毛片在线视频| 日本尹人综合香蕉在线观看| 欧美另类精品一区二区三区| 国产中文在线亚洲精品官网| 特级毛片8级毛片免费观看| 91av成人日本不卡三区| 国产精品女在线观看| 精品视频一区二区三区在线播| 狠狠干综合| 国产精品xxx| 国产免费一级精品视频| 亚洲国产精品日韩欧美一区| 四虎影视永久在线精品| 91九色视频网| 国产一区二区三区视频| 国产一二三区在线| 欧美丝袜高跟鞋一区二区| 国产微拍一区二区三区四区| 91福利片| 久久人体视频| 色综合天天娱乐综合网| 国产精品福利一区二区久久| 国产一级二级三级毛片| 99这里只有精品在线| 国产无码制服丝袜| 又爽又大又黄a级毛片在线视频| 国产美女免费| 精品视频一区二区观看| 国产在线一区二区视频| 日本在线国产| 欧美亚洲日韩不卡在线在线观看| 午夜精品国产自在| 日韩免费成人| 国产精品美女自慰喷水| 欧洲日本亚洲中文字幕| 午夜欧美理论2019理论| 久久国语对白| 亚洲欧美一区二区三区麻豆| 国内精品久久久久久久久久影视| 99久久人妻精品免费二区| 国产精品网址你懂的| 欧美精品黑人粗大| 国产福利影院在线观看| 国产成人精品亚洲77美色| 无码中文字幕加勒比高清| 亚洲欧美日韩动漫| yjizz视频最新网站在线| 视频国产精品丝袜第一页| 伊人蕉久影院| 色哟哟色院91精品网站| 精品成人免费自拍视频| 色综合久久久久8天国| 亚洲第一av网站| 国产丝袜第一页| 国产高清在线精品一区二区三区| 在线国产综合一区二区三区| jizz亚洲高清在线观看| 国产精品视频猛进猛出| 午夜精品国产自在| 爽爽影院十八禁在线观看| 色婷婷视频在线| 亚洲第一页在线观看| 国产网友愉拍精品| 欧美日本在线观看| 99er精品视频| 日韩精品一区二区深田咏美| 黄色在线不卡| 最新加勒比隔壁人妻| 美女免费精品高清毛片在线视| 亚洲成A人V欧美综合天堂|