Fonts Libgdx处理字体的好方法
处理字体是一场噩梦 在libgdx中,bitmapfont似乎是在屏幕上书写的唯一方式 我试过几种方法 1) 应用程序启动时使用FreetypeFontGenerator生成字体Fonts Libgdx处理字体的好方法,fonts,libgdx,Fonts,Libgdx,处理字体是一场噩梦 在libgdx中,bitmapfont似乎是在屏幕上书写的唯一方式 我试过几种方法 1) 应用程序启动时使用FreetypeFontGenerator生成字体 (+)完美缩放,字体呈现完美 (-)我的应用程序需要14秒才能启动 2) 为我需要的每个不同的ttf字体只生成一个bitmapFont,然后在标签中缩放它们 (+)更快 (-)丑陋。而且速度更快,因为我只有两种不同的字体。如果我有更多,每一个事件中的一个都会花费很长时间才能生成 3) 用hiero高级生成它们
- (+)完美缩放,字体呈现完美
- (-)我的应用程序需要14秒才能启动
- (+)更快
- (-)丑陋。而且速度更快,因为我只有两种不同的字体。如果我有更多,每一个事件中的一个都会花费很长时间才能生成
- (+)我想它可能会很好用
- ()
- (+)我想更快
- (-)与2相同的缩放问题,并且显然无法在运行时更改文本
处理字体的最佳方法是什么?我不知道有哪个游戏引擎像web浏览器一样支持字体矢量。第一次加载应用程序时生成字体,并将其保存到内部。直接从所有后续加载的文件中加载位图字体。对于非常大的字体,如倒计时计时器,请使用Heiro并创建距离场字体,这样它就可以在不进行像素化的情况下无限放大。然后,字体的实际图像文件可能非常小,占用的内存很少。根据您使用的字体,您可能可以简单地对所有内容执行此操作,这将是最干净的解决方案。如果您想知道为什么游戏从来没有矢量字体渲染支持,这是因为GPU不太适合它:非常感谢。我将试用距离字段字体。谢谢你的链接,我真的很好奇。我不会用字体来显示这么大的倒计时计时器。如果我想买这么大的东西,我会花时间手工画出数字或一个花哨的计时器,让它看起来很漂亮。对于我个人使用hiero和普通字体的所有其他任务,稍微缩小一点就可以了。我从来没有使用过ftf生成器,因为位图字体对我来说是完美的,即使是一些花哨的文本。无论如何,创建游戏,特别是独立游戏,需要做出很多妥协。我不知道有哪款游戏引擎像web浏览器那样支持字体矢量。第一次加载应用程序时生成字体,并将其保存到内部。直接从所有后续加载的文件中加载位图字体。对于非常大的字体,如倒计时计时器,请使用Heiro并创建距离场字体,这样它就可以在不进行像素化的情况下无限放大。然后,字体的实际图像文件可能非常小,占用的内存很少。根据您使用的字体,您可能可以简单地对所有内容执行此操作,这将是最干净的解决方案。如果您想知道为什么游戏从来没有矢量字体渲染支持,这是因为GPU不太适合它:非常感谢。我将试用距离字段字体。谢谢你的链接,我真的很好奇。我不会用字体来显示这么大的倒计时计时器。如果我想买这么大的东西,我会花时间手工画出数字或一个花哨的计时器,让它看起来很漂亮。对于我个人使用hiero和普通字体的所有其他任务,稍微缩小一点就可以了。我从来没有使用过ftf生成器,因为位图字体对我来说是完美的,即使是一些花哨的文本。不管怎样,制作游戏,尤其是独立游戏,需要做出很多妥协。