2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩9頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、RPG游戲通用開發(fā)工具游戲通用開發(fā)工具——圖形部分的處理圖形部分的處理1、圖塊庫(kù)的結(jié)構(gòu)圖塊庫(kù)由圖塊索引和圖塊內(nèi)容兩部分構(gòu)成。因?yàn)閳D塊的字節(jié)長(zhǎng)度是不固定的。圖塊索引的結(jié)構(gòu):每個(gè)索引的長(zhǎng)度為一個(gè)int(4bytes)圖塊內(nèi)容的結(jié)構(gòu):(1)8bytes的圖塊信息頭typedefstructshtblkwidth圖塊的寬度(以點(diǎn)陣來(lái)計(jì)算)shtblkhigh圖塊的高度(以點(diǎn)陣來(lái)計(jì)算)shtblkx圖塊在X方向相對(duì)于絕對(duì)位置的偏移量shtblky

2、圖塊在Y方向相對(duì)于絕對(duì)位置的偏移量BlkInfo(2)長(zhǎng)度不固定的圖塊內(nèi)容其結(jié)構(gòu)是以行為單位,進(jìn)行處理的。它的每一行的結(jié)構(gòu)1bytenbytes畫這一行需要閱讀多少字節(jié)不定長(zhǎng)度的線段內(nèi)容它的每個(gè)線段內(nèi)容的結(jié)構(gòu)1byte1bytenbytes相對(duì)于上次位置的偏移量這個(gè)線段共需要畫多少個(gè)字節(jié)這個(gè)線段的具體內(nèi)容閱讀圖塊的C語(yǔ)言算法voiddrawblk(dest)輸入?yún)?shù):dest圖塊將展開成像素格式到這個(gè)目的緩沖區(qū)內(nèi)BlkInfomInfo

3、包含了這個(gè)圖塊的圖塊信息頭Ureadnum畫這一行應(yīng)該閱讀多少字節(jié)Udrawnum每個(gè)線段所用掉的字節(jié)數(shù)Uusednum目前畫過(guò)的線段已經(jīng)用掉的字節(jié)數(shù)mx當(dāng)前的線段應(yīng)該畫在的位置(相對(duì)于本圖塊的絕對(duì)位置)intoffset因?yàn)閐est是連續(xù)的內(nèi)存,不分寬度和高度的,需要一個(gè)變量來(lái)計(jì)算畫點(diǎn)到dest的偏移量。LPSTRlpBlk指向本圖塊的開始位置的指針shty=mInfo.blkhigh1實(shí)際需要畫的行數(shù)intbufWidthdest接

4、收的寬度(是為了兼容標(biāo)準(zhǔn)位圖的標(biāo)準(zhǔn)格式)在這里可以認(rèn)為等于mInfo.blkwidthvirtual~CBlkLibApi()protected:CPalettepPalblkBufferHBLKblkHleUINTidxBufferHBDXidxHleCListidxListintblkNumberCStringpalFileNamepublic:BOOLEANExptBlk(intindexCFile把指定編號(hào)的圖塊輸出成標(biāo)準(zhǔn)位圖格

5、式BOOLEANLoadBlkLibFile(LPCTSTRlpszBlkName)裝載圖塊庫(kù)到內(nèi)存voidCloseBlkLibFile()關(guān)閉圖塊庫(kù)BOOLEANSaveBlkLibFile(LPCTSTRlpszBlkName)圖塊庫(kù)文件存盤voidSetPalFileName(LPCTSTRlpszPalName)設(shè)置圖塊所用到的調(diào)色板文件CPaletteGetBlkPal()取得當(dāng)前圖庫(kù)所用的調(diào)色板intGetBlkNumbe

6、r()取得當(dāng)前圖庫(kù)中圖塊的數(shù)量BOOLEANBlkiToIcon(CDCdcWndintwDestinthDestCBitmap把指定編號(hào)的圖塊輸出成指定大小的標(biāo)準(zhǔn)位圖(縮放)HLEBlkiToBitmap(LPBITMAPINFO把指定編號(hào)的圖塊輸出成與原來(lái)圖塊大小相同的標(biāo)準(zhǔn)位圖LPBITMAPINFOGetBlkiInfo(BlkInfo取得指定編號(hào)的圖塊的信息BOOLEANBlk(intpositionCBitmapmBitmap

7、CBitmapmMaskintblkxintblky)把一個(gè)標(biāo)準(zhǔn)的位圖加入圖塊庫(kù)中,成為一個(gè)圖塊BOOLEANBlk(intposition)從圖塊庫(kù)中刪除指定位置的圖塊protected:LPBITMAPINFOmDibInfoBOOLEANReadBlkLibFile(LPCTSTRlpszBlkName)BOOLEANReadBlkIdxFile(LPCTSTRlpszIdxName)BOOLEANReadBlkPalFile()

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論