字体编辑器
Pyxen 内置了一个字体编辑器,可以在 iPad 和 Mac 上创建位图字体,配合 Text 组件使用。无需任何外部工具,就能为你的游戏设计清晰的像素风文字。
位图字体的工作原理
Pyxen 中的位图字体是一个字体图集——一张包含每个字符的图像,加上一个描述每个字形位置的 JSON 文件。当你的游戏渲染文本时,引擎会在图集中查找每个字符并绘制相应的区域。
创建字体
选择文件 › 新素材…,然后选择字体。字体由以下两者之一生成:
- Pyxen 字体:涵盖键盘上每个字母的 8 像素字体,立即可用。
- 字体文件:你选择的 TrueType 或 OpenType 文件(
.ttf或.otf)。文件会保存在项目中,以便重新生成字体。
字体会在字体面板中打开。
字体面板
顶部的试一试用这款字体,在你游戏的背景上,以游戏绘制它的尺寸(1×、2× 和 4×)绘制你输入的一行文字。下方是字体的字形;选择一个即可编辑。
侧栏用于设置字体:
- 来源 — 字体是由什么生成的。**选择文件…**会从字体文件重新生成它。
- 大小 — 生成时的像素大小,从 6 到 32 像素。
- 字符 — 字体包含哪些字符:A–Z、0–9 和符号(默认)、用于欧洲语言带重音字母的重音字母,以及包含你脚本中用到的每个字符的代码中用到的。至少保留一项开启。
- 平滑边缘 — 关闭时每个像素都保持清晰,像素字体就该如此。
- 间距 — 文本行之间的行高,以及字符所在的基线。
- 字形 — 所选字形的步进(下一个字符从哪里开始),以及它的左和上偏移。
- 在代码中 — 使用这款字体的那行代码,以及图集的大小。
大小、字符和平滑边缘需要重新生成字体才能改变,因此需要它的文件。由 Pyxen 字体生成的字体,或由本设备上没有的字体生成的字体,会以文字显示这些设置,直到你选择一个文件;它的间距和字形仍可编辑。
编辑字形
所选字形会在画布上、在它所在的行中打开,并画出基线和步进。用铅笔(B)绘制,用橡皮擦(E)擦除。每次修改都可以撤销,试一试会立即显示它。
在游戏中使用字体
创建字体后,使用 Text 组件来渲染文本:
label = world.spawn(text=Text("Score: 0", font="myfont"))
font 参数匹配你的 .font.json 资源的名称(不含扩展名)。如果省略,Pyxen 使用内置默认字体。
完整 API 请参见 Text 参考。
面板栏中的在代码中使用会列出脚本中用到这个字体的行;选择一行即可跳过去。