Z UnicodeFont mam to samo.Tutaj jest kod klasy.
package snakeTheGame;
import java.awt.Color;
import java.awt.Font;
import org.lwjgl.opengl.GL11;
import org.newdawn.slick.UnicodeFont;
public class TitleScreen {
private int width = 800, height = 600;
private final int border = 10;
private final int buttonHeight = 74;
private final int buttonWidth = 216;
private final int textHeight = 47;
private final int numberOfButtons = 6;
private final float[] buttonY = {height, height - buttonHeight, height - buttonHeight, height};
private final float[] buttonX = {width - buttonWidth,width - buttonWidth, width, width};
private final String[] buttonNames = {"New Game", "Load Game", "High Scores", "Instructions", "Credits", "Exit"};
public void renderScreen(){
//texture
GL11.glColor3f(1.0f, 0f, 0f);
GL11.glBegin(GL11.GL_QUADS);
GL11.glVertex2f(border, border);
GL11.glVertex2f(border, height - border);
GL11.glVertex2f(width - (2 * border) - buttonWidth, height - border);
GL11.glVertex2f(width - (2 * border) - buttonWidth, border);
GL11.glEnd();
//buttons
GL11.glColor3f(0f, 1.0f, 0f);
GL11.glBegin(GL11.GL_LINES);
for (int i = 0; i<numberOfButtons + 1; i++){
GL11.glVertex2f(buttonX[0] - border, buttonY[0] - ((i+1) * border) - (i * buttonHeight));
GL11.glVertex2f(buttonX[1] - border, buttonY[1] - ((i+1) * border) - (i * buttonHeight));
GL11.glVertex2f(buttonX[2] - border, buttonY[2] - ((i+1) * border) - (i * buttonHeight));
GL11.glVertex2f(buttonX[3] - border, buttonY[3] - ((i+1) * border) - (i * buttonHeight));
GL11.glVertex2f(buttonX[0] - border, buttonY[0] - ((i+1) * border) - (i * buttonHeight));
GL11.glVertex2f(buttonX[3] - border, buttonY[3] - ((i+1) * border) - (i * buttonHeight));
GL11.glVertex2f(buttonX[1] - border, buttonY[1] - ((i+1) * border) - (i * buttonHeight));
GL11.glVertex2f(buttonX[2] - border, buttonY[2] - ((i+1) * border) - (i * buttonHeight));
}
GL11.glEnd();
//text
Font awtFont = new Font("Times New Roman", Font.BOLD, 24);
UnicodeFont font = new UnicodeFont(awtFont, 64, false, false);
for (int i = 0; i<numberOfButtons;i++){
font.drawString(width - buttonWidth, textHeight, "HayO!", Color.green);
}
}
public TitleScreen(int width, int height){
this.width = width;
this.height = height;
}
}
A tu inicjalizacja:
public void initGL2D() {
GL11.glMatrixMode(GL11.GL_PROJECTION);
GL11.glLoadIdentity();
GL11.glOrtho(0, width, 0, height, 1, -1);
GL11.glMatrixMode(GL11.GL_MODELVIEW);
}
Prawdopodobnie sam bym to rozwiązał gdyby nie te BARDZO zrozumiałe błędy...
http://imageshack.us/photo/my-images/844/javanx.jpg/