slick lwjgl text darstellen mit UnicodeFont funktoniert nicht?

ist mein code einfach nur kaputt oder kommt das weil slick das falsch implementier hat(test umfrage)

  • slick

    Stimmen: 0 0,0%
  • coolian

    Stimmen: 0 0,0%
  • beide

    Stimmen: 0 0,0%

  • Anzahl der Umfrageteilnehmer
    3

coolian

Bekanntes Mitglied
versuche grade text darzustellen mithilfe von slick auf ein lwjgl 2 display mit einem UnicodeFont der text erscheint aber nicht es giebt aber auch keine fehler meldung oder so der code um den font zu laden:
Java:
UnicodeFont font = null;
        try {
            font = new UnicodeFont(new java.awt.Font("Times New Roman", java.awt.Font.PLAIN, 24));
            font.getEffects().add(new ColorEffect(java.awt.Color.white));
            font.addAsciiGlyphs();
            font.loadGlyphs();
        } catch (SlickException e) {
            e.printStackTrace();
        }

und hier der rest der main klasse:
Java:
package main;

import models.RawModel;
import models.TexturedModel;

import java.awt.Color;
import java.awt.Font;
import java.util.ArrayList;
import java.util.List;
import java.util.Random;

import org.lwjgl.opengl.Display;
import org.lwjgl.opengl.GL11;
import org.lwjgl.util.vector.Vector2f;
import org.lwjgl.util.vector.Vector3f;
import org.newdawn.slick.SlickException;
import org.newdawn.slick.TrueTypeFont;
import org.newdawn.slick.UnicodeFont;
import org.newdawn.slick.font.effects.ColorEffect;

import renderEngine.DisplayManager;
import renderEngine.Loader;
import renderEngine.MasterRenderer;
import renderEngine.OBJLoader;
import shaders.StaticShader;
import terrain.Terrain;
import textures.ModelTexture;
import textures.TerrainTexture;
import textures.TerrainTexturePack;
import entities.Camera;
import entities.Entity;
import entities.Light;
import entities.Player;
import guis.FontLoader;
import guis.GuiRenderer;
import guis.GuiTexture;

public class Main {
    
    private static final String HEIGHT_MAP = "heightmap";
    
