国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

FLIC動畫文件的播放程序設計

2019-11-18 17:26:10
字體:
來源:轉載
供稿:網友
Autodesk公司的三維動畫設計軟件3DS在我國已廣泛使用,其良好的性能為計算機專家和藝術家所肯定。其動畫存儲文件FLIC也給系統提供了存儲和顯示的方便。下面具體分析FLIC文件的格式及播放程序的設計。
一、FLIC文件格式的概述
FLIC文件事實上是對一個靜止畫面序列的描述,連續顯示這一序列便可在上產生動畫效果。FLIC文件結構簡潔,彈出速度快,雖然每種基色最多只有256級灰度,圖像深度只有8位,使用起來很方便。
FLIC文件有兩種類型:FLI文件和FLC文件。FLC文是FLI文件的進一步發展,它采用更高效的壓縮技術,且其分辨率也不僅限于320×200。我們在PC上經常使用的FLI文件,因為它和VGA的320×200×256顯示相匹配。
FLIC文件采取的壓縮技術原理就是僅保存前一幀中改變的部分。這樣占的空間小,彈出速度快。FLIC文件的結果可分為3個層次:文件層、幀層和塊層。文件層給出了FLIC文件的基本特征。幀層定義了幀的緩沖和塊中塊的數目。塊層包括塊的大小、類型和實際數據。這樣層次結構很容易實現,特別是可以增加塊的類型以滿足新的需要,同時無需涉及原定義。
二、各層頭的結構
1.FLI文件格式的結構定義
①文件頭的結構定義
文件頭長度為80H字節,其C語言結構定義如下
/*flifilehedaerstruct*/
typedefstruct{
unsignedlongfli-size;/*00H:文件總長度*/
unsignedintmagic;/*04H:文件格式,FLC=AF12;
FLI=AF11;*/
unsignedintframes-number;/*06H:FLIC的幀數*/
unsignedintscreen-width;/*08H:屏幕寬度*/
unsignedintscreen-height;/*0AH:屏幕高度*/
unsignedintunuserd;/*0CH:保留未用*/
unsignedintflags;/*0EH:標志=0003*/
unsignedintspeed;/*10H:幀間播放速度單位*/
unsignedlongnext;/*12H:置為0*/
unsignedlongfrit;/*16H:置為0*/
unsignedcharfli-expand[102];/*1AH:保留作擴展用=0*/
}FLIHEAD;
②幀頭的結構定義
幀頭長度為10H字節,其C語言結構定義如下:
/*framesheaderstruct*/
typedefstruct{
unsignedlongsize-frame;/*00H:幀大小,包括本幀頭*/
unsignedintmagic;/*04H:幀標識字=0F1FAH*/
unsignedintchunks;/*06H:本幀塊數*/
unsignedcharexpand[8];/*08H:保留未用=0*/
}FRAMESHEAD;
③塊頭的結構定義
塊頭長度為6H字節,其C語言結構定義如下:
/*chunkheaderstruct*/
typedefstruct{
unsignedlongsize-chunk;/*00H:塊大小*/
unsignedtype-chunk;/*04H:塊類型*/
}CHUNKHEAD;
2.FLC文件格式的結構定義
文件頭長度為80H字節,其C語言結構定義如下:
/*flifileheaderstruct*/
typedefstruct{
unsignedlongfli-size;/*00H:文件總長度*/
unsignedintmagic;/*04H:文件格式,FLC=AF12;
FLI=AF11;*/
unsignedintframes-number;/*06H:FLIC的幀數*/
unsignedintscreen-width;/*08H:屏幕寬度*/
unsignedintscreen-height;/*0AH:屏幕高度*/
unsignedintdepth;/*0CH:圖像深度*/
unsignedintflags;/*0EH:標志=0003*/
unsignedintspeed;/*10H:幀間播放速度單位
FLC=1ms,FLI=1/70s*/
unsignedintreserved-1;/*14H:保留未用*/
unsignedlongcreatetime;
unsignedlongcreator;
unsignedlongupdatetime;
unsignedlongupdater;
unsignedintaspectx;/*創建文件時的顯示屏幕像素
大小的縱橫比,VGA320×200
unsignedintaspecty;為6∶5*/
unsignedcharreserved-2[0x26];/*保留未用,=0*/
unsignedlongoffsetframel;/*50H:第一幀畫面相對于文件
開始的偏移*/
unsignedlongoffsetframe2;/*54H:第二幀畫面相對于文件
開始的偏移*/
unsignedcharreserved-3[0x28];/*保留未用=0*/
}FLIHEAD;
FLC的幀頭和塊頭的結構定義和FLI文件格式的定義相同。
每塊的數據緊接在FLIC文件頭的后面。對于不同的塊類型有不同的數據含義,下面就不同的塊類型分別介紹,這是設計播放FLIC動畫文件程序的關鍵之所在。
三、塊類型的含義

FLIC格式文件中的塊類型有許多種,每一種類型都有不同的定義,因此我們必須對每一種類型作出準確的分析。由于動畫格式FLIC圖像文件的塊類型具有極強的可擴展性,在此我們只介紹幾種常見的塊類型。
1.類型04H
為每基色256級灰度->


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 盐池县| 周宁县| 崇州市| 宝山区| 游戏| 桦川县| 怀来县| 乌拉特中旗| 福安市| 长汀县| 濉溪县| 汤阴县| 银川市| 江源县| 丁青县| 平果县| 屏边| 瑞丽市| 汉寿县| 永嘉县| 安宁市| 育儿| 海林市| 法库县| 铜鼓县| 西畴县| 太仆寺旗| 湖北省| 榆中县| 霍邱县| 甘泉县| 德阳市| 云霄县| 石棉县| 兴海县| 凤翔县| 舞钢市| 涞源县| 榆林市| 寿阳县| 谢通门县|