gpt4 book ai didi

java - 绘制文本后无法绘制任何四边形?

转载 作者:行者123 更新时间:2023-12-01 09:30:28 24 4
gpt4 key购买 nike

所以我正在制作一款 3D 游戏,现在正在 3D 上进行 2D 工作,但在完成之前只有一个问题,那就是:在绘制文本后我无法绘制任何 2D 四边形?这是渲染器代码:

changeto2D();
for (Face2D face : tds){
face.initializeEdges();
GL11.glBegin(GL11.GL_QUADS);
GL11.glColor4f(face.c.red, face.c.green, face.c.blue, (float) Math.sin(Math.toRadians(face.transparency)));
for (Location l : face.edges){
GL11.glVertex2f(l.x, l.y);
}
GL11.glEnd();
}
for (Text t : texts){
t.draw();
}
fps++;
for (GUI gui : openGUIs){
gui.draw();
}
for (GUI gui : removing){
if (openGUIs.contains(gui)) openGUIs.remove(gui);
}
removing.clear();

这是 changeTo2D(); 的代码:

public void changeto2D() {
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(0, Display.getWidth(), Display.getHeight(), 0, 1, -1);
glMatrixMode(GL_MODELVIEW);
GL11.glViewport(0, 0, Display.getDisplayMode().getWidth(), Display.getDisplayMode().getHeight());
}

并绘制文本:

public Text(Location loc, String text, float size, Color color){
try {
InputStream inputStream = ResourceLoader.getResourceAsStream("res\\AGENCYR.TTF");

Font awtFont2 = Font.createFont(Font.TRUETYPE_FONT, inputStream);
awtFont2 = awtFont2.deriveFont(size);
font = new TrueTypeFont(awtFont2, false);
} catch (Exception e) {
e.printStackTrace();
}
c = new org.newdawn.slick.Color(color.red, color.green, color.blue);
this.loc = loc;
this.text = text;
this.size = size;
}
public void draw(){
font.drawString(loc.x, loc.y, text, c);
if (td != null){
td.draw();
}
}

现在我的问题是:我想制作一个包含四边形的 GUI,但即使其他四边形绘制得很好,它也不会绘制?我还尝试在绘制文本后放置所有四边形的代码,但四边形根本不会绘制。

最佳答案

我修复了它,只是为自己制作了另一种渲染技术。首先绘制所有四边形,最后绘制文本。

关于java - 绘制文本后无法绘制任何四边形?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39473427/

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