Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

不依赖第三方工具,可以一键将图片生成位图字体的Unity插件

Notifications You must be signed in to change notification settings

jinglikeblue/Unity-BitmapFontCreater

Open more actions menu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
3 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Unity Plugin - Bitmap Font Creater

不依赖第三方工具,可以一键将图片生成位图字体的Unity插件

引言

当项目中有些文本展示,需要用到特殊的画面效果(比如夸张的暴击数字)时,我们有一种解决方案是美术给你出0-9的数字(或者还有+,-号)的图片,然后你会用TexturePacker或者BMFont等工具,制作一个fnt数据文件和一个png纹理集,导入到Unity后,通过editor脚本或者手动的方式生成一个fontsettings文件,这个文件就是Unity中可以使用的字体文件。
而BitmapFontCreater简化了这一套流程,我们只需要将美术给的图片导入到Unity中,就可以一键或者简单的配置一下,就可以生成我们需要的位图字体,完全不需要依赖第三方的工具。

本文适用对象

  • 在Unity中,需要使用位图字体的开发者
  • 对目前掌握的位图字体制作方式不满意,希望能够简单、快速的创建位图字体的Unity开发者

方案优势

  • 一键生成,不需要繁琐的操作
  • 针对特殊字符位图字符,比如逗号、点号、空格号等,仅需要简单配置一下,也可以快速导出位图字体

文章DEMO对应的IDE版本

  • Unity 2018.4.0测试通过

字体制作流程

总共有3种方式,可以让你根据自己的位图情况来快速生成位图字体

方式1:使用图片文件名称作为字符来生成字体

通过文件名称直接创建字体

这种方式适合没有特殊字符的位图字体,只需要将每张图片的名称设置为对应的字符即可。例如图片中是数字0的位图字,那么图片就命名为「0.png」即可。

  • 按照上述规则命名的图片,统一放到一个文件夹中。
  • Project视图中右键文件夹或者在文件夹中右键点击空白处,选择"Assets/Zero/Create Bitmap Font (Direct)/Use「PNG File Name」"即可立刻生成位图字体。
  • 位图字体的名称会以文件夹的名称来命名。

方式2:使用「chars.txt」配置文件作为字符源来生成字体

通过chars_txt直接创建字体_0

通过chars_txt直接创建字体_1

这种方式适合有特殊字符的位图字体。

  • 将所有要制作位图字体的图片放到一个文件夹中。
  • 在文件夹中创建文件「chars.txt」文件。
  • 在「chars.txt」中,按照图片在Project视图中显示的顺序,依次填写字符来一一对应,完成后保存。
  • Project视图中右键文件夹或者在文件夹中右键点击空白处,选择"Assets/Zero/Create Bitmap Font (Direct)/Use「chars.txt」"即可立刻生成位图字体。
  • 位图字体的名称会以文件夹的名称来命名。

方式3:使用GUI工具来配置数据生成字体

通过GUI创建字体

这种方式适合需要定制字体的特殊情况。可以自己社会字体需要的图片、字符、字体名称、保存位置

显示GUI界面的方式有两种

  • 在Unity编辑器顶部通过"Tools/Zero/Create Bitmap Font"来打开
  • 在Project视图中通过右键打开,这种方式会自动扫描文件夹中的纹理和「chars.txt」(如果没有「chars.txt」则会读取单字符命名的图片名称)来填入GUI中的数据,并且自动以文件夹路径和文件夹名来填入到GUI中,当然这些参数可以之后自行修改。

GUI界面中只需要填写对应参数,选择「创建」即可创建字体

  • 字体图片集合
  • 字体名称(保存的字体的名称)
  • 字符内容(按照字体图片集合的顺序来依次填入)
  • 输出路径(创建的字体会保存到该目录下)

视频演示

为了方便上手,对于每种制作流程,录制了视频来演示了操作

B站: https://www.bilibili.com/video/BV1i54y1e7uj/

项目地址

只需要将「Assets」中的「Zero」文件夹放到你的项目中,即可开始快速创建你的位图字体文件

Github: https://github.com/jinglikeblue/Unity-BitmapFontCreater

补充

文本换行

换行

因为生成的字体,默认的 「line space」值是0.1所以字体在换行时会重叠在一起。我们可以根据我们的字体大小情况,将该值调整到正确的大小,即可实现换行的正确显示。

About

不依赖第三方工具,可以一键将图片生成位图字体的Unity插件

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

Morty Proxy This is a proxified and sanitized view of the page, visit original site.