三国志8中还是用256色位图,它专门将数据部分与描述部分分离.其中调色板文件存储在P_Main.s8中,而图像数据则在g_maindy.s8
1、三国志8图片描述部分
Public Type BITMAPFILEHEADER
bfType As Integer
bfSize As Long
bfReserved1 As Integer
bfReserved2 As Integer
bfOffBits As Long
End Type
Type BITMAPINFOHEADER
biSize As Long
biWidth As Long
biHeight As Long
biPlanes As Integer
biBitCount As Integer
biCompression As Long
biSizeImage As Long
biXPelsPerMeter As Long
biYPelsPerMeter As Long
biClrUsed As Long
biClrImportant As Long
End Type
Type RGBQUAD
rgbBlue As Byte
rgbGreen As Byte
rgbRed As Byte
rgbReserved As Byte
End Type
Type BITMAPINFO
bmiHeader As BITMAPINFOHEADER
bmiColors(0 To 255) As RGBQUAD
End Type
普通的256色位图是以BITMAPFILEHEADER和BITMAPINFO类型开头的,其中bmiColors就是调色板,在三八里,调色板有很多,其中和脸谱有关的有一个,和宝物图像有关的有3个,如下(数字为在P_Main.s8中的偏移地址,均为普通版):
头像(5701)
宝物1(337477)
宝物2(337477+1024)
宝物3(337477+1024*2)
注意:三八里的调色板的存放顺序是BGR,实际运用的时候还要换一下(windows默认的顺序是RGB)
2、三国志8图片数据部分
三八里面把数据存放在g_maindy.s8中,其中(数字为第一个数据的偏移地址)大头像(160*180)(普通:8265;加强:9393),小头像(64*80)(普通:21493065;加强:24374193),宝物(120*120)(普通:53022749;加强;?)。它是连续存放图像数据的,每一份数据的长度是Width*Height。
注意:1、与普通的位图不同,三八里是从图像尾自下而上存放图像数据的,所以显示时应该倒置一下。
2、因为宝物有三种调色板,所以要分情况显示。
3、宝物有80种,头像(普通746种;加强:846种)
专题列表:三国志8
分享本文地址:https://www.sanguogame.com.cn/special/san8/sanguo8-face.html