    public static void main(String[] args) {
        
        
        
        DisplayManager.createDisplay();
        Loader loader = new Loader();
        
        //*******************************TERRIAN TEXTURE STUFF*****************
        
        TerrainTexture backgroundTexture = new TerrainTexture(loader.loadTexture("grassy"));
        TerrainTexture rTexture = new TerrainTexture(loader.loadTexture("dirt"));
        TerrainTexture gTexture = new TerrainTexture(loader.loadTexture("pinkFlowers"));
        TerrainTexture bTexture = new TerrainTexture(loader.loadTexture("path"));
        
        TerrainTexturePack texturePack = new TerrainTexturePack(backgroundTexture, rTexture,
                gTexture, bTexture);
        TerrainTexture blendMap = new TerrainTexture(loader.loadTexture("blendMap"));
        
        //*********************************************************************
        Terrain terrain = new Terrain(0, -1, loader, texturePack, blendMap, HEIGHT_MAP);
        
        RawModel model = OBJLoader.loadObjModel("tree", loader);
        
        ModelTexture fernTextureAtlas = new ModelTexture(loader.loadTexture("fern"));
        fernTextureAtlas.setNumberOfRows(2);
        
        TexturedModel staticModel = new TexturedModel(model, new ModelTexture(loader.loadTexture("tree")));
        TexturedModel grass = new TexturedModel(OBJLoader.loadObjModel("grassModel", loader), new ModelTexture(loader.loadTexture("grassTexture")));
        grass.getTexture().setHasTransparency(true);
        grass.getTexture().useFakeLighting(true);
        TexturedModel fern = new TexturedModel(OBJLoader.loadObjModel("fern", loader), fernTextureAtlas);
        
        List<GuiTexture> guis = new ArrayList<GuiTexture>();
        List<Entity> entities = new ArrayList<Entity>();
        
        GuiTexture gui = new GuiTexture(loader.loadTexture("box"), new Vector2f(0.5f, 0.5f), new Vector2f(0.25f, 0.25f));
        
        Random random = new Random();
        for(int i = 0; i < 400; i++) {
            float x = random.nextFloat() * 800 - 400;
            float z = random.nextFloat() * -600;
            float y = terrain.getHeightOfTerrain(x, z);
            entities.add(new Entity(staticModel, new Vector3f(x, y, z), 0, 0, 0, 3));
            x = random.nextFloat() * 800 - 400;
            z = random.nextFloat() * -600;
            y = terrain.getHeightOfTerrain(x, z);
            entities.add(new Entity(grass, new Vector3f(x, y, z), 0, 0, 0, 1));
            x = random.nextFloat() * 800 - 400;
            z = random.nextFloat() * -600;
            y = terrain.getHeightOfTerrain(x, z);
            entities.add(new Entity(fern, random.nextInt(4), new Vector3f(x, y, z), 0, 0, 0, 0.6f));
        }
        
        Light light = new Light(new Vector3f(0000, 10000, -10000), new Vector3f(1, 1, 1));
        
        
        /*Terrain terrain2 = new Terrain(-1, 0, loader, texturePack, blendMap, HEIGHT_MAP);
        Terrain terrain3 = new Terrain(-1, 0, loader, texturePack, blendMap, HEIGHT_MAP);
        Terrain terrain4 = new Terrain(0, -1, loader, texturePack, blendMap, HEIGHT_MAP);
        Terrain terrain5 = new Terrain(0, 1, loader, texturePack, blendMap, HEIGHT_MAP);
        Terrain terrain6 = new Terrain(0, 1, loader, texturePack, blendMap, HEIGHT_MAP);
        Terrain terrain7 = new Terrain(1, 0, loader, texturePack, blendMap, HEIGHT_MAP);
        Terrain terrain8 = new Terrain(0, 0, loader, texturePack, blendMap, HEIGHT_MAP);
        Terrain terrain9 = new Terrain(1, 1, loader, texturePack, blendMap, HEIGHT_MAP);
        Terrain terrain10 = new Terrain(-1, -1, loader, texturePack, blendMap, HEIGHT_MAP);*/
        UnicodeFont font = null;
        try {
            font = new UnicodeFont(new java.awt.Font("Times New Roman", java.awt.Font.PLAIN, 24));
            font.getEffects().add(new ColorEffect(java.awt.Color.white));
            font.addAsciiGlyphs();
            font.loadGlyphs();
        } catch (SlickException e) {
            e.printStackTrace();
        }
        
        GuiRenderer guiRenderer = new GuiRenderer(loader);
        MasterRenderer renderer = new MasterRenderer();
        
        RawModel playerModel = OBJLoader.loadObjModel("person", loader);
        TexturedModel playerTM = new TexturedModel(playerModel, new ModelTexture(loader.loadTexture("playerTexture")));
        
        Player player = new Player(playerTM, new Vector3f(100, 0, -50), 0, 0, 0, 1);
        Camera camera = new Camera(player);
        
        while(!Display.isCloseRequested()){
            camera.move();
            player.move(terrain);
            
            renderer.processTerrain(terrain);
            /*renderer.processTerrain(terrain2);
            renderer.processTerrain(terrain3);
            renderer.processTerrain(terrain4);
            renderer.processTerrain(terrain5);
            renderer.processTerrain(terrain6);
            renderer.processTerrain(terrain7);
            renderer.processTerrain(terrain8);
            renderer.processTerrain(terrain9);
            renderer.processTerrain(terrain10);*/
            
            renderer.processEntity(player);
            
            for(Entity entity:entities) {
                renderer.processEntity(entity);
            }
            
            renderer.render(light, camera);
            guiRenderer.render(guis);
            GL11.glEnable(GL11.GL_BLEND);
            GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA);
            GL11.glDisable(GL11.GL_DEPTH_TEST);
            font.drawString(50, 50, "test");
            GL11.glEnable(GL11.GL_DEPTH_TEST);
            GL11.glDisable(GL11.GL_BLEND);
            DisplayManager.updateDisplay();
        }
        guiRenderer.cleanUp();
        renderer.cleanUp();
        loader.cleanUp();
        DisplayManager.closeDisplay();
    }
}

mit font.drawString(50, 50, "test"); sollte der text eig. gedrawt werden tut es aber nicht warum? b.z welche lösung könnte es dafür geben
mit TrueTypeFont btw das selbe problem
hoffe irgendwer kann mir helfen
LG coolian
 

coolian

Bekanntes Mitglied
das wird in der main klasse auf zeile 107 - 115 aufgerufen direkt unter dem erstellen der terrains wovon 9 auskommentiert sind. die koords hatte ich auf 100 und 10 ausprobiert mit dem selben ergebnis und 0.5f hab ich grade auch ausprobiert mit selben ergebnis
 

coolian

Bekanntes Mitglied
ich versuche einfach mal ein neues projekt zu erstellen und da einfach nur den code für text rendering rein tun

