青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

李錦俊(mybios)的blog

游戲開發(fā) C++ Cocos2d-x OpenGL DirectX 數(shù)學(xué) 計(jì)算機(jī)圖形學(xué) SQL Server

  C++博客 :: 首頁(yè) :: 聯(lián)系 :: 聚合  :: 管理
  86 Posts :: 0 Stories :: 370 Comments :: 0 Trackbacks

公告

QQ:30743734
EMain:mybios@qq.com

常用鏈接

留言簿(16)

我參與的團(tuán)隊(duì)

最新隨筆

搜索

  •  

積分與排名

  • 積分 - 372634
  • 排名 - 67

最新評(píng)論

閱讀排行榜

評(píng)論排行榜

  本人正在準(zhǔn)備做一個(gè)游戲引擎(你就當(dāng)我準(zhǔn)備產(chǎn)生垃圾好了~呵呵!),準(zhǔn)備寫文檔,就順便把這篇文章寫出來了,初次發(fā)稿,寫得可能不是很好,請(qǐng)多多包涵~謝謝!~~

  資源打包就是將一些零碎資源(如圖片,音樂文件)。打包的好處有哪些呢?

  1、減少碎片。因?yàn)閃INDOWS的文件管理系統(tǒng)的原因,將這些資源按原樣放在硬盤里,會(huì)產(chǎn)生“碎片”。比如1個(gè)字節(jié)的文件,占用的空間就高達(dá)8KB。這樣,資源可以說“膨脹”了。

  2、安全。將這些數(shù)據(jù)集合起來打包的話,就可以隱藏這些文件,讓用戶不能修改(如果某位高手破解了文件結(jié)構(gòu)并提取出來了的話你當(dāng)我沒說~)

  我想到的只有這些,如果哪位大蝦認(rèn)為還可以補(bǔ)充的,請(qǐng)聯(lián)系我:)

  好了!我們現(xiàn)在來構(gòu)造一個(gè)結(jié)構(gòu)來儲(chǔ)存這些文件吧!在這里因?yàn)槲覝?zhǔn)備寫的是只儲(chǔ)存圖形的游戲引擎,所以我想到的只是圖片的儲(chǔ)存,其他文件的儲(chǔ)存,這里沒有涉及。
  
  我們先構(gòu)造一個(gè)文件頭,這個(gè)文件頭描述了一些基本的信息,有長(zhǎng)度,文件版本,壓縮類型,還有儲(chǔ)存的圖片總數(shù)。現(xiàn)在詳細(xì)的說一下,長(zhǎng)度就不用說了吧,文件頭的大小。文件版本是給打包工具看的東東,游戲引擎里也可以使用,根據(jù)版本來用不同的方法打開文件(不同的結(jié)構(gòu),或者其他的)。壓縮類型是一個(gè)以備擴(kuò)展用的東東,根據(jù)標(biāo)識(shí)來使用不同的壓縮方法解壓縮,在這里可以選一個(gè)速度和容量折中的壓縮方法。圖片總數(shù)說的不是單個(gè)圖片的總數(shù),而是靜態(tài)圖片和動(dòng)態(tài)圖片的總數(shù),靜態(tài)圖片可以理解成一個(gè)圖片,動(dòng)態(tài)圖片就是一系列靜態(tài)圖片的集合,這個(gè)在后面會(huì)說到。講一個(gè)文件頭就說了這么多話。我講得是太詳細(xì)了還是太水了?

  struct FileHeader

  {

  unsigned long headsize; //文件頭長(zhǎng)度

  int Version; //文件版本

  int Compress; //壓縮類型

  int AllNumber; //圖片總數(shù)

  }

  然后緊跟一個(gè)結(jié)構(gòu)數(shù)組,這個(gè)結(jié)構(gòu)描述了每個(gè)圖片的起始偏移量,這個(gè)偏移量是以文件頭的長(zhǎng)度+索引結(jié)構(gòu)數(shù)組的長(zhǎng)度+1為基址的,還描述了圖片的幀數(shù),為1則表示為靜態(tài)圖片,大于1則表示動(dòng)態(tài)圖片(動(dòng)態(tài)圖片很有用處,比如海面,被風(fēng)吹動(dòng)的樹,這些就可以很容易的表示出來)

  struct PicIndex

  {

  int offset; //圖片偏移量

  unsigned long PicSize //圖片長(zhǎng)度(如果是多幀的則代表這個(gè)圖片集的總共長(zhǎng)度)

  int nFrameNumber; //圖片幀數(shù)

  unsigned long nFrameSize[nFrameNumber]; //每一幀的偏移量,這里的偏移量就是基址+offset+這一個(gè)偏移量。。#··%…!天書?

  //當(dāng)然上面這個(gè)數(shù)組定義編譯時(shí)不能這樣寫

  }

  PicIndex結(jié)構(gòu)是一個(gè)數(shù)組,它的下標(biāo)為AllNumber個(gè)。例如:

  PicIndex Index[AllNumber];

  然后剩下的就是一些數(shù)據(jù)了,這些數(shù)據(jù)已經(jīng)被壓縮了,壓縮方式通過文件頭的AllNumber變量來獲得。

  

  下標(biāo)n其實(shí)就是AllNumber,這里為了省空間:)

  值得注意的是后面的壓縮數(shù)據(jù)不是整塊壓縮的,而是單個(gè)圖片的壓縮,然后放在一起而已,我這樣做是為了讀取方便,就不用讀取一個(gè)數(shù)據(jù)還要把整個(gè)文件再解壓縮一道了,這樣壓縮率可能也會(huì)降低,不知道是否還有更好的辦法,如果有,請(qǐng)聯(lián)系我~謝謝!

  除了我寫的這種結(jié)構(gòu)方式來儲(chǔ)存文件以外,還有其他的實(shí)現(xiàn)方案,但是我覺得這個(gè)好一點(diǎn)。

  代碼我剛寫一半,還不完全,所以這里就不放上來了。

  我的QQ:393277421

  我再說一句最重要的話:有空常聯(lián)系~~~~~~~~
