gpt4 book ai didi

java - 使用 LWJGL 在屏幕上书写文本

转载 作者:搜寻专家 更新时间:2023-10-31 20:03:14 25 4
gpt4 key购买 nike

我想为我的游戏在屏幕上写文字,比如 fps、元素的随机文字等等。我该如何编写该文本?

没有 Basic Game 类是否可行?不是有这样的命令吗 g.drawString("Hello World", 100, 100);

最佳答案

更新:这个答案现在已经过时了,并且对最新版本的 LWJGL 根本不起作用。在我完全更新此答案之前,我建议您查看此处:https://jvm-gaming.org/t/lwjgl-stb-bindings/54537


您可以使用 Slick-util 中的 TrueType 字体功能图书馆。

使用通用字体很容易,只需像这样创建字体即可:

TrueTypeFont font;
Font awtFont = new Font("Times New Roman", Font.BOLD, 24); //name, style (PLAIN, BOLD, or ITALIC), size
font = new TrueTypeFont(awtFont, false); //base Font, anti-aliasing true/false

如果你想从 .ttf 文件加载字体,那就有点棘手了:

try {
InputStream inputStream = ResourceLoader.getResourceAsStream("myfont.ttf");

Font awtFont = Font.createFont(Font.TRUETYPE_FONT, inputStream);
awtFont = awtFont.deriveFont(24f); // set font size
font = new TrueTypeFont(awtFont, false);

} catch (Exception e) {
e.printStackTrace();
}

在你成功创建一个TrueTypeFont之后,你可以像这样绘制它:

font.drawString(100, 50, "ABC123", Color.yellow); //x, y, string to draw, color

有关更多信息,您可以查看 TrueTypeFont 的文档和 java.awt.Font , 和 Slick-Util tutorial我从中获得了大部分代码。

关于java - 使用 LWJGL 在屏幕上书写文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19182843/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com