ok funktoniert weiß aber nicht warum habe diesne code benutzt:
Java:
package main;

import static org.lwjgl.opengl.GL11.*;

import org.lwjgl.LWJGLException;
import org.lwjgl.opengl.Display;
import org.lwjgl.opengl.DisplayMode;
import org.newdawn.slick.SlickException;
import org.newdawn.slick.UnicodeFont;
import org.newdawn.slick.font.effects.ColorEffect;

public class Main {
    static UnicodeFont uf = null;


    public static void initGL() {
        glMatrixMode(GL_PROJECTION);
        glLoadIdentity();
        glOrtho(0, 640, 480, 0, 1, -1);
        glMatrixMode(GL_MODELVIEW);

        glEnable(GL_TEXTURE_2D);
        glEnable(GL_BLEND);
        glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
    }

    @SuppressWarnings("unchecked")
    public static void initFont(int size, boolean bold, boolean italic) {
        try {
            uf = new UnicodeFont("res/sans.TTF", size, bold, italic);
            uf.addAsciiGlyphs();
            uf.getEffects().add(new ColorEffect(java.awt.Color.white));
            uf.loadGlyphs();
        } catch (SlickException e) {
            e.printStackTrace();
        }
    }
    public static void main(String[] args) {
        try {
            Display.setDisplayMode(new DisplayMode(640, 480));
            Display.setTitle("Text Drawing!");
            Display.setResizable(false);
            Display.create();
        } catch (LWJGLException e) {

        }

        initGL();
        initFont(100, false, false);

        while (!Display.isCloseRequested()) {

            glClear(GL_COLOR_BUFFER_BIT);

            uf.drawString(10, 10, "Sweet Text");

            Display.update();
            Display.sync(60);
        }

        System.exit(0);

    }
}

welche ich von hier:https://stackoverflow.com/questions/14919364/rendering-text-with-slick2d-inside-a-lwjgl-window
hab der leicht anders ist aber auch wenn ich den code statt den den ich vorher hatte einsetze geht es nicht nur in dem test projekt
 
X

Xyz1

Gast
Kann an den Koords liegen, der View, dem Eye, der Projektion, der Reihenfolge usw., aber irgendwie sieht Deine update Schleife nicht richtig aus.
glEnable(GL_TEXTURE_2D); steht oben auch nich...
 

coolian

Bekanntes Mitglied
deswegen hab ich auch noch das hier probiert in dem update loop:
Java:
            GL11.glEnable(GL_TEXTURE_2D);
            GL11.glEnable(GL_BLEND);
            GL11.glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
            uf.drawString(10, 10, "Sweet Text");
            GL11.glDisable(GL11.GL_TEXTURE_2D);
            GL11.glDisable(GL11.GL_BLEND);

und das hier:
Java:
        glMatrixMode(GL_PROJECTION);
        glLoadIdentity();
        glOrtho(0, 640, 480, 0, 1, -1);
        glMatrixMode(GL_MODELVIEW);

direkt nach dem erstellen von dem display hinzutun tut auch nichts
 

coolian

