Unity Plugin - Bitmap Font Creater
不依賴第三方工具称近,可以一鍵將圖片生成位圖字體的Unity插件
引言
當(dāng)項(xiàng)目中有些文本展示,需要用到特殊的畫(huà)面效果(比如夸張的暴擊數(shù)字)時(shí)蛀蜜,我們有一種解決方案是美術(shù)給你出0-9的數(shù)字(或者還有+,-號(hào))的圖片,然后你會(huì)用TexturePacker或者BMFont等工具赃绊,制作一個(gè)fnt數(shù)據(jù)文件和一個(gè)png紋理集岂昭,導(dǎo)入到Unity后,通過(guò)editor腳本或者手動(dòng)的方式生成一個(gè)fontsettings文件车伞,這個(gè)文件就是Unity中可以使用的字體文件择懂。
而B(niǎo)itmapFontCreater簡(jiǎn)化了這一套流程,我們只需要將美術(shù)給的圖片導(dǎo)入到Unity中另玖,就可以一鍵或者簡(jiǎn)單的配置一下困曙,就可以生成我們需要的位圖字體,完全不需要依賴第三方的工具日矫。
本文適用對(duì)象
- 在Unity中赂弓,需要使用位圖字體的開(kāi)發(fā)者
- 對(duì)目前掌握的位圖字體制作方式不滿意,希望能夠簡(jiǎn)單哪轿、快速的創(chuàng)建位圖字體的Unity開(kāi)發(fā)者
方案優(yōu)勢(shì)
- 一鍵生成盈魁,不需要繁瑣的操作
- 針對(duì)特殊字符位圖字符,比如逗號(hào)窃诉、點(diǎn)號(hào)杨耙、空格號(hào)等,僅需要簡(jiǎn)單配置一下飘痛,也可以快速導(dǎo)出位圖字體
文章DEMO對(duì)應(yīng)的IDE版本
- Unity 2018.4.0測(cè)試通過(guò)
字體制作流程
總共有3種方式珊膜,可以讓你根據(jù)自己的位圖情況來(lái)快速生成位圖字體
方式1:使用圖片文件名稱作為字符來(lái)生成字體
這種方式適合沒(méi)有特殊字符的位圖字體,只需要將每張圖片的名稱設(shè)置為對(duì)應(yīng)的字符即可宣脉。例如圖片中是數(shù)字0的位圖字车柠,那么圖片就命名為「0.png」即可。
- 按照上述規(guī)則命名的圖片,統(tǒng)一放到一個(gè)文件夾中竹祷。
- Project視圖中右鍵文件夾或者在文件夾中右鍵點(diǎn)擊空白處谈跛,選擇"Assets/Zero/Create Bitmap Font (Direct)/Use「PNG File Name」"即可立刻生成位圖字體。
- 位圖字體的名稱會(huì)以文件夾的名稱來(lái)命名塑陵。
方式2:使用「chars.txt」配置文件作為字符源來(lái)生成字體
這種方式適合有特殊字符的位圖字體感憾。
- 將所有要制作位圖字體的圖片放到一個(gè)文件夾中。
- 在文件夾中創(chuàng)建文件「chars.txt」文件令花。
- 在「chars.txt」中阻桅,按照?qǐng)D片在Project視圖中顯示的順序,依次填寫(xiě)字符來(lái)一一對(duì)應(yīng)兼都,完成后保存嫂沉。
- Project視圖中右鍵文件夾或者在文件夾中右鍵點(diǎn)擊空白處,選擇"Assets/Zero/Create Bitmap Font (Direct)/Use「chars.txt」"即可立刻生成位圖字體俯抖。
- 位圖字體的名稱會(huì)以文件夾的名稱來(lái)命名输瓜。
方式3:使用GUI工具來(lái)配置數(shù)據(jù)生成字體
這種方式適合需要定制字體的特殊情況》移迹可以自己社會(huì)字體需要的圖片尤揣、字符、字體名稱柬祠、保存位置
顯示GUI界面的方式有兩種
- 在Unity編輯器頂部通過(guò)"Tools/Zero/Create Bitmap Font"來(lái)打開(kāi)
- 在Project視圖中通過(guò)右鍵打開(kāi)北戏,這種方式會(huì)自動(dòng)掃描文件夾中的紋理和「chars.txt」(如果沒(méi)有「chars.txt」則會(huì)讀取單字符命名的圖片名稱)來(lái)填入GUI中的數(shù)據(jù),并且自動(dòng)以文件夾路徑和文件夾名來(lái)填入到GUI中漫蛔,當(dāng)然這些參數(shù)可以之后自行修改嗜愈。
GUI界面中只需要填寫(xiě)對(duì)應(yīng)參數(shù),選擇「創(chuàng)建」即可創(chuàng)建字體
- 字體圖片集合
- 字體名稱(保存的字體的名稱)
- 字符內(nèi)容(按照字體圖片集合的順序來(lái)依次填入)
- 輸出路徑(創(chuàng)建的字體會(huì)保存到該目錄下)
視頻演示
為了方便上手莽龟,對(duì)于每種制作流程蠕嫁,錄制了視頻來(lái)演示了操作
B站: https://www.bilibili.com/video/BV1i54y1e7uj/
項(xiàng)目地址
只需要將「Assets」中的「Zero」文件夾放到你的項(xiàng)目中,即可開(kāi)始快速創(chuàng)建你的位圖字體文件
Github: https://github.com/jinglikeblue/Unity-BitmapFontCreater
補(bǔ)充
文本換行
因?yàn)樯傻淖煮w毯盈,默認(rèn)的 「line space」值是0.1所以字體在換行時(shí)會(huì)重疊在一起剃毒。我們可以根據(jù)我們的字體大小情況,將該值調(diào)整到正確的大小搂赋,即可實(shí)現(xiàn)換行的正確顯示赘阀。