版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第6章 理解動(dòng)畫與游戲角色 內(nèi)容提綱 6.1理解游戲動(dòng)畫6.1.1 幀動(dòng)畫與幀圖像6.1.2 幀序列6.1.3 游戲FPS的設(shè)定6.1.4 幀動(dòng)畫繪制實(shí)例6.1.5 文字動(dòng)畫繪制實(shí)例6.2游戲中的角色6.2.1 角色的含義6.2.2 游戲角色的共性6.2.3 角色信息的描述6.3多角色繪制與控制實(shí)例第6章 理解動(dòng)畫與游戲角色 動(dòng)畫制作的好壞直接影響到游戲角色的表現(xiàn),同時(shí)也會(huì)影響到游戲本身的可玩性和受歡迎程度。游戲動(dòng)畫與一般影視動(dòng)畫的區(qū)別:影視動(dòng)畫是線性動(dòng)畫,一旦制作完成,就只能按照合成后的順序進(jìn)行播放;游戲動(dòng)畫是交互的、非線性的,游戲玩家能夠控制游戲角色的行為。6.1 理解游戲動(dòng)畫動(dòng)畫產(chǎn)生的機(jī)
2、制人眼的“視覺暫留”效應(yīng),也稱視覺滯留現(xiàn)象(Visual Staying Phenomenon)。當(dāng)人眼看到的影像消失后,影像在人眼仍能繼續(xù)保留0.1-0.5秒左右;這種視覺暫留現(xiàn)象正是動(dòng)畫產(chǎn)生的基礎(chǔ);一般每秒10到12個(gè)靜態(tài)畫面的連續(xù)播放就足以產(chǎn)生視覺暫留;每秒可播放的靜態(tài)畫面數(shù)就是播放速度,以FPS(Frame Per Second,每秒幀數(shù))作為測(cè)量單位,即每秒鐘可以播放的幀(Frame)圖像數(shù)(一幀只包含一個(gè)靜態(tài)圖像);一般的電影是24FPS,電視是30FPS,而游戲動(dòng)畫的速度可能高于或低于這個(gè)速度。很多情況下,可能會(huì)低于電影、電視的播放速度。過高的FPS,將意味著更多系統(tǒng)資源的占用;
3、游戲設(shè)計(jì)要在畫面流暢度和系統(tǒng)資源占用率之間取得平衡。 6.1 理解游戲動(dòng)畫6.1.1 幀動(dòng)畫與幀圖像幀動(dòng)畫也稱為逐幀動(dòng)畫,它是基于連續(xù)靜態(tài)的幀圖像的動(dòng)畫,每幀圖像代表動(dòng)畫的一個(gè)瞬間動(dòng)作。影視動(dòng)畫屬于幀動(dòng)畫,而游戲設(shè)計(jì)中也常采用這種動(dòng)畫形式。幀圖像可以保存在每個(gè)單幀圖片中,但大多情況下是存儲(chǔ)在一個(gè)單獨(dú)的圖像文件中,繪制某幀圖像時(shí),需要從原圖中提取出對(duì)應(yīng)的幀圖像。幀圖像的排列是有順序的,這種根據(jù)動(dòng)作規(guī)律形成的有序幀圖像稱為幀序列。原圖中幀圖像的排列方式可以是單行、單列或多行多列方式其實(shí)這三種排列方式最終產(chǎn)生的動(dòng)畫效果是沒有任何區(qū)別的6.1 理解游戲動(dòng)畫6.1.2 幀序列將原圖中的幀序列重新組合后播
4、放,可以達(dá)到用少量素材產(chǎn)生更豐富效果的目的,這對(duì)于游戲設(shè)計(jì)特別重要。重新定義幀序列時(shí),幀可以重復(fù)、忽略,也可以使用相反的順序顯示等。原圖中的幀就如同拍攝電影的原始膠片,重新定義幀序列就相當(dāng)于對(duì)原始膠片進(jìn)行剪輯、編輯。幀序列號(hào)其實(shí)就是原圖中幀圖的順序號(hào),一般從0開始編號(hào);位圖操作類中的PaintFrame()函數(shù)專門處理幀動(dòng)畫繪制。6.1 理解游戲動(dòng)畫6.1.3 游戲FPS的設(shè)定游戲設(shè)計(jì)時(shí),設(shè)計(jì)人員往往要考慮動(dòng)畫播放速度與游戲畫面大小的關(guān)系;游戲設(shè)計(jì)中會(huì)在保證游戲流暢度的前提下選擇一種合適的畫面分辨率;編寫游戲代碼時(shí),需要合理地設(shè)定FPS,即要到達(dá)某一個(gè)FPS繪制一個(gè)靜態(tài)畫面(即每幀)所需要的具
5、體時(shí)間;衡量繪制每幀圖像所花費(fèi)的時(shí)間單位叫做SPF(Second Per Frame,每幀的秒數(shù));SPF與FPS之間是倒數(shù)關(guān)系,可以使用如下公式計(jì)算:SPF = 1000 / FPS(1000為毫秒數(shù))。T_Engine類中的SetFrame()函數(shù)會(huì)根據(jù)用戶傳入的參數(shù)計(jì)算出繪制每一幀所需的間隔時(shí)間。代碼如下:void SetFrame(int iTime) IntervalTime = 1000 / iTime; 6.1 理解游戲動(dòng)畫6.1.4 幀動(dòng)畫繪制實(shí)例幀圖像文件素材:騎馬飛奔的完整動(dòng)畫,該動(dòng)畫由保存在同一圖片文件中的6張尺寸完全相同的小幀圖組成?!纠?-1】利用PaintFrame
6、()函數(shù)實(shí)現(xiàn)動(dòng)畫繪制的實(shí)例。PaintFrame()函數(shù)原型定義:void PaintFrame(HBITMAP in_hbitmap, HDC destDC, int destX, int destY, int FrameCount, int RowFrames, int wFrame, int hFrame, float ratio=1, int rotType=0, BYTE alpha=255);6.1 理解游戲動(dòng)畫運(yùn)行結(jié)果:具體實(shí)現(xiàn)代碼請(qǐng)參見教程6.1 理解游戲動(dòng)畫6.1.5 文字動(dòng)畫繪制實(shí)例【例6-2】利用T_Graph類的PaintText()函數(shù)在動(dòng)畫上繪制有陰影的滾動(dòng)文字。這
7、個(gè)實(shí)例以例6-1為基礎(chǔ)實(shí)現(xiàn),也就是在播放例6-1的騎馬飛奔動(dòng)畫的同時(shí),在窗口自下向上顯示不斷滾動(dòng)文字,文字的前景色是白色,陰影色是黑色。具體實(shí)現(xiàn)代碼請(qǐng)參見教程最終的效果:6.2 游戲中的角色游戲中的角色,也稱游戲精靈(Sprite),是游戲中受玩家或計(jì)算機(jī)控制的活動(dòng)對(duì)象(也就是NPC)。6.2.1 角色的含義角色是指游戲中能夠與玩家或計(jì)算機(jī)進(jìn)行互動(dòng)的活動(dòng)對(duì)象。在二維游戲中,表現(xiàn)為使用圖形或圖像表現(xiàn)的各種受計(jì)算機(jī)或玩家控制的活動(dòng)對(duì)象。它有兩個(gè)主要含義:一個(gè)含義是角色本身是動(dòng)態(tài)表現(xiàn)的,也就是采用動(dòng)畫的方式表現(xiàn)的;另一個(gè)含義是角色在游戲過程中是動(dòng)態(tài)的,如位置、狀態(tài)、顏色等等。6.2 游戲中的角色在計(jì)
8、算機(jī)游戲中,任何能夠與計(jì)算機(jī)或玩家互動(dòng)的對(duì)象都可以稱之為游戲角色,或游戲精靈。例如游戲中的人物、子彈、武器、爆炸等。廣義地說,甚至游戲中的地圖、前景、背景、文字等,也可以稱為角色。按功能劃分,角色可以分為:玩家角色和非玩家角色,即NPC。嚴(yán)格地說,游戲中要參與玩家對(duì)抗的角色才稱為NPC。游戲中的角色大致分為四類:玩家角色、NPC、資源類角色以及描述裝飾性角色。6.2 游戲中的角色6.2.2 游戲角色的共性角色共性是抽象的,與具體游戲無關(guān),最主要的共性:坐標(biāo)位置方向活動(dòng)范圍移動(dòng)速度大多數(shù)游戲角色必須具備的共同屬性還包括:是否可見是否可活動(dòng)游戲等級(jí)游戲分值游戲角色圖像的加載、信息讀取是共同的操作6
9、.2 游戲中的角色6.2.3 角色信息的描述基本共性設(shè)定了游戲角色基本的關(guān)鍵信息。游戲中每一個(gè)游戲角色必須具備的關(guān)鍵信息,這些信息為游戲引擎中的各接口函數(shù),如圖形繪制、游戲邏輯處理等,提供關(guān)鍵的操作依據(jù)。T_Config.h文件中的SPRITEINFO的結(jié)構(gòu)體用來描述角色信息。利用這個(gè)結(jié)構(gòu)體類型,可以為每一個(gè)游戲角色定義統(tǒng)一的關(guān)鍵信息:6.2 游戲中的角色/ 游戲角色關(guān)鍵信息(每個(gè)新增角色必須設(shè)置全部值)typedef structintX;/ 精靈初始X坐標(biāo)intY;/ 精靈初始Y坐標(biāo)intDir;/ 精靈初始方向(取值為GAME_DIR常量)intSpeed;/ 角色初始的移動(dòng)速度intL
10、evel;/ 精靈初始的等級(jí)intScore;/ 精靈角色分值 boolVisible;/ 精靈在屏幕上是否可見boolActive;/ 精靈的狀態(tài)(是否移動(dòng))boolDead;/ 精靈是否是死亡狀態(tài)BYTEAlpha;/ 精靈透明度floatRatio;/ 動(dòng)畫幀圖片放大或縮小比/ 等于1原始尺寸,大于1放大,小于1縮小intRotation;/ 幀圖片是否鏡像變換(取值為TRANSFER常量)SPRITEINFO;6.2 游戲中的角色T_Config.h頭文件中定義了表示方向的枚舉類型GAME_DIR,該類型中定義了8個(gè)常用方向常量值:/ 游戲方向常量,其值為方向鍵對(duì)應(yīng)的鍵值enum GA
11、ME_DIRDIR_LEFT,/ 左DIR_RIGHT,/ 右DIR_UP,/ 上DIR_DOWN,/ 下DIR_LEFT_UP,/ 左上DIR_LEFT_DOWN,/ 左下DIR_RIGHT_UP,/ 右上DIR_RIGHT_DOWN/ 右下;6.2 游戲中的角色T_Config.h頭文件中定義了類型,其中定義了12個(gè)與圖像旋轉(zhuǎn)或翻轉(zhuǎn)相關(guān)的常量值: / 圖像繪制處理常量enum TRANSFERTRANS_NONE,/ 原始圖像TRANS_NOFLIP_ROT90,/ 原始圖像順時(shí)針旋轉(zhuǎn)90度TRANS_NOFLIP_ROT180,/ 原始圖像順時(shí)針旋轉(zhuǎn)180度TRANS_NOFLIP_RO
12、T270,/ 原始圖像順時(shí)針旋轉(zhuǎn)270度TRANS_VFLIP_NOROT,/ 原始圖像垂直翻轉(zhuǎn)TRANS_VFLIP_ROT90,/ 原始圖像垂直翻轉(zhuǎn)并順時(shí)針旋轉(zhuǎn)90度TRANS_VFLIP_ROT180,/ 原始圖像垂直翻轉(zhuǎn)并順時(shí)針旋轉(zhuǎn)180度TRANS_VFLIP_ROT270,/ 原始圖像垂直翻轉(zhuǎn)并順時(shí)針旋轉(zhuǎn)27度TRANS_HFLIP_NOROT,/ 原始圖像水平翻轉(zhuǎn)TRANS_HFLIP_ROT90,/ 原始圖像水平翻轉(zhuǎn)并順時(shí)針旋轉(zhuǎn)90度TRANS_HFLIP_ROT180,/ 原始圖像水平翻轉(zhuǎn)并順時(shí)針旋轉(zhuǎn)180度TRANS_HFLIP_ROT270/ 原始圖像水平翻轉(zhuǎn)并順時(shí)針旋轉(zhuǎn)270度;SPRITEINFO的結(jié)構(gòu)體中的Rotation元素的取值就是TRANSFER類型的常量值。6.3 多角色繪制與控制實(shí)例【例6-3】多游戲角色動(dòng)畫繪制、行為控制及玩家角色的交互控制。動(dòng)畫素材:簡(jiǎn)單4個(gè)方向移動(dòng)的方塊動(dòng)畫6
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024屆安徽省銅陵市重點(diǎn)名校高三八校聯(lián)考數(shù)學(xué)試題(四)
- 九年級(jí)語文上冊(cè)教案全集
- 魔法屋課件教學(xué)
- 人教版物理八年級(jí)下冊(cè) 專項(xiàng)訓(xùn)練卷 (一)力、運(yùn)動(dòng)和力(含答案)
- 貴州省六盤水市2024-2025學(xué)年高一上學(xué)期11月期中地理試題(無答案)
- 2024-2025學(xué)年北京市順義區(qū)牛欄山一中高三(上)月考物理試卷(10月份)(含答案)
- 擱板置物架市場(chǎng)發(fā)展預(yù)測(cè)和趨勢(shì)分析
- 套鞋產(chǎn)業(yè)規(guī)劃專項(xiàng)研究報(bào)告
- 寵物貓砂箱用除臭劑產(chǎn)業(yè)運(yùn)行及前景預(yù)測(cè)報(bào)告
- 人教版英語八年級(jí)下冊(cè) 暑假復(fù)習(xí)Unit 8-Unit10 小檢測(cè)
- 天然氣管網(wǎng)安裝工程施工過程崗位操作指南
- 吉林省吉林市2025屆高三上學(xué)期一模歷史試卷
- 公司網(wǎng)絡(luò)安全制度
- 期中測(cè)試卷(1~4單元)(試題)-2024-2025學(xué)年數(shù)學(xué)六年級(jí)上冊(cè)北師大版
- 跨學(xué)科主題學(xué)習(xí)- 探索外來食料作物傳播史(課件)七年級(jí)地理上冊(cè)同步高效備課課件(人教版2024)
- 學(xué)校編制外臨時(shí)代課教師聘用管理辦法
- 2016滬S204排水管道圖集
- 2024-2025學(xué)年小學(xué)勞動(dòng)五年級(jí)上冊(cè)人教版《勞動(dòng)教育》教學(xué)設(shè)計(jì)合集
- 一般工商貿(mào)(輕工)管理人員安全生產(chǎn)考試題庫(含答案)
- 《國有企業(yè)管理人員處分條例》學(xué)習(xí)解讀課件
- 空氣化工高精度氣體分裝及儲(chǔ)運(yùn)中心一期項(xiàng)目環(huán)評(píng)報(bào)告書
評(píng)論
0/150
提交評(píng)論