Bekanntes Mitglied
nichts funkt hab keine lust mehr mich jetzt damit zu beschäftigen gehe jetzt skyrim zocken eventuell guck ich später nochmal rein aber es ist kurz nach mitternacht also keien ahnung
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
CookieSoft Slick und LWJGL Texture lag Spiele- und Multimedia-Programmierung 13
S 2D mit Slick - Anfänger sucht Hilfe Spiele- und Multimedia-Programmierung 4
Hercules Slick - .fon Dateien benutzen? Spiele- und Multimedia-Programmierung 6
N [SLICK] Rectangle in Array Speichern Spiele- und Multimedia-Programmierung 3
X Android Slick AE Anmation Spiele- und Multimedia-Programmierung 2
X Android Slick AE Image Pfad Spiele- und Multimedia-Programmierung 3
X Slick in Android Apps einsetzten Spiele- und Multimedia-Programmierung 6
Rayo Slick Applet Spiele- und Multimedia-Programmierung 12
CookieSoft Slick Texture laden Fehler Spiele- und Multimedia-Programmierung 6
D Slick Lib - Bilder einlesen funktioniert nicht Spiele- und Multimedia-Programmierung 2
staxx6 (Slick) Steuerung - mehrere Belegungen Spiele- und Multimedia-Programmierung 12
L Slick-Image aus byte-array erzeugen Spiele- und Multimedia-Programmierung 2
coolian lwjgl glfw window zeigt nur grau an Spiele- und Multimedia-Programmierung 0
F OpenGL (LWJGL) Shader Programmierung GLSL Spiele- und Multimedia-Programmierung 2
Meeresgott LWJGL 3 Problem mit einer Texture Spiele- und Multimedia-Programmierung 4
V LWJGL GUI Spiele- und Multimedia-Programmierung 1
V GUI in LWJGL 2 erstellen Spiele- und Multimedia-Programmierung 6
C GLSL Shaderprogrammierung in LWJGL 3 Spiele- und Multimedia-Programmierung 12
G Low Poly 3D LWJGL Shader Problem Spiele- und Multimedia-Programmierung 4
B LWJGL OpenGL SIGSEGV auf Linux (Verzweiflung :/) Spiele- und Multimedia-Programmierung 8
G LWJGL .obj .mtl loader Spiele- und Multimedia-Programmierung 3
G 2D animationen LWJGL Spiele- und Multimedia-Programmierung 0
pcfreak9000 "Allgemeine" Performance verbessern (LWJGL 2) Spiele- und Multimedia-Programmierung 2
G LWJGL Rendert nicht Spiele- und Multimedia-Programmierung 3
G lwjgl verwendung Spiele- und Multimedia-Programmierung 6
R [LWJGL] Skeletal Animation Spiele- und Multimedia-Programmierung 5
E LWJGL glGenVertexArrays() erzeugt doppelte IDs Spiele- und Multimedia-Programmierung 3
G Java 2D Spiel mit LWJGL verbinden Spiele- und Multimedia-Programmierung 1
Streeber Problem mit Transparenz/TextDrawing in LWJGL/Slick2d (OpenGL) Spiele- und Multimedia-Programmierung 1
K No Lwjgl Spiele- und Multimedia-Programmierung 2
T LWJGL 2.9.2: Seltsamer Effekt beim Rendern (VertexShader Problem?) Spiele- und Multimedia-Programmierung 3
T LWJGL: Terrain-Texturen / 2D-Array in Shader? Spiele- und Multimedia-Programmierung 2
S 2D-Render Probleme LWJGL 2 (Java) Spiele- und Multimedia-Programmierung 1
P java lwjgl Game Spiele- und Multimedia-Programmierung 0
T [LWJGL] Textur / File wieder freigeben Spiele- und Multimedia-Programmierung 4
F [LWJGL] Skeletal Animation 3D Spiele- und Multimedia-Programmierung 1
C Generelle Hilfe zur lwjgl Spiele- und Multimedia-Programmierung 0
D LWJGL gluLookAt "Umschauen" Problem Spiele- und Multimedia-Programmierung 0
D Problem mit Würfelanimierung in LWJGL Spiele- und Multimedia-Programmierung 7
RalleYTN LWJGL Vignette Spiele- und Multimedia-Programmierung 2
E LWJGL Switchen zwischen gluOrtho und gluPerspective Spiele- und Multimedia-Programmierung 0
RalleYTN LWJGL Rotation Spiele- und Multimedia-Programmierung 1
C LWJGL Color Picking Textures deaktivieren Spiele- und Multimedia-Programmierung 0
K FBO Framebuffer object [LWJGL] 2D tutorial gesucht Spiele- und Multimedia-Programmierung 2
K [LWJGL] 2D Tunneler Hintergrund Spiele- und Multimedia-Programmierung 7
S LWJGL 3d-spieleentwicklung Spiele- und Multimedia-Programmierung 3
H LWJGL-Renderfail Spiele- und Multimedia-Programmierung 1
Seikuassi LWJGL - Texturen flackern Spiele- und Multimedia-Programmierung 2
Androbin LWJGL - Kollisions-Bug (Fallen) Spiele- und Multimedia-Programmierung 14
K Schiessen in 2D (LWJGL) Spiele- und Multimedia-Programmierung 2
S LWJGL Kamera Problem - Alles verzerrt Spiele- und Multimedia-Programmierung 4
U Kann nur ein Objekt mit LWJGL rendern Spiele- und Multimedia-Programmierung 2
X LWJGL | Parent.isDisplayable() must be true | wie kann man das zu true machen? Spiele- und Multimedia-Programmierung 0
X [LWJGL] Binden von Texturen per PNG File und Texture Sheet Spiele- und Multimedia-Programmierung 1
X LWJGL - Anklick baren Button erstellen aber wie? Spiele- und Multimedia-Programmierung 6
U Quadrate anklicken LWJGL Spiele- und Multimedia-Programmierung 3
B LWJGL / OPENGL Kriege Depth-Test nicht hin :( Spiele- und Multimedia-Programmierung 0
B LWJGL Manche Seiten werden transparent angezeigt Spiele- und Multimedia-Programmierung 2
T LWJGL VBO's funktionieren nicht, geben aber auch keinen Fehler Spiele- und Multimedia-Programmierung 0
U Komische fragmente bei LWJGL Spiele- und Multimedia-Programmierung 6
B LWJGL StackOverFlow Problem nach 30sekunden. (Pong) Spiele- und Multimedia-Programmierung 2
Q LWJGL - Alpha-Probleme Spiele- und Multimedia-Programmierung 2
S [LWJGL] Zweimal selbe Textur trotz unterschiedlicher IDs Spiele- und Multimedia-Programmierung 3
O LWJGL AWTGLCanvas Tiefe auf 1 beschränkt Spiele- und Multimedia-Programmierung 5
Seikuassi LWJGL-Problem Spiele- und Multimedia-Programmierung 2
S [LWJGL] schwarzer Bildschrim beim rendern von .obj Model Spiele- und Multimedia-Programmierung 2
S [lwjgl] Renderbug bei mehreren Objekten Spiele- und Multimedia-Programmierung 2
R LWJGL: OpenGL Fehler - weitere Informationen auslesen möglich? Spiele- und Multimedia-Programmierung 2
S LWJGL Kamera Koordinaten invertiert. Spiele- und Multimedia-Programmierung 2
M LWJGL Text rendern Spiele- und Multimedia-Programmierung 3
B LWJGL Mauskoordinaten Spiele- und Multimedia-Programmierung 1
J LWJGL Update Schleife (Snake) Spiele- und Multimedia-Programmierung 6
B LWJGL Display.update() ist langsam Spiele- und Multimedia-Programmierung 5
R LWJGL: Performance glBegin, drawList, ... Spiele- und Multimedia-Programmierung 16
R LWJGL: Object Loader -> .obj, .c4d, ... laden Spiele- und Multimedia-Programmierung 3
R LWJGL: Textur -> unsichtbare Stellen, wie erzeugen? Spiele- und Multimedia-Programmierung 4
A LwJGL - Animation Stockt Spiele- und Multimedia-Programmierung 5
R [lwjgl] Cursor -> versetzt Zeichnen / Bild ist umgedreht Spiele- und Multimedia-Programmierung 2
R LWJGL: 3D Picking Spiele- und Multimedia-Programmierung 4
F LWJGL: Textur ändern mit GL11.readPixels Spiele- und Multimedia-Programmierung 5
F LWJGL: Licht und GL_LINES funktioniert nicht Spiele- und Multimedia-Programmierung 6
A [LWJGL] BMP Textur wird nicht richtig dargestellt Spiele- und Multimedia-Programmierung 8
S LWJGL Rechteck wird nicht gezeichnet Spiele- und Multimedia-Programmierung 6
F LWJGL: Is undefined? Spiele- und Multimedia-Programmierung 7
F LWJGL Kamerabug Spiele- und Multimedia-Programmierung 2
F LWJGL Problem mit Erstellen eines Objekts und der Kamera Spiele- und Multimedia-Programmierung 5
F LWJGL Dreidimensionaler Würfel Spiele- und Multimedia-Programmierung 15
P LWJGL oder OpenGL (C++) Spiele- und Multimedia-Programmierung 7
P "Tiefe" in Objekten - LWJGL Spiele- und Multimedia-Programmierung 12
T LWJGL 3D Objekt Collision: Wie? Spiele- und Multimedia-Programmierung 11
S LWJGL Kamera Frage Spiele- und Multimedia-Programmierung 2
V Komischer Fehler in LWJGL Spiele- und Multimedia-Programmierung 18
Z lwjgl oder jogl nutzen Spiele- und Multimedia-Programmierung 9
Y LWJGL Hintergrund Spiele- und Multimedia-Programmierung 7
Creylon [LWJGL] Textur wird falsch angezeigt Spiele- und Multimedia-Programmierung 12
Creylon [LWJGL] Spiel Exportieren Spiele- und Multimedia-Programmierung 2
Creylon [LWJGL] 2D Sprite Rotieren/Drehen Spiele- und Multimedia-Programmierung 6
CookieSoft LWJGL Ubuntu 12.04 Fehler Spiele- und Multimedia-Programmierung 7
E [LWJGL] Karusell, mehrere Objekte drehen sich um einen Mittelpunkt Spiele- und Multimedia-Programmierung 31
F lwjgl - Skysphere Spiele- und Multimedia-Programmierung 3

Ähnliche Java Themen

Neue Themen


Oben