close

(二)解決問題:一切都是編號(索引)
  這個步驟要求你必須瞭解計算機基礎知識。(要知道什麼是bit,什麼是byte;還要知道16進制、2進制、進制轉換。這個很基礎,我就不說了,不懂可以去找本《計算機應用基礎》來看) P0 R8 f 
   1、整天用TLP(Tile Layer Pro)來畫字模(編輯TILE),也許會認為TILE就是一張「字模」。字庫的TILE確實可以認為就是「字模」,那「字模」又算什麼?通稱的「字模」其實是存放在遊戲ROM裡的一串2進制數據,這段數據記錄了字符信息。
   比如剛才那張1BPP的字模圖:

            行   2進制數    轉換為16進制  
|_|_|_|_|_|_|_|_|   0 00000000      
|_|_|_|X|X|_|_|_|   1 00011000     
|_|_|X|_|_|X|_|_|   2 00100100     
|_|X|_|_|_|_|X|_|   3 以下省略…………  
|_|X|_|_|_|_|X|_|   4 ……………………
|_|X|X|X|X|X|X|_|
|_|X|_|_|_|_|X|_|  
|_|X|_|_|_|_|X|_|   
 
   2、1BPP就是指1 bit per pixel,翻譯為中文就是「用1個『比特』(1個比特佔用一個2進制位)來存放1個『像素點』的信息」。1個2進制位能表示的數值只有0或1,當這些數據被傳輸到GBA顯存時,經過遊戲程序的設定,GBA硬件會自動對這些數據進行「索引」工作。
   索引過程:當數值為0時,GBA會去調色板(後面會講到)取0號顏色放到屏幕上這個相應點的位置;當數值為1時,就會去取1號顏色。(當0號顏色被遊戲程序設定為黑色、1號為白色時,你將會看到一個黑底白字的「A」顯示在屏幕上。   
 
   2BPP也是同樣原理,但是用2個2進制位表示1個像素點(2 bit/pixel)。2個2進制位能表示的數值有0、1、2、3,當2BPP的TILE被放到顯存,遊戲程序進行設定之後,GBA同樣對他們進行索引工作。
   索引過程:數值0,取調色板0號顏色;數值1,取1號;數值2,取2號;數值3,取3號。(當調色板0號顏色設定為黑、1號設定為白、2號設定為灰時,如下圖)  
           行   10進制數      2進制數     16進制  
|_|_|_|_|_|_|_|_|  0 00000000  00 00 00 00 00 00 00 00  00 00
|_|_|_|1|1|_|_|_|  1 00011000  00 00 00 01 01 00 00 00  01 40
|_|_|1|_|2|1|_|_|  2 00102100  00 00 01 00 10 01 00 00  04 90
|_|1|_|2|_|_|1|_|  3 01020010  00 01 00 10 00 00 01 00  12 04
|_|1|2|_|_|_|1|2|  4 ……以下省略 
|_|1|1|1|1|1|1|2| 
|_|1|2|2|2|2|1|2| 
|_|1|2|_|_|_|1|2| 

   你將會看到一個黑底白字,帶著灰色陰影的「A」。注意:在同樣使用8*8的情況下,每一行使用的2進制位個數增加為1BPP的2倍。

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 ohgi01 的頭像
    ohgi01

    ohgi的棒球電玩天地

    ohgi01 發表在 痞客邦 留言(0) 人氣()