posted on 2006-11-19 08:11 李錦俊(mybios) 閱讀(2585) 評(píng)論(2)  編輯 收藏 引用 所屬分類: 資源壓縮打包

Feedback

# re: 【轉(zhuǎn)貼】游戲中的資源打包 2008-03-19 19:17 小旋子
請(qǐng)問 關(guān)于某一個(gè)格式(即某種壓縮打包算法)的游戲壓縮包 已有一種工具能夠正確提取出其中的文件, 那么是否可以逆向呢?就是可否反過來將某些文件壓縮打包到該游戲的文件中?  回復(fù)  更多評(píng)論
  

# re: 【轉(zhuǎn)貼】游戲中的資源打包 2012-03-13 13:57 lake
xielianjin@qq.com 有的話發(fā)一份研究。3Q  回復(fù)  更多評(píng)論
  

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            国产精品专区第二| 欧美成人免费在线视频| 日韩一二三在线视频播| 欧美日韩国产一区| 在线综合亚洲欧美在线视频| 亚洲国产高清自拍| 欧美激情视频网站| 亚洲午夜国产成人av电影男同| 亚洲电影免费在线 | 亚洲欧美久久久| 亚洲图片你懂的| 国产欧美精品一区aⅴ影院| 久久狠狠亚洲综合| 老鸭窝亚洲一区二区三区| 亚洲九九爱视频| 亚洲自拍偷拍麻豆| 伊人成人开心激情综合网| 亚洲国产色一区| 国产精品久久久久久模特| 久久久久久久网站| 欧美日韩一卡二卡| 久久久激情视频| 欧美精品免费播放| 久久精品亚洲一区二区三区浴池| 久久久久天天天天| 亚洲一级黄色| 久久久久久亚洲精品杨幂换脸| 99riav1国产精品视频| 午夜精品久久久久久| 亚洲精品乱码久久久久久| 亚洲午夜免费视频| 亚洲精品欧洲| 欧美亚洲在线视频| 制服丝袜激情欧洲亚洲| 久久精品国产免费| 亚洲欧美日韩系列| 国产亚洲欧美日韩日本| 亚洲美女91| 欧美专区日韩视频| 亚洲午夜91| 欧美国产欧美亚洲国产日韩mv天天看完整 | 在线中文字幕一区| 亚洲第一精品夜夜躁人人爽| 亚洲一区二区三区在线看| 亚洲人成啪啪网站| 久久久久欧美精品| 久久久久久夜精品精品免费| 欧美日韩精品福利| 欧美高清在线视频| 影音先锋亚洲一区| 欧美一区二区视频免费观看 | 极品裸体白嫩激情啪啪国产精品| 夜夜躁日日躁狠狠久久88av| 最新国产成人av网站网址麻豆| 欧美一区二视频| 欧美在线观看视频一区二区三区| 欧美色区777第一页| 亚洲国产另类久久久精品极度| 精品动漫一区| 久久精品二区| 久久亚洲影院| 国产在线日韩| 久久精品成人| 美女精品视频一区| 在线精品亚洲| 久久久久9999亚洲精品| 久久蜜桃资源一区二区老牛| 国产一区二区av| 欧美在线免费视屏| 老色批av在线精品| 精品1区2区3区4区| 裸体素人女欧美日韩| 欧美激情1区2区| 日韩一区二区精品| 欧美日韩一区二区三区四区在线观看| 亚洲精品国偷自产在线99热| 一本色道久久加勒比88综合| 欧美日韩精品在线视频| 99ri日韩精品视频| 欧美一区二区三区久久精品茉莉花| 国产精品国产三级国产| 午夜在线观看免费一区| 麻豆成人av| 日韩天堂在线观看| 国产精品久久久久久久免费软件 | 销魂美女一区二区三区视频在线| 久久精品夜夜夜夜久久| 国产精品久久久久一区| 午夜精品国产更新| 国产亚洲欧洲| 久久久久成人精品免费播放动漫| 欧美二区视频| 亚洲午夜国产一区99re久久| 国产精品一区在线观看| 一区二区久久久久| 久久国产精品久久国产精品| 精品99视频| 欧美—级a级欧美特级ar全黄| 一区二区三区高清不卡| 久久久久国色av免费看影院| 亚洲福利视频网| 国产精品大片免费观看| 久久全球大尺度高清视频| 亚洲精品国产精品国自产观看浪潮| 亚洲一区二区黄| 亚洲大片在线| 国产日韩精品在线| 欧美日韩国产成人高清视频| 亚洲欧美中文日韩在线| 亚洲激情在线| 久久九九国产精品怡红院| 日韩视频中文| 又紧又大又爽精品一区二区| 欧美日韩一区二区三区四区在线观看| 久久av一区二区三区漫画| 亚洲人午夜精品| 免费在线看成人av| 小黄鸭精品aⅴ导航网站入口| 亚洲精品视频啊美女在线直播| 国产日产欧美精品| 欧美亚洲成人免费| 免费成人黄色av| 久久精品二区三区| 亚洲欧美中文另类| 一二三四社区欧美黄| 亚洲国产高清aⅴ视频| 久久免费视频一区| 欧美伊久线香蕉线新在线| 中国女人久久久| 亚洲精品久久在线| 亚洲人成在线播放| 亚洲国产精品精华液2区45| 99在线视频精品| 在线播放中文一区| 国内精品亚洲| 国产亚洲aⅴaaaaaa毛片| 国产精品欧美一区喷水 | 亚洲美女黄色片| 欧美激情在线| 欧美高清在线视频| 欧美成人精品影院| 欧美成人亚洲成人| 免费亚洲电影| 欧美成人综合网站| 亚洲电影中文字幕| 国产欧美精品一区二区色综合| 欧美日韩国产专区| 欧美日韩亚洲一区二| 欧美久久成人| 欧美午夜欧美| 国产精品久久久久婷婷| 国产精品香蕉在线观看| 国产精品网站一区| 国产又爽又黄的激情精品视频| 国产三区精品| 亚洲电影av| 亚洲乱码国产乱码精品精98午夜| 亚洲精品一二| 亚洲一区二区三区四区五区黄| 亚洲一区在线播放| 久久精品二区三区| 亚洲欧洲精品一区二区| 久久精品免费| 欧美777四色影视在线| 欧美精品久久久久久久久老牛影院| 亚洲婷婷综合色高清在线| 亚洲免费在线视频| 欧美在线视频免费播放| 麻豆精品视频在线观看视频| 欧美黄色免费| 国产精品日韩欧美一区二区三区| 国产亚洲在线观看| 亚洲国产专区校园欧美| 亚洲手机视频| 久久午夜影视| 日韩亚洲视频在线| 欧美一站二站| 欧美理论大片| 国产在线精品二区| avtt综合网| 久久一区亚洲| 日韩网站免费观看| 久久精品人人做人人爽| 欧美激情第六页| 国产日韩欧美在线一区| 亚洲最黄网站| 久久综合久久久久88| 一区二区三区四区在线| 久久三级福利| 国产日韩成人精品| 一道本一区二区| 欧美成人亚洲成人| 久久精品二区三区| 欧美电影在线观看完整版| 国产欧美一区二区三区国产幕精品| 亚洲日本成人网| 久久亚洲午夜电影| 亚洲欧美成人在线| 欧美日韩成人精品| 亚洲电影在线播放|